From e5ac134d8411d3c51f20ea548ff49282a91d3442 Mon Sep 17 00:00:00 2001 From: Katrina Date: Wed, 25 Mar 2026 20:28:00 -0400 Subject: [PATCH 01/17] add support for openai realtime model. Add vad tracking for realtime models (using external vad) --- .env.example | 12 +-- src/eva/assistant/pipeline/observers.py | 3 +- src/eva/assistant/pipeline/realtime_llm.py | 94 ++++++++++++++++- src/eva/assistant/pipeline/services.py | 116 ++++++++++++++------- src/eva/assistant/server.py | 31 +++++- src/eva/models/config.py | 13 ++- src/eva/utils/prompt_manager.py | 2 +- 7 files changed, 212 insertions(+), 59 deletions(-) diff --git a/.env.example b/.env.example index 061dd906..7398c5d0 100644 --- a/.env.example +++ b/.env.example @@ -167,20 +167,16 @@ EVA_MODEL__LLM=gpt-5.2 # GOOGLE_API_KEY=your_google_api_key_here # ============================================== -# Optional: Realtime / Audio-LLM Configuration +# Optional: Speech-to-Speech / Audio-LLM Configuration # ============================================== -# Only needed if benchmarking speech-to-speech or realtime models. +# Only needed if benchmarking speech-to-speech models. -# EVA_MODEL__REALTIME_MODEL=gpt-realtime-mini -# EVA_MODEL__REALTIME_MODEL_PARAMS='{"voice":"marin"}' +# EVA_MODEL__S2S=openai +# EVA_MODEL__S2S_PARAMS='{"model": "gpt-realtime-mini", "voice": "marin"}' # EVA_MODEL__AUDIO_LLM= # EVA_MODEL__AUDIO_LLM_PARAMS='{"url": "", "api_key": ""}' -# Azure Realtime credentials (if using Azure realtime models) -# AZURE_OPENAI_REALTIME_API_KEY= -# AZURE_OPENAI_REALTIME_ENDPOINT= - # ============================================== # Optional: Execution Settings # ============================================== diff --git a/src/eva/assistant/pipeline/observers.py b/src/eva/assistant/pipeline/observers.py index df1a50d5..a3755d48 100644 --- a/src/eva/assistant/pipeline/observers.py +++ b/src/eva/assistant/pipeline/observers.py @@ -22,6 +22,7 @@ from pipecat.observers.turn_tracking_observer import TurnTrackingObserver from pipecat.services.azure.realtime.llm import AzureRealtimeLLMService from pipecat.services.llm_service import LLMService +from pipecat.services.openai.realtime.llm import OpenAIRealtimeLLMService from pipecat.services.stt_service import STTService from pipecat.services.tts_service import TTSService @@ -31,7 +32,7 @@ logger = get_logger(__name__) -_TRANSCRIPTION_SERVICES = (STTService, AzureRealtimeLLMService) +_TRANSCRIPTION_SERVICES = (STTService, AzureRealtimeLLMService, OpenAIRealtimeLLMService) class WallClock(SystemClock): diff --git a/src/eva/assistant/pipeline/realtime_llm.py b/src/eva/assistant/pipeline/realtime_llm.py index 7d30bac2..b502b4df 100644 --- a/src/eva/assistant/pipeline/realtime_llm.py +++ b/src/eva/assistant/pipeline/realtime_llm.py @@ -1,6 +1,6 @@ """Instrumented realtime LLM service for correct audit log ordering and timestamps. -Subclasses AzureRealtimeLLMService to intercept raw OpenAI Realtime API events +Subclasses OpenAIRealtimeLLMService to intercept raw OpenAI Realtime API events (speech_started, speech_stopped, transcription.completed, response.done) which have a guaranteed ordering and carry item_id for correlation. @@ -11,17 +11,24 @@ Writing user entries on #3 and assistant entries on #5 guarantees correct order. """ +import struct import time from dataclasses import dataclass from typing import Any, Optional -from pipecat.services.azure.realtime.llm import AzureRealtimeLLMService +from pipecat.frames.frames import Frame, InputAudioRawFrame, VADUserStartedSpeakingFrame, VADUserStoppedSpeakingFrame +from pipecat.processors.frame_processor import FrameDirection +from pipecat.services.openai.realtime.llm import OpenAIRealtimeLLMService from eva.assistant.agentic.audit_log import AuditLog from eva.utils.logging import get_logger logger = get_logger(__name__) +# Audio threshold for detecting speech vs silence +# RMS values below this are considered silence +SILENCE_RMS_THRESHOLD = 10 + @dataclass class _UserTurnRecord: @@ -39,8 +46,20 @@ def _wall_ms() -> str: return str(int(round(time.time() * 1000))) -class InstrumentedRealtimeLLMService(AzureRealtimeLLMService): - """AzureRealtimeLLMService subclass that writes audit log entries with correct ordering and wall-clock timestamps derived from Realtime API events. +def _calculate_rms(audio_bytes: bytes) -> float: + """Calculate RMS (root mean square) energy of 16-bit PCM audio.""" + if len(audio_bytes) < 2: + return 0.0 + num_samples = len(audio_bytes) // 2 + samples = struct.unpack(f"<{num_samples}h", audio_bytes[: num_samples * 2]) + if not samples: + return 0.0 + sum_squares = sum(s * s for s in samples) + return (sum_squares / len(samples)) ** 0.5 + + +class InstrumentedRealtimeLLMService(OpenAIRealtimeLLMService): + """OpenAIRealtimeLLMService subclass that writes audit log entries with correct ordering and wall-clock timestamps derived from Realtime API events. All overridden methods call ``super()`` first so that the parent's frame processing (audio playback, interruption handling, metrics, etc.) is fully @@ -61,12 +80,35 @@ def __init__(self, *, audit_log: AuditLog, **kwargs: Any) -> None: # Track whether we're mid-assistant-response (for interruption flushing) self._assistant_responding: bool = False + # Track audio frame timing for VAD delay calculation + self._last_audio_frame_time: Optional[float] = None + self._vad_delay_ms: Optional[int] = None + + async def process_frame(self, frame: Frame, direction: FrameDirection) -> None: + """Track audio frame timing before passing to parent. + + Only updates the timestamp when audio has actual speech content (not silence), + so VAD delay calculation reflects when user actually stopped speaking. + """ + if isinstance(frame, InputAudioRawFrame): + rms = _calculate_rms(frame.audio) + if rms > SILENCE_RMS_THRESHOLD: + self._last_audio_frame_time = time.time() + + await super().process_frame(frame, direction) + async def _handle_evt_speech_started(self, evt: Any) -> None: """Fires when user starts speaking (input_audio_buffer.speech_started). Captures wall-clock start time. Also flushes any in-progress interrupted assistant response before recording the new user turn. """ + # Reset VAD tracking for new turn + self._vad_delay_ms = None + + # Broadcast VAD user started speaking frame because realtime VAD does not broadcast it themselves + await self.broadcast_frame(VADUserStartedSpeakingFrame) + # Flush interrupted assistant response if one is in progress if self._assistant_responding and self._current_assistant_transcript_parts: partial_text = "".join(self._current_assistant_transcript_parts) + " [interrupted]" @@ -92,8 +134,21 @@ async def _handle_evt_speech_started(self, evt: Any) -> None: async def _handle_evt_speech_stopped(self, evt: Any) -> None: """Fires when user stops speaking (input_audio_buffer.speech_stopped). - Captures wall-clock end time for the user turn. + Captures wall-clock end time for the user turn and calculates VAD delay. """ + speech_stopped_time = time.time() + + # Calculate VAD delay: time between last audio frame and speech_stopped event + if self._last_audio_frame_time is not None: + self._vad_delay_ms = int((speech_stopped_time - self._last_audio_frame_time) * 1000) + else: + logger.warning("speech_stopped fired but no audio frames were tracked") + self._vad_delay_ms = None + + # Reset audio tracking for next turn + self._last_audio_frame_time = None + + await self.broadcast_frame(VADUserStoppedSpeakingFrame) await super()._handle_evt_speech_stopped(evt) item_id = getattr(evt, "item_id", None) or "" @@ -145,6 +200,7 @@ async def _handle_evt_audio_delta(self, evt: Any) -> None: """Fires for each audio chunk of the assistant response. Captures wall-clock of the *first* delta as assistant response start. + Also logs the full user-perceived response latency including VAD delay. """ await super()._handle_evt_audio_delta(evt) @@ -152,6 +208,24 @@ async def _handle_evt_audio_delta(self, evt: Any) -> None: self._assistant_response_start_wall_ms = _wall_ms() self._assistant_responding = True + # Log full user-perceived latency (includes VAD delay) + if self._vad_delay_ms is not None: + # Find the most recent user turn to get speech_stopped time + recent_record = None + for record in self._user_turns.values(): + if record.speech_stopped_wall_ms: + recent_record = record + + if recent_record and recent_record.speech_stopped_wall_ms: + speech_stopped_ms = int(recent_record.speech_stopped_wall_ms) + response_start_ms = int(self._assistant_response_start_wall_ms) + vad_to_response_ms = response_start_ms - speech_stopped_ms + full_latency_ms = vad_to_response_ms + self._vad_delay_ms + logger.debug( + f"Full response latency: {full_latency_ms}ms " + f"(VAD delay: {self._vad_delay_ms}ms + response: {vad_to_response_ms}ms)" + ) + async def _handle_evt_audio_transcript_delta(self, evt: Any) -> None: """Fires for incremental assistant transcript text. @@ -220,6 +294,16 @@ def _reset_assistant_state(self) -> None: self._assistant_response_start_wall_ms = None self._assistant_responding = False + @property + def last_vad_delay_ms(self) -> Optional[int]: + """Return the most recent VAD delay in milliseconds. + + This is the time between when audio frames stopped arriving and when + OpenAI's VAD detected end of speech. Can be used to adjust response + latency measurements to reflect user-perceived latency. + """ + return self._vad_delay_ms + @staticmethod def _response_has_function_calls(evt: Any) -> bool: """Return True if the response.done event contains any function_call outputs.""" diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index da83b77b..e4ce760c 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -20,7 +20,6 @@ AssemblyAIConnectionParams, AssemblyAISTTService, ) -from pipecat.services.azure.realtime.llm import AzureRealtimeLLMService from pipecat.services.cartesia.stt import CartesiaLiveOptions, CartesiaSTTService from pipecat.services.cartesia.tts import CartesiaTTSService from pipecat.services.deepgram.flux.stt import DeepgramFluxSTTService @@ -36,12 +35,14 @@ SemanticTurnDetection, SessionProperties, ) +from pipecat.services.openai.realtime.llm import OpenAIRealtimeLLMService from pipecat.services.openai.stt import OpenAISTTService from pipecat.services.openai.tts import VALID_VOICES, OpenAITTSService from pipecat.services.stt_service import STTService from pipecat.services.tts_service import TTSService from pipecat.transcriptions.language import Language from pipecat.utils.text.base_text_filter import BaseTextFilter +from websockets.asyncio.client import connect as websocket_connect from eva.assistant.pipeline.alm_vllm import ALMvLLMClient from eva.assistant.pipeline.nvidia_baseten import BasetenSTTService, BasetenTTSService @@ -371,6 +372,15 @@ def create_realtime_llm_service( """ model_lower = (model or "").lower() + # Get realtime server prompt + prompt_manager = PromptManager() + system_prompt = prompt_manager.get_prompt( + "realtime_agent.system_prompt", + agent_personality=agent.description, + agent_instructions=agent.instructions, + datetime=current_date_time, + ) + openai_tools = agent.build_tools_for_realtime() if agent else None # Convert OpenAI format tools to pipecat format @@ -390,62 +400,70 @@ def create_realtime_llm_service( ) pipecat_tools = ToolsSchema(standard_tools=function_schemas) - # Get realtime server prompt - prompt_manager = PromptManager() - system_prompt = prompt_manager.get_prompt( - "realtime_agent.system_prompt", - agent_personality=agent.description, - agent_instructions=agent.instructions, - datetime=current_date_time, + session_properties = SessionProperties( + instructions=system_prompt, + audio=AudioConfiguration( + input=AudioInput( + transcription=InputAudioTranscription( + model=params.get("transcription_model", "gpt-4o-mini-transcribe") + ), + # Set openai TurnDetection parameters. Not setting this at all will turn it on by default + turn_detection=SemanticTurnDetection(), + ), + output=AudioOutput( + voice=params.get("voice", "marin"), + ), + ), + tools=pipecat_tools, + tool_choice="auto", ) - if model_lower.startswith("gpt-realtime"): + if model_lower.startswith("openai"): + if audit_log is not None: + logger.info( + f"Using InstrumentedRealtimeLLMService for audit log interception: openai: {params.get('model')}" + ) + return InstrumentedRealtimeLLMService( + model=params.get("model"), + audit_log=audit_log, + api_key=params.get("api_key") or os.getenv("OPENAI_API_KEY"), + session_properties=session_properties, + ) + + return OpenAIRealtimeLLMService( + api_key=params.get("api_key"), + session_properties=session_properties, + ) + elif model_lower.startswith("azure") or model_lower.startswith("gpt-realtime"): # - # base_url =The full Azure WebSocket endpoint URL including api-version and deployment. + # base_url: The full Azure WebSocket endpoint URL including api-version and deployment. # Example: "wss://my-project.openai.azure.com/openai/v1/realtime" - url = os.environ.get("AZURE_OPENAI_REALTIME_ENDPOINT", "") - url += f"?model={model_lower}" - - session_properties = SessionProperties( - instructions=system_prompt, - audio=AudioConfiguration( - input=AudioInput( - transcription=InputAudioTranscription(model="whisper-1"), - # Set openai TurnDetection parameters. Not setting this at all will turn it - # on by default - turn_detection=SemanticTurnDetection(), - # Or set to False to disable openai turn detection and use transport VAD - # turn_detection=False, - # noise_reduction=InputAudioNoiseReduction(type="near_field"), - ), - output=AudioOutput( - voice=params.get("voice", "marin"), - ), - ), - tools=pipecat_tools, - tool_choice="auto", - ) - logger.info(f"Using Azure Realtime LLM: {model_lower}") + url = params.get("url", "") + + logger.info(f"Using Azure Realtime LLM: {model_lower}, url {url}") if audit_log is not None: logger.info("Using InstrumentedRealtimeLLMService for audit log interception") - return InstrumentedRealtimeLLMService( - model=model_lower, + service = InstrumentedRealtimeLLMService( + model=params.get("model"), audit_log=audit_log, - api_key=os.environ.get("AZURE_OPENAI_REALTIME_API_KEY"), + api_key=params.get("api_key"), base_url=url, session_properties=session_properties, ) + InstrumentedRealtimeLLMService._connect = override__connect # azure realtime connect + return service - return AzureRealtimeLLMService( - api_key=os.environ.get("AZURE_OPENAI_REALTIME_API_KEY"), + return OpenAIRealtimeLLMService( + api_key=params.get("api_key"), base_url=url, session_properties=session_properties, ) elif model_lower == "ultravox": + logger.info("Using Ultravox LLM") return UltravoxRealtimeLLMService( params=OneShotInputParams( - api_key=os.getenv("ULTRAVOX_API_KEY"), + api_key=params.get("api_key"), system_prompt=system_prompt, temperature=0.3, max_duration=datetime.timedelta(minutes=6), @@ -563,6 +581,26 @@ async def override_run_tts(self, text: str, context_id: str) -> AsyncGenerator[F yield ErrorFrame(error=f"Unknown error occurred: {e}") +async def override__connect(self): + try: + if self._websocket: + # Here we assume that if we have a websocket, we are connected. We + # handle disconnections in the send/recv code paths. + return + + logger.info(f"Connecting to {self.base_url}") + self._websocket = await websocket_connect( + uri=self.base_url, + additional_headers={ + "api-key": self.api_key, + }, + ) + self._receive_task = self.create_task(self._receive_task_handler()) + except Exception as e: + await self.push_error(error_msg=f"initialization error: {e}", exception=e) + self._websocket = None + + # Unicode to ASCII replacements for TTS _TTS_CHAR_MAP = str.maketrans( { diff --git a/src/eva/assistant/server.py b/src/eva/assistant/server.py index 57a0fc2e..4282e894 100644 --- a/src/eva/assistant/server.py +++ b/src/eva/assistant/server.py @@ -326,7 +326,10 @@ async def _realtime_tool_handler(params) -> None: "smart_turn_stop_secs", 0.8 ) # Shorter silence so we don't have to wait 3s if smart turn marks audio as incomplete - if isinstance(self.pipeline_config, PipelineConfig) and self.pipeline_config.turn_strategy == "external": + if ( + isinstance(self.pipeline_config, (PipelineConfig, SpeechToSpeechConfig)) + and self.pipeline_config.turn_strategy == "external" + ): logger.info("Using external user turn strategies") user_turn_strategies = ExternalUserTurnStrategies() vad_analyzer = None @@ -444,9 +447,29 @@ async def on_user_transcription(text: str, timestamp: str, turn_id: int | None) self._latency_measurements = [] async def on_latency_measured(observer, latency_seconds: float): - """Event handler for UserBotLatencyObserver - stores latency measurements.""" - self._latency_measurements.append(latency_seconds) - logger.debug(f"Response latency captured: {latency_seconds:.3f}s") + """Event handler for UserBotLatencyObserver - stores latency measurements. + + For realtime LLM, adds VAD delay to get full user-perceived latency. + For pipecat VAD (non-realtime), uses the latency as-is. + """ + adjusted_latency = latency_seconds + + # Add VAD delay for realtime LLM to get full user-perceived latency + if isinstance(realtime_llm, InstrumentedRealtimeLLMService): + vad_delay_ms = realtime_llm.last_vad_delay_ms + if vad_delay_ms is not None: + vad_delay_s = vad_delay_ms / 1000.0 + adjusted_latency = latency_seconds + vad_delay_s + logger.debug( + f"Response latency captured: {adjusted_latency:.3f}s " + f"(VAD delay: {vad_delay_s:.3f}s + pipecat: {latency_seconds:.3f}s)" + ) + else: + logger.debug(f"Response latency captured: {latency_seconds:.3f}s (no VAD delay available)") + else: + logger.debug(f"Response latency captured: {latency_seconds:.3f}s") + + self._latency_measurements.append(adjusted_latency) user_bot_observer = UserBotLatencyObserver() user_bot_observer.add_event_handler("on_latency_measured", on_latency_measured) diff --git a/src/eva/models/config.py b/src/eva/models/config.py index cd8fe819..99b706b6 100644 --- a/src/eva/models/config.py +++ b/src/eva/models/config.py @@ -97,6 +97,17 @@ class SpeechToSpeechConfig(BaseModel): s2s: str = Field(description="Speech-to-speech model name", examples=["gpt-realtime-mini", "gemini_live"]) s2s_params: dict[str, Any] = Field({}, description="Additional speech-to-speech model parameters (JSON)") + turn_strategy: Literal["smart", "external"] = Field( + "smart", + description=( + "User turn detection strategy. " + "'smart' uses LocalSmartTurnAnalyzerV3 + SileroVAD (default). " + "'external' uses ExternalUserTurnStrategies for services with built-in turn detection " + "(e.g., deepgram-flux, Speechmatics). " + "Set via EVA_MODEL__TURN_STRATEGY=external." + ), + ) + class AudioLLMConfig(BaseModel): """Configuration for an Audio-LLM pipeline (audio in, text out, separate TTS). @@ -129,7 +140,7 @@ class AudioLLMConfig(BaseModel): *PipelineConfig._LEGACY_RENAMES, *PipelineConfig._LEGACY_DROP, } -_S2S_FIELDS = {"s2s", "s2s_params"} +_S2S_FIELDS = {"s2s", "s2s_params", "turn_strategy"} _AUDIO_LLM_FIELDS = {"audio_llm", "audio_llm_params", "tts", "tts_params"} diff --git a/src/eva/utils/prompt_manager.py b/src/eva/utils/prompt_manager.py index 2216fddc..56971149 100644 --- a/src/eva/utils/prompt_manager.py +++ b/src/eva/utils/prompt_manager.py @@ -121,7 +121,7 @@ def get_prompt(self, path: str, **variables) -> str: return value.format(**formatted_vars) except KeyError as e: raise KeyError( - "Missing variable {e} for prompt '{path}'. Available variables: {sorted(formatted_vars.keys())}" + f"Missing variable {e} for prompt '{path}'. Available variables: {sorted(formatted_vars.keys())}" ) from e From 227e008903318fa2e365f0172ace3a7790c892c2 Mon Sep 17 00:00:00 2001 From: Katrina Date: Wed, 25 Mar 2026 20:31:34 -0400 Subject: [PATCH 02/17] add api_key to s2s params example --- .env.example | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.env.example b/.env.example index 7398c5d0..4a434630 100644 --- a/.env.example +++ b/.env.example @@ -172,7 +172,7 @@ EVA_MODEL__LLM=gpt-5.2 # Only needed if benchmarking speech-to-speech models. # EVA_MODEL__S2S=openai -# EVA_MODEL__S2S_PARAMS='{"model": "gpt-realtime-mini", "voice": "marin"}' +# EVA_MODEL__S2S_PARAMS='{"model": "gpt-realtime-mini", "api_key": ""}' # EVA_MODEL__AUDIO_LLM= # EVA_MODEL__AUDIO_LLM_PARAMS='{"url": "", "api_key": ""}' From 59ac784c262cefa0316f8293a124055a6b601cd2 Mon Sep 17 00:00:00 2001 From: Katrina Date: Wed, 25 Mar 2026 20:33:03 -0400 Subject: [PATCH 03/17] add comment --- src/eva/assistant/pipeline/services.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index e4ce760c..9cfb9f5c 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -582,6 +582,7 @@ async def override_run_tts(self, text: str, context_id: str) -> AsyncGenerator[F async def override__connect(self): + # Allow connections to azure / other providers using a base_url try: if self._websocket: # Here we assume that if we have a websocket, we are connected. We From e4f81c4d65abadc1c4fccacec37033938b292342 Mon Sep 17 00:00:00 2001 From: Katrina Date: Thu, 26 Mar 2026 11:06:23 -0400 Subject: [PATCH 04/17] force riva client 2.25.0 --- pyproject.toml | 2 +- uv.lock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index ec59536f..75a7d6b5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -54,7 +54,7 @@ dependencies = [ "jaconv>=0.3.0", "regex>=2023.0.0", "more-itertools>=10.0.0", - "nvidia-riva-client>=2.25.0,<3.0.0" + "nvidia-riva-client>=2.25.0,<2.25.1" ] [project.optional-dependencies] diff --git a/uv.lock b/uv.lock index b7c8efec..a291ea54 100644 --- a/uv.lock +++ b/uv.lock @@ -827,7 +827,7 @@ requires-dist = [ { name = "more-itertools", specifier = ">=10.0.0" }, { name = "mypy", marker = "extra == 'dev'", specifier = ">=1.5" }, { name = "numpy", specifier = ">=1.24" }, - { name = "nvidia-riva-client", specifier = ">=2.25.0,<3.0.0" }, + { name = "nvidia-riva-client", specifier = ">=2.25.0,<2.25.1" }, { name = "onnxruntime", specifier = ">=1.16.0" }, { name = "openai", specifier = ">=1.0.0" }, { name = "pandas", specifier = ">=2.0" }, From f3a1c15b7c5629db1c53f990cf44ea72a60916b9 Mon Sep 17 00:00:00 2001 From: Katrina Date: Thu, 26 Mar 2026 11:26:28 -0400 Subject: [PATCH 05/17] move session_properties object to openai/azure only flows --- src/eva/assistant/pipeline/services.py | 41 +++++++++++++++----------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index 9cfb9f5c..939e9236 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -400,25 +400,8 @@ def create_realtime_llm_service( ) pipecat_tools = ToolsSchema(standard_tools=function_schemas) - session_properties = SessionProperties( - instructions=system_prompt, - audio=AudioConfiguration( - input=AudioInput( - transcription=InputAudioTranscription( - model=params.get("transcription_model", "gpt-4o-mini-transcribe") - ), - # Set openai TurnDetection parameters. Not setting this at all will turn it on by default - turn_detection=SemanticTurnDetection(), - ), - output=AudioOutput( - voice=params.get("voice", "marin"), - ), - ), - tools=pipecat_tools, - tool_choice="auto", - ) - if model_lower.startswith("openai"): + session_properties = get_openai_session_properties(system_prompt, params, pipecat_tools) if audit_log is not None: logger.info( f"Using InstrumentedRealtimeLLMService for audit log interception: openai: {params.get('model')}" @@ -439,6 +422,7 @@ def create_realtime_llm_service( # base_url: The full Azure WebSocket endpoint URL including api-version and deployment. # Example: "wss://my-project.openai.azure.com/openai/v1/realtime" url = params.get("url", "") + session_properties = get_openai_session_properties(system_prompt, params, pipecat_tools) logger.info(f"Using Azure Realtime LLM: {model_lower}, url {url}") @@ -476,6 +460,27 @@ def create_realtime_llm_service( raise ValueError(f"Unknown realtime model: {model}. Available: gpt-realtime, ultravox") +def get_openai_session_properties(system_prompt: str, params: dict, pipecat_tools) -> SessionProperties: + """Create openai compatible session properties object.""" + return SessionProperties( + instructions=system_prompt, + audio=AudioConfiguration( + input=AudioInput( + transcription=InputAudioTranscription( + model=params.get("transcription_model", "gpt-4o-mini-transcribe") + ), + # Set openai TurnDetection parameters. Not setting this at all will turn it on by default + turn_detection=SemanticTurnDetection(), + ), + output=AudioOutput( + voice=params.get("voice", "marin"), + ), + ), + tools=pipecat_tools, + tool_choice="auto", + ) + + def create_audio_llm_client( model: str, params: dict[str, Any], From 1466cec64f470ac6a465c74dec00340f164c62fb Mon Sep 17 00:00:00 2001 From: Katrina Date: Thu, 26 Mar 2026 18:06:01 -0400 Subject: [PATCH 06/17] make api_key required for realtime models --- .../assistant/pipeline/audio_llm_processor.py | 3 +-- src/eva/assistant/pipeline/services.py | 11 +++++------ src/eva/models/config.py | 17 ++++++++++++----- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/src/eva/assistant/pipeline/audio_llm_processor.py b/src/eva/assistant/pipeline/audio_llm_processor.py index a9154d4e..bb5b24b3 100644 --- a/src/eva/assistant/pipeline/audio_llm_processor.py +++ b/src/eva/assistant/pipeline/audio_llm_processor.py @@ -19,7 +19,6 @@ import asyncio import base64 import io -import os import time import wave from collections.abc import Awaitable @@ -418,7 +417,7 @@ def __init__( super().__init__(**kwargs) self._audio_collector = audio_collector params = params or {} - self._api_key = params.get("api_key") or os.getenv("OPENAI_API_KEY") + self._api_key = params.get["api_key"] self._model = model self._system_prompt = system_prompt or self.DEFAULT_SYSTEM_PROMPT self._sample_rate = sample_rate diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index 939e9236..c750d6b2 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -4,7 +4,6 @@ """ import datetime -import os from typing import Any, AsyncGenerator, Optional from deepgram import LiveOptions @@ -409,12 +408,12 @@ def create_realtime_llm_service( return InstrumentedRealtimeLLMService( model=params.get("model"), audit_log=audit_log, - api_key=params.get("api_key") or os.getenv("OPENAI_API_KEY"), + api_key=params.get["api_key"], session_properties=session_properties, ) return OpenAIRealtimeLLMService( - api_key=params.get("api_key"), + api_key=params.get["api_key"], session_properties=session_properties, ) elif model_lower.startswith("azure") or model_lower.startswith("gpt-realtime"): @@ -431,7 +430,7 @@ def create_realtime_llm_service( service = InstrumentedRealtimeLLMService( model=params.get("model"), audit_log=audit_log, - api_key=params.get("api_key"), + api_key=params.get["api_key"], base_url=url, session_properties=session_properties, ) @@ -439,7 +438,7 @@ def create_realtime_llm_service( return service return OpenAIRealtimeLLMService( - api_key=params.get("api_key"), + api_key=params.get["api_key"], base_url=url, session_properties=session_properties, ) @@ -447,7 +446,7 @@ def create_realtime_llm_service( logger.info("Using Ultravox LLM") return UltravoxRealtimeLLMService( params=OneShotInputParams( - api_key=params.get("api_key"), + api_key=params.get["api_key"], system_prompt=system_prompt, temperature=0.3, max_duration=datetime.timedelta(minutes=6), diff --git a/src/eva/models/config.py b/src/eva/models/config.py index 99b706b6..6a7ec0e9 100644 --- a/src/eva/models/config.py +++ b/src/eva/models/config.py @@ -452,28 +452,35 @@ def _warn_deprecated_aliases(cls, data: Any) -> Any: @model_validator(mode="after") def _check_companion_services(self) -> "RunConfig": """Ensure required companion services are set for each pipeline mode.""" + required_keys = ["api_key", "model"] if isinstance(self.model, PipelineConfig): if not self.model.stt: raise ValueError("EVA_MODEL__STT is required when using EVA_MODEL__LLM (ASR-LLM-TTS pipeline).") if not self.model.tts: raise ValueError("EVA_MODEL__TTS is required when using EVA_MODEL__LLM (ASR-LLM-TTS pipeline).") - self._validate_service_params("STT", self.model.stt, self.model.stt_params) - self._validate_service_params("TTS", self.model.tts, self.model.tts_params) + self._validate_service_params("STT", self.model.stt, required_keys, self.model.stt_params) + self._validate_service_params("TTS", self.model.tts, required_keys, self.model.tts_params) elif isinstance(self.model, AudioLLMConfig): if not self.model.tts: raise ValueError("EVA_MODEL__TTS is required when using EVA_MODEL__AUDIO_LLM (SpeechLM-TTS pipeline).") - self._validate_service_params("TTS", self.model.tts, self.model.tts_params) + self._validate_service_params("TTS", self.model.tts, required_keys, self.model.tts_params) + self._validate_service_params("audio_llm", self.model.audio_llm, required_keys, self.model.audio_llm_params) + elif isinstance(self.model, SpeechToSpeechConfig): + # api_key is required, some s2s services don't require model + self._validate_service_params("S2S", self.model.s2s, ["api_key"], self.model.s2s_params) return self # Providers that manage their own model/key resolution (e.g. WebSocket-based) _SKIP_PARAMS_VALIDATION: ClassVar[set[str]] = {"nvidia"} @classmethod - def _validate_service_params(cls, service: str, provider: str, params: dict[str, Any]) -> None: + def _validate_service_params( + cls, service: str, provider: str, required_keys: list[str], params: dict[str, Any] + ) -> None: """Validate that STT/TTS params contain required keys.""" if provider.lower() in cls._SKIP_PARAMS_VALIDATION: return - missing = [key for key in ("api_key", "model") if key not in params] + missing = [key for key in required_keys if key not in params] if missing: missing_str = " and ".join(f'"{k}"' for k in missing) env_var = f"EVA_MODEL__{service}_PARAMS" From 74a1c018ee55d6f0cc0ad2699ae1f60dfaf001be Mon Sep 17 00:00:00 2001 From: Katrina Date: Thu, 26 Mar 2026 18:25:04 -0400 Subject: [PATCH 07/17] fix test now that api_key is mandatory for realtime models --- tests/unit/models/test_config_models.py | 37 +++++++++++++++++-------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/tests/unit/models/test_config_models.py b/tests/unit/models/test_config_models.py index 9b77854c..81e4179f 100644 --- a/tests/unit/models/test_config_models.py +++ b/tests/unit/models/test_config_models.py @@ -56,6 +56,10 @@ "EVA_MODEL__STT_PARAMS": json.dumps({"api_key": "test_key", "model": "nova-2"}), "EVA_MODEL__TTS_PARAMS": json.dumps({"api_key": "test_key", "model": "sonic"}), } +_S2S_ENV = _EVA_MODEL_LIST_ENV | { + "EVA_MODEL__S2S": "gpt-realtime-mini", + "EVA_MODEL__S2S_PARAMS": json.dumps({"api_key": ""}), +} def _config( @@ -355,14 +359,14 @@ class TestDeprecatedEnvVars: lambda c: c.model.tts, ), ( - _EVA_MODEL_LIST_ENV, + _S2S_ENV, "REALTIME_MODEL", "EVA_MODEL__S2S", "test-model", lambda c: c.model.s2s, ), ( - _EVA_MODEL_LIST_ENV, + _S2S_ENV, "EVA_MODEL__REALTIME_MODEL", "EVA_MODEL__S2S", "test-model", @@ -383,17 +387,17 @@ class TestDeprecatedEnvVars: lambda c: c.model.tts_params, ), ( - _EVA_MODEL_LIST_ENV | {"EVA_MODEL__S2S": "test-model"}, + _S2S_ENV, "REALTIME_MODEL_PARAMS", "EVA_MODEL__S2S_PARAMS", - {"foo": "bar"}, + {"api_key": "k"}, lambda c: c.model.s2s_params, ), ( - _EVA_MODEL_LIST_ENV | {"EVA_MODEL__S2S": "test-model"}, + _S2S_ENV, "EVA_MODEL__REALTIME_MODEL_PARAMS", "EVA_MODEL__S2S_PARAMS", - {"foo": "bar"}, + {"api_key": "k"}, lambda c: c.model.s2s_params, ), ( @@ -580,7 +584,7 @@ def test_tts_model(self): assert c.model.tts == "cartesia" def test_realtime_model(self): - config = _config(env_vars=_EVA_MODEL_LIST_ENV, cli_args=["--realtime-model", "test-model"]) + config = _config(env_vars=_S2S_ENV, cli_args=["--realtime-model", "test-model"]) assert config.model.s2s == "test-model" def test_domain_cli(self): @@ -656,20 +660,31 @@ class TestSpeechToSpeechConfig: def test_s2s_config_from_env(self): """EVA_MODEL__S2S selects SpeechToSpeechConfig.""" - config = _config(env_vars=_EVA_MODEL_LIST_ENV | {"EVA_MODEL__S2S": "gpt-realtime-mini"}) + config = _config( + env_vars=_EVA_MODEL_LIST_ENV + | { + "EVA_MODEL__S2S": "gpt-realtime-mini", + "EVA_MODEL__S2S_PARAMS": json.dumps({"api_key": ""}), + } + ) assert isinstance(config.model, SpeechToSpeechConfig) assert config.model.s2s == "gpt-realtime-mini" def test_s2s_config_from_cli(self): """--s2s-model selects SpeechToSpeechConfig.""" - config = _config(env_vars=_EVA_MODEL_LIST_ENV, cli_args=["--model.s2s", "gemini_live"]) + config = _config( + env_vars=_EVA_MODEL_LIST_ENV, + cli_args=["--model.s2s", "gemini_live", "--model.s2s-params", '{"api_key": "test-key"}'], + ) assert isinstance(config.model, SpeechToSpeechConfig) assert config.model.s2s == "gemini_live" + assert config.model.s2s_params == {"api_key": "test-key"} def test_s2s_config_with_params(self): """S2S params are passed through.""" config = _config( - env_vars=_EVA_MODEL_LIST_ENV, model={"s2s": "gpt-realtime-mini", "s2s_params": {"voice": "alloy"}} + env_vars=_EVA_MODEL_LIST_ENV, + model={"s2s": "gpt-realtime-mini", "s2s_params": {"voice": "alloy", "api_key": "key_1"}}, ) assert isinstance(config.model, SpeechToSpeechConfig) - assert config.model.s2s_params == {"voice": "alloy"} + assert config.model.s2s_params == {"voice": "alloy", "api_key": "key_1"} From ebd0a2691485ccb2d6a41699f72f63ec2ba68f9e Mon Sep 17 00:00:00 2001 From: tara-servicenow Date: Thu, 26 Mar 2026 17:09:05 -0700 Subject: [PATCH 08/17] Fix param get --- src/eva/assistant/pipeline/services.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index 328b18aa..1b735824 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -418,12 +418,12 @@ def create_realtime_llm_service( return InstrumentedRealtimeLLMService( model=params.get("model"), audit_log=audit_log, - api_key=params.get["api_key"], + api_key=params["api_key"], session_properties=session_properties, ) return OpenAIRealtimeLLMService( - api_key=params.get["api_key"], + api_key=params["api_key"], session_properties=session_properties, ) elif model_lower.startswith("azure") or model_lower.startswith("gpt-realtime"): @@ -440,7 +440,7 @@ def create_realtime_llm_service( service = InstrumentedRealtimeLLMService( model=params.get("model"), audit_log=audit_log, - api_key=params.get["api_key"], + api_key=params["api_key"], base_url=url, session_properties=session_properties, ) @@ -448,7 +448,7 @@ def create_realtime_llm_service( return service return OpenAIRealtimeLLMService( - api_key=params.get["api_key"], + api_key=params["api_key"], base_url=url, session_properties=session_properties, ) @@ -456,7 +456,7 @@ def create_realtime_llm_service( logger.info("Using Ultravox LLM") return UltravoxRealtimeLLMService( params=OneShotInputParams( - api_key=params.get["api_key"], + api_key=params["api_key"], system_prompt=system_prompt, temperature=0.3, max_duration=datetime.timedelta(minutes=6), From b3b9244da74db93e94d339c35afec67c9f60aa4e Mon Sep 17 00:00:00 2001 From: "user.email" Date: Fri, 27 Mar 2026 16:27:38 -0700 Subject: [PATCH 09/17] Website fixes --- .../{index-B7XxGtG-.js => index-DNHH3PHW.js} | 55 ++++++++----------- docs/assets/index-DNsPq0CK.css | 1 + docs/assets/index-DcU8EScs.css | 1 - docs/index.html | 4 +- website/src/components/metrics/MetricNode.tsx | 17 ++++-- website/src/data/leaderboardData.ts | 42 +++++++------- website/src/data/metricsData.ts | 28 +++++----- 7 files changed, 75 insertions(+), 73 deletions(-) rename docs/assets/{index-B7XxGtG-.js => index-DNHH3PHW.js} (67%) create mode 100644 docs/assets/index-DNsPq0CK.css delete mode 100644 docs/assets/index-DcU8EScs.css diff --git a/docs/assets/index-B7XxGtG-.js b/docs/assets/index-DNHH3PHW.js similarity index 67% rename from docs/assets/index-B7XxGtG-.js rename to docs/assets/index-DNHH3PHW.js index a564f0dd..67db553f 100644 --- a/docs/assets/index-B7XxGtG-.js +++ b/docs/assets/index-DNHH3PHW.js @@ -1,12 +1,12 @@ -function xR(e,t){for(var n=0;nr[s]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const u of o.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&r(u)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();function ia(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Xp={exports:{}},Ol={};var MS;function wR(){if(MS)return Ol;MS=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,s,o){var u=null;if(o!==void 0&&(u=""+o),s.key!==void 0&&(u=""+s.key),"key"in s){o={};for(var f in s)f!=="key"&&(o[f]=s[f])}else o=s;return s=o.ref,{$$typeof:e,type:r,key:u,ref:s!==void 0?s:null,props:o}}return Ol.Fragment=t,Ol.jsx=n,Ol.jsxs=n,Ol}var kS;function _R(){return kS||(kS=1,Xp.exports=wR()),Xp.exports}var b=_R(),Yp={exports:{}},Ae={};var NS;function SR(){if(NS)return Ae;NS=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),v=Symbol.iterator;function x(P){return P===null||typeof P!="object"?null:(P=v&&P[v]||P["@@iterator"],typeof P=="function"?P:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,S={};function O(P,H,ae){this.props=P,this.context=H,this.refs=S,this.updater=ae||w}O.prototype.isReactComponent={},O.prototype.setState=function(P,H){if(typeof P!="object"&&typeof P!="function"&&P!=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,P,H,"setState")},O.prototype.forceUpdate=function(P){this.updater.enqueueForceUpdate(this,P,"forceUpdate")};function M(){}M.prototype=O.prototype;function j(P,H,ae){this.props=P,this.context=H,this.refs=S,this.updater=ae||w}var k=j.prototype=new M;k.constructor=j,_(k,O.prototype),k.isPureReactComponent=!0;var N=Array.isArray;function C(){}var L={H:null,A:null,T:null,S:null},I=Object.prototype.hasOwnProperty;function Y(P,H,ae){var se=ae.ref;return{$$typeof:e,type:P,key:H,ref:se!==void 0?se:null,props:ae}}function te(P,H){return Y(P.type,H,P.props)}function ie(P){return typeof P=="object"&&P!==null&&P.$$typeof===e}function K(P){var H={"=":"=0",":":"=2"};return"$"+P.replace(/[=:]/g,function(ae){return H[ae]})}var be=/\/+/g;function pe(P,H){return typeof P=="object"&&P!==null&&P.key!=null?K(""+P.key):H.toString(36)}function xe(P){switch(P.status){case"fulfilled":return P.value;case"rejected":throw P.reason;default:switch(typeof P.status=="string"?P.then(C,C):(P.status="pending",P.then(function(H){P.status==="pending"&&(P.status="fulfilled",P.value=H)},function(H){P.status==="pending"&&(P.status="rejected",P.reason=H)})),P.status){case"fulfilled":return P.value;case"rejected":throw P.reason}}throw P}function V(P,H,ae,se,Z){var oe=typeof P;(oe==="undefined"||oe==="boolean")&&(P=null);var he=!1;if(P===null)he=!0;else switch(oe){case"bigint":case"string":case"number":he=!0;break;case"object":switch(P.$$typeof){case e:case t:he=!0;break;case m:return he=P._init,V(he(P._payload),H,ae,se,Z)}}if(he)return Z=Z(P),he=se===""?"."+pe(P,0):se,N(Z)?(ae="",he!=null&&(ae=he.replace(be,"$&/")+"/"),V(Z,H,ae,"",function(re){return re})):Z!=null&&(ie(Z)&&(Z=te(Z,ae+(Z.key==null||P&&P.key===Z.key?"":(""+Z.key).replace(be,"$&/")+"/")+he)),H.push(Z)),1;he=0;var _e=se===""?".":se+":";if(N(P))for(var J=0;J>>1,ue=V[le];if(0>>1;les(ae,ne))ses(Z,ae)?(V[le]=Z,V[se]=ne,le=se):(V[le]=ae,V[H]=ne,le=H);else if(ses(Z,ne))V[le]=Z,V[se]=ne,le=se;else break e}}return Q}function s(V,Q){var ne=V.sortIndex-Q.sortIndex;return ne!==0?ne:V.id-Q.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var u=Date,f=u.now();e.unstable_now=function(){return u.now()-f}}var d=[],h=[],m=1,p=null,v=3,x=!1,w=!1,_=!1,S=!1,O=typeof setTimeout=="function"?setTimeout:null,M=typeof clearTimeout=="function"?clearTimeout:null,j=typeof setImmediate<"u"?setImmediate:null;function k(V){for(var Q=n(h);Q!==null;){if(Q.callback===null)r(h);else if(Q.startTime<=V)r(h),Q.sortIndex=Q.expirationTime,t(d,Q);else break;Q=n(h)}}function N(V){if(_=!1,k(V),!w)if(n(d)!==null)w=!0,C||(C=!0,K());else{var Q=n(h);Q!==null&&xe(N,Q.startTime-V)}}var C=!1,L=-1,I=5,Y=-1;function te(){return S?!0:!(e.unstable_now()-YV&&te());){var le=p.callback;if(typeof le=="function"){p.callback=null,v=p.priorityLevel;var ue=le(p.expirationTime<=V);if(V=e.unstable_now(),typeof ue=="function"){p.callback=ue,k(V),Q=!0;break t}p===n(d)&&r(d),k(V)}else r(d);p=n(d)}if(p!==null)Q=!0;else{var P=n(h);P!==null&&xe(N,P.startTime-V),Q=!1}}break e}finally{p=null,v=ne,x=!1}Q=void 0}}finally{Q?K():C=!1}}}var K;if(typeof j=="function")K=function(){j(ie)};else if(typeof MessageChannel<"u"){var be=new MessageChannel,pe=be.port2;be.port1.onmessage=ie,K=function(){pe.postMessage(null)}}else K=function(){O(ie,0)};function xe(V,Q){L=O(function(){V(e.unstable_now())},Q)}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(V){V.callback=null},e.unstable_forceFrameRate=function(V){0>V||125le?(V.sortIndex=ne,t(h,V),n(d)===null&&V===n(h)&&(_?(M(L),L=-1):_=!0,xe(N,ne-le))):(V.sortIndex=ue,t(d,V),w||x||(w=!0,C||(C=!0,K()))),V},e.unstable_shouldYield=te,e.unstable_wrapCallback=function(V){var Q=v;return function(){var ne=v;v=Q;try{return V.apply(this,arguments)}finally{v=ne}}}})(Zp)),Zp}var PS;function ER(){return PS||(PS=1,Wp.exports=OR()),Wp.exports}var Qp={exports:{}},Yt={};var RS;function jR(){if(RS)return Yt;RS=1;var e=yo();function t(d){var h="https://react.dev/errors/"+d;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Qp.exports=jR(),Qp.exports}var zS;function MR(){if(zS)return El;zS=1;var e=ER(),t=yo(),n=iM();function r(i){var a="https://react.dev/errors/"+i;if(1ue||(i.current=le[ue],le[ue]=null,ue--)}function ae(i,a){ue++,le[ue]=i.current,i.current=a}var se=P(null),Z=P(null),oe=P(null),he=P(null);function _e(i,a){switch(ae(oe,a),ae(Z,i),ae(se,null),a.nodeType){case 9:case 11:i=(i=a.documentElement)&&(i=i.namespaceURI)?Q_(i):0;break;default:if(i=a.tagName,a=a.namespaceURI)a=Q_(a),i=J_(a,i);else switch(i){case"svg":i=1;break;case"math":i=2;break;default:i=0}}H(se),ae(se,i)}function J(){H(se),H(Z),H(oe)}function re(i){i.memoizedState!==null&&ae(he,i);var a=se.current,l=J_(a,i.type);a!==l&&(ae(Z,i),ae(se,l))}function Se(i){Z.current===i&&(H(se),H(Z)),he.current===i&&(H(he),_l._currentValue=ne)}var ee,Rt;function De(i){if(ee===void 0)try{throw Error()}catch(l){var a=l.stack.trim().match(/\n( *(at )?)/);ee=a&&a[1]||"",Rt=-1r[s]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const u of o.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&r(u)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();function ia(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Xp={exports:{}},Ol={};var MS;function _R(){if(MS)return Ol;MS=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,s,o){var u=null;if(o!==void 0&&(u=""+o),s.key!==void 0&&(u=""+s.key),"key"in s){o={};for(var f in s)f!=="key"&&(o[f]=s[f])}else o=s;return s=o.ref,{$$typeof:e,type:r,key:u,ref:s!==void 0?s:null,props:o}}return Ol.Fragment=t,Ol.jsx=n,Ol.jsxs=n,Ol}var NS;function SR(){return NS||(NS=1,Xp.exports=_R()),Xp.exports}var b=SR(),Yp={exports:{}},Ae={};var kS;function AR(){if(kS)return Ae;kS=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),v=Symbol.iterator;function x(P){return P===null||typeof P!="object"?null:(P=v&&P[v]||P["@@iterator"],typeof P=="function"?P:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,S={};function O(P,H,ae){this.props=P,this.context=H,this.refs=S,this.updater=ae||w}O.prototype.isReactComponent={},O.prototype.setState=function(P,H){if(typeof P!="object"&&typeof P!="function"&&P!=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,P,H,"setState")},O.prototype.forceUpdate=function(P){this.updater.enqueueForceUpdate(this,P,"forceUpdate")};function M(){}M.prototype=O.prototype;function j(P,H,ae){this.props=P,this.context=H,this.refs=S,this.updater=ae||w}var N=j.prototype=new M;N.constructor=j,_(N,O.prototype),N.isPureReactComponent=!0;var k=Array.isArray;function C(){}var L={H:null,A:null,T:null,S:null},I=Object.prototype.hasOwnProperty;function Y(P,H,ae){var se=ae.ref;return{$$typeof:e,type:P,key:H,ref:se!==void 0?se:null,props:ae}}function te(P,H){return Y(P.type,H,P.props)}function ie(P){return typeof P=="object"&&P!==null&&P.$$typeof===e}function K(P){var H={"=":"=0",":":"=2"};return"$"+P.replace(/[=:]/g,function(ae){return H[ae]})}var be=/\/+/g;function pe(P,H){return typeof P=="object"&&P!==null&&P.key!=null?K(""+P.key):H.toString(36)}function xe(P){switch(P.status){case"fulfilled":return P.value;case"rejected":throw P.reason;default:switch(typeof P.status=="string"?P.then(C,C):(P.status="pending",P.then(function(H){P.status==="pending"&&(P.status="fulfilled",P.value=H)},function(H){P.status==="pending"&&(P.status="rejected",P.reason=H)})),P.status){case"fulfilled":return P.value;case"rejected":throw P.reason}}throw P}function V(P,H,ae,se,Z){var oe=typeof P;(oe==="undefined"||oe==="boolean")&&(P=null);var he=!1;if(P===null)he=!0;else switch(oe){case"bigint":case"string":case"number":he=!0;break;case"object":switch(P.$$typeof){case e:case t:he=!0;break;case m:return he=P._init,V(he(P._payload),H,ae,se,Z)}}if(he)return Z=Z(P),he=se===""?"."+pe(P,0):se,k(Z)?(ae="",he!=null&&(ae=he.replace(be,"$&/")+"/"),V(Z,H,ae,"",function(re){return re})):Z!=null&&(ie(Z)&&(Z=te(Z,ae+(Z.key==null||P&&P.key===Z.key?"":(""+Z.key).replace(be,"$&/")+"/")+he)),H.push(Z)),1;he=0;var _e=se===""?".":se+":";if(k(P))for(var J=0;J>>1,ue=V[le];if(0>>1;les(ae,ne))ses(Z,ae)?(V[le]=Z,V[se]=ne,le=se):(V[le]=ae,V[H]=ne,le=H);else if(ses(Z,ne))V[le]=Z,V[se]=ne,le=se;else break e}}return Q}function s(V,Q){var ne=V.sortIndex-Q.sortIndex;return ne!==0?ne:V.id-Q.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var u=Date,f=u.now();e.unstable_now=function(){return u.now()-f}}var d=[],h=[],m=1,p=null,v=3,x=!1,w=!1,_=!1,S=!1,O=typeof setTimeout=="function"?setTimeout:null,M=typeof clearTimeout=="function"?clearTimeout:null,j=typeof setImmediate<"u"?setImmediate:null;function N(V){for(var Q=n(h);Q!==null;){if(Q.callback===null)r(h);else if(Q.startTime<=V)r(h),Q.sortIndex=Q.expirationTime,t(d,Q);else break;Q=n(h)}}function k(V){if(_=!1,N(V),!w)if(n(d)!==null)w=!0,C||(C=!0,K());else{var Q=n(h);Q!==null&&xe(k,Q.startTime-V)}}var C=!1,L=-1,I=5,Y=-1;function te(){return S?!0:!(e.unstable_now()-YV&&te());){var le=p.callback;if(typeof le=="function"){p.callback=null,v=p.priorityLevel;var ue=le(p.expirationTime<=V);if(V=e.unstable_now(),typeof ue=="function"){p.callback=ue,N(V),Q=!0;break t}p===n(d)&&r(d),N(V)}else r(d);p=n(d)}if(p!==null)Q=!0;else{var P=n(h);P!==null&&xe(k,P.startTime-V),Q=!1}}break e}finally{p=null,v=ne,x=!1}Q=void 0}}finally{Q?K():C=!1}}}var K;if(typeof j=="function")K=function(){j(ie)};else if(typeof MessageChannel<"u"){var be=new MessageChannel,pe=be.port2;be.port1.onmessage=ie,K=function(){pe.postMessage(null)}}else K=function(){O(ie,0)};function xe(V,Q){L=O(function(){V(e.unstable_now())},Q)}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(V){V.callback=null},e.unstable_forceFrameRate=function(V){0>V||125le?(V.sortIndex=ne,t(h,V),n(d)===null&&V===n(h)&&(_?(M(L),L=-1):_=!0,xe(k,ne-le))):(V.sortIndex=ue,t(d,V),w||x||(w=!0,C||(C=!0,K()))),V},e.unstable_shouldYield=te,e.unstable_wrapCallback=function(V){var Q=v;return function(){var ne=v;v=Q;try{return V.apply(this,arguments)}finally{v=ne}}}})(Zp)),Zp}var PS;function jR(){return PS||(PS=1,Wp.exports=ER()),Wp.exports}var Qp={exports:{}},Yt={};var RS;function MR(){if(RS)return Yt;RS=1;var e=yo();function t(d){var h="https://react.dev/errors/"+d;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Qp.exports=MR(),Qp.exports}var zS;function NR(){if(zS)return El;zS=1;var e=jR(),t=yo(),n=iM();function r(i){var a="https://react.dev/errors/"+i;if(1ue||(i.current=le[ue],le[ue]=null,ue--)}function ae(i,a){ue++,le[ue]=i.current,i.current=a}var se=P(null),Z=P(null),oe=P(null),he=P(null);function _e(i,a){switch(ae(oe,a),ae(Z,i),ae(se,null),a.nodeType){case 9:case 11:i=(i=a.documentElement)&&(i=i.namespaceURI)?Q_(i):0;break;default:if(i=a.tagName,a=a.namespaceURI)a=Q_(a),i=J_(a,i);else switch(i){case"svg":i=1;break;case"math":i=2;break;default:i=0}}H(se),ae(se,i)}function J(){H(se),H(Z),H(oe)}function re(i){i.memoizedState!==null&&ae(he,i);var a=se.current,l=J_(a,i.type);a!==l&&(ae(Z,i),ae(se,l))}function Se(i){Z.current===i&&(H(se),H(Z)),he.current===i&&(H(he),_l._currentValue=ne)}var ee,Rt;function De(i){if(ee===void 0)try{throw Error()}catch(l){var a=l.stack.trim().match(/\n( *(at )?)/);ee=a&&a[1]||"",Rt=-1)":-1g||D[c]!==U[g]){var X=` `+D[c].replace(" at new "," at ");return i.displayName&&X.includes("")&&(X=X.replace("",i.displayName)),X}while(1<=c&&0<=g);break}}}finally{Lt=!1,Error.prepareStackTrace=l}return(l=i?i.displayName||i.name:"")?De(l):""}function Pr(i,a){switch(i.tag){case 26:case 27:case 5:return De(i.type);case 16:return De("Lazy");case 13:return i.child!==a&&a!==null?De("Suspense Fallback"):De("Suspense");case 19:return De("SuspenseList");case 0:case 15:return zt(i.type,!1);case 11:return zt(i.type.render,!1);case 1:return zt(i.type,!0);case 31:return De("Activity");default:return""}}function Do(i){try{var a="",l=null;do a+=Pr(i,l),l=i,i=i.return;while(i);return a}catch(c){return` Error generating stack: `+c.message+` -`+c.stack}}var Ch=Object.prototype.hasOwnProperty,Dh=e.unstable_scheduleCallback,Ph=e.unstable_cancelCallback,Q5=e.unstable_shouldYield,J5=e.unstable_requestPaint,bn=e.unstable_now,eP=e.unstable_getCurrentPriorityLevel,kx=e.unstable_ImmediatePriority,Nx=e.unstable_UserBlockingPriority,Ku=e.unstable_NormalPriority,tP=e.unstable_LowPriority,Cx=e.unstable_IdlePriority,nP=e.log,rP=e.unstable_setDisableYieldValue,Po=null,xn=null;function bi(i){if(typeof nP=="function"&&rP(i),xn&&typeof xn.setStrictMode=="function")try{xn.setStrictMode(Po,i)}catch{}}var wn=Math.clz32?Math.clz32:sP,iP=Math.log,aP=Math.LN2;function sP(i){return i>>>=0,i===0?32:31-(iP(i)/aP|0)|0}var Xu=256,Yu=262144,Gu=4194304;function fa(i){var a=i&42;if(a!==0)return a;switch(i&-i){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 i&261888;case 262144:case 524288:case 1048576:case 2097152:return i&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return i&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return i}}function Wu(i,a,l){var c=i.pendingLanes;if(c===0)return 0;var g=0,y=i.suspendedLanes,T=i.pingedLanes;i=i.warmLanes;var E=c&134217727;return E!==0?(c=E&~y,c!==0?g=fa(c):(T&=E,T!==0?g=fa(T):l||(l=E&~i,l!==0&&(g=fa(l))))):(E=c&~y,E!==0?g=fa(E):T!==0?g=fa(T):l||(l=c&~i,l!==0&&(g=fa(l)))),g===0?0:a!==0&&a!==g&&(a&y)===0&&(y=g&-g,l=a&-a,y>=l||y===32&&(l&4194048)!==0)?a:g}function Ro(i,a){return(i.pendingLanes&~(i.suspendedLanes&~i.pingedLanes)&a)===0}function oP(i,a){switch(i){case 1:case 2:case 4:case 8:case 64:return a+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 a+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 Dx(){var i=Gu;return Gu<<=1,(Gu&62914560)===0&&(Gu=4194304),i}function Rh(i){for(var a=[],l=0;31>l;l++)a.push(i);return a}function Lo(i,a){i.pendingLanes|=a,a!==268435456&&(i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0)}function lP(i,a,l,c,g,y){var T=i.pendingLanes;i.pendingLanes=l,i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0,i.expiredLanes&=l,i.entangledLanes&=l,i.errorRecoveryDisabledLanes&=l,i.shellSuspendCounter=0;var E=i.entanglements,D=i.expirationTimes,U=i.hiddenUpdates;for(l=T&~l;0"u")return null;try{return i.activeElement||i.body}catch{return i.body}}var mP=/[\n"\\]/g;function zn(i){return i.replace(mP,function(a){return"\\"+a.charCodeAt(0).toString(16)+" "})}function Vh(i,a,l,c,g,y,T,E){i.name="",T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"?i.type=T:i.removeAttribute("type"),a!=null?T==="number"?(a===0&&i.value===""||i.value!=a)&&(i.value=""+Ln(a)):i.value!==""+Ln(a)&&(i.value=""+Ln(a)):T!=="submit"&&T!=="reset"||i.removeAttribute("value"),a!=null?qh(i,T,Ln(a)):l!=null?qh(i,T,Ln(l)):c!=null&&i.removeAttribute("value"),g==null&&y!=null&&(i.defaultChecked=!!y),g!=null&&(i.checked=g&&typeof g!="function"&&typeof g!="symbol"),E!=null&&typeof E!="function"&&typeof E!="symbol"&&typeof E!="boolean"?i.name=""+Ln(E):i.removeAttribute("name")}function Kx(i,a,l,c,g,y,T,E){if(y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(i.type=y),a!=null||l!=null){if(!(y!=="submit"&&y!=="reset"||a!=null)){Uh(i);return}l=l!=null?""+Ln(l):"",a=a!=null?""+Ln(a):l,E||a===i.value||(i.value=a),i.defaultValue=a}c=c??g,c=typeof c!="function"&&typeof c!="symbol"&&!!c,i.checked=E?i.checked:!!c,i.defaultChecked=!!c,T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"&&(i.name=T),Uh(i)}function qh(i,a,l){a==="number"&&Ju(i.ownerDocument)===i||i.defaultValue===""+l||(i.defaultValue=""+l)}function us(i,a,l,c){if(i=i.options,a){a={};for(var g=0;g"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Xh=!1;if(zr)try{var Uo={};Object.defineProperty(Uo,"passive",{get:function(){Xh=!0}}),window.addEventListener("test",Uo,Uo),window.removeEventListener("test",Uo,Uo)}catch{Xh=!1}var wi=null,Yh=null,tc=null;function Jx(){if(tc)return tc;var i,a=Yh,l=a.length,c,g="value"in wi?wi.value:wi.textContent,y=g.length;for(i=0;i=$o),a1=" ",s1=!1;function o1(i,a){switch(i){case"keyup":return qP.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function l1(i){return i=i.detail,typeof i=="object"&&"data"in i?i.data:null}var hs=!1;function FP(i,a){switch(i){case"compositionend":return l1(a);case"keypress":return a.which!==32?null:(s1=!0,a1);case"textInput":return i=a.data,i===a1&&s1?null:i;default:return null}}function HP(i,a){if(hs)return i==="compositionend"||!Jh&&o1(i,a)?(i=Jx(),tc=Yh=wi=null,hs=!1,i):null;switch(i){case"paste":return null;case"keypress":if(!(a.ctrlKey||a.altKey||a.metaKey)||a.ctrlKey&&a.altKey){if(a.char&&1=a)return{node:l,offset:a-i};i=c}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=g1(l)}}function v1(i,a){return i&&a?i===a?!0:i&&i.nodeType===3?!1:a&&a.nodeType===3?v1(i,a.parentNode):"contains"in i?i.contains(a):i.compareDocumentPosition?!!(i.compareDocumentPosition(a)&16):!1:!1}function b1(i){i=i!=null&&i.ownerDocument!=null&&i.ownerDocument.defaultView!=null?i.ownerDocument.defaultView:window;for(var a=Ju(i.document);a instanceof i.HTMLIFrameElement;){try{var l=typeof a.contentWindow.location.href=="string"}catch{l=!1}if(l)i=a.contentWindow;else break;a=Ju(i.document)}return a}function nm(i){var a=i&&i.nodeName&&i.nodeName.toLowerCase();return a&&(a==="input"&&(i.type==="text"||i.type==="search"||i.type==="tel"||i.type==="url"||i.type==="password")||a==="textarea"||i.contentEditable==="true")}var JP=zr&&"documentMode"in document&&11>=document.documentMode,ms=null,rm=null,Xo=null,im=!1;function x1(i,a,l){var c=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;im||ms==null||ms!==Ju(c)||(c=ms,"selectionStart"in c&&nm(c)?c={start:c.selectionStart,end:c.selectionEnd}:(c=(c.ownerDocument&&c.ownerDocument.defaultView||window).getSelection(),c={anchorNode:c.anchorNode,anchorOffset:c.anchorOffset,focusNode:c.focusNode,focusOffset:c.focusOffset}),Xo&&Ko(Xo,c)||(Xo=c,c=Yc(rm,"onSelect"),0>=T,g-=T,gr=1<<32-wn(a)+g|l<Oe?(ke=me,me=null):ke=me.sibling;var Re=q(z,me,B[Oe],G);if(Re===null){me===null&&(me=ke);break}i&&me&&Re.alternate===null&&a(z,me),R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re,me=ke}if(Oe===B.length)return l(z,me),Ne&&Br(z,Oe),ge;if(me===null){for(;OeOe?(ke=me,me=null):ke=me.sibling;var $i=q(z,me,Re.value,G);if($i===null){me===null&&(me=ke);break}i&&me&&$i.alternate===null&&a(z,me),R=y($i,R,Oe),Pe===null?ge=$i:Pe.sibling=$i,Pe=$i,me=ke}if(Re.done)return l(z,me),Ne&&Br(z,Oe),ge;if(me===null){for(;!Re.done;Oe++,Re=B.next())Re=W(z,Re.value,G),Re!==null&&(R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re);return Ne&&Br(z,Oe),ge}for(me=c(me);!Re.done;Oe++,Re=B.next())Re=F(me,z,Oe,Re.value,G),Re!==null&&(i&&Re.alternate!==null&&me.delete(Re.key===null?Oe:Re.key),R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re);return i&&me.forEach(function(bR){return a(z,bR)}),Ne&&Br(z,Oe),ge}function Fe(z,R,B,G){if(typeof B=="object"&&B!==null&&B.type===_&&B.key===null&&(B=B.props.children),typeof B=="object"&&B!==null){switch(B.$$typeof){case x:e:{for(var ge=B.key;R!==null;){if(R.key===ge){if(ge=B.type,ge===_){if(R.tag===7){l(z,R.sibling),G=g(R,B.props.children),G.return=z,z=G;break e}}else if(R.elementType===ge||typeof ge=="object"&&ge!==null&&ge.$$typeof===I&&_a(ge)===R.type){l(z,R.sibling),G=g(R,B.props),Jo(G,B),G.return=z,z=G;break e}l(z,R);break}else a(z,R);R=R.sibling}B.type===_?(G=ya(B.props.children,z.mode,G,B.key),G.return=z,z=G):(G=fc(B.type,B.key,B.props,null,z.mode,G),Jo(G,B),G.return=z,z=G)}return T(z);case w:e:{for(ge=B.key;R!==null;){if(R.key===ge)if(R.tag===4&&R.stateNode.containerInfo===B.containerInfo&&R.stateNode.implementation===B.implementation){l(z,R.sibling),G=g(R,B.children||[]),G.return=z,z=G;break e}else{l(z,R);break}else a(z,R);R=R.sibling}G=fm(B,z.mode,G),G.return=z,z=G}return T(z);case I:return B=_a(B),Fe(z,R,B,G)}if(xe(B))return fe(z,R,B,G);if(K(B)){if(ge=K(B),typeof ge!="function")throw Error(r(150));return B=ge.call(B),we(z,R,B,G)}if(typeof B.then=="function")return Fe(z,R,vc(B),G);if(B.$$typeof===j)return Fe(z,R,mc(z,B),G);bc(z,B)}return typeof B=="string"&&B!==""||typeof B=="number"||typeof B=="bigint"?(B=""+B,R!==null&&R.tag===6?(l(z,R.sibling),G=g(R,B),G.return=z,z=G):(l(z,R),G=cm(B,z.mode,G),G.return=z,z=G),T(z)):l(z,R)}return function(z,R,B,G){try{Qo=0;var ge=Fe(z,R,B,G);return Ts=null,ge}catch(me){if(me===As||me===gc)throw me;var Pe=Sn(29,me,null,z.mode);return Pe.lanes=G,Pe.return=z,Pe}}}var Aa=$1(!0),F1=$1(!1),Oi=!1;function Sm(i){i.updateQueue={baseState:i.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Am(i,a){i=i.updateQueue,a.updateQueue===i&&(a.updateQueue={baseState:i.baseState,firstBaseUpdate:i.firstBaseUpdate,lastBaseUpdate:i.lastBaseUpdate,shared:i.shared,callbacks:null})}function Ei(i){return{lane:i,tag:0,payload:null,callback:null,next:null}}function ji(i,a,l){var c=i.updateQueue;if(c===null)return null;if(c=c.shared,(Ie&2)!==0){var g=c.pending;return g===null?a.next=a:(a.next=g.next,g.next=a),c.pending=a,a=cc(i),E1(i,null,l),a}return uc(i,c,a,l),cc(i)}function el(i,a,l){if(a=a.updateQueue,a!==null&&(a=a.shared,(l&4194048)!==0)){var c=a.lanes;c&=i.pendingLanes,l|=c,a.lanes=l,Rx(i,l)}}function Tm(i,a){var l=i.updateQueue,c=i.alternate;if(c!==null&&(c=c.updateQueue,l===c)){var g=null,y=null;if(l=l.firstBaseUpdate,l!==null){do{var T={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};y===null?g=y=T:y=y.next=T,l=l.next}while(l!==null);y===null?g=y=a:y=y.next=a}else g=y=a;l={baseState:c.baseState,firstBaseUpdate:g,lastBaseUpdate:y,shared:c.shared,callbacks:c.callbacks},i.updateQueue=l;return}i=l.lastBaseUpdate,i===null?l.firstBaseUpdate=a:i.next=a,l.lastBaseUpdate=a}var Om=!1;function tl(){if(Om){var i=Ss;if(i!==null)throw i}}function nl(i,a,l,c){Om=!1;var g=i.updateQueue;Oi=!1;var y=g.firstBaseUpdate,T=g.lastBaseUpdate,E=g.shared.pending;if(E!==null){g.shared.pending=null;var D=E,U=D.next;D.next=null,T===null?y=U:T.next=U,T=D;var X=i.alternate;X!==null&&(X=X.updateQueue,E=X.lastBaseUpdate,E!==T&&(E===null?X.firstBaseUpdate=U:E.next=U,X.lastBaseUpdate=D))}if(y!==null){var W=g.baseState;T=0,X=U=D=null,E=y;do{var q=E.lane&-536870913,F=q!==E.lane;if(F?(Me&q)===q:(c&q)===q){q!==0&&q===_s&&(Om=!0),X!==null&&(X=X.next={lane:0,tag:E.tag,payload:E.payload,callback:null,next:null});e:{var fe=i,we=E;q=a;var Fe=l;switch(we.tag){case 1:if(fe=we.payload,typeof fe=="function"){W=fe.call(Fe,W,q);break e}W=fe;break e;case 3:fe.flags=fe.flags&-65537|128;case 0:if(fe=we.payload,q=typeof fe=="function"?fe.call(Fe,W,q):fe,q==null)break e;W=p({},W,q);break e;case 2:Oi=!0}}q=E.callback,q!==null&&(i.flags|=64,F&&(i.flags|=8192),F=g.callbacks,F===null?g.callbacks=[q]:F.push(q))}else F={lane:q,tag:E.tag,payload:E.payload,callback:E.callback,next:null},X===null?(U=X=F,D=W):X=X.next=F,T|=q;if(E=E.next,E===null){if(E=g.shared.pending,E===null)break;F=E,E=F.next,F.next=null,g.lastBaseUpdate=F,g.shared.pending=null}}while(!0);X===null&&(D=W),g.baseState=D,g.firstBaseUpdate=U,g.lastBaseUpdate=X,y===null&&(g.shared.lanes=0),Di|=T,i.lanes=T,i.memoizedState=W}}function H1(i,a){if(typeof i!="function")throw Error(r(191,i));i.call(a)}function K1(i,a){var l=i.callbacks;if(l!==null)for(i.callbacks=null,i=0;iy?y:8;var T=V.T,E={};V.T=E,Hm(i,!1,a,l);try{var D=g(),U=V.S;if(U!==null&&U(E,D),D!==null&&typeof D=="object"&&typeof D.then=="function"){var X=l4(D,c);al(i,a,X,jn(i))}else al(i,a,c,jn(i))}catch(W){al(i,a,{then:function(){},status:"rejected",reason:W},jn())}finally{Q.p=y,T!==null&&E.types!==null&&(T.types=E.types),V.T=T}}function m4(){}function $m(i,a,l,c){if(i.tag!==5)throw Error(r(476));var g=Aw(i).queue;Sw(i,g,a,ne,l===null?m4:function(){return Tw(i),l(c)})}function Aw(i){var a=i.memoizedState;if(a!==null)return a;a={memoizedState:ne,baseState:ne,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:ne},next:null};var l={};return a.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:l},next:null},i.memoizedState=a,i=i.alternate,i!==null&&(i.memoizedState=a),a}function Tw(i){var a=Aw(i);a.next===null&&(a=i.alternate.memoizedState),al(i,a.next.queue,{},jn())}function Fm(){return Ut(_l)}function Ow(){return ft().memoizedState}function Ew(){return ft().memoizedState}function p4(i){for(var a=i.return;a!==null;){switch(a.tag){case 24:case 3:var l=jn();i=Ei(l);var c=ji(a,i,l);c!==null&&(hn(c,a,l),el(c,a,l)),a={cache:bm()},i.payload=a;return}a=a.return}}function g4(i,a,l){var c=jn();l={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Mc(i)?Mw(a,l):(l=lm(i,a,l,c),l!==null&&(hn(l,i,c),kw(l,a,c)))}function jw(i,a,l){var c=jn();al(i,a,l,c)}function al(i,a,l,c){var g={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Mc(i))Mw(a,g);else{var y=i.alternate;if(i.lanes===0&&(y===null||y.lanes===0)&&(y=a.lastRenderedReducer,y!==null))try{var T=a.lastRenderedState,E=y(T,l);if(g.hasEagerState=!0,g.eagerState=E,_n(E,T))return uc(i,a,g,0),Ke===null&&lc(),!1}catch{}if(l=lm(i,a,g,c),l!==null)return hn(l,i,c),kw(l,a,c),!0}return!1}function Hm(i,a,l,c){if(c={lane:2,revertLane:Sp(),gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null},Mc(i)){if(a)throw Error(r(479))}else a=lm(i,l,c,2),a!==null&&hn(a,i,2)}function Mc(i){var a=i.alternate;return i===Te||a!==null&&a===Te}function Mw(i,a){Es=_c=!0;var l=i.pending;l===null?a.next=a:(a.next=l.next,l.next=a),i.pending=a}function kw(i,a,l){if((l&4194048)!==0){var c=a.lanes;c&=i.pendingLanes,l|=c,a.lanes=l,Rx(i,l)}}var sl={readContext:Ut,use:Tc,useCallback:at,useContext:at,useEffect:at,useImperativeHandle:at,useLayoutEffect:at,useInsertionEffect:at,useMemo:at,useReducer:at,useRef:at,useState:at,useDebugValue:at,useDeferredValue:at,useTransition:at,useSyncExternalStore:at,useId:at,useHostTransitionStatus:at,useFormState:at,useActionState:at,useOptimistic:at,useMemoCache:at,useCacheRefresh:at};sl.useEffectEvent=at;var Nw={readContext:Ut,use:Tc,useCallback:function(i,a){return en().memoizedState=[i,a===void 0?null:a],i},useContext:Ut,useEffect:mw,useImperativeHandle:function(i,a,l){l=l!=null?l.concat([i]):null,Ec(4194308,4,vw.bind(null,a,i),l)},useLayoutEffect:function(i,a){return Ec(4194308,4,i,a)},useInsertionEffect:function(i,a){Ec(4,2,i,a)},useMemo:function(i,a){var l=en();a=a===void 0?null:a;var c=i();if(Ta){bi(!0);try{i()}finally{bi(!1)}}return l.memoizedState=[c,a],c},useReducer:function(i,a,l){var c=en();if(l!==void 0){var g=l(a);if(Ta){bi(!0);try{l(a)}finally{bi(!1)}}}else g=a;return c.memoizedState=c.baseState=g,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:i,lastRenderedState:g},c.queue=i,i=i.dispatch=g4.bind(null,Te,i),[c.memoizedState,i]},useRef:function(i){var a=en();return i={current:i},a.memoizedState=i},useState:function(i){i=Im(i);var a=i.queue,l=jw.bind(null,Te,a);return a.dispatch=l,[i.memoizedState,l]},useDebugValue:Vm,useDeferredValue:function(i,a){var l=en();return qm(l,i,a)},useTransition:function(){var i=Im(!1);return i=Sw.bind(null,Te,i.queue,!0,!1),en().memoizedState=i,[!1,i]},useSyncExternalStore:function(i,a,l){var c=Te,g=en();if(Ne){if(l===void 0)throw Error(r(407));l=l()}else{if(l=a(),Ke===null)throw Error(r(349));(Me&127)!==0||Q1(c,a,l)}g.memoizedState=l;var y={value:l,getSnapshot:a};return g.queue=y,mw(ew.bind(null,c,y,i),[i]),c.flags|=2048,Ms(9,{destroy:void 0},J1.bind(null,c,y,l,a),null),l},useId:function(){var i=en(),a=Ke.identifierPrefix;if(Ne){var l=yr,c=gr;l=(c&~(1<<32-wn(c)-1)).toString(32)+l,a="_"+a+"R_"+l,l=Sc++,0<\/script>",y=y.removeChild(y.firstChild);break;case"select":y=typeof c.is=="string"?T.createElement("select",{is:c.is}):T.createElement("select"),c.multiple?y.multiple=!0:c.size&&(y.size=c.size);break;default:y=typeof c.is=="string"?T.createElement(g,{is:c.is}):T.createElement(g)}}y[It]=a,y[on]=c;e:for(T=a.child;T!==null;){if(T.tag===5||T.tag===6)y.appendChild(T.stateNode);else if(T.tag!==4&&T.tag!==27&&T.child!==null){T.child.return=T,T=T.child;continue}if(T===a)break e;for(;T.sibling===null;){if(T.return===null||T.return===a)break e;T=T.return}T.sibling.return=T.return,T=T.sibling}a.stateNode=y;e:switch(qt(y,g,c),g){case"button":case"input":case"select":case"textarea":c=!!c.autoFocus;break e;case"img":c=!0;break e;default:c=!1}c&&Hr(a)}}return Ze(a),ap(a,a.type,i===null?null:i.memoizedProps,a.pendingProps,l),null;case 6:if(i&&a.stateNode!=null)i.memoizedProps!==c&&Hr(a);else{if(typeof c!="string"&&a.stateNode===null)throw Error(r(166));if(i=oe.current,xs(a)){if(i=a.stateNode,l=a.memoizedProps,c=null,g=Bt,g!==null)switch(g.tag){case 27:case 5:c=g.memoizedProps}i[It]=a,i=!!(i.nodeValue===l||c!==null&&c.suppressHydrationWarning===!0||W_(i.nodeValue,l)),i||Ai(a,!0)}else i=Gc(i).createTextNode(c),i[It]=a,a.stateNode=i}return Ze(a),null;case 31:if(l=a.memoizedState,i===null||i.memoizedState!==null){if(c=xs(a),l!==null){if(i===null){if(!c)throw Error(r(318));if(i=a.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(557));i[It]=a}else va(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Ze(a),i=!1}else l=pm(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=l),i=!0;if(!i)return a.flags&256?(Tn(a),a):(Tn(a),null);if((a.flags&128)!==0)throw Error(r(558))}return Ze(a),null;case 13:if(c=a.memoizedState,i===null||i.memoizedState!==null&&i.memoizedState.dehydrated!==null){if(g=xs(a),c!==null&&c.dehydrated!==null){if(i===null){if(!g)throw Error(r(318));if(g=a.memoizedState,g=g!==null?g.dehydrated:null,!g)throw Error(r(317));g[It]=a}else va(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Ze(a),g=!1}else g=pm(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=g),g=!0;if(!g)return a.flags&256?(Tn(a),a):(Tn(a),null)}return Tn(a),(a.flags&128)!==0?(a.lanes=l,a):(l=c!==null,i=i!==null&&i.memoizedState!==null,l&&(c=a.child,g=null,c.alternate!==null&&c.alternate.memoizedState!==null&&c.alternate.memoizedState.cachePool!==null&&(g=c.alternate.memoizedState.cachePool.pool),y=null,c.memoizedState!==null&&c.memoizedState.cachePool!==null&&(y=c.memoizedState.cachePool.pool),y!==g&&(c.flags|=2048)),l!==i&&l&&(a.child.flags|=8192),Pc(a,a.updateQueue),Ze(a),null);case 4:return J(),i===null&&Ep(a.stateNode.containerInfo),Ze(a),null;case 10:return Vr(a.type),Ze(a),null;case 19:if(H(ct),c=a.memoizedState,c===null)return Ze(a),null;if(g=(a.flags&128)!==0,y=c.rendering,y===null)if(g)ll(c,!1);else{if(st!==0||i!==null&&(i.flags&128)!==0)for(i=a.child;i!==null;){if(y=wc(i),y!==null){for(a.flags|=128,ll(c,!1),i=y.updateQueue,a.updateQueue=i,Pc(a,i),a.subtreeFlags=0,i=l,l=a.child;l!==null;)j1(l,i),l=l.sibling;return ae(ct,ct.current&1|2),Ne&&Br(a,c.treeForkCount),a.child}i=i.sibling}c.tail!==null&&bn()>Bc&&(a.flags|=128,g=!0,ll(c,!1),a.lanes=4194304)}else{if(!g)if(i=wc(y),i!==null){if(a.flags|=128,g=!0,i=i.updateQueue,a.updateQueue=i,Pc(a,i),ll(c,!0),c.tail===null&&c.tailMode==="hidden"&&!y.alternate&&!Ne)return Ze(a),null}else 2*bn()-c.renderingStartTime>Bc&&l!==536870912&&(a.flags|=128,g=!0,ll(c,!1),a.lanes=4194304);c.isBackwards?(y.sibling=a.child,a.child=y):(i=c.last,i!==null?i.sibling=y:a.child=y,c.last=y)}return c.tail!==null?(i=c.tail,c.rendering=i,c.tail=i.sibling,c.renderingStartTime=bn(),i.sibling=null,l=ct.current,ae(ct,g?l&1|2:l&1),Ne&&Br(a,c.treeForkCount),i):(Ze(a),null);case 22:case 23:return Tn(a),jm(),c=a.memoizedState!==null,i!==null?i.memoizedState!==null!==c&&(a.flags|=8192):c&&(a.flags|=8192),c?(l&536870912)!==0&&(a.flags&128)===0&&(Ze(a),a.subtreeFlags&6&&(a.flags|=8192)):Ze(a),l=a.updateQueue,l!==null&&Pc(a,l.retryQueue),l=null,i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(l=i.memoizedState.cachePool.pool),c=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(c=a.memoizedState.cachePool.pool),c!==l&&(a.flags|=2048),i!==null&&H(wa),null;case 24:return l=null,i!==null&&(l=i.memoizedState.cache),a.memoizedState.cache!==l&&(a.flags|=2048),Vr(mt),Ze(a),null;case 25:return null;case 30:return null}throw Error(r(156,a.tag))}function w4(i,a){switch(hm(a),a.tag){case 1:return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 3:return Vr(mt),J(),i=a.flags,(i&65536)!==0&&(i&128)===0?(a.flags=i&-65537|128,a):null;case 26:case 27:case 5:return Se(a),null;case 31:if(a.memoizedState!==null){if(Tn(a),a.alternate===null)throw Error(r(340));va()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 13:if(Tn(a),i=a.memoizedState,i!==null&&i.dehydrated!==null){if(a.alternate===null)throw Error(r(340));va()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 19:return H(ct),null;case 4:return J(),null;case 10:return Vr(a.type),null;case 22:case 23:return Tn(a),jm(),i!==null&&H(wa),i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 24:return Vr(mt),null;case 25:return null;default:return null}}function t_(i,a){switch(hm(a),a.tag){case 3:Vr(mt),J();break;case 26:case 27:case 5:Se(a);break;case 4:J();break;case 31:a.memoizedState!==null&&Tn(a);break;case 13:Tn(a);break;case 19:H(ct);break;case 10:Vr(a.type);break;case 22:case 23:Tn(a),jm(),i!==null&&H(wa);break;case 24:Vr(mt)}}function ul(i,a){try{var l=a.updateQueue,c=l!==null?l.lastEffect:null;if(c!==null){var g=c.next;l=g;do{if((l.tag&i)===i){c=void 0;var y=l.create,T=l.inst;c=y(),T.destroy=c}l=l.next}while(l!==g)}}catch(E){Ve(a,a.return,E)}}function Ni(i,a,l){try{var c=a.updateQueue,g=c!==null?c.lastEffect:null;if(g!==null){var y=g.next;c=y;do{if((c.tag&i)===i){var T=c.inst,E=T.destroy;if(E!==void 0){T.destroy=void 0,g=a;var D=l,U=E;try{U()}catch(X){Ve(g,D,X)}}}c=c.next}while(c!==y)}}catch(X){Ve(a,a.return,X)}}function n_(i){var a=i.updateQueue;if(a!==null){var l=i.stateNode;try{K1(a,l)}catch(c){Ve(i,i.return,c)}}}function r_(i,a,l){l.props=Oa(i.type,i.memoizedProps),l.state=i.memoizedState;try{l.componentWillUnmount()}catch(c){Ve(i,a,c)}}function cl(i,a){try{var l=i.ref;if(l!==null){switch(i.tag){case 26:case 27:case 5:var c=i.stateNode;break;case 30:c=i.stateNode;break;default:c=i.stateNode}typeof l=="function"?i.refCleanup=l(c):l.current=c}}catch(g){Ve(i,a,g)}}function vr(i,a){var l=i.ref,c=i.refCleanup;if(l!==null)if(typeof c=="function")try{c()}catch(g){Ve(i,a,g)}finally{i.refCleanup=null,i=i.alternate,i!=null&&(i.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(g){Ve(i,a,g)}else l.current=null}function i_(i){var a=i.type,l=i.memoizedProps,c=i.stateNode;try{e:switch(a){case"button":case"input":case"select":case"textarea":l.autoFocus&&c.focus();break e;case"img":l.src?c.src=l.src:l.srcSet&&(c.srcset=l.srcSet)}}catch(g){Ve(i,i.return,g)}}function sp(i,a,l){try{var c=i.stateNode;$4(c,i.type,l,a),c[on]=a}catch(g){Ve(i,i.return,g)}}function a_(i){return i.tag===5||i.tag===3||i.tag===26||i.tag===27&&Ii(i.type)||i.tag===4}function op(i){e:for(;;){for(;i.sibling===null;){if(i.return===null||a_(i.return))return null;i=i.return}for(i.sibling.return=i.return,i=i.sibling;i.tag!==5&&i.tag!==6&&i.tag!==18;){if(i.tag===27&&Ii(i.type)||i.flags&2||i.child===null||i.tag===4)continue e;i.child.return=i,i=i.child}if(!(i.flags&2))return i.stateNode}}function lp(i,a,l){var c=i.tag;if(c===5||c===6)i=i.stateNode,a?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(i,a):(a=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,a.appendChild(i),l=l._reactRootContainer,l!=null||a.onclick!==null||(a.onclick=Lr));else if(c!==4&&(c===27&&Ii(i.type)&&(l=i.stateNode,a=null),i=i.child,i!==null))for(lp(i,a,l),i=i.sibling;i!==null;)lp(i,a,l),i=i.sibling}function Rc(i,a,l){var c=i.tag;if(c===5||c===6)i=i.stateNode,a?l.insertBefore(i,a):l.appendChild(i);else if(c!==4&&(c===27&&Ii(i.type)&&(l=i.stateNode),i=i.child,i!==null))for(Rc(i,a,l),i=i.sibling;i!==null;)Rc(i,a,l),i=i.sibling}function s_(i){var a=i.stateNode,l=i.memoizedProps;try{for(var c=i.type,g=a.attributes;g.length;)a.removeAttributeNode(g[0]);qt(a,c,l),a[It]=i,a[on]=l}catch(y){Ve(i,i.return,y)}}var Kr=!1,yt=!1,up=!1,o_=typeof WeakSet=="function"?WeakSet:Set,kt=null;function _4(i,a){if(i=i.containerInfo,kp=nf,i=b1(i),nm(i)){if("selectionStart"in i)var l={start:i.selectionStart,end:i.selectionEnd};else e:{l=(l=i.ownerDocument)&&l.defaultView||window;var c=l.getSelection&&l.getSelection();if(c&&c.rangeCount!==0){l=c.anchorNode;var g=c.anchorOffset,y=c.focusNode;c=c.focusOffset;try{l.nodeType,y.nodeType}catch{l=null;break e}var T=0,E=-1,D=-1,U=0,X=0,W=i,q=null;t:for(;;){for(var F;W!==l||g!==0&&W.nodeType!==3||(E=T+g),W!==y||c!==0&&W.nodeType!==3||(D=T+c),W.nodeType===3&&(T+=W.nodeValue.length),(F=W.firstChild)!==null;)q=W,W=F;for(;;){if(W===i)break t;if(q===l&&++U===g&&(E=T),q===y&&++X===c&&(D=T),(F=W.nextSibling)!==null)break;W=q,q=W.parentNode}W=F}l=E===-1||D===-1?null:{start:E,end:D}}else l=null}l=l||{start:0,end:0}}else l=null;for(Np={focusedElem:i,selectionRange:l},nf=!1,kt=a;kt!==null;)if(a=kt,i=a.child,(a.subtreeFlags&1028)!==0&&i!==null)i.return=a,kt=i;else for(;kt!==null;){switch(a=kt,y=a.alternate,i=a.flags,a.tag){case 0:if((i&4)!==0&&(i=a.updateQueue,i=i!==null?i.events:null,i!==null))for(l=0;l title"))),qt(y,c,l),y[It]=i,Mt(y),c=y;break e;case"link":var T=hS("link","href",g).get(c+(l.href||""));if(T){for(var E=0;EFe&&(T=Fe,Fe=we,we=T);var z=y1(E,we),R=y1(E,Fe);if(z&&R&&(F.rangeCount!==1||F.anchorNode!==z.node||F.anchorOffset!==z.offset||F.focusNode!==R.node||F.focusOffset!==R.offset)){var B=W.createRange();B.setStart(z.node,z.offset),F.removeAllRanges(),we>Fe?(F.addRange(B),F.extend(R.node,R.offset)):(B.setEnd(R.node,R.offset),F.addRange(B))}}}}for(W=[],F=E;F=F.parentNode;)F.nodeType===1&&W.push({element:F,left:F.scrollLeft,top:F.scrollTop});for(typeof E.focus=="function"&&E.focus(),E=0;El?32:l,V.T=null,l=gp,gp=null;var y=Ri,T=Zr;if(xt=0,Ps=Ri=null,Zr=0,(Ie&6)!==0)throw Error(r(331));var E=Ie;if(Ie|=4,v_(y.current),p_(y,y.current,T,l),Ie=E,gl(0,!1),xn&&typeof xn.onPostCommitFiberRoot=="function")try{xn.onPostCommitFiberRoot(Po,y)}catch{}return!0}finally{Q.p=g,V.T=c,L_(i,a)}}function I_(i,a,l){a=Bn(l,a),a=Gm(i.stateNode,a,2),i=ji(i,a,2),i!==null&&(Lo(i,2),br(i))}function Ve(i,a,l){if(i.tag===3)I_(i,i,l);else for(;a!==null;){if(a.tag===3){I_(a,i,l);break}else if(a.tag===1){var c=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof c.componentDidCatch=="function"&&(Pi===null||!Pi.has(c))){i=Bn(l,i),l=Bw(2),c=ji(a,l,2),c!==null&&(Uw(l,c,a,i),Lo(c,2),br(c));break}}a=a.return}}function xp(i,a,l){var c=i.pingCache;if(c===null){c=i.pingCache=new T4;var g=new Set;c.set(a,g)}else g=c.get(a),g===void 0&&(g=new Set,c.set(a,g));g.has(l)||(dp=!0,g.add(l),i=k4.bind(null,i,a,l),a.then(i,i))}function k4(i,a,l){var c=i.pingCache;c!==null&&c.delete(a),i.pingedLanes|=i.suspendedLanes&l,i.warmLanes&=~l,Ke===i&&(Me&l)===l&&(st===4||st===3&&(Me&62914560)===Me&&300>bn()-Ic?(Ie&2)===0&&Rs(i,0):hp|=l,Ds===Me&&(Ds=0)),br(i)}function B_(i,a){a===0&&(a=Dx()),i=ga(i,a),i!==null&&(Lo(i,a),br(i))}function N4(i){var a=i.memoizedState,l=0;a!==null&&(l=a.retryLane),B_(i,l)}function C4(i,a){var l=0;switch(i.tag){case 31:case 13:var c=i.stateNode,g=i.memoizedState;g!==null&&(l=g.retryLane);break;case 19:c=i.stateNode;break;case 22:c=i.stateNode._retryCache;break;default:throw Error(r(314))}c!==null&&c.delete(a),B_(i,l)}function D4(i,a){return Dh(i,a)}var Hc=null,zs=null,wp=!1,Kc=!1,_p=!1,zi=0;function br(i){i!==zs&&i.next===null&&(zs===null?Hc=zs=i:zs=zs.next=i),Kc=!0,wp||(wp=!0,R4())}function gl(i,a){if(!_p&&Kc){_p=!0;do for(var l=!1,c=Hc;c!==null;){if(i!==0){var g=c.pendingLanes;if(g===0)var y=0;else{var T=c.suspendedLanes,E=c.pingedLanes;y=(1<<31-wn(42|i)+1)-1,y&=g&~(T&~E),y=y&201326741?y&201326741|1:y?y|2:0}y!==0&&(l=!0,$_(c,y))}else y=Me,y=Wu(c,c===Ke?y:0,c.cancelPendingCommit!==null||c.timeoutHandle!==-1),(y&3)===0||Ro(c,y)||(l=!0,$_(c,y));c=c.next}while(l);_p=!1}}function P4(){U_()}function U_(){Kc=wp=!1;var i=0;zi!==0&&H4()&&(i=zi);for(var a=bn(),l=null,c=Hc;c!==null;){var g=c.next,y=V_(c,a);y===0?(c.next=null,l===null?Hc=g:l.next=g,g===null&&(zs=l)):(l=c,(i!==0||(y&3)!==0)&&(Kc=!0)),c=g}xt!==0&&xt!==5||gl(i),zi!==0&&(zi=0)}function V_(i,a){for(var l=i.suspendedLanes,c=i.pingedLanes,g=i.expirationTimes,y=i.pendingLanes&-62914561;0E)break;var X=D.transferSize,W=D.initiatorType;X&&Z_(W)&&(D=D.responseEnd,T+=X*(D"u"?null:document;function uS(i,a,l){var c=Is;if(c&&typeof a=="string"&&a){var g=zn(a);g='link[rel="'+i+'"][href="'+g+'"]',typeof l=="string"&&(g+='[crossorigin="'+l+'"]'),lS.has(g)||(lS.add(g),i={rel:i,crossOrigin:l,href:a},c.querySelector(g)===null&&(a=c.createElement("link"),qt(a,"link",i),Mt(a),c.head.appendChild(a)))}}function eR(i){Qr.D(i),uS("dns-prefetch",i,null)}function tR(i,a){Qr.C(i,a),uS("preconnect",i,a)}function nR(i,a,l){Qr.L(i,a,l);var c=Is;if(c&&i&&a){var g='link[rel="preload"][as="'+zn(a)+'"]';a==="image"&&l&&l.imageSrcSet?(g+='[imagesrcset="'+zn(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(g+='[imagesizes="'+zn(l.imageSizes)+'"]')):g+='[href="'+zn(i)+'"]';var y=g;switch(a){case"style":y=Bs(i);break;case"script":y=Us(i)}Hn.has(y)||(i=p({rel:"preload",href:a==="image"&&l&&l.imageSrcSet?void 0:i,as:a},l),Hn.set(y,i),c.querySelector(g)!==null||a==="style"&&c.querySelector(xl(y))||a==="script"&&c.querySelector(wl(y))||(a=c.createElement("link"),qt(a,"link",i),Mt(a),c.head.appendChild(a)))}}function rR(i,a){Qr.m(i,a);var l=Is;if(l&&i){var c=a&&typeof a.as=="string"?a.as:"script",g='link[rel="modulepreload"][as="'+zn(c)+'"][href="'+zn(i)+'"]',y=g;switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":y=Us(i)}if(!Hn.has(y)&&(i=p({rel:"modulepreload",href:i},a),Hn.set(y,i),l.querySelector(g)===null)){switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(wl(y)))return}c=l.createElement("link"),qt(c,"link",i),Mt(c),l.head.appendChild(c)}}}function iR(i,a,l){Qr.S(i,a,l);var c=Is;if(c&&i){var g=os(c).hoistableStyles,y=Bs(i);a=a||"default";var T=g.get(y);if(!T){var E={loading:0,preload:null};if(T=c.querySelector(xl(y)))E.loading=5;else{i=p({rel:"stylesheet",href:i,"data-precedence":a},l),(l=Hn.get(y))&&Ip(i,l);var D=T=c.createElement("link");Mt(D),qt(D,"link",i),D._p=new Promise(function(U,X){D.onload=U,D.onerror=X}),D.addEventListener("load",function(){E.loading|=1}),D.addEventListener("error",function(){E.loading|=2}),E.loading|=4,Zc(T,a,c)}T={type:"stylesheet",instance:T,count:1,state:E},g.set(y,T)}}}function aR(i,a){Qr.X(i,a);var l=Is;if(l&&i){var c=os(l).hoistableScripts,g=Us(i),y=c.get(g);y||(y=l.querySelector(wl(g)),y||(i=p({src:i,async:!0},a),(a=Hn.get(g))&&Bp(i,a),y=l.createElement("script"),Mt(y),qt(y,"link",i),l.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},c.set(g,y))}}function sR(i,a){Qr.M(i,a);var l=Is;if(l&&i){var c=os(l).hoistableScripts,g=Us(i),y=c.get(g);y||(y=l.querySelector(wl(g)),y||(i=p({src:i,async:!0,type:"module"},a),(a=Hn.get(g))&&Bp(i,a),y=l.createElement("script"),Mt(y),qt(y,"link",i),l.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},c.set(g,y))}}function cS(i,a,l,c){var g=(g=oe.current)?Wc(g):null;if(!g)throw Error(r(446));switch(i){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(a=Bs(l.href),l=os(g).hoistableStyles,c=l.get(a),c||(c={type:"style",instance:null,count:0,state:null},l.set(a,c)),c):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){i=Bs(l.href);var y=os(g).hoistableStyles,T=y.get(i);if(T||(g=g.ownerDocument||g,T={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},y.set(i,T),(y=g.querySelector(xl(i)))&&!y._p&&(T.instance=y,T.state.loading=5),Hn.has(i)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Hn.set(i,l),y||oR(g,i,l,T.state))),a&&c===null)throw Error(r(528,""));return T}if(a&&c!==null)throw Error(r(529,""));return null;case"script":return a=l.async,l=l.src,typeof l=="string"&&a&&typeof a!="function"&&typeof a!="symbol"?(a=Us(l),l=os(g).hoistableScripts,c=l.get(a),c||(c={type:"script",instance:null,count:0,state:null},l.set(a,c)),c):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,i))}}function Bs(i){return'href="'+zn(i)+'"'}function xl(i){return'link[rel="stylesheet"]['+i+"]"}function fS(i){return p({},i,{"data-precedence":i.precedence,precedence:null})}function oR(i,a,l,c){i.querySelector('link[rel="preload"][as="style"]['+a+"]")?c.loading=1:(a=i.createElement("link"),c.preload=a,a.addEventListener("load",function(){return c.loading|=1}),a.addEventListener("error",function(){return c.loading|=2}),qt(a,"link",l),Mt(a),i.head.appendChild(a))}function Us(i){return'[src="'+zn(i)+'"]'}function wl(i){return"script[async]"+i}function dS(i,a,l){if(a.count++,a.instance===null)switch(a.type){case"style":var c=i.querySelector('style[data-href~="'+zn(l.href)+'"]');if(c)return a.instance=c,Mt(c),c;var g=p({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return c=(i.ownerDocument||i).createElement("style"),Mt(c),qt(c,"style",g),Zc(c,l.precedence,i),a.instance=c;case"stylesheet":g=Bs(l.href);var y=i.querySelector(xl(g));if(y)return a.state.loading|=4,a.instance=y,Mt(y),y;c=fS(l),(g=Hn.get(g))&&Ip(c,g),y=(i.ownerDocument||i).createElement("link"),Mt(y);var T=y;return T._p=new Promise(function(E,D){T.onload=E,T.onerror=D}),qt(y,"link",c),a.state.loading|=4,Zc(y,l.precedence,i),a.instance=y;case"script":return y=Us(l.src),(g=i.querySelector(wl(y)))?(a.instance=g,Mt(g),g):(c=l,(g=Hn.get(y))&&(c=p({},l),Bp(c,g)),i=i.ownerDocument||i,g=i.createElement("script"),Mt(g),qt(g,"link",c),i.head.appendChild(g),a.instance=g);case"void":return null;default:throw Error(r(443,a.type))}else a.type==="stylesheet"&&(a.state.loading&4)===0&&(c=a.instance,a.state.loading|=4,Zc(c,l.precedence,i));return a.instance}function Zc(i,a,l){for(var c=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),g=c.length?c[c.length-1]:null,y=g,T=0;T title"):null)}function lR(i,a,l){if(l===1||a.itemProp!=null)return!1;switch(i){case"meta":case"title":return!0;case"style":if(typeof a.precedence!="string"||typeof a.href!="string"||a.href==="")break;return!0;case"link":if(typeof a.rel!="string"||typeof a.href!="string"||a.href===""||a.onLoad||a.onError)break;return a.rel==="stylesheet"?(i=a.disabled,typeof a.precedence=="string"&&i==null):!0;case"script":if(a.async&&typeof a.async!="function"&&typeof a.async!="symbol"&&!a.onLoad&&!a.onError&&a.src&&typeof a.src=="string")return!0}return!1}function pS(i){return!(i.type==="stylesheet"&&(i.state.loading&3)===0)}function uR(i,a,l,c){if(l.type==="stylesheet"&&(typeof c.media!="string"||matchMedia(c.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var g=Bs(c.href),y=a.querySelector(xl(g));if(y){a=y._p,a!==null&&typeof a=="object"&&typeof a.then=="function"&&(i.count++,i=Jc.bind(i),a.then(i,i)),l.state.loading|=4,l.instance=y,Mt(y);return}y=a.ownerDocument||a,c=fS(c),(g=Hn.get(g))&&Ip(c,g),y=y.createElement("link"),Mt(y);var T=y;T._p=new Promise(function(E,D){T.onload=E,T.onerror=D}),qt(y,"link",c),l.instance=y}i.stylesheets===null&&(i.stylesheets=new Map),i.stylesheets.set(l,a),(a=l.state.preload)&&(l.state.loading&3)===0&&(i.count++,l=Jc.bind(i),a.addEventListener("load",l),a.addEventListener("error",l))}}var Up=0;function cR(i,a){return i.stylesheets&&i.count===0&&tf(i,i.stylesheets),0Up?50:800)+a);return i.unsuspend=l,function(){i.unsuspend=null,clearTimeout(c),clearTimeout(g)}}:null}function Jc(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)tf(this,this.stylesheets);else if(this.unsuspend){var i=this.unsuspend;this.unsuspend=null,i()}}}var ef=null;function tf(i,a){i.stylesheets=null,i.unsuspend!==null&&(i.count++,ef=new Map,a.forEach(fR,i),ef=null,Jc.call(i))}function fR(i,a){if(!(a.state.loading&4)){var l=ef.get(i);if(l)var c=l.get(null);else{l=new Map,ef.set(i,l);for(var g=i.querySelectorAll("link[data-precedence],style[data-precedence]"),y=0;y"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Gp.exports=MR(),Gp.exports}var NR=kR();const aM=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const CR=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const DR=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const BS=e=>{const t=DR(e);return t.charAt(0).toUpperCase()+t.slice(1)};var PR={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const RR=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};const LR=A.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:s="",children:o,iconNode:u,...f},d)=>A.createElement("svg",{ref:d,...PR,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:aM("lucide",s),...!o&&!RR(f)&&{"aria-hidden":"true"},...f},[...u.map(([h,m])=>A.createElement(h,m)),...Array.isArray(o)?o:[o]]));const Be=(e,t)=>{const n=A.forwardRef(({className:r,...s},o)=>A.createElement(LR,{ref:o,iconNode:t,className:aM(`lucide-${CR(BS(e))}`,`lucide-${e}`,r),...s}));return n.displayName=BS(e),n};const zR=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],IR=Be("activity",zR);const BR=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],UR=Be("arrow-down",BR);const VR=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],qR=Be("arrow-up",VR);const $R=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],FR=Be("bot",$R);const HR=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ai=Be("chevron-down",HR);const KR=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],XR=Be("chevron-left",KR);const YR=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],sM=Be("chevron-right",YR);const GR=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Xy=Be("circle-check",GR);const WR=[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]],ZR=Be("code",WR);const QR=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],JR=Be("database",QR);const e6=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],t6=Be("external-link",e6);const n6=[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]],r6=Be("github",n6);const i6=[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]],US=Be("lightbulb",i6);const a6=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],s6=Be("menu",a6);const o6=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],oM=Be("message-square",o6);const l6=[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]],u6=Be("moon",l6);const c6=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]],f6=Be("pause",c6);const d6=[["path",{d:"M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z",key:"1v9wt8"}]],h6=Be("plane",d6);const m6=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],p6=Be("play",m6);const g6=[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]],y6=Be("rocket",g6);const v6=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],b6=Be("search",v6);const x6=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],w6=Be("shield",x6);const _6=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]],S6=Be("sun",_6);const A6=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],lM=Be("target",A6);const T6=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Jl=Be("triangle-alert",T6);const O6=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],Yy=Be("user",O6);const E6=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]],Gy=Be("volume-2",E6);const j6=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]],M6=Be("volume-x",j6);const k6=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],p0=Be("wrench",k6);const N6=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],uM=Be("x",N6),VS=[{id:"intro",label:"Intro"},{id:"architecture",label:"Architecture"},{id:"metrics",label:"Methodology"},{id:"early-results",label:"Early Results"},{id:"demo",label:"Demo"},{id:"limitations",label:"Limitations & Future"},{id:"acknowledgements",label:"Contributors"}];function C6({activeTab:e,onTabChange:t,theme:n,onToggleTheme:r}){const[s,o]=A.useState(!1),u=f=>{t(f),o(!1)};return b.jsxs("nav",{className:"fixed top-0 left-0 right-0 z-50 bg-bg-primary/80 backdrop-blur-xl border-b border-border-default",children:[b.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:b.jsxs("div",{className:"flex items-center justify-between h-16",children:[b.jsx("button",{onClick:()=>o(!s),className:"md:hidden w-9 h-9 rounded-lg flex items-center justify-center text-text-muted hover:text-text-primary hover:bg-bg-hover transition-colors","aria-label":s?"Close menu":"Open menu",children:s?b.jsx(uM,{className:"w-5 h-5"}):b.jsx(s6,{className:"w-5 h-5"})}),b.jsx("div",{className:"hidden md:block w-0"}),b.jsx("div",{className:"hidden md:flex items-center gap-4",children:VS.map(f=>b.jsx("a",{href:`#${f.id}`,onClick:d=>{d.preventDefault(),t(f.id)},className:`px-4 py-2 rounded-lg text-base font-semibold transition-colors no-underline ${e===f.id?"text-purple-light bg-purple/15 border border-purple/30":"text-text-primary/80 hover:text-text-primary hover:bg-bg-hover border border-transparent"}`,children:f.label},f.id))}),b.jsx("button",{onClick:r,className:"w-9 h-9 rounded-lg flex items-center justify-center text-text-muted hover:text-text-primary hover:bg-bg-hover transition-colors","aria-label":`Switch to ${n==="dark"?"light":"dark"} mode`,children:n==="dark"?b.jsx(S6,{className:"w-4.5 h-4.5"}):b.jsx(u6,{className:"w-4.5 h-4.5"})})]})}),s&&b.jsx("div",{className:"md:hidden border-t border-border-default bg-bg-primary/95 backdrop-blur-xl",children:b.jsx("div",{className:"px-4 py-3 space-y-1",children:VS.map(f=>b.jsx("a",{href:`#${f.id}`,onClick:d=>{d.preventDefault(),u(f.id)},className:`block px-4 py-3 rounded-lg text-base font-semibold transition-colors no-underline ${e===f.id?"text-purple-light bg-purple/15 border border-purple/30":"text-text-primary/80 hover:text-text-primary hover:bg-bg-hover border border-transparent"}`,children:f.label},f.id))})})]})}const g0=A.createContext({});function y0(e){const t=A.useRef(null);return t.current===null&&(t.current=e()),t.current}const D6=typeof window<"u",cM=D6?A.useLayoutEffect:A.useEffect,Fd=A.createContext(null);function v0(e,t){e.indexOf(t)===-1&&e.push(t)}function Ff(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Mr=(e,t,n)=>n>t?t:n{};const si={},fM=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function dM(e){return typeof e=="object"&&e!==null}const hM=e=>/^0[^.\s]+$/u.test(e);function mM(e){let t;return()=>(t===void 0&&(t=e()),t)}const Jn=e=>e,P6=(e,t)=>n=>t(e(n)),wu=(...e)=>e.reduce(P6),eu=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r};class x0{constructor(){this.subscriptions=[]}add(t){return v0(this.subscriptions,t),()=>Ff(this.subscriptions,t)}notify(t,n,r){const s=this.subscriptions.length;if(s)if(s===1)this.subscriptions[0](t,n,r);else for(let o=0;oe*1e3,Gn=e=>e/1e3;function pM(e,t){return t?e*(1e3/t):0}const gM=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,R6=1e-7,L6=12;function z6(e,t,n,r,s){let o,u,f=0;do u=t+(n-t)/2,o=gM(u,r,s)-e,o>0?n=u:t=u;while(Math.abs(o)>R6&&++fz6(o,0,1,e,n);return o=>o===0||o===1?o:gM(s(o),t,r)}const yM=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,vM=e=>t=>1-e(1-t),bM=_u(.33,1.53,.69,.99),w0=vM(bM),xM=yM(w0),wM=e=>(e*=2)<1?.5*w0(e):.5*(2-Math.pow(2,-10*(e-1))),_0=e=>1-Math.sin(Math.acos(e)),_M=vM(_0),SM=yM(_0),I6=_u(.42,0,1,1),B6=_u(0,0,.58,1),AM=_u(.42,0,.58,1),U6=e=>Array.isArray(e)&&typeof e[0]!="number",TM=e=>Array.isArray(e)&&typeof e[0]=="number",V6={linear:Jn,easeIn:I6,easeInOut:AM,easeOut:B6,circIn:_0,circInOut:SM,circOut:_M,backIn:w0,backInOut:xM,backOut:bM,anticipate:wM},q6=e=>typeof e=="string",qS=e=>{if(TM(e)){b0(e.length===4);const[t,n,r,s]=e;return _u(t,n,r,s)}else if(q6(e))return V6[e];return e},cf=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function $6(e,t){let n=new Set,r=new Set,s=!1,o=!1;const u=new WeakSet;let f={delta:0,timestamp:0,isProcessing:!1};function d(m){u.has(m)&&(h.schedule(m),e()),m(f)}const h={schedule:(m,p=!1,v=!1)=>{const w=v&&s?n:r;return p&&u.add(m),w.has(m)||w.add(m),m},cancel:m=>{r.delete(m),u.delete(m)},process:m=>{if(f=m,s){o=!0;return}s=!0,[n,r]=[r,n],n.forEach(d),n.clear(),s=!1,o&&(o=!1,h.process(m))}};return h}const F6=40;function OM(e,t){let n=!1,r=!0;const s={delta:0,timestamp:0,isProcessing:!1},o=()=>n=!0,u=cf.reduce((j,k)=>(j[k]=$6(o),j),{}),{setup:f,read:d,resolveKeyframes:h,preUpdate:m,update:p,preRender:v,render:x,postRender:w}=u,_=()=>{const j=si.useManualTiming?s.timestamp:performance.now();n=!1,si.useManualTiming||(s.delta=r?1e3/60:Math.max(Math.min(j-s.timestamp,F6),1)),s.timestamp=j,s.isProcessing=!0,f.process(s),d.process(s),h.process(s),m.process(s),p.process(s),v.process(s),x.process(s),w.process(s),s.isProcessing=!1,n&&t&&(r=!1,e(_))},S=()=>{n=!0,r=!0,s.isProcessing||e(_)};return{schedule:cf.reduce((j,k)=>{const N=u[k];return j[k]=(C,L=!1,I=!1)=>(n||S(),N.schedule(C,L,I)),j},{}),cancel:j=>{for(let k=0;k(Cf===void 0&&tn.set(Ft.isProcessing||si.useManualTiming?Ft.timestamp:performance.now()),Cf),set:e=>{Cf=e,queueMicrotask(H6)}},EM=e=>t=>typeof t=="string"&&t.startsWith(e),jM=EM("--"),K6=EM("var(--"),S0=e=>K6(e)?X6.test(e.split("/*")[0].trim()):!1,X6=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function $S(e){return typeof e!="string"?!1:e.split("/*")[0].includes("var(--")}const vo={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},tu={...vo,transform:e=>Mr(0,1,e)},ff={...vo,default:1},Xl=e=>Math.round(e*1e5)/1e5,A0=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Y6(e){return e==null}const G6=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,T0=(e,t)=>n=>!!(typeof n=="string"&&G6.test(n)&&n.startsWith(e)||t&&!Y6(n)&&Object.prototype.hasOwnProperty.call(n,t)),MM=(e,t,n)=>r=>{if(typeof r!="string")return r;const[s,o,u,f]=r.match(A0);return{[e]:parseFloat(s),[t]:parseFloat(o),[n]:parseFloat(u),alpha:f!==void 0?parseFloat(f):1}},W6=e=>Mr(0,255,e),eg={...vo,transform:e=>Math.round(W6(e))},Ia={test:T0("rgb","red"),parse:MM("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+eg.transform(e)+", "+eg.transform(t)+", "+eg.transform(n)+", "+Xl(tu.transform(r))+")"};function Z6(e){let t="",n="",r="",s="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),s=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),s=e.substring(4,5),t+=t,n+=n,r+=r,s+=s),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:s?parseInt(s,16)/255:1}}const Wy={test:T0("#"),parse:Z6,transform:Ia.transform},Su=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),Yi=Su("deg"),Or=Su("%"),de=Su("px"),Q6=Su("vh"),J6=Su("vw"),FS={...Or,parse:e=>Or.parse(e)/100,transform:e=>Or.transform(e*100)},Qs={test:T0("hsl","hue"),parse:MM("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+Or.transform(Xl(t))+", "+Or.transform(Xl(n))+", "+Xl(tu.transform(r))+")"},vt={test:e=>Ia.test(e)||Wy.test(e)||Qs.test(e),parse:e=>Ia.test(e)?Ia.parse(e):Qs.test(e)?Qs.parse(e):Wy.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?Ia.transform(e):Qs.transform(e),getAnimatableNone:e=>{const t=vt.parse(e);return t.alpha=0,vt.transform(t)}},eL=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function tL(e){return isNaN(e)&&typeof e=="string"&&(e.match(A0)?.length||0)+(e.match(eL)?.length||0)>0}const kM="number",NM="color",nL="var",rL="var(",HS="${}",iL=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function nu(e){const t=e.toString(),n=[],r={color:[],number:[],var:[]},s=[];let o=0;const f=t.replace(iL,d=>(vt.test(d)?(r.color.push(o),s.push(NM),n.push(vt.parse(d))):d.startsWith(rL)?(r.var.push(o),s.push(nL),n.push(d)):(r.number.push(o),s.push(kM),n.push(parseFloat(d))),++o,HS)).split(HS);return{values:n,split:f,indexes:r,types:s}}function CM(e){return nu(e).values}function DM(e){const{split:t,types:n}=nu(e),r=t.length;return s=>{let o="";for(let u=0;utypeof e=="number"?0:vt.test(e)?vt.getAnimatableNone(e):e;function sL(e){const t=CM(e);return DM(e)(t.map(aL))}const dr={test:tL,parse:CM,createTransformer:DM,getAnimatableNone:sL};function tg(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function oL({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let s=0,o=0,u=0;if(!t)s=o=u=n;else{const f=n<.5?n*(1+t):n+t-n*t,d=2*n-f;s=tg(d,f,e+1/3),o=tg(d,f,e),u=tg(d,f,e-1/3)}return{red:Math.round(s*255),green:Math.round(o*255),blue:Math.round(u*255),alpha:r}}function Hf(e,t){return n=>n>0?t:e}const rt=(e,t,n)=>e+(t-e)*n,ng=(e,t,n)=>{const r=e*e,s=n*(t*t-r)+r;return s<0?0:Math.sqrt(s)},lL=[Wy,Ia,Qs],uL=e=>lL.find(t=>t.test(e));function KS(e){const t=uL(e);if(!t)return!1;let n=t.parse(e);return t===Qs&&(n=oL(n)),n}const XS=(e,t)=>{const n=KS(e),r=KS(t);if(!n||!r)return Hf(e,t);const s={...n};return o=>(s.red=ng(n.red,r.red,o),s.green=ng(n.green,r.green,o),s.blue=ng(n.blue,r.blue,o),s.alpha=rt(n.alpha,r.alpha,o),Ia.transform(s))},Zy=new Set(["none","hidden"]);function cL(e,t){return Zy.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function fL(e,t){return n=>rt(e,t,n)}function O0(e){return typeof e=="number"?fL:typeof e=="string"?S0(e)?Hf:vt.test(e)?XS:mL:Array.isArray(e)?PM:typeof e=="object"?vt.test(e)?XS:dL:Hf}function PM(e,t){const n=[...e],r=n.length,s=e.map((o,u)=>O0(o)(o,t[u]));return o=>{for(let u=0;u{for(const o in r)n[o]=r[o](s);return n}}function hL(e,t){const n=[],r={color:0,var:0,number:0};for(let s=0;s{const n=dr.createTransformer(t),r=nu(e),s=nu(t);return r.indexes.var.length===s.indexes.var.length&&r.indexes.color.length===s.indexes.color.length&&r.indexes.number.length>=s.indexes.number.length?Zy.has(e)&&!s.values.length||Zy.has(t)&&!r.values.length?cL(e,t):wu(PM(hL(r,s),s.values),n):Hf(e,t)};function RM(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?rt(e,t,n):O0(e)(e,t)}const pL=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>Ge.update(t,n),stop:()=>na(t),now:()=>Ft.isProcessing?Ft.timestamp:tn.now()}},LM=(e,t,n=10)=>{let r="";const s=Math.max(Math.round(t/n),2);for(let o=0;o=Kf?1/0:t}function gL(e,t=100,n){const r=n({...e,keyframes:[0,t]}),s=Math.min(E0(r),Kf);return{type:"keyframes",ease:o=>r.next(s*o).value/t,duration:Gn(s)}}const yL=5;function zM(e,t,n){const r=Math.max(t-yL,0);return pM(n-e(r),t-r)}const lt={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},rg=.001;function vL({duration:e=lt.duration,bounce:t=lt.bounce,velocity:n=lt.velocity,mass:r=lt.mass}){let s,o,u=1-t;u=Mr(lt.minDamping,lt.maxDamping,u),e=Mr(lt.minDuration,lt.maxDuration,Gn(e)),u<1?(s=h=>{const m=h*u,p=m*e,v=m-n,x=Qy(h,u),w=Math.exp(-p);return rg-v/x*w},o=h=>{const p=h*u*e,v=p*n+n,x=Math.pow(u,2)*Math.pow(h,2)*e,w=Math.exp(-p),_=Qy(Math.pow(h,2),u);return(-s(h)+rg>0?-1:1)*((v-x)*w)/_}):(s=h=>{const m=Math.exp(-h*e),p=(h-n)*e+1;return-rg+m*p},o=h=>{const m=Math.exp(-h*e),p=(n-h)*(e*e);return m*p});const f=5/e,d=xL(s,o,f);if(e=fr(e),isNaN(d))return{stiffness:lt.stiffness,damping:lt.damping,duration:e};{const h=Math.pow(d,2)*r;return{stiffness:h,damping:u*2*Math.sqrt(r*h),duration:e}}}const bL=12;function xL(e,t,n){let r=n;for(let s=1;se[n]!==void 0)}function SL(e){let t={velocity:lt.velocity,stiffness:lt.stiffness,damping:lt.damping,mass:lt.mass,isResolvedFromDuration:!1,...e};if(!YS(e,_L)&&YS(e,wL))if(t.velocity=0,e.visualDuration){const n=e.visualDuration,r=2*Math.PI/(n*1.2),s=r*r,o=2*Mr(.05,1,1-(e.bounce||0))*Math.sqrt(s);t={...t,mass:lt.mass,stiffness:s,damping:o}}else{const n=vL({...e,velocity:0});t={...t,...n,mass:lt.mass},t.isResolvedFromDuration=!0}return t}function Xf(e=lt.visualDuration,t=lt.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:r,restDelta:s}=n;const o=n.keyframes[0],u=n.keyframes[n.keyframes.length-1],f={done:!1,value:o},{stiffness:d,damping:h,mass:m,duration:p,velocity:v,isResolvedFromDuration:x}=SL({...n,velocity:-Gn(n.velocity||0)}),w=v||0,_=h/(2*Math.sqrt(d*m)),S=u-o,O=Gn(Math.sqrt(d/m)),M=Math.abs(S)<5;r||(r=M?lt.restSpeed.granular:lt.restSpeed.default),s||(s=M?lt.restDelta.granular:lt.restDelta.default);let j;if(_<1){const N=Qy(O,_);j=C=>{const L=Math.exp(-_*O*C);return u-L*((w+_*O*S)/N*Math.sin(N*C)+S*Math.cos(N*C))}}else if(_===1)j=N=>u-Math.exp(-O*N)*(S+(w+O*S)*N);else{const N=O*Math.sqrt(_*_-1);j=C=>{const L=Math.exp(-_*O*C),I=Math.min(N*C,300);return u-L*((w+_*O*S)*Math.sinh(I)+N*S*Math.cosh(I))/N}}const k={calculatedDuration:x&&p||null,next:N=>{const C=j(N);if(x)f.done=N>=p;else{let L=N===0?w:0;_<1&&(L=N===0?fr(w):zM(j,N,C));const I=Math.abs(L)<=r,Y=Math.abs(u-C)<=s;f.done=I&&Y}return f.value=f.done?u:C,f},toString:()=>{const N=Math.min(E0(k),Kf),C=LM(L=>k.next(N*L).value,N,30);return N+"ms "+C},toTransition:()=>{}};return k}Xf.applyToOptions=e=>{const t=gL(e,100,Xf);return e.ease=t.ease,e.duration=fr(t.duration),e.type="keyframes",e};function Jy({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:s=10,bounceStiffness:o=500,modifyTarget:u,min:f,max:d,restDelta:h=.5,restSpeed:m}){const p=e[0],v={done:!1,value:p},x=I=>f!==void 0&&Id,w=I=>f===void 0?d:d===void 0||Math.abs(f-I)-_*Math.exp(-I/r),j=I=>O+M(I),k=I=>{const Y=M(I),te=j(I);v.done=Math.abs(Y)<=h,v.value=v.done?O:te};let N,C;const L=I=>{x(v.value)&&(N=I,C=Xf({keyframes:[v.value,w(v.value)],velocity:zM(j,I,v.value),damping:s,stiffness:o,restDelta:h,restSpeed:m}))};return L(0),{calculatedDuration:null,next:I=>{let Y=!1;return!C&&N===void 0&&(Y=!0,k(I),L(I)),N!==void 0&&I>=N?C.next(I-N):(!Y&&k(I),v)}}}function AL(e,t,n){const r=[],s=n||si.mix||RM,o=e.length-1;for(let u=0;ut[0];if(o===2&&t[0]===t[1])return()=>t[1];const u=e[0]===e[1];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const f=AL(t,r,s),d=f.length,h=m=>{if(u&&m1)for(;ph(Mr(e[0],e[o-1],m)):h}function OL(e,t){const n=e[e.length-1];for(let r=1;r<=t;r++){const s=eu(0,t,r);e.push(rt(n,1,s))}}function EL(e){const t=[0];return OL(t,e.length-1),t}function jL(e,t){return e.map(n=>n*t)}function ML(e,t){return e.map(()=>t||AM).splice(0,e.length-1)}function Yl({duration:e=300,keyframes:t,times:n,ease:r="easeInOut"}){const s=U6(r)?r.map(qS):qS(r),o={done:!1,value:t[0]},u=jL(n&&n.length===t.length?n:EL(t),e),f=TL(u,t,{ease:Array.isArray(s)?s:ML(t,s)});return{calculatedDuration:e,next:d=>(o.value=f(d),o.done=d>=e,o)}}const kL=e=>e!==null;function j0(e,{repeat:t,repeatType:n="loop"},r,s=1){const o=e.filter(kL),f=s<0||t&&n!=="loop"&&t%2===1?0:o.length-1;return!f||r===void 0?o[f]:r}const NL={decay:Jy,inertia:Jy,tween:Yl,keyframes:Yl,spring:Xf};function IM(e){typeof e.type=="string"&&(e.type=NL[e.type])}class M0{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const CL=e=>e/100;class k0 extends M0{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==tn.now()&&this.tick(tn.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;IM(t);const{type:n=Yl,repeat:r=0,repeatDelay:s=0,repeatType:o,velocity:u=0}=t;let{keyframes:f}=t;const d=n||Yl;d!==Yl&&typeof f[0]!="number"&&(this.mixKeyframes=wu(CL,RM(f[0],f[1])),f=[0,100]);const h=d({...t,keyframes:f});o==="mirror"&&(this.mirroredGenerator=d({...t,keyframes:[...f].reverse(),velocity:-u})),h.calculatedDuration===null&&(h.calculatedDuration=E0(h));const{calculatedDuration:m}=h;this.calculatedDuration=m,this.resolvedDuration=m+s,this.totalDuration=this.resolvedDuration*(r+1)-s,this.generator=h}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:r,totalDuration:s,mixKeyframes:o,mirroredGenerator:u,resolvedDuration:f,calculatedDuration:d}=this;if(this.startTime===null)return r.next(0);const{delay:h=0,keyframes:m,repeat:p,repeatType:v,repeatDelay:x,type:w,onUpdate:_,finalKeyframe:S}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-s/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const O=this.currentTime-h*(this.playbackSpeed>=0?1:-1),M=this.playbackSpeed>=0?O<0:O>s;this.currentTime=Math.max(O,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=s);let j=this.currentTime,k=r;if(p){const I=Math.min(this.currentTime,s)/f;let Y=Math.floor(I),te=I%1;!te&&I>=1&&(te=1),te===1&&Y--,Y=Math.min(Y,p+1),Y%2&&(v==="reverse"?(te=1-te,x&&(te-=x/f)):v==="mirror"&&(k=u)),j=Mr(0,1,te)*f}const N=M?{done:!1,value:m[0]}:k.next(j);o&&!M&&(N.value=o(N.value));let{done:C}=N;!M&&d!==null&&(C=this.playbackSpeed>=0?this.currentTime>=s:this.currentTime<=0);const L=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&C);return L&&w!==Jy&&(N.value=j0(m,this.options,S,this.speed)),_&&_(N.value),L&&this.finish(),N}then(t,n){return this.finished.then(t,n)}get duration(){return Gn(this.calculatedDuration)}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(this.currentTime)}set time(t){t=fr(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),this.driver?this.driver.start(!1):(this.startTime=0,this.state="paused",this.holdTime=t,this.tick(t))}get speed(){return this.playbackSpeed}set speed(t){const n=this.playbackSpeed!==t;n&&this.driver&&this.updateTime(tn.now()),this.playbackSpeed=t,n&&this.driver&&(this.time=Gn(this.currentTime))}play(){if(this.isStopped)return;const{driver:t=pL,startTime:n}=this.options;this.driver||(this.driver=t(s=>this.tick(s))),this.options.onPlay?.();const r=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=r):this.holdTime!==null?this.startTime=r-this.holdTime:this.startTime||(this.startTime=n??r),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(tn.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),t.observe(this)}}function DL(e){for(let t=1;te*180/Math.PI,ev=e=>{const t=Ba(Math.atan2(e[1],e[0]));return tv(t)},PL={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:ev,rotateZ:ev,skewX:e=>Ba(Math.atan(e[1])),skewY:e=>Ba(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},tv=e=>(e=e%360,e<0&&(e+=360),e),GS=ev,WS=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),ZS=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),RL={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:WS,scaleY:ZS,scale:e=>(WS(e)+ZS(e))/2,rotateX:e=>tv(Ba(Math.atan2(e[6],e[5]))),rotateY:e=>tv(Ba(Math.atan2(-e[2],e[0]))),rotateZ:GS,rotate:GS,skewX:e=>Ba(Math.atan(e[4])),skewY:e=>Ba(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function nv(e){return e.includes("scale")?1:0}function rv(e,t){if(!e||e==="none")return nv(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let r,s;if(n)r=RL,s=n;else{const f=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=PL,s=f}if(!s)return nv(t);const o=r[t],u=s[1].split(",").map(zL);return typeof o=="function"?o(u):u[o]}const LL=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return rv(n,t)};function zL(e){return parseFloat(e.trim())}const bo=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],xo=new Set(bo),QS=e=>e===vo||e===de,IL=new Set(["x","y","z"]),BL=bo.filter(e=>!IL.has(e));function UL(e){const t=[];return BL.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t}const Qi={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>rv(t,"x"),y:(e,{transform:t})=>rv(t,"y")};Qi.translateX=Qi.x;Qi.translateY=Qi.y;const Fa=new Set;let iv=!1,av=!1,sv=!1;function BM(){if(av){const e=Array.from(Fa).filter(r=>r.needsMeasurement),t=new Set(e.map(r=>r.element)),n=new Map;t.forEach(r=>{const s=UL(r);s.length&&(n.set(r,s),r.render())}),e.forEach(r=>r.measureInitialState()),t.forEach(r=>{r.render();const s=n.get(r);s&&s.forEach(([o,u])=>{r.getValue(o)?.set(u)})}),e.forEach(r=>r.measureEndState()),e.forEach(r=>{r.suspendedScrollY!==void 0&&window.scrollTo(0,r.suspendedScrollY)})}av=!1,iv=!1,Fa.forEach(e=>e.complete(sv)),Fa.clear()}function UM(){Fa.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(av=!0)})}function VL(){sv=!0,UM(),BM(),sv=!1}class N0{constructor(t,n,r,s,o,u=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=r,this.motionValue=s,this.element=o,this.isAsync=u}scheduleResolve(){this.state="scheduled",this.isAsync?(Fa.add(this),iv||(iv=!0,Ge.read(UM),Ge.resolveKeyframes(BM))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:r,motionValue:s}=this;if(t[0]===null){const o=s?.get(),u=t[t.length-1];if(o!==void 0)t[0]=o;else if(r&&n){const f=r.readValue(n,u);f!=null&&(t[0]=f)}t[0]===void 0&&(t[0]=u),s&&o===void 0&&s.set(t[0])}DL(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),Fa.delete(this)}cancel(){this.state==="scheduled"&&(Fa.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const qL=e=>e.startsWith("--");function VM(e,t,n){qL(t)?e.style.setProperty(t,n):e.style[t]=n}const $L={};function qM(e,t){const n=mM(e);return()=>$L[t]??n()}const FL=qM(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),$M=qM(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),$l=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,JS={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:$l([0,.65,.55,1]),circOut:$l([.55,0,1,.45]),backIn:$l([.31,.01,.66,-.59]),backOut:$l([.33,1.53,.69,.99])};function FM(e,t){if(e)return typeof e=="function"?$M()?LM(e,t):"ease-out":TM(e)?$l(e):Array.isArray(e)?e.map(n=>FM(n,t)||JS.easeOut):JS[e]}function HL(e,t,n,{delay:r=0,duration:s=300,repeat:o=0,repeatType:u="loop",ease:f="easeOut",times:d}={},h=void 0){const m={[t]:n};d&&(m.offset=d);const p=FM(f,s);Array.isArray(p)&&(m.easing=p);const v={delay:r,duration:s,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:o+1,direction:u==="reverse"?"alternate":"normal"};return h&&(v.pseudoElement=h),e.animate(m,v)}function HM(e){return typeof e=="function"&&"applyToOptions"in e}function KL({type:e,...t}){return HM(e)&&$M()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class KM extends M0{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!t)return;const{element:n,name:r,keyframes:s,pseudoElement:o,allowFlatten:u=!1,finalKeyframe:f,onComplete:d}=t;this.isPseudoElement=!!o,this.allowFlatten=u,this.options=t,b0(typeof t.type!="string");const h=KL(t);this.animation=HL(n,r,s,h,o),h.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!o){const m=j0(s,this.options,f,this.speed);this.updateMotionValue&&this.updateMotionValue(m),VM(n,r,m),this.animation.cancel()}d?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){const t=this.options?.element;!this.isPseudoElement&&t?.isConnected&&this.animation.commitStyles?.()}get duration(){const t=this.animation.effect?.getComputedTiming?.().duration||0;return Gn(Number(t))}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(Number(this.animation.currentTime)||0)}set time(t){const n=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=fr(t),n&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(t){this.manualStartTime=this.animation.startTime=t}attachTimeline({timeline:t,rangeStart:n,rangeEnd:r,observe:s}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,t&&FL()?(this.animation.timeline=t,n&&(this.animation.rangeStart=n),r&&(this.animation.rangeEnd=r),Jn):s(this)}}const XM={anticipate:wM,backInOut:xM,circInOut:SM};function XL(e){return e in XM}function YL(e){typeof e.ease=="string"&&XL(e.ease)&&(e.ease=XM[e.ease])}const ig=10;class GL extends KM{constructor(t){YL(t),IM(t),super(t),t.startTime!==void 0&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:r,onComplete:s,element:o,...u}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const f=new k0({...u,autoplay:!1}),d=Math.max(ig,tn.now()-this.startTime),h=Mr(0,ig,d-ig),m=f.sample(d).value,{name:p}=this.options;o&&p&&VM(o,p,m),n.setWithVelocity(f.sample(Math.max(0,d-h)).value,m,h),f.stop()}}const eA=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(dr.test(e)||e==="0")&&!e.startsWith("url("));function WL(e){const t=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function e8(e){const{motionValue:t,name:n,repeatDelay:r,repeatType:s,damping:o,type:u}=e;if(!(t?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:d,transformTemplate:h}=t.owner.getProps();return JL()&&n&&QL.has(n)&&(n!=="transform"||!h)&&!d&&!r&&s!=="mirror"&&o!==0&&u!=="inertia"}const t8=40;class n8 extends M0{constructor({autoplay:t=!0,delay:n=0,type:r="keyframes",repeat:s=0,repeatDelay:o=0,repeatType:u="loop",keyframes:f,name:d,motionValue:h,element:m,...p}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=tn.now();const v={autoplay:t,delay:n,type:r,repeat:s,repeatDelay:o,repeatType:u,name:d,motionValue:h,element:m,...p},x=m?.KeyframeResolver||N0;this.keyframeResolver=new x(f,(w,_,S)=>this.onKeyframesResolved(w,_,v,!S),d,h,m),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(t,n,r,s){this.keyframeResolver=void 0;const{name:o,type:u,velocity:f,delay:d,isHandoff:h,onUpdate:m}=r;this.resolvedAt=tn.now(),ZL(t,o,u,f)||((si.instantAnimations||!d)&&m?.(j0(t,r,n)),t[0]=t[t.length-1],ov(r),r.repeat=0);const v={startTime:s?this.resolvedAt?this.resolvedAt-this.createdAt>t8?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...r,keyframes:t},x=!h&&e8(v),w=v.motionValue?.owner?.current,_=x?new GL({...v,element:w}):new k0(v);_.finished.then(()=>{this.notifyFinished()}).catch(Jn),this.pendingTimeline&&(this.stopTimeline=_.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=_}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),VL()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}function YM(e,t,n,r=0,s=1){const o=Array.from(e).sort((h,m)=>h.sortNodePosition(m)).indexOf(t),u=e.size,f=(u-1)*r;return typeof n=="function"?n(o,u):s===1?o*r:f-o*r}const r8=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function i8(e){const t=r8.exec(e);if(!t)return[,];const[,n,r,s]=t;return[`--${n??r}`,s]}function GM(e,t,n=1){const[r,s]=i8(e);if(!r)return;const o=window.getComputedStyle(t).getPropertyValue(r);if(o){const u=o.trim();return fM(u)?parseFloat(u):u}return S0(s)?GM(s,t,n+1):s}const a8={type:"spring",stiffness:500,damping:25,restSpeed:10},s8=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),o8={type:"keyframes",duration:.8},l8={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},u8=(e,{keyframes:t})=>t.length>2?o8:xo.has(e)?e.startsWith("scale")?s8(t[1]):a8:l8,c8=e=>e!==null;function f8(e,{repeat:t,repeatType:n="loop"},r){const s=e.filter(c8),o=t&&n!=="loop"&&t%2===1?0:s.length-1;return s[o]}function WM(e,t){if(e?.inherit&&t){const{inherit:n,...r}=e;return{...t,...r}}return e}function C0(e,t){const n=e?.[t]??e?.default??e;return n!==e?WM(n,e):n}function d8({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:s,repeat:o,repeatType:u,repeatDelay:f,from:d,elapsed:h,...m}){return!!Object.keys(m).length}const D0=(e,t,n,r={},s,o)=>u=>{const f=C0(r,e)||{},d=f.delay||r.delay||0;let{elapsed:h=0}=r;h=h-fr(d);const m={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...f,delay:-h,onUpdate:v=>{t.set(v),f.onUpdate&&f.onUpdate(v)},onComplete:()=>{u(),f.onComplete&&f.onComplete()},name:e,motionValue:t,element:o?void 0:s};d8(f)||Object.assign(m,u8(e,m)),m.duration&&(m.duration=fr(m.duration)),m.repeatDelay&&(m.repeatDelay=fr(m.repeatDelay)),m.from!==void 0&&(m.keyframes[0]=m.from);let p=!1;if((m.type===!1||m.duration===0&&!m.repeatDelay)&&(ov(m),m.delay===0&&(p=!0)),(si.instantAnimations||si.skipAnimations||s?.shouldSkipAnimations)&&(p=!0,ov(m),m.delay=0),m.allowFlatten=!f.type&&!f.ease,p&&!o&&t.get()!==void 0){const v=f8(m.keyframes,f);if(v!==void 0){Ge.update(()=>{m.onUpdate(v),m.onComplete()});return}}return f.isSync?new k0(m):new n8(m)};function tA(e){const t=[{},{}];return e?.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function P0(e,t,n,r){if(typeof t=="function"){const[s,o]=tA(r);t=t(n!==void 0?n:e.custom,s,o)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[s,o]=tA(r);t=t(n!==void 0?n:e.custom,s,o)}return t}function ao(e,t,n){const r=e.getProps();return P0(r,t,n!==void 0?n:r.custom,e)}const ZM=new Set(["width","height","top","left","right","bottom",...bo]),nA=30,h8=e=>!isNaN(parseFloat(e));class m8{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=r=>{const s=tn.now();if(this.updatedAt!==s&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(r),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=tn.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=h8(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new x0);const r=this.events[t].add(n);return t==="change"?()=>{r(),Ge.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,r){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-r}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=tn.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>nA)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,nA);return pM(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function uo(e,t){return new m8(e,t)}const lv=e=>Array.isArray(e);function p8(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,uo(n))}function g8(e){return lv(e)?e[e.length-1]||0:e}function y8(e,t){const n=ao(e,t);let{transitionEnd:r={},transition:s={},...o}=n||{};o={...o,...r};for(const u in o){const f=g8(o[u]);p8(e,u,f)}}const Zt=e=>!!(e&&e.getVelocity);function v8(e){return!!(Zt(e)&&e.add)}function uv(e,t){const n=e.getValue("willChange");if(v8(n))return n.add(t);if(!n&&si.WillChange){const r=new si.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function R0(e){return e.replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}const b8="framerAppearId",QM="data-"+R0(b8);function JM(e){return e.props[QM]}function x8({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function ek(e,t,{delay:n=0,transitionOverride:r,type:s}={}){let{transition:o,transitionEnd:u,...f}=t;const d=e.getDefaultTransition();o=o?WM(o,d):d;const h=o?.reduceMotion;r&&(o=r);const m=[],p=s&&e.animationState&&e.animationState.getState()[s];for(const v in f){const x=e.getValue(v,e.latestValues[v]??null),w=f[v];if(w===void 0||p&&x8(p,v))continue;const _={delay:n,...C0(o||{},v)},S=x.get();if(S!==void 0&&!x.isAnimating&&!Array.isArray(w)&&w===S&&!_.velocity)continue;let O=!1;if(window.MotionHandoffAnimation){const k=JM(e);if(k){const N=window.MotionHandoffAnimation(k,v,Ge);N!==null&&(_.startTime=N,O=!0)}}uv(e,v);const M=h??e.shouldReduceMotion;x.start(D0(v,x,w,M&&ZM.has(v)?{type:!1}:_,e,O));const j=x.animation;j&&m.push(j)}if(u){const v=()=>Ge.update(()=>{u&&y8(e,u)});m.length?Promise.all(m).then(v):v()}return m}function cv(e,t,n={}){const r=ao(e,t,n.type==="exit"?e.presenceContext?.custom:void 0);let{transition:s=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(s=n.transitionOverride);const o=r?()=>Promise.all(ek(e,r,n)):()=>Promise.resolve(),u=e.variantChildren&&e.variantChildren.size?(d=0)=>{const{delayChildren:h=0,staggerChildren:m,staggerDirection:p}=s;return w8(e,t,d,h,m,p,n)}:()=>Promise.resolve(),{when:f}=s;if(f){const[d,h]=f==="beforeChildren"?[o,u]:[u,o];return d().then(()=>h())}else return Promise.all([o(),u(n.delay)])}function w8(e,t,n=0,r=0,s=0,o=1,u){const f=[];for(const d of e.variantChildren)d.notify("AnimationStart",t),f.push(cv(d,t,{...u,delay:n+(typeof r=="function"?0:r)+YM(e.variantChildren,d,r,s,o)}).then(()=>d.notify("AnimationComplete",t)));return Promise.all(f)}function _8(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const s=t.map(o=>cv(e,o,n));r=Promise.all(s)}else if(typeof t=="string")r=cv(e,t,n);else{const s=typeof t=="function"?ao(e,t,n.custom):t;r=Promise.all(ek(e,s,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}const S8={test:e=>e==="auto",parse:e=>e},tk=e=>t=>t.test(e),nk=[vo,de,Or,Yi,J6,Q6,S8],rA=e=>nk.find(tk(e));function A8(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||hM(e):!0}const T8=new Set(["brightness","contrast","saturate","opacity"]);function O8(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(A0)||[];if(!r)return e;const s=n.replace(r,"");let o=T8.has(t)?1:0;return r!==n&&(o*=100),t+"("+o+s+")"}const E8=/\b([a-z-]*)\(.*?\)/gu,fv={...dr,getAnimatableNone:e=>{const t=e.match(E8);return t?t.map(O8).join(" "):e}},dv={...dr,getAnimatableNone:e=>{const t=dr.parse(e);return dr.createTransformer(e)(t.map(r=>typeof r=="number"?0:typeof r=="object"?{...r,alpha:1}:r))}},iA={...vo,transform:Math.round},j8={rotate:Yi,rotateX:Yi,rotateY:Yi,rotateZ:Yi,scale:ff,scaleX:ff,scaleY:ff,scaleZ:ff,skew:Yi,skewX:Yi,skewY:Yi,distance:de,translateX:de,translateY:de,translateZ:de,x:de,y:de,z:de,perspective:de,transformPerspective:de,opacity:tu,originX:FS,originY:FS,originZ:de},L0={borderWidth:de,borderTopWidth:de,borderRightWidth:de,borderBottomWidth:de,borderLeftWidth:de,borderRadius:de,borderTopLeftRadius:de,borderTopRightRadius:de,borderBottomRightRadius:de,borderBottomLeftRadius:de,width:de,maxWidth:de,height:de,maxHeight:de,top:de,right:de,bottom:de,left:de,inset:de,insetBlock:de,insetBlockStart:de,insetBlockEnd:de,insetInline:de,insetInlineStart:de,insetInlineEnd:de,padding:de,paddingTop:de,paddingRight:de,paddingBottom:de,paddingLeft:de,paddingBlock:de,paddingBlockStart:de,paddingBlockEnd:de,paddingInline:de,paddingInlineStart:de,paddingInlineEnd:de,margin:de,marginTop:de,marginRight:de,marginBottom:de,marginLeft:de,marginBlock:de,marginBlockStart:de,marginBlockEnd:de,marginInline:de,marginInlineStart:de,marginInlineEnd:de,fontSize:de,backgroundPositionX:de,backgroundPositionY:de,...j8,zIndex:iA,fillOpacity:tu,strokeOpacity:tu,numOctaves:iA},M8={...L0,color:vt,backgroundColor:vt,outlineColor:vt,fill:vt,stroke:vt,borderColor:vt,borderTopColor:vt,borderRightColor:vt,borderBottomColor:vt,borderLeftColor:vt,filter:fv,WebkitFilter:fv,mask:dv,WebkitMask:dv},rk=e=>M8[e],k8=new Set([fv,dv]);function ik(e,t){let n=rk(e);return k8.has(n)||(n=dr),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const N8=new Set(["auto","none","0"]);function C8(e,t,n){let r=0,s;for(;r{t.getValue(f).set(d)}),this.resolveNoneKeyframes()}}const P8=new Set(["opacity","clipPath","filter","transform"]);function ak(e,t,n){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e=="string"){let r=document;const s=n?.[e]??r.querySelectorAll(e);return s?Array.from(s):[]}return Array.from(e).filter(r=>r!=null)}const sk=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function hv(e){return dM(e)&&"offsetHeight"in e}const{schedule:z0}=OM(queueMicrotask,!1),or={x:!1,y:!1};function ok(){return or.x||or.y}function R8(e){return e==="x"||e==="y"?or[e]?null:(or[e]=!0,()=>{or[e]=!1}):or.x||or.y?null:(or.x=or.y=!0,()=>{or.x=or.y=!1})}function lk(e,t){const n=ak(e),r=new AbortController,s={passive:!0,...t,signal:r.signal};return[n,s,()=>r.abort()]}function L8(e){return!(e.pointerType==="touch"||ok())}function z8(e,t,n={}){const[r,s,o]=lk(e,n);return r.forEach(u=>{let f=!1,d=!1,h;const m=()=>{u.removeEventListener("pointerleave",w)},p=S=>{h&&(h(S),h=void 0),m()},v=S=>{f=!1,window.removeEventListener("pointerup",v),window.removeEventListener("pointercancel",v),d&&(d=!1,p(S))},x=()=>{f=!0,window.addEventListener("pointerup",v,s),window.addEventListener("pointercancel",v,s)},w=S=>{if(S.pointerType!=="touch"){if(f){d=!0;return}p(S)}},_=S=>{if(!L8(S))return;d=!1;const O=t(u,S);typeof O=="function"&&(h=O,u.addEventListener("pointerleave",w,s))};u.addEventListener("pointerenter",_,s),u.addEventListener("pointerdown",x,s)}),o}const uk=(e,t)=>t?e===t?!0:uk(e,t.parentElement):!1,I0=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,I8=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function B8(e){return I8.has(e.tagName)||e.isContentEditable===!0}const U8=new Set(["INPUT","SELECT","TEXTAREA"]);function V8(e){return U8.has(e.tagName)||e.isContentEditable===!0}const Df=new WeakSet;function aA(e){return t=>{t.key==="Enter"&&e(t)}}function ag(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const q8=(e,t)=>{const n=e.currentTarget;if(!n)return;const r=aA(()=>{if(Df.has(n))return;ag(n,"down");const s=aA(()=>{ag(n,"up")}),o=()=>ag(n,"cancel");n.addEventListener("keyup",s,t),n.addEventListener("blur",o,t)});n.addEventListener("keydown",r,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",r),t)};function sA(e){return I0(e)&&!ok()}const oA=new WeakSet;function $8(e,t,n={}){const[r,s,o]=lk(e,n),u=f=>{const d=f.currentTarget;if(!sA(f)||oA.has(f))return;Df.add(d),n.stopPropagation&&oA.add(f);const h=t(d,f),m=(x,w)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",v),Df.has(d)&&Df.delete(d),sA(x)&&typeof h=="function"&&h(x,{success:w})},p=x=>{m(x,d===window||d===document||n.useGlobalTarget||uk(d,x.target))},v=x=>{m(x,!1)};window.addEventListener("pointerup",p,s),window.addEventListener("pointercancel",v,s)};return r.forEach(f=>{(n.useGlobalTarget?window:f).addEventListener("pointerdown",u,s),hv(f)&&(f.addEventListener("focus",h=>q8(h,s)),!B8(f)&&!f.hasAttribute("tabindex")&&(f.tabIndex=0))}),o}function B0(e){return dM(e)&&"ownerSVGElement"in e}const Pf=new WeakMap;let Rf;const ck=(e,t,n)=>(r,s)=>s&&s[0]?s[0][e+"Size"]:B0(r)&&"getBBox"in r?r.getBBox()[t]:r[n],F8=ck("inline","width","offsetWidth"),H8=ck("block","height","offsetHeight");function K8({target:e,borderBoxSize:t}){Pf.get(e)?.forEach(n=>{n(e,{get width(){return F8(e,t)},get height(){return H8(e,t)}})})}function X8(e){e.forEach(K8)}function Y8(){typeof ResizeObserver>"u"||(Rf=new ResizeObserver(X8))}function G8(e,t){Rf||Y8();const n=ak(e);return n.forEach(r=>{let s=Pf.get(r);s||(s=new Set,Pf.set(r,s)),s.add(t),Rf?.observe(r)}),()=>{n.forEach(r=>{const s=Pf.get(r);s?.delete(t),s?.size||Rf?.unobserve(r)})}}const Lf=new Set;let Js;function W8(){Js=()=>{const e={get width(){return window.innerWidth},get height(){return window.innerHeight}};Lf.forEach(t=>t(e))},window.addEventListener("resize",Js)}function Z8(e){return Lf.add(e),Js||W8(),()=>{Lf.delete(e),!Lf.size&&typeof Js=="function"&&(window.removeEventListener("resize",Js),Js=void 0)}}function lA(e,t){return typeof e=="function"?Z8(e):G8(e,t)}function Q8(e){return B0(e)&&e.tagName==="svg"}const J8=[...nk,vt,dr],ez=e=>J8.find(tk(e)),uA=()=>({translate:0,scale:1,origin:0,originPoint:0}),eo=()=>({x:uA(),y:uA()}),cA=()=>({min:0,max:0}),St=()=>({x:cA(),y:cA()}),tz=new WeakMap;function Hd(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function ru(e){return typeof e=="string"||Array.isArray(e)}const U0=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],V0=["initial",...U0];function Kd(e){return Hd(e.animate)||V0.some(t=>ru(e[t]))}function fk(e){return!!(Kd(e)||e.variants)}function nz(e,t,n){for(const r in t){const s=t[r],o=n[r];if(Zt(s))e.addValue(r,s);else if(Zt(o))e.addValue(r,uo(s,{owner:e}));else if(o!==s)if(e.hasValue(r)){const u=e.getValue(r);u.liveStyle===!0?u.jump(s):u.hasAnimated||u.set(s)}else{const u=e.getStaticValue(r);e.addValue(r,uo(u!==void 0?u:s,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const mv={current:null},dk={current:!1},rz=typeof window<"u";function iz(){if(dk.current=!0,!!rz)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>mv.current=e.matches;e.addEventListener("change",t),t()}else mv.current=!1}const fA=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Yf={};function hk(e){Yf=e}function az(){return Yf}class sz{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:s,skipAnimations:o,blockInitialAnimation:u,visualState:f},d={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=N0,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const x=tn.now();this.renderScheduledAtthis.bindToMotionValue(r,n)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(dk.current||iz(),this.shouldReduceMotion=mv.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),na(this.notifyUpdate),na(this.render),this.valueSubscriptions.forEach(t=>t()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const t in this.events)this.events[t].clear();for(const t in this.features){const n=this.features[t];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),n.accelerate&&P8.has(t)&&this.current instanceof HTMLElement){const{factory:u,keyframes:f,times:d,ease:h,duration:m}=n.accelerate,p=new KM({element:this.current,name:t,keyframes:f,times:d,ease:h,duration:fr(m)}),v=u(p);this.valueSubscriptions.set(t,()=>{v(),p.cancel()});return}const r=xo.has(t);r&&this.onBindTransform&&this.onBindTransform();const s=n.on("change",u=>{this.latestValues[t]=u,this.props.onUpdate&&Ge.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;typeof window<"u"&&window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{s(),o&&o(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Yf){const n=Yf[t];if(!n)continue;const{isEnabled:r,Feature:s}=n;if(!this.features[t]&&s&&r(this.props)&&(this.features[t]=new s(this)),this.features[t]){const o=this.features[t];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):St()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;rn.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=uo(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(fM(r)||hM(r))?r=parseFloat(r):!ez(r)&&dr.test(n)&&(r=ik(t,n)),this.setBaseTarget(t,Zt(r)?r.get():r)),Zt(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const o=P0(this.props,n,this.presenceContext?.custom);o&&(r=o[t])}if(n&&r!==void 0)return r;const s=this.getBaseTargetFromProps(this.props,t);return s!==void 0&&!Zt(s)?s:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new x0),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){z0.render(this.render)}}class mk extends sz{constructor(){super(...arguments),this.KeyframeResolver=D8}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){const r=t.style;return r?r[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;Zt(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}class aa{constructor(t){this.isMounted=!1,this.node=t}update(){}}function pk({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function oz({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function lz(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function sg(e){return e===void 0||e===1}function pv({scale:e,scaleX:t,scaleY:n}){return!sg(e)||!sg(t)||!sg(n)}function Pa(e){return pv(e)||gk(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function gk(e){return dA(e.x)||dA(e.y)}function dA(e){return e&&e!=="0%"}function Gf(e,t,n){const r=e-n,s=t*r;return n+s}function hA(e,t,n,r,s){return s!==void 0&&(e=Gf(e,s,r)),Gf(e,n,r)+t}function gv(e,t=0,n=1,r,s){e.min=hA(e.min,t,n,r,s),e.max=hA(e.max,t,n,r,s)}function yk(e,{x:t,y:n}){gv(e.x,t.translate,t.scale,t.originPoint),gv(e.y,n.translate,n.scale,n.originPoint)}const mA=.999999999999,pA=1.0000000000001;function uz(e,t,n,r=!1){const s=n.length;if(!s)return;t.x=t.y=1;let o,u;for(let f=0;fmA&&(t.x=1),t.ymA&&(t.y=1)}function to(e,t){e.min=e.min+t,e.max=e.max+t}function gA(e,t,n,r,s=.5){const o=rt(e.min,e.max,s);gv(e,t,n,o,r)}function yA(e,t){return typeof e=="string"?parseFloat(e)/100*(t.max-t.min):e}function no(e,t){gA(e.x,yA(t.x,e.x),t.scaleX,t.scale,t.originX),gA(e.y,yA(t.y,e.y),t.scaleY,t.scale,t.originY)}function vk(e,t){return pk(lz(e.getBoundingClientRect(),t))}function cz(e,t,n){const r=vk(e,n),{scroll:s}=t;return s&&(to(r.x,s.offset.x),to(r.y,s.offset.y)),r}const fz={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},dz=bo.length;function hz(e,t,n){let r="",s=!0;for(let o=0;o{if(!t.target)return e;if(typeof e=="string")if(de.test(e))e=parseFloat(e);else return e;const n=vA(e,t.target.x),r=vA(e,t.target.y);return`${n}% ${r}%`}},mz={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,s=dr.parse(e);if(s.length>5)return r;const o=dr.createTransformer(e),u=typeof s[0]!="number"?1:0,f=n.x.scale*t.x,d=n.y.scale*t.y;s[0+u]/=f,s[1+u]/=d;const h=rt(f,d,.5);return typeof s[2+u]=="number"&&(s[2+u]/=h),typeof s[3+u]=="number"&&(s[3+u]/=h),o(s)}},yv={borderRadius:{...jl,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:jl,borderTopRightRadius:jl,borderBottomLeftRadius:jl,borderBottomRightRadius:jl,boxShadow:mz};function xk(e,{layout:t,layoutId:n}){return xo.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!yv[e]||e==="opacity")}function $0(e,t,n){const r=e.style,s=t?.style,o={};if(!r)return o;for(const u in r)(Zt(r[u])||s&&Zt(s[u])||xk(u,e)||n?.getValue(u)?.liveStyle!==void 0)&&(o[u]=r[u]);return o}function pz(e){return window.getComputedStyle(e)}class gz extends mk{constructor(){super(...arguments),this.type="html",this.renderInstance=bk}readValueFromInstance(t,n){if(xo.has(n))return this.projection?.isProjecting?nv(n):LL(t,n);{const r=pz(t),s=(jM(n)?r.getPropertyValue(n):r[n])||0;return typeof s=="string"?s.trim():s}}measureInstanceViewportBox(t,{transformPagePoint:n}){return vk(t,n)}build(t,n,r){q0(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return $0(t,n,r)}}const yz={offset:"stroke-dashoffset",array:"stroke-dasharray"},vz={offset:"strokeDashoffset",array:"strokeDasharray"};function bz(e,t,n=1,r=0,s=!0){e.pathLength=1;const o=s?yz:vz;e[o.offset]=`${-r}`,e[o.array]=`${t} ${n}`}const xz=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function wk(e,{attrX:t,attrY:n,attrScale:r,pathLength:s,pathSpacing:o=1,pathOffset:u=0,...f},d,h,m){if(q0(e,f,h),d){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:p,style:v}=e;p.transform&&(v.transform=p.transform,delete p.transform),(v.transform||p.transformOrigin)&&(v.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),v.transform&&(v.transformBox=m?.transformBox??"fill-box",delete p.transformBox);for(const x of xz)p[x]!==void 0&&(v[x]=p[x],delete p[x]);t!==void 0&&(p.x=t),n!==void 0&&(p.y=n),r!==void 0&&(p.scale=r),s!==void 0&&bz(p,s,o,u,!1)}const _k=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),Sk=e=>typeof e=="string"&&e.toLowerCase()==="svg";function wz(e,t,n,r){bk(e,t,void 0,r);for(const s in t.attrs)e.setAttribute(_k.has(s)?s:R0(s),t.attrs[s])}function Ak(e,t,n){const r=$0(e,t,n);for(const s in e)if(Zt(e[s])||Zt(t[s])){const o=bo.indexOf(s)!==-1?"attr"+s.charAt(0).toUpperCase()+s.substring(1):s;r[o]=e[s]}return r}class _z extends mk{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=St}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(xo.has(n)){const r=rk(n);return r&&r.default||0}return n=_k.has(n)?n:R0(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return Ak(t,n,r)}build(t,n,r){wk(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,s){wz(t,n,r,s)}mount(t){this.isSVGTag=Sk(t.tagName),super.mount(t)}}const Sz=V0.length;function Tk(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?Tk(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;nPromise.all(t.map(({animation:n,options:r})=>_8(e,n,r)))}function Ez(e){let t=Oz(e),n=bA(),r=!0,s=!1;const o=h=>(m,p)=>{const v=ao(e,p,h==="exit"?e.presenceContext?.custom:void 0);if(v){const{transition:x,transitionEnd:w,..._}=v;m={...m,..._,...w}}return m};function u(h){t=h(e)}function f(h){const{props:m}=e,p=Tk(e.parent)||{},v=[],x=new Set;let w={},_=1/0;for(let O=0;O_&&N,te=!1;const ie=Array.isArray(k)?k:[k];let K=ie.reduce(o(M),{});C===!1&&(K={});const{prevResolvedValues:be={}}=j,pe={...be,...K},xe=ne=>{Y=!0,x.has(ne)&&(te=!0,x.delete(ne)),j.needsAnimating[ne]=!0;const le=e.getValue(ne);le&&(le.liveStyle=!1)};for(const ne in pe){const le=K[ne],ue=be[ne];if(w.hasOwnProperty(ne))continue;let P=!1;lv(le)&&lv(ue)?P=!Ok(le,ue):P=le!==ue,P?le!=null?xe(ne):x.add(ne):le!==void 0&&x.has(ne)?xe(ne):j.protectedKeys[ne]=!0}j.prevProp=k,j.prevResolvedValues=K,j.isActive&&(w={...w,...K}),(r||s)&&e.blockInitialAnimation&&(Y=!1);const V=L&&I;Y&&(!V||te)&&v.push(...ie.map(ne=>{const le={type:M};if(typeof ne=="string"&&(r||s)&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:ue}=e,P=ao(ue,ne);if(ue.enteringChildren&&P){const{delayChildren:H}=P.transition||{};le.delay=YM(ue.enteringChildren,e,H)}}return{animation:ne,options:le}}))}if(x.size){const O={};if(typeof m.initial!="boolean"){const M=ao(e,Array.isArray(m.initial)?m.initial[0]:m.initial);M&&M.transition&&(O.transition=M.transition)}x.forEach(M=>{const j=e.getBaseTarget(M),k=e.getValue(M);k&&(k.liveStyle=!0),O[M]=j??null}),v.push({animation:O})}let S=!!v.length;return r&&(m.initial===!1||m.initial===m.animate)&&!e.manuallyAnimateOnMount&&(S=!1),r=!1,s=!1,S?t(v):Promise.resolve()}function d(h,m){if(n[h].isActive===m)return Promise.resolve();e.variantChildren?.forEach(v=>v.animationState?.setActive(h,m)),n[h].isActive=m;const p=f(h);for(const v in n)n[v].protectedKeys={};return p}return{animateChanges:f,setActive:d,setAnimateFunction:u,getState:()=>n,reset:()=>{n=bA(),s=!0}}}function jz(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!Ok(t,e):!1}function Ma(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function bA(){return{animate:Ma(!0),whileInView:Ma(),whileHover:Ma(),whileTap:Ma(),whileDrag:Ma(),whileFocus:Ma(),exit:Ma()}}function xA(e,t){e.min=t.min,e.max=t.max}function sr(e,t){xA(e.x,t.x),xA(e.y,t.y)}function wA(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}const Ek=1e-4,Mz=1-Ek,kz=1+Ek,jk=.01,Nz=0-jk,Cz=0+jk;function nn(e){return e.max-e.min}function Dz(e,t,n){return Math.abs(e-t)<=n}function _A(e,t,n,r=.5){e.origin=r,e.originPoint=rt(t.min,t.max,e.origin),e.scale=nn(n)/nn(t),e.translate=rt(n.min,n.max,e.origin)-e.originPoint,(e.scale>=Mz&&e.scale<=kz||isNaN(e.scale))&&(e.scale=1),(e.translate>=Nz&&e.translate<=Cz||isNaN(e.translate))&&(e.translate=0)}function Gl(e,t,n,r){_A(e.x,t.x,n.x,r?r.originX:void 0),_A(e.y,t.y,n.y,r?r.originY:void 0)}function SA(e,t,n){e.min=n.min+t.min,e.max=e.min+nn(t)}function Pz(e,t,n){SA(e.x,t.x,n.x),SA(e.y,t.y,n.y)}function AA(e,t,n){e.min=t.min-n.min,e.max=e.min+nn(t)}function Wf(e,t,n){AA(e.x,t.x,n.x),AA(e.y,t.y,n.y)}function TA(e,t,n,r,s){return e-=t,e=Gf(e,1/n,r),s!==void 0&&(e=Gf(e,1/s,r)),e}function Rz(e,t=0,n=1,r=.5,s,o=e,u=e){if(Or.test(t)&&(t=parseFloat(t),t=rt(u.min,u.max,t/100)-u.min),typeof t!="number")return;let f=rt(o.min,o.max,r);e===o&&(f-=t),e.min=TA(e.min,t,n,f,s),e.max=TA(e.max,t,n,f,s)}function OA(e,t,[n,r,s],o,u){Rz(e,t[n],t[r],t[s],t.scale,o,u)}const Lz=["x","scaleX","originX"],zz=["y","scaleY","originY"];function EA(e,t,n,r){OA(e.x,t,Lz,n?n.x:void 0,r?r.x:void 0),OA(e.y,t,zz,n?n.y:void 0,r?r.y:void 0)}function jA(e){return e.translate===0&&e.scale===1}function Mk(e){return jA(e.x)&&jA(e.y)}function MA(e,t){return e.min===t.min&&e.max===t.max}function Iz(e,t){return MA(e.x,t.x)&&MA(e.y,t.y)}function kA(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function kk(e,t){return kA(e.x,t.x)&&kA(e.y,t.y)}function NA(e){return nn(e.x)/nn(e.y)}function CA(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function Sr(e){return[e("x"),e("y")]}function Bz(e,t,n){let r="";const s=e.x.translate/t.x,o=e.y.translate/t.y,u=n?.z||0;if((s||o||u)&&(r=`translate3d(${s}px, ${o}px, ${u}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:h,rotate:m,rotateX:p,rotateY:v,skewX:x,skewY:w}=n;h&&(r=`perspective(${h}px) ${r}`),m&&(r+=`rotate(${m}deg) `),p&&(r+=`rotateX(${p}deg) `),v&&(r+=`rotateY(${v}deg) `),x&&(r+=`skewX(${x}deg) `),w&&(r+=`skewY(${w}deg) `)}const f=e.x.scale*t.x,d=e.y.scale*t.y;return(f!==1||d!==1)&&(r+=`scale(${f}, ${d})`),r||"none"}const Nk=["TopLeft","TopRight","BottomLeft","BottomRight"],Uz=Nk.length,DA=e=>typeof e=="string"?parseFloat(e):e,PA=e=>typeof e=="number"||de.test(e);function Vz(e,t,n,r,s,o){s?(e.opacity=rt(0,n.opacity??1,qz(r)),e.opacityExit=rt(t.opacity??1,0,$z(r))):o&&(e.opacity=rt(t.opacity??1,n.opacity??1,r));for(let u=0;urt?1:n(eu(e,t,r))}function Fz(e,t,n){const r=Zt(e)?e:uo(e);return r.start(D0("",r,t,n)),r.animation}function iu(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const Hz=(e,t)=>e.depth-t.depth;class Kz{constructor(){this.children=[],this.isDirty=!1}add(t){v0(this.children,t),this.isDirty=!0}remove(t){Ff(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(Hz),this.isDirty=!1,this.children.forEach(t)}}function Xz(e,t){const n=tn.now(),r=({timestamp:s})=>{const o=s-n;o>=t&&(na(r),e(o-t))};return Ge.setup(r,!0),()=>na(r)}function zf(e){return Zt(e)?e.get():e}class Yz{constructor(){this.members=[]}add(t){v0(this.members,t);for(let n=this.members.length-1;n>=0;n--){const r=this.members[n];if(r===t||r===this.lead||r===this.prevLead)continue;const s=r.instance;(!s||s.isConnected===!1)&&!r.snapshot&&(Ff(this.members,r),r.unmount())}t.scheduleRender()}remove(t){if(Ff(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){for(let n=this.members.indexOf(t)-1;n>=0;n--){const r=this.members[n];if(r.isPresent!==!1&&r.instance?.isConnected!==!1)return this.promote(r),!0}return!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.updateSnapshot(),t.scheduleRender();const{layoutDependency:s}=r.options,{layoutDependency:o}=t.options;(s===void 0||s!==o)&&(t.resumeFrom=r,n&&(r.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root?.isUpdating&&(t.isLayoutDirty=!0)),t.options.crossfade===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{t.options.onExitComplete?.(),t.resumingFrom?.options.onExitComplete?.()})}scheduleRender(){this.members.forEach(t=>t.instance&&t.scheduleRender(!1))}removeLeadSnapshot(){this.lead?.snapshot&&(this.lead.snapshot=void 0)}}const If={hasAnimatedSinceResize:!0,hasEverUpdated:!1},og=["","X","Y","Z"],Gz=1e3;let Wz=0;function lg(e,t,n,r){const{latestValues:s}=t;s[e]&&(n[e]=s[e],t.setStaticValue(e,0),r&&(r[e]=0))}function Dk(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=JM(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:s,layoutId:o}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Ge,!(s||o))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&Dk(r)}function Pk({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:s}){return class{constructor(u={},f=t?.()){this.id=Wz++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(Jz),this.nodes.forEach(rI),this.nodes.forEach(iI),this.nodes.forEach(eI)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=u,this.root=f?f.root||f:this,this.path=f?[...f.path,f]:[],this.parent=f,this.depth=f?f.depth+1:0;for(let d=0;dthis.root.updateBlockedByResize=!1;Ge.read(()=>{p=window.innerWidth}),e(u,()=>{const x=window.innerWidth;x!==p&&(p=x,this.root.updateBlockedByResize=!0,m&&m(),m=Xz(v,250),If.hasAnimatedSinceResize&&(If.hasAnimatedSinceResize=!1,this.nodes.forEach(IA)))})}f&&this.root.registerSharedNode(f,this),this.options.animate!==!1&&h&&(f||d)&&this.addEventListener("didUpdate",({delta:m,hasLayoutChanged:p,hasRelativeLayoutChanged:v,layout:x})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const w=this.options.transition||h.getDefaultTransition()||uI,{onLayoutAnimationStart:_,onLayoutAnimationComplete:S}=h.getProps(),O=!this.targetLayout||!kk(this.targetLayout,x),M=!p&&v;if(this.options.layoutRoot||this.resumeFrom||M||p&&(O||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const j={...C0(w,"layout"),onPlay:_,onComplete:S};(h.shouldReduceMotion||this.options.layoutRoot)&&(j.delay=0,j.type=!1),this.startAnimation(j),this.setAnimationOrigin(m,M)}else p||IA(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=x})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const u=this.getStack();u&&u.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),na(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(aI),this.animationId++)}getTransformTemplate(){const{visualElement:u}=this.options;return u&&u.getProps().transformTemplate}willUpdate(u=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&Dk(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let m=0;m{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!nn(this.snapshot.measuredBox.x)&&!nn(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let d=0;d{const N=k/1e3;BA(p.x,u.x,N),BA(p.y,u.y,N),this.setTargetDelta(p),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Wf(v,this.layout.layoutBox,this.relativeParent.layout.layoutBox),oI(this.relativeTarget,this.relativeTargetOrigin,v,N),j&&Iz(this.relativeTarget,j)&&(this.isProjectionDirty=!1),j||(j=St()),sr(j,this.relativeTarget)),_&&(this.animationValues=m,Vz(m,h,this.latestValues,N,M,O)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=N},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(u){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(na(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Ge.update(()=>{If.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=uo(0)),this.motionValue.jump(0,!1),this.currentAnimation=Fz(this.motionValue,[0,1e3],{...u,velocity:0,isSync:!0,onUpdate:f=>{this.mixTargetDelta(f),u.onUpdate&&u.onUpdate(f)},onStop:()=>{},onComplete:()=>{u.onComplete&&u.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const u=this.getStack();u&&u.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Gz),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const u=this.getLead();let{targetWithTransforms:f,target:d,layout:h,latestValues:m}=u;if(!(!f||!d||!h)){if(this!==u&&this.layout&&h&&Rk(this.options.animationType,this.layout.layoutBox,h.layoutBox)){d=this.target||St();const p=nn(this.layout.layoutBox.x);d.x.min=u.target.x.min,d.x.max=d.x.min+p;const v=nn(this.layout.layoutBox.y);d.y.min=u.target.y.min,d.y.max=d.y.min+v}sr(f,d),no(f,m),Gl(this.projectionDeltaWithTransform,this.layoutCorrected,f,m)}}registerSharedNode(u,f){this.sharedNodes.has(u)||this.sharedNodes.set(u,new Yz),this.sharedNodes.get(u).add(f);const h=f.options.initialPromotionConfig;f.promote({transition:h?h.transition:void 0,preserveFollowOpacity:h&&h.shouldPreserveFollowOpacity?h.shouldPreserveFollowOpacity(f):void 0})}isLead(){const u=this.getStack();return u?u.lead===this:!0}getLead(){const{layoutId:u}=this.options;return u?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:u}=this.options;return u?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:u}=this.options;if(u)return this.root.sharedNodes.get(u)}promote({needsReset:u,transition:f,preserveFollowOpacity:d}={}){const h=this.getStack();h&&h.promote(this,d),u&&(this.projectionDelta=void 0,this.needsReset=!0),f&&this.setOptions({transition:f})}relegate(){const u=this.getStack();return u?u.relegate(this):!1}resetSkewAndRotation(){const{visualElement:u}=this.options;if(!u)return;let f=!1;const{latestValues:d}=u;if((d.z||d.rotate||d.rotateX||d.rotateY||d.rotateZ||d.skewX||d.skewY)&&(f=!0),!f)return;const h={};d.z&&lg("z",u,h,this.animationValues);for(let m=0;mu.currentAnimation?.stop()),this.root.nodes.forEach(LA),this.root.sharedNodes.clear()}}}function Zz(e){e.updateLayout()}function Qz(e){const t=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:r}=e.layout,{animationType:s}=e.options,o=t.source!==e.layout.source;s==="size"?Sr(m=>{const p=o?t.measuredBox[m]:t.layoutBox[m],v=nn(p);p.min=n[m].min,p.max=p.min+v}):Rk(s,t.layoutBox,n)&&Sr(m=>{const p=o?t.measuredBox[m]:t.layoutBox[m],v=nn(n[m]);p.max=p.min+v,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[m].max=e.relativeTarget[m].min+v)});const u=eo();Gl(u,n,t.layoutBox);const f=eo();o?Gl(f,e.applyTransform(r,!0),t.measuredBox):Gl(f,n,t.layoutBox);const d=!Mk(u);let h=!1;if(!e.resumeFrom){const m=e.getClosestProjectingParent();if(m&&!m.resumeFrom){const{snapshot:p,layout:v}=m;if(p&&v){const x=St();Wf(x,t.layoutBox,p.layoutBox);const w=St();Wf(w,n,v.layoutBox),kk(x,w)||(h=!0),m.options.layoutRoot&&(e.relativeTarget=w,e.relativeTargetOrigin=x,e.relativeParent=m)}}}e.notifyListeners("didUpdate",{layout:n,snapshot:t,delta:f,layoutDelta:u,hasLayoutChanged:d,hasRelativeLayoutChanged:h})}else if(e.isLead()){const{onExitComplete:n}=e.options;n&&n()}e.options.transition=void 0}function Jz(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function eI(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function tI(e){e.clearSnapshot()}function LA(e){e.clearMeasurements()}function zA(e){e.isLayoutDirty=!1}function nI(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function IA(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function rI(e){e.resolveTargetDelta()}function iI(e){e.calcProjection()}function aI(e){e.resetSkewAndRotation()}function sI(e){e.removeLeadSnapshot()}function BA(e,t,n){e.translate=rt(t.translate,0,n),e.scale=rt(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function UA(e,t,n,r){e.min=rt(t.min,n.min,r),e.max=rt(t.max,n.max,r)}function oI(e,t,n,r){UA(e.x,t.x,n.x,r),UA(e.y,t.y,n.y,r)}function lI(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const uI={duration:.45,ease:[.4,0,.1,1]},VA=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),qA=VA("applewebkit/")&&!VA("chrome/")?Math.round:Jn;function $A(e){e.min=qA(e.min),e.max=qA(e.max)}function cI(e){$A(e.x),$A(e.y)}function Rk(e,t,n){return e==="position"||e==="preserve-aspect"&&!Dz(NA(t),NA(n),.2)}function fI(e){return e!==e.root&&e.scroll?.wasRoot}const dI=Pk({attachResizeListener:(e,t)=>iu(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),ug={current:void 0},Lk=Pk({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!ug.current){const e=new dI({});e.mount(window),e.setOptions({layoutScroll:!0}),ug.current=e}return ug.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),F0=A.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function FA(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function hI(...e){return t=>{let n=!1;const r=e.map(s=>{const o=FA(s,t);return!n&&typeof o=="function"&&(n=!0),o});if(n)return()=>{for(let s=0;s{const{width:v,height:x,top:w,left:_,right:S,bottom:O}=d.current;if(t||o===!1||!f.current||!v||!x)return;const M=n==="left"?`left: ${_}`:`right: ${S}`,j=r==="bottom"?`bottom: ${O}`:`top: ${w}`;f.current.dataset.motionPopId=u;const k=document.createElement("style");h&&(k.nonce=h);const N=s??document.head;return N.appendChild(k),k.sheet&&k.sheet.insertRule(` +`+c.stack}}var Ch=Object.prototype.hasOwnProperty,Dh=e.unstable_scheduleCallback,Ph=e.unstable_cancelCallback,J5=e.unstable_shouldYield,eP=e.unstable_requestPaint,bn=e.unstable_now,tP=e.unstable_getCurrentPriorityLevel,Nx=e.unstable_ImmediatePriority,kx=e.unstable_UserBlockingPriority,Ku=e.unstable_NormalPriority,nP=e.unstable_LowPriority,Cx=e.unstable_IdlePriority,rP=e.log,iP=e.unstable_setDisableYieldValue,Po=null,xn=null;function bi(i){if(typeof rP=="function"&&iP(i),xn&&typeof xn.setStrictMode=="function")try{xn.setStrictMode(Po,i)}catch{}}var wn=Math.clz32?Math.clz32:oP,aP=Math.log,sP=Math.LN2;function oP(i){return i>>>=0,i===0?32:31-(aP(i)/sP|0)|0}var Xu=256,Yu=262144,Gu=4194304;function fa(i){var a=i&42;if(a!==0)return a;switch(i&-i){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 i&261888;case 262144:case 524288:case 1048576:case 2097152:return i&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return i&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return i}}function Wu(i,a,l){var c=i.pendingLanes;if(c===0)return 0;var g=0,y=i.suspendedLanes,T=i.pingedLanes;i=i.warmLanes;var E=c&134217727;return E!==0?(c=E&~y,c!==0?g=fa(c):(T&=E,T!==0?g=fa(T):l||(l=E&~i,l!==0&&(g=fa(l))))):(E=c&~y,E!==0?g=fa(E):T!==0?g=fa(T):l||(l=c&~i,l!==0&&(g=fa(l)))),g===0?0:a!==0&&a!==g&&(a&y)===0&&(y=g&-g,l=a&-a,y>=l||y===32&&(l&4194048)!==0)?a:g}function Ro(i,a){return(i.pendingLanes&~(i.suspendedLanes&~i.pingedLanes)&a)===0}function lP(i,a){switch(i){case 1:case 2:case 4:case 8:case 64:return a+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 a+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 Dx(){var i=Gu;return Gu<<=1,(Gu&62914560)===0&&(Gu=4194304),i}function Rh(i){for(var a=[],l=0;31>l;l++)a.push(i);return a}function Lo(i,a){i.pendingLanes|=a,a!==268435456&&(i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0)}function uP(i,a,l,c,g,y){var T=i.pendingLanes;i.pendingLanes=l,i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0,i.expiredLanes&=l,i.entangledLanes&=l,i.errorRecoveryDisabledLanes&=l,i.shellSuspendCounter=0;var E=i.entanglements,D=i.expirationTimes,U=i.hiddenUpdates;for(l=T&~l;0"u")return null;try{return i.activeElement||i.body}catch{return i.body}}var pP=/[\n"\\]/g;function zn(i){return i.replace(pP,function(a){return"\\"+a.charCodeAt(0).toString(16)+" "})}function Vh(i,a,l,c,g,y,T,E){i.name="",T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"?i.type=T:i.removeAttribute("type"),a!=null?T==="number"?(a===0&&i.value===""||i.value!=a)&&(i.value=""+Ln(a)):i.value!==""+Ln(a)&&(i.value=""+Ln(a)):T!=="submit"&&T!=="reset"||i.removeAttribute("value"),a!=null?qh(i,T,Ln(a)):l!=null?qh(i,T,Ln(l)):c!=null&&i.removeAttribute("value"),g==null&&y!=null&&(i.defaultChecked=!!y),g!=null&&(i.checked=g&&typeof g!="function"&&typeof g!="symbol"),E!=null&&typeof E!="function"&&typeof E!="symbol"&&typeof E!="boolean"?i.name=""+Ln(E):i.removeAttribute("name")}function Kx(i,a,l,c,g,y,T,E){if(y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(i.type=y),a!=null||l!=null){if(!(y!=="submit"&&y!=="reset"||a!=null)){Uh(i);return}l=l!=null?""+Ln(l):"",a=a!=null?""+Ln(a):l,E||a===i.value||(i.value=a),i.defaultValue=a}c=c??g,c=typeof c!="function"&&typeof c!="symbol"&&!!c,i.checked=E?i.checked:!!c,i.defaultChecked=!!c,T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"&&(i.name=T),Uh(i)}function qh(i,a,l){a==="number"&&Ju(i.ownerDocument)===i||i.defaultValue===""+l||(i.defaultValue=""+l)}function us(i,a,l,c){if(i=i.options,a){a={};for(var g=0;g"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Xh=!1;if(zr)try{var Uo={};Object.defineProperty(Uo,"passive",{get:function(){Xh=!0}}),window.addEventListener("test",Uo,Uo),window.removeEventListener("test",Uo,Uo)}catch{Xh=!1}var wi=null,Yh=null,tc=null;function Jx(){if(tc)return tc;var i,a=Yh,l=a.length,c,g="value"in wi?wi.value:wi.textContent,y=g.length;for(i=0;i=$o),a1=" ",s1=!1;function o1(i,a){switch(i){case"keyup":return $P.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function l1(i){return i=i.detail,typeof i=="object"&&"data"in i?i.data:null}var hs=!1;function HP(i,a){switch(i){case"compositionend":return l1(a);case"keypress":return a.which!==32?null:(s1=!0,a1);case"textInput":return i=a.data,i===a1&&s1?null:i;default:return null}}function KP(i,a){if(hs)return i==="compositionend"||!Jh&&o1(i,a)?(i=Jx(),tc=Yh=wi=null,hs=!1,i):null;switch(i){case"paste":return null;case"keypress":if(!(a.ctrlKey||a.altKey||a.metaKey)||a.ctrlKey&&a.altKey){if(a.char&&1=a)return{node:l,offset:a-i};i=c}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=g1(l)}}function v1(i,a){return i&&a?i===a?!0:i&&i.nodeType===3?!1:a&&a.nodeType===3?v1(i,a.parentNode):"contains"in i?i.contains(a):i.compareDocumentPosition?!!(i.compareDocumentPosition(a)&16):!1:!1}function b1(i){i=i!=null&&i.ownerDocument!=null&&i.ownerDocument.defaultView!=null?i.ownerDocument.defaultView:window;for(var a=Ju(i.document);a instanceof i.HTMLIFrameElement;){try{var l=typeof a.contentWindow.location.href=="string"}catch{l=!1}if(l)i=a.contentWindow;else break;a=Ju(i.document)}return a}function nm(i){var a=i&&i.nodeName&&i.nodeName.toLowerCase();return a&&(a==="input"&&(i.type==="text"||i.type==="search"||i.type==="tel"||i.type==="url"||i.type==="password")||a==="textarea"||i.contentEditable==="true")}var e4=zr&&"documentMode"in document&&11>=document.documentMode,ms=null,rm=null,Xo=null,im=!1;function x1(i,a,l){var c=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;im||ms==null||ms!==Ju(c)||(c=ms,"selectionStart"in c&&nm(c)?c={start:c.selectionStart,end:c.selectionEnd}:(c=(c.ownerDocument&&c.ownerDocument.defaultView||window).getSelection(),c={anchorNode:c.anchorNode,anchorOffset:c.anchorOffset,focusNode:c.focusNode,focusOffset:c.focusOffset}),Xo&&Ko(Xo,c)||(Xo=c,c=Yc(rm,"onSelect"),0>=T,g-=T,gr=1<<32-wn(a)+g|l<Oe?(Ne=me,me=null):Ne=me.sibling;var Re=q(z,me,B[Oe],G);if(Re===null){me===null&&(me=Ne);break}i&&me&&Re.alternate===null&&a(z,me),R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re,me=Ne}if(Oe===B.length)return l(z,me),ke&&Br(z,Oe),ge;if(me===null){for(;OeOe?(Ne=me,me=null):Ne=me.sibling;var $i=q(z,me,Re.value,G);if($i===null){me===null&&(me=Ne);break}i&&me&&$i.alternate===null&&a(z,me),R=y($i,R,Oe),Pe===null?ge=$i:Pe.sibling=$i,Pe=$i,me=Ne}if(Re.done)return l(z,me),ke&&Br(z,Oe),ge;if(me===null){for(;!Re.done;Oe++,Re=B.next())Re=W(z,Re.value,G),Re!==null&&(R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re);return ke&&Br(z,Oe),ge}for(me=c(me);!Re.done;Oe++,Re=B.next())Re=F(me,z,Oe,Re.value,G),Re!==null&&(i&&Re.alternate!==null&&me.delete(Re.key===null?Oe:Re.key),R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re);return i&&me.forEach(function(xR){return a(z,xR)}),ke&&Br(z,Oe),ge}function Fe(z,R,B,G){if(typeof B=="object"&&B!==null&&B.type===_&&B.key===null&&(B=B.props.children),typeof B=="object"&&B!==null){switch(B.$$typeof){case x:e:{for(var ge=B.key;R!==null;){if(R.key===ge){if(ge=B.type,ge===_){if(R.tag===7){l(z,R.sibling),G=g(R,B.props.children),G.return=z,z=G;break e}}else if(R.elementType===ge||typeof ge=="object"&&ge!==null&&ge.$$typeof===I&&_a(ge)===R.type){l(z,R.sibling),G=g(R,B.props),Jo(G,B),G.return=z,z=G;break e}l(z,R);break}else a(z,R);R=R.sibling}B.type===_?(G=ya(B.props.children,z.mode,G,B.key),G.return=z,z=G):(G=fc(B.type,B.key,B.props,null,z.mode,G),Jo(G,B),G.return=z,z=G)}return T(z);case w:e:{for(ge=B.key;R!==null;){if(R.key===ge)if(R.tag===4&&R.stateNode.containerInfo===B.containerInfo&&R.stateNode.implementation===B.implementation){l(z,R.sibling),G=g(R,B.children||[]),G.return=z,z=G;break e}else{l(z,R);break}else a(z,R);R=R.sibling}G=fm(B,z.mode,G),G.return=z,z=G}return T(z);case I:return B=_a(B),Fe(z,R,B,G)}if(xe(B))return fe(z,R,B,G);if(K(B)){if(ge=K(B),typeof ge!="function")throw Error(r(150));return B=ge.call(B),we(z,R,B,G)}if(typeof B.then=="function")return Fe(z,R,vc(B),G);if(B.$$typeof===j)return Fe(z,R,mc(z,B),G);bc(z,B)}return typeof B=="string"&&B!==""||typeof B=="number"||typeof B=="bigint"?(B=""+B,R!==null&&R.tag===6?(l(z,R.sibling),G=g(R,B),G.return=z,z=G):(l(z,R),G=cm(B,z.mode,G),G.return=z,z=G),T(z)):l(z,R)}return function(z,R,B,G){try{Qo=0;var ge=Fe(z,R,B,G);return Ts=null,ge}catch(me){if(me===As||me===gc)throw me;var Pe=Sn(29,me,null,z.mode);return Pe.lanes=G,Pe.return=z,Pe}}}var Aa=$1(!0),F1=$1(!1),Oi=!1;function Sm(i){i.updateQueue={baseState:i.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Am(i,a){i=i.updateQueue,a.updateQueue===i&&(a.updateQueue={baseState:i.baseState,firstBaseUpdate:i.firstBaseUpdate,lastBaseUpdate:i.lastBaseUpdate,shared:i.shared,callbacks:null})}function Ei(i){return{lane:i,tag:0,payload:null,callback:null,next:null}}function ji(i,a,l){var c=i.updateQueue;if(c===null)return null;if(c=c.shared,(Ie&2)!==0){var g=c.pending;return g===null?a.next=a:(a.next=g.next,g.next=a),c.pending=a,a=cc(i),E1(i,null,l),a}return uc(i,c,a,l),cc(i)}function el(i,a,l){if(a=a.updateQueue,a!==null&&(a=a.shared,(l&4194048)!==0)){var c=a.lanes;c&=i.pendingLanes,l|=c,a.lanes=l,Rx(i,l)}}function Tm(i,a){var l=i.updateQueue,c=i.alternate;if(c!==null&&(c=c.updateQueue,l===c)){var g=null,y=null;if(l=l.firstBaseUpdate,l!==null){do{var T={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};y===null?g=y=T:y=y.next=T,l=l.next}while(l!==null);y===null?g=y=a:y=y.next=a}else g=y=a;l={baseState:c.baseState,firstBaseUpdate:g,lastBaseUpdate:y,shared:c.shared,callbacks:c.callbacks},i.updateQueue=l;return}i=l.lastBaseUpdate,i===null?l.firstBaseUpdate=a:i.next=a,l.lastBaseUpdate=a}var Om=!1;function tl(){if(Om){var i=Ss;if(i!==null)throw i}}function nl(i,a,l,c){Om=!1;var g=i.updateQueue;Oi=!1;var y=g.firstBaseUpdate,T=g.lastBaseUpdate,E=g.shared.pending;if(E!==null){g.shared.pending=null;var D=E,U=D.next;D.next=null,T===null?y=U:T.next=U,T=D;var X=i.alternate;X!==null&&(X=X.updateQueue,E=X.lastBaseUpdate,E!==T&&(E===null?X.firstBaseUpdate=U:E.next=U,X.lastBaseUpdate=D))}if(y!==null){var W=g.baseState;T=0,X=U=D=null,E=y;do{var q=E.lane&-536870913,F=q!==E.lane;if(F?(Me&q)===q:(c&q)===q){q!==0&&q===_s&&(Om=!0),X!==null&&(X=X.next={lane:0,tag:E.tag,payload:E.payload,callback:null,next:null});e:{var fe=i,we=E;q=a;var Fe=l;switch(we.tag){case 1:if(fe=we.payload,typeof fe=="function"){W=fe.call(Fe,W,q);break e}W=fe;break e;case 3:fe.flags=fe.flags&-65537|128;case 0:if(fe=we.payload,q=typeof fe=="function"?fe.call(Fe,W,q):fe,q==null)break e;W=p({},W,q);break e;case 2:Oi=!0}}q=E.callback,q!==null&&(i.flags|=64,F&&(i.flags|=8192),F=g.callbacks,F===null?g.callbacks=[q]:F.push(q))}else F={lane:q,tag:E.tag,payload:E.payload,callback:E.callback,next:null},X===null?(U=X=F,D=W):X=X.next=F,T|=q;if(E=E.next,E===null){if(E=g.shared.pending,E===null)break;F=E,E=F.next,F.next=null,g.lastBaseUpdate=F,g.shared.pending=null}}while(!0);X===null&&(D=W),g.baseState=D,g.firstBaseUpdate=U,g.lastBaseUpdate=X,y===null&&(g.shared.lanes=0),Di|=T,i.lanes=T,i.memoizedState=W}}function H1(i,a){if(typeof i!="function")throw Error(r(191,i));i.call(a)}function K1(i,a){var l=i.callbacks;if(l!==null)for(i.callbacks=null,i=0;iy?y:8;var T=V.T,E={};V.T=E,Hm(i,!1,a,l);try{var D=g(),U=V.S;if(U!==null&&U(E,D),D!==null&&typeof D=="object"&&typeof D.then=="function"){var X=u4(D,c);al(i,a,X,jn(i))}else al(i,a,c,jn(i))}catch(W){al(i,a,{then:function(){},status:"rejected",reason:W},jn())}finally{Q.p=y,T!==null&&E.types!==null&&(T.types=E.types),V.T=T}}function p4(){}function $m(i,a,l,c){if(i.tag!==5)throw Error(r(476));var g=Aw(i).queue;Sw(i,g,a,ne,l===null?p4:function(){return Tw(i),l(c)})}function Aw(i){var a=i.memoizedState;if(a!==null)return a;a={memoizedState:ne,baseState:ne,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:ne},next:null};var l={};return a.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:l},next:null},i.memoizedState=a,i=i.alternate,i!==null&&(i.memoizedState=a),a}function Tw(i){var a=Aw(i);a.next===null&&(a=i.alternate.memoizedState),al(i,a.next.queue,{},jn())}function Fm(){return Ut(_l)}function Ow(){return ft().memoizedState}function Ew(){return ft().memoizedState}function g4(i){for(var a=i.return;a!==null;){switch(a.tag){case 24:case 3:var l=jn();i=Ei(l);var c=ji(a,i,l);c!==null&&(hn(c,a,l),el(c,a,l)),a={cache:bm()},i.payload=a;return}a=a.return}}function y4(i,a,l){var c=jn();l={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Mc(i)?Mw(a,l):(l=lm(i,a,l,c),l!==null&&(hn(l,i,c),Nw(l,a,c)))}function jw(i,a,l){var c=jn();al(i,a,l,c)}function al(i,a,l,c){var g={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Mc(i))Mw(a,g);else{var y=i.alternate;if(i.lanes===0&&(y===null||y.lanes===0)&&(y=a.lastRenderedReducer,y!==null))try{var T=a.lastRenderedState,E=y(T,l);if(g.hasEagerState=!0,g.eagerState=E,_n(E,T))return uc(i,a,g,0),Ke===null&&lc(),!1}catch{}if(l=lm(i,a,g,c),l!==null)return hn(l,i,c),Nw(l,a,c),!0}return!1}function Hm(i,a,l,c){if(c={lane:2,revertLane:Sp(),gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null},Mc(i)){if(a)throw Error(r(479))}else a=lm(i,l,c,2),a!==null&&hn(a,i,2)}function Mc(i){var a=i.alternate;return i===Te||a!==null&&a===Te}function Mw(i,a){Es=_c=!0;var l=i.pending;l===null?a.next=a:(a.next=l.next,l.next=a),i.pending=a}function Nw(i,a,l){if((l&4194048)!==0){var c=a.lanes;c&=i.pendingLanes,l|=c,a.lanes=l,Rx(i,l)}}var sl={readContext:Ut,use:Tc,useCallback:at,useContext:at,useEffect:at,useImperativeHandle:at,useLayoutEffect:at,useInsertionEffect:at,useMemo:at,useReducer:at,useRef:at,useState:at,useDebugValue:at,useDeferredValue:at,useTransition:at,useSyncExternalStore:at,useId:at,useHostTransitionStatus:at,useFormState:at,useActionState:at,useOptimistic:at,useMemoCache:at,useCacheRefresh:at};sl.useEffectEvent=at;var kw={readContext:Ut,use:Tc,useCallback:function(i,a){return en().memoizedState=[i,a===void 0?null:a],i},useContext:Ut,useEffect:mw,useImperativeHandle:function(i,a,l){l=l!=null?l.concat([i]):null,Ec(4194308,4,vw.bind(null,a,i),l)},useLayoutEffect:function(i,a){return Ec(4194308,4,i,a)},useInsertionEffect:function(i,a){Ec(4,2,i,a)},useMemo:function(i,a){var l=en();a=a===void 0?null:a;var c=i();if(Ta){bi(!0);try{i()}finally{bi(!1)}}return l.memoizedState=[c,a],c},useReducer:function(i,a,l){var c=en();if(l!==void 0){var g=l(a);if(Ta){bi(!0);try{l(a)}finally{bi(!1)}}}else g=a;return c.memoizedState=c.baseState=g,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:i,lastRenderedState:g},c.queue=i,i=i.dispatch=y4.bind(null,Te,i),[c.memoizedState,i]},useRef:function(i){var a=en();return i={current:i},a.memoizedState=i},useState:function(i){i=Im(i);var a=i.queue,l=jw.bind(null,Te,a);return a.dispatch=l,[i.memoizedState,l]},useDebugValue:Vm,useDeferredValue:function(i,a){var l=en();return qm(l,i,a)},useTransition:function(){var i=Im(!1);return i=Sw.bind(null,Te,i.queue,!0,!1),en().memoizedState=i,[!1,i]},useSyncExternalStore:function(i,a,l){var c=Te,g=en();if(ke){if(l===void 0)throw Error(r(407));l=l()}else{if(l=a(),Ke===null)throw Error(r(349));(Me&127)!==0||Q1(c,a,l)}g.memoizedState=l;var y={value:l,getSnapshot:a};return g.queue=y,mw(ew.bind(null,c,y,i),[i]),c.flags|=2048,Ms(9,{destroy:void 0},J1.bind(null,c,y,l,a),null),l},useId:function(){var i=en(),a=Ke.identifierPrefix;if(ke){var l=yr,c=gr;l=(c&~(1<<32-wn(c)-1)).toString(32)+l,a="_"+a+"R_"+l,l=Sc++,0<\/script>",y=y.removeChild(y.firstChild);break;case"select":y=typeof c.is=="string"?T.createElement("select",{is:c.is}):T.createElement("select"),c.multiple?y.multiple=!0:c.size&&(y.size=c.size);break;default:y=typeof c.is=="string"?T.createElement(g,{is:c.is}):T.createElement(g)}}y[It]=a,y[on]=c;e:for(T=a.child;T!==null;){if(T.tag===5||T.tag===6)y.appendChild(T.stateNode);else if(T.tag!==4&&T.tag!==27&&T.child!==null){T.child.return=T,T=T.child;continue}if(T===a)break e;for(;T.sibling===null;){if(T.return===null||T.return===a)break e;T=T.return}T.sibling.return=T.return,T=T.sibling}a.stateNode=y;e:switch(qt(y,g,c),g){case"button":case"input":case"select":case"textarea":c=!!c.autoFocus;break e;case"img":c=!0;break e;default:c=!1}c&&Hr(a)}}return Ze(a),ap(a,a.type,i===null?null:i.memoizedProps,a.pendingProps,l),null;case 6:if(i&&a.stateNode!=null)i.memoizedProps!==c&&Hr(a);else{if(typeof c!="string"&&a.stateNode===null)throw Error(r(166));if(i=oe.current,xs(a)){if(i=a.stateNode,l=a.memoizedProps,c=null,g=Bt,g!==null)switch(g.tag){case 27:case 5:c=g.memoizedProps}i[It]=a,i=!!(i.nodeValue===l||c!==null&&c.suppressHydrationWarning===!0||W_(i.nodeValue,l)),i||Ai(a,!0)}else i=Gc(i).createTextNode(c),i[It]=a,a.stateNode=i}return Ze(a),null;case 31:if(l=a.memoizedState,i===null||i.memoizedState!==null){if(c=xs(a),l!==null){if(i===null){if(!c)throw Error(r(318));if(i=a.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(557));i[It]=a}else va(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Ze(a),i=!1}else l=pm(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=l),i=!0;if(!i)return a.flags&256?(Tn(a),a):(Tn(a),null);if((a.flags&128)!==0)throw Error(r(558))}return Ze(a),null;case 13:if(c=a.memoizedState,i===null||i.memoizedState!==null&&i.memoizedState.dehydrated!==null){if(g=xs(a),c!==null&&c.dehydrated!==null){if(i===null){if(!g)throw Error(r(318));if(g=a.memoizedState,g=g!==null?g.dehydrated:null,!g)throw Error(r(317));g[It]=a}else va(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Ze(a),g=!1}else g=pm(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=g),g=!0;if(!g)return a.flags&256?(Tn(a),a):(Tn(a),null)}return Tn(a),(a.flags&128)!==0?(a.lanes=l,a):(l=c!==null,i=i!==null&&i.memoizedState!==null,l&&(c=a.child,g=null,c.alternate!==null&&c.alternate.memoizedState!==null&&c.alternate.memoizedState.cachePool!==null&&(g=c.alternate.memoizedState.cachePool.pool),y=null,c.memoizedState!==null&&c.memoizedState.cachePool!==null&&(y=c.memoizedState.cachePool.pool),y!==g&&(c.flags|=2048)),l!==i&&l&&(a.child.flags|=8192),Pc(a,a.updateQueue),Ze(a),null);case 4:return J(),i===null&&Ep(a.stateNode.containerInfo),Ze(a),null;case 10:return Vr(a.type),Ze(a),null;case 19:if(H(ct),c=a.memoizedState,c===null)return Ze(a),null;if(g=(a.flags&128)!==0,y=c.rendering,y===null)if(g)ll(c,!1);else{if(st!==0||i!==null&&(i.flags&128)!==0)for(i=a.child;i!==null;){if(y=wc(i),y!==null){for(a.flags|=128,ll(c,!1),i=y.updateQueue,a.updateQueue=i,Pc(a,i),a.subtreeFlags=0,i=l,l=a.child;l!==null;)j1(l,i),l=l.sibling;return ae(ct,ct.current&1|2),ke&&Br(a,c.treeForkCount),a.child}i=i.sibling}c.tail!==null&&bn()>Bc&&(a.flags|=128,g=!0,ll(c,!1),a.lanes=4194304)}else{if(!g)if(i=wc(y),i!==null){if(a.flags|=128,g=!0,i=i.updateQueue,a.updateQueue=i,Pc(a,i),ll(c,!0),c.tail===null&&c.tailMode==="hidden"&&!y.alternate&&!ke)return Ze(a),null}else 2*bn()-c.renderingStartTime>Bc&&l!==536870912&&(a.flags|=128,g=!0,ll(c,!1),a.lanes=4194304);c.isBackwards?(y.sibling=a.child,a.child=y):(i=c.last,i!==null?i.sibling=y:a.child=y,c.last=y)}return c.tail!==null?(i=c.tail,c.rendering=i,c.tail=i.sibling,c.renderingStartTime=bn(),i.sibling=null,l=ct.current,ae(ct,g?l&1|2:l&1),ke&&Br(a,c.treeForkCount),i):(Ze(a),null);case 22:case 23:return Tn(a),jm(),c=a.memoizedState!==null,i!==null?i.memoizedState!==null!==c&&(a.flags|=8192):c&&(a.flags|=8192),c?(l&536870912)!==0&&(a.flags&128)===0&&(Ze(a),a.subtreeFlags&6&&(a.flags|=8192)):Ze(a),l=a.updateQueue,l!==null&&Pc(a,l.retryQueue),l=null,i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(l=i.memoizedState.cachePool.pool),c=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(c=a.memoizedState.cachePool.pool),c!==l&&(a.flags|=2048),i!==null&&H(wa),null;case 24:return l=null,i!==null&&(l=i.memoizedState.cache),a.memoizedState.cache!==l&&(a.flags|=2048),Vr(mt),Ze(a),null;case 25:return null;case 30:return null}throw Error(r(156,a.tag))}function _4(i,a){switch(hm(a),a.tag){case 1:return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 3:return Vr(mt),J(),i=a.flags,(i&65536)!==0&&(i&128)===0?(a.flags=i&-65537|128,a):null;case 26:case 27:case 5:return Se(a),null;case 31:if(a.memoizedState!==null){if(Tn(a),a.alternate===null)throw Error(r(340));va()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 13:if(Tn(a),i=a.memoizedState,i!==null&&i.dehydrated!==null){if(a.alternate===null)throw Error(r(340));va()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 19:return H(ct),null;case 4:return J(),null;case 10:return Vr(a.type),null;case 22:case 23:return Tn(a),jm(),i!==null&&H(wa),i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 24:return Vr(mt),null;case 25:return null;default:return null}}function t_(i,a){switch(hm(a),a.tag){case 3:Vr(mt),J();break;case 26:case 27:case 5:Se(a);break;case 4:J();break;case 31:a.memoizedState!==null&&Tn(a);break;case 13:Tn(a);break;case 19:H(ct);break;case 10:Vr(a.type);break;case 22:case 23:Tn(a),jm(),i!==null&&H(wa);break;case 24:Vr(mt)}}function ul(i,a){try{var l=a.updateQueue,c=l!==null?l.lastEffect:null;if(c!==null){var g=c.next;l=g;do{if((l.tag&i)===i){c=void 0;var y=l.create,T=l.inst;c=y(),T.destroy=c}l=l.next}while(l!==g)}}catch(E){Ve(a,a.return,E)}}function ki(i,a,l){try{var c=a.updateQueue,g=c!==null?c.lastEffect:null;if(g!==null){var y=g.next;c=y;do{if((c.tag&i)===i){var T=c.inst,E=T.destroy;if(E!==void 0){T.destroy=void 0,g=a;var D=l,U=E;try{U()}catch(X){Ve(g,D,X)}}}c=c.next}while(c!==y)}}catch(X){Ve(a,a.return,X)}}function n_(i){var a=i.updateQueue;if(a!==null){var l=i.stateNode;try{K1(a,l)}catch(c){Ve(i,i.return,c)}}}function r_(i,a,l){l.props=Oa(i.type,i.memoizedProps),l.state=i.memoizedState;try{l.componentWillUnmount()}catch(c){Ve(i,a,c)}}function cl(i,a){try{var l=i.ref;if(l!==null){switch(i.tag){case 26:case 27:case 5:var c=i.stateNode;break;case 30:c=i.stateNode;break;default:c=i.stateNode}typeof l=="function"?i.refCleanup=l(c):l.current=c}}catch(g){Ve(i,a,g)}}function vr(i,a){var l=i.ref,c=i.refCleanup;if(l!==null)if(typeof c=="function")try{c()}catch(g){Ve(i,a,g)}finally{i.refCleanup=null,i=i.alternate,i!=null&&(i.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(g){Ve(i,a,g)}else l.current=null}function i_(i){var a=i.type,l=i.memoizedProps,c=i.stateNode;try{e:switch(a){case"button":case"input":case"select":case"textarea":l.autoFocus&&c.focus();break e;case"img":l.src?c.src=l.src:l.srcSet&&(c.srcset=l.srcSet)}}catch(g){Ve(i,i.return,g)}}function sp(i,a,l){try{var c=i.stateNode;F4(c,i.type,l,a),c[on]=a}catch(g){Ve(i,i.return,g)}}function a_(i){return i.tag===5||i.tag===3||i.tag===26||i.tag===27&&Ii(i.type)||i.tag===4}function op(i){e:for(;;){for(;i.sibling===null;){if(i.return===null||a_(i.return))return null;i=i.return}for(i.sibling.return=i.return,i=i.sibling;i.tag!==5&&i.tag!==6&&i.tag!==18;){if(i.tag===27&&Ii(i.type)||i.flags&2||i.child===null||i.tag===4)continue e;i.child.return=i,i=i.child}if(!(i.flags&2))return i.stateNode}}function lp(i,a,l){var c=i.tag;if(c===5||c===6)i=i.stateNode,a?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(i,a):(a=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,a.appendChild(i),l=l._reactRootContainer,l!=null||a.onclick!==null||(a.onclick=Lr));else if(c!==4&&(c===27&&Ii(i.type)&&(l=i.stateNode,a=null),i=i.child,i!==null))for(lp(i,a,l),i=i.sibling;i!==null;)lp(i,a,l),i=i.sibling}function Rc(i,a,l){var c=i.tag;if(c===5||c===6)i=i.stateNode,a?l.insertBefore(i,a):l.appendChild(i);else if(c!==4&&(c===27&&Ii(i.type)&&(l=i.stateNode),i=i.child,i!==null))for(Rc(i,a,l),i=i.sibling;i!==null;)Rc(i,a,l),i=i.sibling}function s_(i){var a=i.stateNode,l=i.memoizedProps;try{for(var c=i.type,g=a.attributes;g.length;)a.removeAttributeNode(g[0]);qt(a,c,l),a[It]=i,a[on]=l}catch(y){Ve(i,i.return,y)}}var Kr=!1,yt=!1,up=!1,o_=typeof WeakSet=="function"?WeakSet:Set,Nt=null;function S4(i,a){if(i=i.containerInfo,Np=nf,i=b1(i),nm(i)){if("selectionStart"in i)var l={start:i.selectionStart,end:i.selectionEnd};else e:{l=(l=i.ownerDocument)&&l.defaultView||window;var c=l.getSelection&&l.getSelection();if(c&&c.rangeCount!==0){l=c.anchorNode;var g=c.anchorOffset,y=c.focusNode;c=c.focusOffset;try{l.nodeType,y.nodeType}catch{l=null;break e}var T=0,E=-1,D=-1,U=0,X=0,W=i,q=null;t:for(;;){for(var F;W!==l||g!==0&&W.nodeType!==3||(E=T+g),W!==y||c!==0&&W.nodeType!==3||(D=T+c),W.nodeType===3&&(T+=W.nodeValue.length),(F=W.firstChild)!==null;)q=W,W=F;for(;;){if(W===i)break t;if(q===l&&++U===g&&(E=T),q===y&&++X===c&&(D=T),(F=W.nextSibling)!==null)break;W=q,q=W.parentNode}W=F}l=E===-1||D===-1?null:{start:E,end:D}}else l=null}l=l||{start:0,end:0}}else l=null;for(kp={focusedElem:i,selectionRange:l},nf=!1,Nt=a;Nt!==null;)if(a=Nt,i=a.child,(a.subtreeFlags&1028)!==0&&i!==null)i.return=a,Nt=i;else for(;Nt!==null;){switch(a=Nt,y=a.alternate,i=a.flags,a.tag){case 0:if((i&4)!==0&&(i=a.updateQueue,i=i!==null?i.events:null,i!==null))for(l=0;l title"))),qt(y,c,l),y[It]=i,Mt(y),c=y;break e;case"link":var T=hS("link","href",g).get(c+(l.href||""));if(T){for(var E=0;EFe&&(T=Fe,Fe=we,we=T);var z=y1(E,we),R=y1(E,Fe);if(z&&R&&(F.rangeCount!==1||F.anchorNode!==z.node||F.anchorOffset!==z.offset||F.focusNode!==R.node||F.focusOffset!==R.offset)){var B=W.createRange();B.setStart(z.node,z.offset),F.removeAllRanges(),we>Fe?(F.addRange(B),F.extend(R.node,R.offset)):(B.setEnd(R.node,R.offset),F.addRange(B))}}}}for(W=[],F=E;F=F.parentNode;)F.nodeType===1&&W.push({element:F,left:F.scrollLeft,top:F.scrollTop});for(typeof E.focus=="function"&&E.focus(),E=0;El?32:l,V.T=null,l=gp,gp=null;var y=Ri,T=Zr;if(xt=0,Ps=Ri=null,Zr=0,(Ie&6)!==0)throw Error(r(331));var E=Ie;if(Ie|=4,v_(y.current),p_(y,y.current,T,l),Ie=E,gl(0,!1),xn&&typeof xn.onPostCommitFiberRoot=="function")try{xn.onPostCommitFiberRoot(Po,y)}catch{}return!0}finally{Q.p=g,V.T=c,L_(i,a)}}function I_(i,a,l){a=Bn(l,a),a=Gm(i.stateNode,a,2),i=ji(i,a,2),i!==null&&(Lo(i,2),br(i))}function Ve(i,a,l){if(i.tag===3)I_(i,i,l);else for(;a!==null;){if(a.tag===3){I_(a,i,l);break}else if(a.tag===1){var c=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof c.componentDidCatch=="function"&&(Pi===null||!Pi.has(c))){i=Bn(l,i),l=Bw(2),c=ji(a,l,2),c!==null&&(Uw(l,c,a,i),Lo(c,2),br(c));break}}a=a.return}}function xp(i,a,l){var c=i.pingCache;if(c===null){c=i.pingCache=new O4;var g=new Set;c.set(a,g)}else g=c.get(a),g===void 0&&(g=new Set,c.set(a,g));g.has(l)||(dp=!0,g.add(l),i=k4.bind(null,i,a,l),a.then(i,i))}function k4(i,a,l){var c=i.pingCache;c!==null&&c.delete(a),i.pingedLanes|=i.suspendedLanes&l,i.warmLanes&=~l,Ke===i&&(Me&l)===l&&(st===4||st===3&&(Me&62914560)===Me&&300>bn()-Ic?(Ie&2)===0&&Rs(i,0):hp|=l,Ds===Me&&(Ds=0)),br(i)}function B_(i,a){a===0&&(a=Dx()),i=ga(i,a),i!==null&&(Lo(i,a),br(i))}function C4(i){var a=i.memoizedState,l=0;a!==null&&(l=a.retryLane),B_(i,l)}function D4(i,a){var l=0;switch(i.tag){case 31:case 13:var c=i.stateNode,g=i.memoizedState;g!==null&&(l=g.retryLane);break;case 19:c=i.stateNode;break;case 22:c=i.stateNode._retryCache;break;default:throw Error(r(314))}c!==null&&c.delete(a),B_(i,l)}function P4(i,a){return Dh(i,a)}var Hc=null,zs=null,wp=!1,Kc=!1,_p=!1,zi=0;function br(i){i!==zs&&i.next===null&&(zs===null?Hc=zs=i:zs=zs.next=i),Kc=!0,wp||(wp=!0,L4())}function gl(i,a){if(!_p&&Kc){_p=!0;do for(var l=!1,c=Hc;c!==null;){if(i!==0){var g=c.pendingLanes;if(g===0)var y=0;else{var T=c.suspendedLanes,E=c.pingedLanes;y=(1<<31-wn(42|i)+1)-1,y&=g&~(T&~E),y=y&201326741?y&201326741|1:y?y|2:0}y!==0&&(l=!0,$_(c,y))}else y=Me,y=Wu(c,c===Ke?y:0,c.cancelPendingCommit!==null||c.timeoutHandle!==-1),(y&3)===0||Ro(c,y)||(l=!0,$_(c,y));c=c.next}while(l);_p=!1}}function R4(){U_()}function U_(){Kc=wp=!1;var i=0;zi!==0&&K4()&&(i=zi);for(var a=bn(),l=null,c=Hc;c!==null;){var g=c.next,y=V_(c,a);y===0?(c.next=null,l===null?Hc=g:l.next=g,g===null&&(zs=l)):(l=c,(i!==0||(y&3)!==0)&&(Kc=!0)),c=g}xt!==0&&xt!==5||gl(i),zi!==0&&(zi=0)}function V_(i,a){for(var l=i.suspendedLanes,c=i.pingedLanes,g=i.expirationTimes,y=i.pendingLanes&-62914561;0E)break;var X=D.transferSize,W=D.initiatorType;X&&Z_(W)&&(D=D.responseEnd,T+=X*(D"u"?null:document;function uS(i,a,l){var c=Is;if(c&&typeof a=="string"&&a){var g=zn(a);g='link[rel="'+i+'"][href="'+g+'"]',typeof l=="string"&&(g+='[crossorigin="'+l+'"]'),lS.has(g)||(lS.add(g),i={rel:i,crossOrigin:l,href:a},c.querySelector(g)===null&&(a=c.createElement("link"),qt(a,"link",i),Mt(a),c.head.appendChild(a)))}}function tR(i){Qr.D(i),uS("dns-prefetch",i,null)}function nR(i,a){Qr.C(i,a),uS("preconnect",i,a)}function rR(i,a,l){Qr.L(i,a,l);var c=Is;if(c&&i&&a){var g='link[rel="preload"][as="'+zn(a)+'"]';a==="image"&&l&&l.imageSrcSet?(g+='[imagesrcset="'+zn(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(g+='[imagesizes="'+zn(l.imageSizes)+'"]')):g+='[href="'+zn(i)+'"]';var y=g;switch(a){case"style":y=Bs(i);break;case"script":y=Us(i)}Hn.has(y)||(i=p({rel:"preload",href:a==="image"&&l&&l.imageSrcSet?void 0:i,as:a},l),Hn.set(y,i),c.querySelector(g)!==null||a==="style"&&c.querySelector(xl(y))||a==="script"&&c.querySelector(wl(y))||(a=c.createElement("link"),qt(a,"link",i),Mt(a),c.head.appendChild(a)))}}function iR(i,a){Qr.m(i,a);var l=Is;if(l&&i){var c=a&&typeof a.as=="string"?a.as:"script",g='link[rel="modulepreload"][as="'+zn(c)+'"][href="'+zn(i)+'"]',y=g;switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":y=Us(i)}if(!Hn.has(y)&&(i=p({rel:"modulepreload",href:i},a),Hn.set(y,i),l.querySelector(g)===null)){switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(wl(y)))return}c=l.createElement("link"),qt(c,"link",i),Mt(c),l.head.appendChild(c)}}}function aR(i,a,l){Qr.S(i,a,l);var c=Is;if(c&&i){var g=os(c).hoistableStyles,y=Bs(i);a=a||"default";var T=g.get(y);if(!T){var E={loading:0,preload:null};if(T=c.querySelector(xl(y)))E.loading=5;else{i=p({rel:"stylesheet",href:i,"data-precedence":a},l),(l=Hn.get(y))&&Ip(i,l);var D=T=c.createElement("link");Mt(D),qt(D,"link",i),D._p=new Promise(function(U,X){D.onload=U,D.onerror=X}),D.addEventListener("load",function(){E.loading|=1}),D.addEventListener("error",function(){E.loading|=2}),E.loading|=4,Zc(T,a,c)}T={type:"stylesheet",instance:T,count:1,state:E},g.set(y,T)}}}function sR(i,a){Qr.X(i,a);var l=Is;if(l&&i){var c=os(l).hoistableScripts,g=Us(i),y=c.get(g);y||(y=l.querySelector(wl(g)),y||(i=p({src:i,async:!0},a),(a=Hn.get(g))&&Bp(i,a),y=l.createElement("script"),Mt(y),qt(y,"link",i),l.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},c.set(g,y))}}function oR(i,a){Qr.M(i,a);var l=Is;if(l&&i){var c=os(l).hoistableScripts,g=Us(i),y=c.get(g);y||(y=l.querySelector(wl(g)),y||(i=p({src:i,async:!0,type:"module"},a),(a=Hn.get(g))&&Bp(i,a),y=l.createElement("script"),Mt(y),qt(y,"link",i),l.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},c.set(g,y))}}function cS(i,a,l,c){var g=(g=oe.current)?Wc(g):null;if(!g)throw Error(r(446));switch(i){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(a=Bs(l.href),l=os(g).hoistableStyles,c=l.get(a),c||(c={type:"style",instance:null,count:0,state:null},l.set(a,c)),c):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){i=Bs(l.href);var y=os(g).hoistableStyles,T=y.get(i);if(T||(g=g.ownerDocument||g,T={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},y.set(i,T),(y=g.querySelector(xl(i)))&&!y._p&&(T.instance=y,T.state.loading=5),Hn.has(i)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Hn.set(i,l),y||lR(g,i,l,T.state))),a&&c===null)throw Error(r(528,""));return T}if(a&&c!==null)throw Error(r(529,""));return null;case"script":return a=l.async,l=l.src,typeof l=="string"&&a&&typeof a!="function"&&typeof a!="symbol"?(a=Us(l),l=os(g).hoistableScripts,c=l.get(a),c||(c={type:"script",instance:null,count:0,state:null},l.set(a,c)),c):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,i))}}function Bs(i){return'href="'+zn(i)+'"'}function xl(i){return'link[rel="stylesheet"]['+i+"]"}function fS(i){return p({},i,{"data-precedence":i.precedence,precedence:null})}function lR(i,a,l,c){i.querySelector('link[rel="preload"][as="style"]['+a+"]")?c.loading=1:(a=i.createElement("link"),c.preload=a,a.addEventListener("load",function(){return c.loading|=1}),a.addEventListener("error",function(){return c.loading|=2}),qt(a,"link",l),Mt(a),i.head.appendChild(a))}function Us(i){return'[src="'+zn(i)+'"]'}function wl(i){return"script[async]"+i}function dS(i,a,l){if(a.count++,a.instance===null)switch(a.type){case"style":var c=i.querySelector('style[data-href~="'+zn(l.href)+'"]');if(c)return a.instance=c,Mt(c),c;var g=p({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return c=(i.ownerDocument||i).createElement("style"),Mt(c),qt(c,"style",g),Zc(c,l.precedence,i),a.instance=c;case"stylesheet":g=Bs(l.href);var y=i.querySelector(xl(g));if(y)return a.state.loading|=4,a.instance=y,Mt(y),y;c=fS(l),(g=Hn.get(g))&&Ip(c,g),y=(i.ownerDocument||i).createElement("link"),Mt(y);var T=y;return T._p=new Promise(function(E,D){T.onload=E,T.onerror=D}),qt(y,"link",c),a.state.loading|=4,Zc(y,l.precedence,i),a.instance=y;case"script":return y=Us(l.src),(g=i.querySelector(wl(y)))?(a.instance=g,Mt(g),g):(c=l,(g=Hn.get(y))&&(c=p({},l),Bp(c,g)),i=i.ownerDocument||i,g=i.createElement("script"),Mt(g),qt(g,"link",c),i.head.appendChild(g),a.instance=g);case"void":return null;default:throw Error(r(443,a.type))}else a.type==="stylesheet"&&(a.state.loading&4)===0&&(c=a.instance,a.state.loading|=4,Zc(c,l.precedence,i));return a.instance}function Zc(i,a,l){for(var c=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),g=c.length?c[c.length-1]:null,y=g,T=0;T title"):null)}function uR(i,a,l){if(l===1||a.itemProp!=null)return!1;switch(i){case"meta":case"title":return!0;case"style":if(typeof a.precedence!="string"||typeof a.href!="string"||a.href==="")break;return!0;case"link":if(typeof a.rel!="string"||typeof a.href!="string"||a.href===""||a.onLoad||a.onError)break;return a.rel==="stylesheet"?(i=a.disabled,typeof a.precedence=="string"&&i==null):!0;case"script":if(a.async&&typeof a.async!="function"&&typeof a.async!="symbol"&&!a.onLoad&&!a.onError&&a.src&&typeof a.src=="string")return!0}return!1}function pS(i){return!(i.type==="stylesheet"&&(i.state.loading&3)===0)}function cR(i,a,l,c){if(l.type==="stylesheet"&&(typeof c.media!="string"||matchMedia(c.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var g=Bs(c.href),y=a.querySelector(xl(g));if(y){a=y._p,a!==null&&typeof a=="object"&&typeof a.then=="function"&&(i.count++,i=Jc.bind(i),a.then(i,i)),l.state.loading|=4,l.instance=y,Mt(y);return}y=a.ownerDocument||a,c=fS(c),(g=Hn.get(g))&&Ip(c,g),y=y.createElement("link"),Mt(y);var T=y;T._p=new Promise(function(E,D){T.onload=E,T.onerror=D}),qt(y,"link",c),l.instance=y}i.stylesheets===null&&(i.stylesheets=new Map),i.stylesheets.set(l,a),(a=l.state.preload)&&(l.state.loading&3)===0&&(i.count++,l=Jc.bind(i),a.addEventListener("load",l),a.addEventListener("error",l))}}var Up=0;function fR(i,a){return i.stylesheets&&i.count===0&&tf(i,i.stylesheets),0Up?50:800)+a);return i.unsuspend=l,function(){i.unsuspend=null,clearTimeout(c),clearTimeout(g)}}:null}function Jc(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)tf(this,this.stylesheets);else if(this.unsuspend){var i=this.unsuspend;this.unsuspend=null,i()}}}var ef=null;function tf(i,a){i.stylesheets=null,i.unsuspend!==null&&(i.count++,ef=new Map,a.forEach(dR,i),ef=null,Jc.call(i))}function dR(i,a){if(!(a.state.loading&4)){var l=ef.get(i);if(l)var c=l.get(null);else{l=new Map,ef.set(i,l);for(var g=i.querySelectorAll("link[data-precedence],style[data-precedence]"),y=0;y"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Gp.exports=NR(),Gp.exports}var CR=kR();const aM=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const DR=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const PR=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const BS=e=>{const t=PR(e);return t.charAt(0).toUpperCase()+t.slice(1)};var RR={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const LR=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};const zR=A.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:s="",children:o,iconNode:u,...f},d)=>A.createElement("svg",{ref:d,...RR,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:aM("lucide",s),...!o&&!LR(f)&&{"aria-hidden":"true"},...f},[...u.map(([h,m])=>A.createElement(h,m)),...Array.isArray(o)?o:[o]]));const Be=(e,t)=>{const n=A.forwardRef(({className:r,...s},o)=>A.createElement(zR,{ref:o,iconNode:t,className:aM(`lucide-${DR(BS(e))}`,`lucide-${e}`,r),...s}));return n.displayName=BS(e),n};const IR=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],BR=Be("activity",IR);const UR=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],VR=Be("arrow-down",UR);const qR=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],$R=Be("arrow-up",qR);const FR=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],HR=Be("bot",FR);const KR=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ai=Be("chevron-down",KR);const XR=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],YR=Be("chevron-left",XR);const GR=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],sM=Be("chevron-right",GR);const WR=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Xy=Be("circle-check",WR);const ZR=[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]],QR=Be("code",ZR);const JR=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],e6=Be("database",JR);const t6=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],oM=Be("external-link",t6);const n6=[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]],r6=Be("github",n6);const i6=[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]],US=Be("lightbulb",i6);const a6=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],s6=Be("menu",a6);const o6=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],lM=Be("message-square",o6);const l6=[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]],u6=Be("moon",l6);const c6=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]],f6=Be("pause",c6);const d6=[["path",{d:"M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z",key:"1v9wt8"}]],h6=Be("plane",d6);const m6=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],p6=Be("play",m6);const g6=[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]],y6=Be("rocket",g6);const v6=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],b6=Be("search",v6);const x6=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],w6=Be("shield",x6);const _6=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]],S6=Be("sun",_6);const A6=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],uM=Be("target",A6);const T6=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Jl=Be("triangle-alert",T6);const O6=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],Yy=Be("user",O6);const E6=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]],Gy=Be("volume-2",E6);const j6=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]],M6=Be("volume-x",j6);const N6=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],p0=Be("wrench",N6);const k6=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],cM=Be("x",k6),VS=[{id:"intro",label:"Intro"},{id:"architecture",label:"Architecture"},{id:"metrics",label:"Methodology"},{id:"early-results",label:"Early Results"},{id:"demo",label:"Demo"},{id:"limitations",label:"Limitations & Future"},{id:"acknowledgements",label:"Contributors"}];function C6({activeTab:e,onTabChange:t,theme:n,onToggleTheme:r}){const[s,o]=A.useState(!1),u=f=>{t(f),o(!1)};return b.jsxs("nav",{className:"fixed top-0 left-0 right-0 z-50 bg-bg-primary/80 backdrop-blur-xl border-b border-border-default",children:[b.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:b.jsxs("div",{className:"flex items-center justify-between h-16",children:[b.jsx("button",{onClick:()=>o(!s),className:"md:hidden w-9 h-9 rounded-lg flex items-center justify-center text-text-muted hover:text-text-primary hover:bg-bg-hover transition-colors","aria-label":s?"Close menu":"Open menu",children:s?b.jsx(cM,{className:"w-5 h-5"}):b.jsx(s6,{className:"w-5 h-5"})}),b.jsx("div",{className:"hidden md:block w-0"}),b.jsx("div",{className:"hidden md:flex items-center gap-4",children:VS.map(f=>b.jsx("a",{href:`#${f.id}`,onClick:d=>{d.preventDefault(),t(f.id)},className:`px-4 py-2 rounded-lg text-base font-semibold transition-colors no-underline ${e===f.id?"text-purple-light bg-purple/15 border border-purple/30":"text-text-primary/80 hover:text-text-primary hover:bg-bg-hover border border-transparent"}`,children:f.label},f.id))}),b.jsx("button",{onClick:r,className:"w-9 h-9 rounded-lg flex items-center justify-center text-text-muted hover:text-text-primary hover:bg-bg-hover transition-colors","aria-label":`Switch to ${n==="dark"?"light":"dark"} mode`,children:n==="dark"?b.jsx(S6,{className:"w-4.5 h-4.5"}):b.jsx(u6,{className:"w-4.5 h-4.5"})})]})}),s&&b.jsx("div",{className:"md:hidden border-t border-border-default bg-bg-primary/95 backdrop-blur-xl",children:b.jsx("div",{className:"px-4 py-3 space-y-1",children:VS.map(f=>b.jsx("a",{href:`#${f.id}`,onClick:d=>{d.preventDefault(),u(f.id)},className:`block px-4 py-3 rounded-lg text-base font-semibold transition-colors no-underline ${e===f.id?"text-purple-light bg-purple/15 border border-purple/30":"text-text-primary/80 hover:text-text-primary hover:bg-bg-hover border border-transparent"}`,children:f.label},f.id))})})]})}const g0=A.createContext({});function y0(e){const t=A.useRef(null);return t.current===null&&(t.current=e()),t.current}const D6=typeof window<"u",fM=D6?A.useLayoutEffect:A.useEffect,Fd=A.createContext(null);function v0(e,t){e.indexOf(t)===-1&&e.push(t)}function Ff(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Mr=(e,t,n)=>n>t?t:n{};const si={},dM=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function hM(e){return typeof e=="object"&&e!==null}const mM=e=>/^0[^.\s]+$/u.test(e);function pM(e){let t;return()=>(t===void 0&&(t=e()),t)}const Jn=e=>e,P6=(e,t)=>n=>t(e(n)),wu=(...e)=>e.reduce(P6),eu=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r};class x0{constructor(){this.subscriptions=[]}add(t){return v0(this.subscriptions,t),()=>Ff(this.subscriptions,t)}notify(t,n,r){const s=this.subscriptions.length;if(s)if(s===1)this.subscriptions[0](t,n,r);else for(let o=0;oe*1e3,Gn=e=>e/1e3;function gM(e,t){return t?e*(1e3/t):0}const yM=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,R6=1e-7,L6=12;function z6(e,t,n,r,s){let o,u,f=0;do u=t+(n-t)/2,o=yM(u,r,s)-e,o>0?n=u:t=u;while(Math.abs(o)>R6&&++fz6(o,0,1,e,n);return o=>o===0||o===1?o:yM(s(o),t,r)}const vM=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,bM=e=>t=>1-e(1-t),xM=_u(.33,1.53,.69,.99),w0=bM(xM),wM=vM(w0),_M=e=>(e*=2)<1?.5*w0(e):.5*(2-Math.pow(2,-10*(e-1))),_0=e=>1-Math.sin(Math.acos(e)),SM=bM(_0),AM=vM(_0),I6=_u(.42,0,1,1),B6=_u(0,0,.58,1),TM=_u(.42,0,.58,1),U6=e=>Array.isArray(e)&&typeof e[0]!="number",OM=e=>Array.isArray(e)&&typeof e[0]=="number",V6={linear:Jn,easeIn:I6,easeInOut:TM,easeOut:B6,circIn:_0,circInOut:AM,circOut:SM,backIn:w0,backInOut:wM,backOut:xM,anticipate:_M},q6=e=>typeof e=="string",qS=e=>{if(OM(e)){b0(e.length===4);const[t,n,r,s]=e;return _u(t,n,r,s)}else if(q6(e))return V6[e];return e},cf=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function $6(e,t){let n=new Set,r=new Set,s=!1,o=!1;const u=new WeakSet;let f={delta:0,timestamp:0,isProcessing:!1};function d(m){u.has(m)&&(h.schedule(m),e()),m(f)}const h={schedule:(m,p=!1,v=!1)=>{const w=v&&s?n:r;return p&&u.add(m),w.has(m)||w.add(m),m},cancel:m=>{r.delete(m),u.delete(m)},process:m=>{if(f=m,s){o=!0;return}s=!0,[n,r]=[r,n],n.forEach(d),n.clear(),s=!1,o&&(o=!1,h.process(m))}};return h}const F6=40;function EM(e,t){let n=!1,r=!0;const s={delta:0,timestamp:0,isProcessing:!1},o=()=>n=!0,u=cf.reduce((j,N)=>(j[N]=$6(o),j),{}),{setup:f,read:d,resolveKeyframes:h,preUpdate:m,update:p,preRender:v,render:x,postRender:w}=u,_=()=>{const j=si.useManualTiming?s.timestamp:performance.now();n=!1,si.useManualTiming||(s.delta=r?1e3/60:Math.max(Math.min(j-s.timestamp,F6),1)),s.timestamp=j,s.isProcessing=!0,f.process(s),d.process(s),h.process(s),m.process(s),p.process(s),v.process(s),x.process(s),w.process(s),s.isProcessing=!1,n&&t&&(r=!1,e(_))},S=()=>{n=!0,r=!0,s.isProcessing||e(_)};return{schedule:cf.reduce((j,N)=>{const k=u[N];return j[N]=(C,L=!1,I=!1)=>(n||S(),k.schedule(C,L,I)),j},{}),cancel:j=>{for(let N=0;N(Cf===void 0&&tn.set(Ft.isProcessing||si.useManualTiming?Ft.timestamp:performance.now()),Cf),set:e=>{Cf=e,queueMicrotask(H6)}},jM=e=>t=>typeof t=="string"&&t.startsWith(e),MM=jM("--"),K6=jM("var(--"),S0=e=>K6(e)?X6.test(e.split("/*")[0].trim()):!1,X6=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function $S(e){return typeof e!="string"?!1:e.split("/*")[0].includes("var(--")}const vo={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},tu={...vo,transform:e=>Mr(0,1,e)},ff={...vo,default:1},Xl=e=>Math.round(e*1e5)/1e5,A0=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Y6(e){return e==null}const G6=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,T0=(e,t)=>n=>!!(typeof n=="string"&&G6.test(n)&&n.startsWith(e)||t&&!Y6(n)&&Object.prototype.hasOwnProperty.call(n,t)),NM=(e,t,n)=>r=>{if(typeof r!="string")return r;const[s,o,u,f]=r.match(A0);return{[e]:parseFloat(s),[t]:parseFloat(o),[n]:parseFloat(u),alpha:f!==void 0?parseFloat(f):1}},W6=e=>Mr(0,255,e),eg={...vo,transform:e=>Math.round(W6(e))},Ia={test:T0("rgb","red"),parse:NM("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+eg.transform(e)+", "+eg.transform(t)+", "+eg.transform(n)+", "+Xl(tu.transform(r))+")"};function Z6(e){let t="",n="",r="",s="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),s=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),s=e.substring(4,5),t+=t,n+=n,r+=r,s+=s),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:s?parseInt(s,16)/255:1}}const Wy={test:T0("#"),parse:Z6,transform:Ia.transform},Su=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),Yi=Su("deg"),Or=Su("%"),de=Su("px"),Q6=Su("vh"),J6=Su("vw"),FS={...Or,parse:e=>Or.parse(e)/100,transform:e=>Or.transform(e*100)},Qs={test:T0("hsl","hue"),parse:NM("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+Or.transform(Xl(t))+", "+Or.transform(Xl(n))+", "+Xl(tu.transform(r))+")"},vt={test:e=>Ia.test(e)||Wy.test(e)||Qs.test(e),parse:e=>Ia.test(e)?Ia.parse(e):Qs.test(e)?Qs.parse(e):Wy.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?Ia.transform(e):Qs.transform(e),getAnimatableNone:e=>{const t=vt.parse(e);return t.alpha=0,vt.transform(t)}},eL=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function tL(e){return isNaN(e)&&typeof e=="string"&&(e.match(A0)?.length||0)+(e.match(eL)?.length||0)>0}const kM="number",CM="color",nL="var",rL="var(",HS="${}",iL=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function nu(e){const t=e.toString(),n=[],r={color:[],number:[],var:[]},s=[];let o=0;const f=t.replace(iL,d=>(vt.test(d)?(r.color.push(o),s.push(CM),n.push(vt.parse(d))):d.startsWith(rL)?(r.var.push(o),s.push(nL),n.push(d)):(r.number.push(o),s.push(kM),n.push(parseFloat(d))),++o,HS)).split(HS);return{values:n,split:f,indexes:r,types:s}}function DM(e){return nu(e).values}function PM(e){const{split:t,types:n}=nu(e),r=t.length;return s=>{let o="";for(let u=0;utypeof e=="number"?0:vt.test(e)?vt.getAnimatableNone(e):e;function sL(e){const t=DM(e);return PM(e)(t.map(aL))}const dr={test:tL,parse:DM,createTransformer:PM,getAnimatableNone:sL};function tg(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function oL({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let s=0,o=0,u=0;if(!t)s=o=u=n;else{const f=n<.5?n*(1+t):n+t-n*t,d=2*n-f;s=tg(d,f,e+1/3),o=tg(d,f,e),u=tg(d,f,e-1/3)}return{red:Math.round(s*255),green:Math.round(o*255),blue:Math.round(u*255),alpha:r}}function Hf(e,t){return n=>n>0?t:e}const rt=(e,t,n)=>e+(t-e)*n,ng=(e,t,n)=>{const r=e*e,s=n*(t*t-r)+r;return s<0?0:Math.sqrt(s)},lL=[Wy,Ia,Qs],uL=e=>lL.find(t=>t.test(e));function KS(e){const t=uL(e);if(!t)return!1;let n=t.parse(e);return t===Qs&&(n=oL(n)),n}const XS=(e,t)=>{const n=KS(e),r=KS(t);if(!n||!r)return Hf(e,t);const s={...n};return o=>(s.red=ng(n.red,r.red,o),s.green=ng(n.green,r.green,o),s.blue=ng(n.blue,r.blue,o),s.alpha=rt(n.alpha,r.alpha,o),Ia.transform(s))},Zy=new Set(["none","hidden"]);function cL(e,t){return Zy.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function fL(e,t){return n=>rt(e,t,n)}function O0(e){return typeof e=="number"?fL:typeof e=="string"?S0(e)?Hf:vt.test(e)?XS:mL:Array.isArray(e)?RM:typeof e=="object"?vt.test(e)?XS:dL:Hf}function RM(e,t){const n=[...e],r=n.length,s=e.map((o,u)=>O0(o)(o,t[u]));return o=>{for(let u=0;u{for(const o in r)n[o]=r[o](s);return n}}function hL(e,t){const n=[],r={color:0,var:0,number:0};for(let s=0;s{const n=dr.createTransformer(t),r=nu(e),s=nu(t);return r.indexes.var.length===s.indexes.var.length&&r.indexes.color.length===s.indexes.color.length&&r.indexes.number.length>=s.indexes.number.length?Zy.has(e)&&!s.values.length||Zy.has(t)&&!r.values.length?cL(e,t):wu(RM(hL(r,s),s.values),n):Hf(e,t)};function LM(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?rt(e,t,n):O0(e)(e,t)}const pL=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>Ge.update(t,n),stop:()=>na(t),now:()=>Ft.isProcessing?Ft.timestamp:tn.now()}},zM=(e,t,n=10)=>{let r="";const s=Math.max(Math.round(t/n),2);for(let o=0;o=Kf?1/0:t}function gL(e,t=100,n){const r=n({...e,keyframes:[0,t]}),s=Math.min(E0(r),Kf);return{type:"keyframes",ease:o=>r.next(s*o).value/t,duration:Gn(s)}}const yL=5;function IM(e,t,n){const r=Math.max(t-yL,0);return gM(n-e(r),t-r)}const lt={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},rg=.001;function vL({duration:e=lt.duration,bounce:t=lt.bounce,velocity:n=lt.velocity,mass:r=lt.mass}){let s,o,u=1-t;u=Mr(lt.minDamping,lt.maxDamping,u),e=Mr(lt.minDuration,lt.maxDuration,Gn(e)),u<1?(s=h=>{const m=h*u,p=m*e,v=m-n,x=Qy(h,u),w=Math.exp(-p);return rg-v/x*w},o=h=>{const p=h*u*e,v=p*n+n,x=Math.pow(u,2)*Math.pow(h,2)*e,w=Math.exp(-p),_=Qy(Math.pow(h,2),u);return(-s(h)+rg>0?-1:1)*((v-x)*w)/_}):(s=h=>{const m=Math.exp(-h*e),p=(h-n)*e+1;return-rg+m*p},o=h=>{const m=Math.exp(-h*e),p=(n-h)*(e*e);return m*p});const f=5/e,d=xL(s,o,f);if(e=fr(e),isNaN(d))return{stiffness:lt.stiffness,damping:lt.damping,duration:e};{const h=Math.pow(d,2)*r;return{stiffness:h,damping:u*2*Math.sqrt(r*h),duration:e}}}const bL=12;function xL(e,t,n){let r=n;for(let s=1;se[n]!==void 0)}function SL(e){let t={velocity:lt.velocity,stiffness:lt.stiffness,damping:lt.damping,mass:lt.mass,isResolvedFromDuration:!1,...e};if(!YS(e,_L)&&YS(e,wL))if(t.velocity=0,e.visualDuration){const n=e.visualDuration,r=2*Math.PI/(n*1.2),s=r*r,o=2*Mr(.05,1,1-(e.bounce||0))*Math.sqrt(s);t={...t,mass:lt.mass,stiffness:s,damping:o}}else{const n=vL({...e,velocity:0});t={...t,...n,mass:lt.mass},t.isResolvedFromDuration=!0}return t}function Xf(e=lt.visualDuration,t=lt.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:r,restDelta:s}=n;const o=n.keyframes[0],u=n.keyframes[n.keyframes.length-1],f={done:!1,value:o},{stiffness:d,damping:h,mass:m,duration:p,velocity:v,isResolvedFromDuration:x}=SL({...n,velocity:-Gn(n.velocity||0)}),w=v||0,_=h/(2*Math.sqrt(d*m)),S=u-o,O=Gn(Math.sqrt(d/m)),M=Math.abs(S)<5;r||(r=M?lt.restSpeed.granular:lt.restSpeed.default),s||(s=M?lt.restDelta.granular:lt.restDelta.default);let j;if(_<1){const k=Qy(O,_);j=C=>{const L=Math.exp(-_*O*C);return u-L*((w+_*O*S)/k*Math.sin(k*C)+S*Math.cos(k*C))}}else if(_===1)j=k=>u-Math.exp(-O*k)*(S+(w+O*S)*k);else{const k=O*Math.sqrt(_*_-1);j=C=>{const L=Math.exp(-_*O*C),I=Math.min(k*C,300);return u-L*((w+_*O*S)*Math.sinh(I)+k*S*Math.cosh(I))/k}}const N={calculatedDuration:x&&p||null,next:k=>{const C=j(k);if(x)f.done=k>=p;else{let L=k===0?w:0;_<1&&(L=k===0?fr(w):IM(j,k,C));const I=Math.abs(L)<=r,Y=Math.abs(u-C)<=s;f.done=I&&Y}return f.value=f.done?u:C,f},toString:()=>{const k=Math.min(E0(N),Kf),C=zM(L=>N.next(k*L).value,k,30);return k+"ms "+C},toTransition:()=>{}};return N}Xf.applyToOptions=e=>{const t=gL(e,100,Xf);return e.ease=t.ease,e.duration=fr(t.duration),e.type="keyframes",e};function Jy({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:s=10,bounceStiffness:o=500,modifyTarget:u,min:f,max:d,restDelta:h=.5,restSpeed:m}){const p=e[0],v={done:!1,value:p},x=I=>f!==void 0&&Id,w=I=>f===void 0?d:d===void 0||Math.abs(f-I)-_*Math.exp(-I/r),j=I=>O+M(I),N=I=>{const Y=M(I),te=j(I);v.done=Math.abs(Y)<=h,v.value=v.done?O:te};let k,C;const L=I=>{x(v.value)&&(k=I,C=Xf({keyframes:[v.value,w(v.value)],velocity:IM(j,I,v.value),damping:s,stiffness:o,restDelta:h,restSpeed:m}))};return L(0),{calculatedDuration:null,next:I=>{let Y=!1;return!C&&k===void 0&&(Y=!0,N(I),L(I)),k!==void 0&&I>=k?C.next(I-k):(!Y&&N(I),v)}}}function AL(e,t,n){const r=[],s=n||si.mix||LM,o=e.length-1;for(let u=0;ut[0];if(o===2&&t[0]===t[1])return()=>t[1];const u=e[0]===e[1];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const f=AL(t,r,s),d=f.length,h=m=>{if(u&&m1)for(;ph(Mr(e[0],e[o-1],m)):h}function OL(e,t){const n=e[e.length-1];for(let r=1;r<=t;r++){const s=eu(0,t,r);e.push(rt(n,1,s))}}function EL(e){const t=[0];return OL(t,e.length-1),t}function jL(e,t){return e.map(n=>n*t)}function ML(e,t){return e.map(()=>t||TM).splice(0,e.length-1)}function Yl({duration:e=300,keyframes:t,times:n,ease:r="easeInOut"}){const s=U6(r)?r.map(qS):qS(r),o={done:!1,value:t[0]},u=jL(n&&n.length===t.length?n:EL(t),e),f=TL(u,t,{ease:Array.isArray(s)?s:ML(t,s)});return{calculatedDuration:e,next:d=>(o.value=f(d),o.done=d>=e,o)}}const NL=e=>e!==null;function j0(e,{repeat:t,repeatType:n="loop"},r,s=1){const o=e.filter(NL),f=s<0||t&&n!=="loop"&&t%2===1?0:o.length-1;return!f||r===void 0?o[f]:r}const kL={decay:Jy,inertia:Jy,tween:Yl,keyframes:Yl,spring:Xf};function BM(e){typeof e.type=="string"&&(e.type=kL[e.type])}class M0{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const CL=e=>e/100;class N0 extends M0{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==tn.now()&&this.tick(tn.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;BM(t);const{type:n=Yl,repeat:r=0,repeatDelay:s=0,repeatType:o,velocity:u=0}=t;let{keyframes:f}=t;const d=n||Yl;d!==Yl&&typeof f[0]!="number"&&(this.mixKeyframes=wu(CL,LM(f[0],f[1])),f=[0,100]);const h=d({...t,keyframes:f});o==="mirror"&&(this.mirroredGenerator=d({...t,keyframes:[...f].reverse(),velocity:-u})),h.calculatedDuration===null&&(h.calculatedDuration=E0(h));const{calculatedDuration:m}=h;this.calculatedDuration=m,this.resolvedDuration=m+s,this.totalDuration=this.resolvedDuration*(r+1)-s,this.generator=h}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:r,totalDuration:s,mixKeyframes:o,mirroredGenerator:u,resolvedDuration:f,calculatedDuration:d}=this;if(this.startTime===null)return r.next(0);const{delay:h=0,keyframes:m,repeat:p,repeatType:v,repeatDelay:x,type:w,onUpdate:_,finalKeyframe:S}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-s/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const O=this.currentTime-h*(this.playbackSpeed>=0?1:-1),M=this.playbackSpeed>=0?O<0:O>s;this.currentTime=Math.max(O,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=s);let j=this.currentTime,N=r;if(p){const I=Math.min(this.currentTime,s)/f;let Y=Math.floor(I),te=I%1;!te&&I>=1&&(te=1),te===1&&Y--,Y=Math.min(Y,p+1),Y%2&&(v==="reverse"?(te=1-te,x&&(te-=x/f)):v==="mirror"&&(N=u)),j=Mr(0,1,te)*f}const k=M?{done:!1,value:m[0]}:N.next(j);o&&!M&&(k.value=o(k.value));let{done:C}=k;!M&&d!==null&&(C=this.playbackSpeed>=0?this.currentTime>=s:this.currentTime<=0);const L=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&C);return L&&w!==Jy&&(k.value=j0(m,this.options,S,this.speed)),_&&_(k.value),L&&this.finish(),k}then(t,n){return this.finished.then(t,n)}get duration(){return Gn(this.calculatedDuration)}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(this.currentTime)}set time(t){t=fr(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),this.driver?this.driver.start(!1):(this.startTime=0,this.state="paused",this.holdTime=t,this.tick(t))}get speed(){return this.playbackSpeed}set speed(t){const n=this.playbackSpeed!==t;n&&this.driver&&this.updateTime(tn.now()),this.playbackSpeed=t,n&&this.driver&&(this.time=Gn(this.currentTime))}play(){if(this.isStopped)return;const{driver:t=pL,startTime:n}=this.options;this.driver||(this.driver=t(s=>this.tick(s))),this.options.onPlay?.();const r=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=r):this.holdTime!==null?this.startTime=r-this.holdTime:this.startTime||(this.startTime=n??r),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(tn.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),t.observe(this)}}function DL(e){for(let t=1;te*180/Math.PI,ev=e=>{const t=Ba(Math.atan2(e[1],e[0]));return tv(t)},PL={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:ev,rotateZ:ev,skewX:e=>Ba(Math.atan(e[1])),skewY:e=>Ba(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},tv=e=>(e=e%360,e<0&&(e+=360),e),GS=ev,WS=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),ZS=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),RL={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:WS,scaleY:ZS,scale:e=>(WS(e)+ZS(e))/2,rotateX:e=>tv(Ba(Math.atan2(e[6],e[5]))),rotateY:e=>tv(Ba(Math.atan2(-e[2],e[0]))),rotateZ:GS,rotate:GS,skewX:e=>Ba(Math.atan(e[4])),skewY:e=>Ba(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function nv(e){return e.includes("scale")?1:0}function rv(e,t){if(!e||e==="none")return nv(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let r,s;if(n)r=RL,s=n;else{const f=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=PL,s=f}if(!s)return nv(t);const o=r[t],u=s[1].split(",").map(zL);return typeof o=="function"?o(u):u[o]}const LL=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return rv(n,t)};function zL(e){return parseFloat(e.trim())}const bo=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],xo=new Set(bo),QS=e=>e===vo||e===de,IL=new Set(["x","y","z"]),BL=bo.filter(e=>!IL.has(e));function UL(e){const t=[];return BL.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t}const Qi={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>rv(t,"x"),y:(e,{transform:t})=>rv(t,"y")};Qi.translateX=Qi.x;Qi.translateY=Qi.y;const Fa=new Set;let iv=!1,av=!1,sv=!1;function UM(){if(av){const e=Array.from(Fa).filter(r=>r.needsMeasurement),t=new Set(e.map(r=>r.element)),n=new Map;t.forEach(r=>{const s=UL(r);s.length&&(n.set(r,s),r.render())}),e.forEach(r=>r.measureInitialState()),t.forEach(r=>{r.render();const s=n.get(r);s&&s.forEach(([o,u])=>{r.getValue(o)?.set(u)})}),e.forEach(r=>r.measureEndState()),e.forEach(r=>{r.suspendedScrollY!==void 0&&window.scrollTo(0,r.suspendedScrollY)})}av=!1,iv=!1,Fa.forEach(e=>e.complete(sv)),Fa.clear()}function VM(){Fa.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(av=!0)})}function VL(){sv=!0,VM(),UM(),sv=!1}class k0{constructor(t,n,r,s,o,u=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=r,this.motionValue=s,this.element=o,this.isAsync=u}scheduleResolve(){this.state="scheduled",this.isAsync?(Fa.add(this),iv||(iv=!0,Ge.read(VM),Ge.resolveKeyframes(UM))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:r,motionValue:s}=this;if(t[0]===null){const o=s?.get(),u=t[t.length-1];if(o!==void 0)t[0]=o;else if(r&&n){const f=r.readValue(n,u);f!=null&&(t[0]=f)}t[0]===void 0&&(t[0]=u),s&&o===void 0&&s.set(t[0])}DL(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),Fa.delete(this)}cancel(){this.state==="scheduled"&&(Fa.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const qL=e=>e.startsWith("--");function qM(e,t,n){qL(t)?e.style.setProperty(t,n):e.style[t]=n}const $L={};function $M(e,t){const n=pM(e);return()=>$L[t]??n()}const FL=$M(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),FM=$M(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),$l=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,JS={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:$l([0,.65,.55,1]),circOut:$l([.55,0,1,.45]),backIn:$l([.31,.01,.66,-.59]),backOut:$l([.33,1.53,.69,.99])};function HM(e,t){if(e)return typeof e=="function"?FM()?zM(e,t):"ease-out":OM(e)?$l(e):Array.isArray(e)?e.map(n=>HM(n,t)||JS.easeOut):JS[e]}function HL(e,t,n,{delay:r=0,duration:s=300,repeat:o=0,repeatType:u="loop",ease:f="easeOut",times:d}={},h=void 0){const m={[t]:n};d&&(m.offset=d);const p=HM(f,s);Array.isArray(p)&&(m.easing=p);const v={delay:r,duration:s,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:o+1,direction:u==="reverse"?"alternate":"normal"};return h&&(v.pseudoElement=h),e.animate(m,v)}function KM(e){return typeof e=="function"&&"applyToOptions"in e}function KL({type:e,...t}){return KM(e)&&FM()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class XM extends M0{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!t)return;const{element:n,name:r,keyframes:s,pseudoElement:o,allowFlatten:u=!1,finalKeyframe:f,onComplete:d}=t;this.isPseudoElement=!!o,this.allowFlatten=u,this.options=t,b0(typeof t.type!="string");const h=KL(t);this.animation=HL(n,r,s,h,o),h.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!o){const m=j0(s,this.options,f,this.speed);this.updateMotionValue&&this.updateMotionValue(m),qM(n,r,m),this.animation.cancel()}d?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){const t=this.options?.element;!this.isPseudoElement&&t?.isConnected&&this.animation.commitStyles?.()}get duration(){const t=this.animation.effect?.getComputedTiming?.().duration||0;return Gn(Number(t))}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(Number(this.animation.currentTime)||0)}set time(t){const n=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=fr(t),n&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(t){this.manualStartTime=this.animation.startTime=t}attachTimeline({timeline:t,rangeStart:n,rangeEnd:r,observe:s}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,t&&FL()?(this.animation.timeline=t,n&&(this.animation.rangeStart=n),r&&(this.animation.rangeEnd=r),Jn):s(this)}}const YM={anticipate:_M,backInOut:wM,circInOut:AM};function XL(e){return e in YM}function YL(e){typeof e.ease=="string"&&XL(e.ease)&&(e.ease=YM[e.ease])}const ig=10;class GL extends XM{constructor(t){YL(t),BM(t),super(t),t.startTime!==void 0&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:r,onComplete:s,element:o,...u}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const f=new N0({...u,autoplay:!1}),d=Math.max(ig,tn.now()-this.startTime),h=Mr(0,ig,d-ig),m=f.sample(d).value,{name:p}=this.options;o&&p&&qM(o,p,m),n.setWithVelocity(f.sample(Math.max(0,d-h)).value,m,h),f.stop()}}const eA=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(dr.test(e)||e==="0")&&!e.startsWith("url("));function WL(e){const t=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function e8(e){const{motionValue:t,name:n,repeatDelay:r,repeatType:s,damping:o,type:u}=e;if(!(t?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:d,transformTemplate:h}=t.owner.getProps();return JL()&&n&&QL.has(n)&&(n!=="transform"||!h)&&!d&&!r&&s!=="mirror"&&o!==0&&u!=="inertia"}const t8=40;class n8 extends M0{constructor({autoplay:t=!0,delay:n=0,type:r="keyframes",repeat:s=0,repeatDelay:o=0,repeatType:u="loop",keyframes:f,name:d,motionValue:h,element:m,...p}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=tn.now();const v={autoplay:t,delay:n,type:r,repeat:s,repeatDelay:o,repeatType:u,name:d,motionValue:h,element:m,...p},x=m?.KeyframeResolver||k0;this.keyframeResolver=new x(f,(w,_,S)=>this.onKeyframesResolved(w,_,v,!S),d,h,m),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(t,n,r,s){this.keyframeResolver=void 0;const{name:o,type:u,velocity:f,delay:d,isHandoff:h,onUpdate:m}=r;this.resolvedAt=tn.now(),ZL(t,o,u,f)||((si.instantAnimations||!d)&&m?.(j0(t,r,n)),t[0]=t[t.length-1],ov(r),r.repeat=0);const v={startTime:s?this.resolvedAt?this.resolvedAt-this.createdAt>t8?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...r,keyframes:t},x=!h&&e8(v),w=v.motionValue?.owner?.current,_=x?new GL({...v,element:w}):new N0(v);_.finished.then(()=>{this.notifyFinished()}).catch(Jn),this.pendingTimeline&&(this.stopTimeline=_.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=_}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),VL()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}function GM(e,t,n,r=0,s=1){const o=Array.from(e).sort((h,m)=>h.sortNodePosition(m)).indexOf(t),u=e.size,f=(u-1)*r;return typeof n=="function"?n(o,u):s===1?o*r:f-o*r}const r8=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function i8(e){const t=r8.exec(e);if(!t)return[,];const[,n,r,s]=t;return[`--${n??r}`,s]}function WM(e,t,n=1){const[r,s]=i8(e);if(!r)return;const o=window.getComputedStyle(t).getPropertyValue(r);if(o){const u=o.trim();return dM(u)?parseFloat(u):u}return S0(s)?WM(s,t,n+1):s}const a8={type:"spring",stiffness:500,damping:25,restSpeed:10},s8=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),o8={type:"keyframes",duration:.8},l8={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},u8=(e,{keyframes:t})=>t.length>2?o8:xo.has(e)?e.startsWith("scale")?s8(t[1]):a8:l8,c8=e=>e!==null;function f8(e,{repeat:t,repeatType:n="loop"},r){const s=e.filter(c8),o=t&&n!=="loop"&&t%2===1?0:s.length-1;return s[o]}function ZM(e,t){if(e?.inherit&&t){const{inherit:n,...r}=e;return{...t,...r}}return e}function C0(e,t){const n=e?.[t]??e?.default??e;return n!==e?ZM(n,e):n}function d8({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:s,repeat:o,repeatType:u,repeatDelay:f,from:d,elapsed:h,...m}){return!!Object.keys(m).length}const D0=(e,t,n,r={},s,o)=>u=>{const f=C0(r,e)||{},d=f.delay||r.delay||0;let{elapsed:h=0}=r;h=h-fr(d);const m={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...f,delay:-h,onUpdate:v=>{t.set(v),f.onUpdate&&f.onUpdate(v)},onComplete:()=>{u(),f.onComplete&&f.onComplete()},name:e,motionValue:t,element:o?void 0:s};d8(f)||Object.assign(m,u8(e,m)),m.duration&&(m.duration=fr(m.duration)),m.repeatDelay&&(m.repeatDelay=fr(m.repeatDelay)),m.from!==void 0&&(m.keyframes[0]=m.from);let p=!1;if((m.type===!1||m.duration===0&&!m.repeatDelay)&&(ov(m),m.delay===0&&(p=!0)),(si.instantAnimations||si.skipAnimations||s?.shouldSkipAnimations)&&(p=!0,ov(m),m.delay=0),m.allowFlatten=!f.type&&!f.ease,p&&!o&&t.get()!==void 0){const v=f8(m.keyframes,f);if(v!==void 0){Ge.update(()=>{m.onUpdate(v),m.onComplete()});return}}return f.isSync?new N0(m):new n8(m)};function tA(e){const t=[{},{}];return e?.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function P0(e,t,n,r){if(typeof t=="function"){const[s,o]=tA(r);t=t(n!==void 0?n:e.custom,s,o)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[s,o]=tA(r);t=t(n!==void 0?n:e.custom,s,o)}return t}function ao(e,t,n){const r=e.getProps();return P0(r,t,n!==void 0?n:r.custom,e)}const QM=new Set(["width","height","top","left","right","bottom",...bo]),nA=30,h8=e=>!isNaN(parseFloat(e));class m8{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=r=>{const s=tn.now();if(this.updatedAt!==s&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(r),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=tn.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=h8(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new x0);const r=this.events[t].add(n);return t==="change"?()=>{r(),Ge.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,r){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-r}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=tn.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>nA)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,nA);return gM(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function uo(e,t){return new m8(e,t)}const lv=e=>Array.isArray(e);function p8(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,uo(n))}function g8(e){return lv(e)?e[e.length-1]||0:e}function y8(e,t){const n=ao(e,t);let{transitionEnd:r={},transition:s={},...o}=n||{};o={...o,...r};for(const u in o){const f=g8(o[u]);p8(e,u,f)}}const Zt=e=>!!(e&&e.getVelocity);function v8(e){return!!(Zt(e)&&e.add)}function uv(e,t){const n=e.getValue("willChange");if(v8(n))return n.add(t);if(!n&&si.WillChange){const r=new si.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function R0(e){return e.replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}const b8="framerAppearId",JM="data-"+R0(b8);function eN(e){return e.props[JM]}function x8({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function tN(e,t,{delay:n=0,transitionOverride:r,type:s}={}){let{transition:o,transitionEnd:u,...f}=t;const d=e.getDefaultTransition();o=o?ZM(o,d):d;const h=o?.reduceMotion;r&&(o=r);const m=[],p=s&&e.animationState&&e.animationState.getState()[s];for(const v in f){const x=e.getValue(v,e.latestValues[v]??null),w=f[v];if(w===void 0||p&&x8(p,v))continue;const _={delay:n,...C0(o||{},v)},S=x.get();if(S!==void 0&&!x.isAnimating&&!Array.isArray(w)&&w===S&&!_.velocity)continue;let O=!1;if(window.MotionHandoffAnimation){const N=eN(e);if(N){const k=window.MotionHandoffAnimation(N,v,Ge);k!==null&&(_.startTime=k,O=!0)}}uv(e,v);const M=h??e.shouldReduceMotion;x.start(D0(v,x,w,M&&QM.has(v)?{type:!1}:_,e,O));const j=x.animation;j&&m.push(j)}if(u){const v=()=>Ge.update(()=>{u&&y8(e,u)});m.length?Promise.all(m).then(v):v()}return m}function cv(e,t,n={}){const r=ao(e,t,n.type==="exit"?e.presenceContext?.custom:void 0);let{transition:s=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(s=n.transitionOverride);const o=r?()=>Promise.all(tN(e,r,n)):()=>Promise.resolve(),u=e.variantChildren&&e.variantChildren.size?(d=0)=>{const{delayChildren:h=0,staggerChildren:m,staggerDirection:p}=s;return w8(e,t,d,h,m,p,n)}:()=>Promise.resolve(),{when:f}=s;if(f){const[d,h]=f==="beforeChildren"?[o,u]:[u,o];return d().then(()=>h())}else return Promise.all([o(),u(n.delay)])}function w8(e,t,n=0,r=0,s=0,o=1,u){const f=[];for(const d of e.variantChildren)d.notify("AnimationStart",t),f.push(cv(d,t,{...u,delay:n+(typeof r=="function"?0:r)+GM(e.variantChildren,d,r,s,o)}).then(()=>d.notify("AnimationComplete",t)));return Promise.all(f)}function _8(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const s=t.map(o=>cv(e,o,n));r=Promise.all(s)}else if(typeof t=="string")r=cv(e,t,n);else{const s=typeof t=="function"?ao(e,t,n.custom):t;r=Promise.all(tN(e,s,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}const S8={test:e=>e==="auto",parse:e=>e},nN=e=>t=>t.test(e),rN=[vo,de,Or,Yi,J6,Q6,S8],rA=e=>rN.find(nN(e));function A8(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||mM(e):!0}const T8=new Set(["brightness","contrast","saturate","opacity"]);function O8(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(A0)||[];if(!r)return e;const s=n.replace(r,"");let o=T8.has(t)?1:0;return r!==n&&(o*=100),t+"("+o+s+")"}const E8=/\b([a-z-]*)\(.*?\)/gu,fv={...dr,getAnimatableNone:e=>{const t=e.match(E8);return t?t.map(O8).join(" "):e}},dv={...dr,getAnimatableNone:e=>{const t=dr.parse(e);return dr.createTransformer(e)(t.map(r=>typeof r=="number"?0:typeof r=="object"?{...r,alpha:1}:r))}},iA={...vo,transform:Math.round},j8={rotate:Yi,rotateX:Yi,rotateY:Yi,rotateZ:Yi,scale:ff,scaleX:ff,scaleY:ff,scaleZ:ff,skew:Yi,skewX:Yi,skewY:Yi,distance:de,translateX:de,translateY:de,translateZ:de,x:de,y:de,z:de,perspective:de,transformPerspective:de,opacity:tu,originX:FS,originY:FS,originZ:de},L0={borderWidth:de,borderTopWidth:de,borderRightWidth:de,borderBottomWidth:de,borderLeftWidth:de,borderRadius:de,borderTopLeftRadius:de,borderTopRightRadius:de,borderBottomRightRadius:de,borderBottomLeftRadius:de,width:de,maxWidth:de,height:de,maxHeight:de,top:de,right:de,bottom:de,left:de,inset:de,insetBlock:de,insetBlockStart:de,insetBlockEnd:de,insetInline:de,insetInlineStart:de,insetInlineEnd:de,padding:de,paddingTop:de,paddingRight:de,paddingBottom:de,paddingLeft:de,paddingBlock:de,paddingBlockStart:de,paddingBlockEnd:de,paddingInline:de,paddingInlineStart:de,paddingInlineEnd:de,margin:de,marginTop:de,marginRight:de,marginBottom:de,marginLeft:de,marginBlock:de,marginBlockStart:de,marginBlockEnd:de,marginInline:de,marginInlineStart:de,marginInlineEnd:de,fontSize:de,backgroundPositionX:de,backgroundPositionY:de,...j8,zIndex:iA,fillOpacity:tu,strokeOpacity:tu,numOctaves:iA},M8={...L0,color:vt,backgroundColor:vt,outlineColor:vt,fill:vt,stroke:vt,borderColor:vt,borderTopColor:vt,borderRightColor:vt,borderBottomColor:vt,borderLeftColor:vt,filter:fv,WebkitFilter:fv,mask:dv,WebkitMask:dv},iN=e=>M8[e],N8=new Set([fv,dv]);function aN(e,t){let n=iN(e);return N8.has(n)||(n=dr),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const k8=new Set(["auto","none","0"]);function C8(e,t,n){let r=0,s;for(;r{t.getValue(f).set(d)}),this.resolveNoneKeyframes()}}const P8=new Set(["opacity","clipPath","filter","transform"]);function sN(e,t,n){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e=="string"){let r=document;const s=n?.[e]??r.querySelectorAll(e);return s?Array.from(s):[]}return Array.from(e).filter(r=>r!=null)}const oN=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function hv(e){return hM(e)&&"offsetHeight"in e}const{schedule:z0}=EM(queueMicrotask,!1),or={x:!1,y:!1};function lN(){return or.x||or.y}function R8(e){return e==="x"||e==="y"?or[e]?null:(or[e]=!0,()=>{or[e]=!1}):or.x||or.y?null:(or.x=or.y=!0,()=>{or.x=or.y=!1})}function uN(e,t){const n=sN(e),r=new AbortController,s={passive:!0,...t,signal:r.signal};return[n,s,()=>r.abort()]}function L8(e){return!(e.pointerType==="touch"||lN())}function z8(e,t,n={}){const[r,s,o]=uN(e,n);return r.forEach(u=>{let f=!1,d=!1,h;const m=()=>{u.removeEventListener("pointerleave",w)},p=S=>{h&&(h(S),h=void 0),m()},v=S=>{f=!1,window.removeEventListener("pointerup",v),window.removeEventListener("pointercancel",v),d&&(d=!1,p(S))},x=()=>{f=!0,window.addEventListener("pointerup",v,s),window.addEventListener("pointercancel",v,s)},w=S=>{if(S.pointerType!=="touch"){if(f){d=!0;return}p(S)}},_=S=>{if(!L8(S))return;d=!1;const O=t(u,S);typeof O=="function"&&(h=O,u.addEventListener("pointerleave",w,s))};u.addEventListener("pointerenter",_,s),u.addEventListener("pointerdown",x,s)}),o}const cN=(e,t)=>t?e===t?!0:cN(e,t.parentElement):!1,I0=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,I8=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function B8(e){return I8.has(e.tagName)||e.isContentEditable===!0}const U8=new Set(["INPUT","SELECT","TEXTAREA"]);function V8(e){return U8.has(e.tagName)||e.isContentEditable===!0}const Df=new WeakSet;function aA(e){return t=>{t.key==="Enter"&&e(t)}}function ag(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const q8=(e,t)=>{const n=e.currentTarget;if(!n)return;const r=aA(()=>{if(Df.has(n))return;ag(n,"down");const s=aA(()=>{ag(n,"up")}),o=()=>ag(n,"cancel");n.addEventListener("keyup",s,t),n.addEventListener("blur",o,t)});n.addEventListener("keydown",r,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",r),t)};function sA(e){return I0(e)&&!lN()}const oA=new WeakSet;function $8(e,t,n={}){const[r,s,o]=uN(e,n),u=f=>{const d=f.currentTarget;if(!sA(f)||oA.has(f))return;Df.add(d),n.stopPropagation&&oA.add(f);const h=t(d,f),m=(x,w)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",v),Df.has(d)&&Df.delete(d),sA(x)&&typeof h=="function"&&h(x,{success:w})},p=x=>{m(x,d===window||d===document||n.useGlobalTarget||cN(d,x.target))},v=x=>{m(x,!1)};window.addEventListener("pointerup",p,s),window.addEventListener("pointercancel",v,s)};return r.forEach(f=>{(n.useGlobalTarget?window:f).addEventListener("pointerdown",u,s),hv(f)&&(f.addEventListener("focus",h=>q8(h,s)),!B8(f)&&!f.hasAttribute("tabindex")&&(f.tabIndex=0))}),o}function B0(e){return hM(e)&&"ownerSVGElement"in e}const Pf=new WeakMap;let Rf;const fN=(e,t,n)=>(r,s)=>s&&s[0]?s[0][e+"Size"]:B0(r)&&"getBBox"in r?r.getBBox()[t]:r[n],F8=fN("inline","width","offsetWidth"),H8=fN("block","height","offsetHeight");function K8({target:e,borderBoxSize:t}){Pf.get(e)?.forEach(n=>{n(e,{get width(){return F8(e,t)},get height(){return H8(e,t)}})})}function X8(e){e.forEach(K8)}function Y8(){typeof ResizeObserver>"u"||(Rf=new ResizeObserver(X8))}function G8(e,t){Rf||Y8();const n=sN(e);return n.forEach(r=>{let s=Pf.get(r);s||(s=new Set,Pf.set(r,s)),s.add(t),Rf?.observe(r)}),()=>{n.forEach(r=>{const s=Pf.get(r);s?.delete(t),s?.size||Rf?.unobserve(r)})}}const Lf=new Set;let Js;function W8(){Js=()=>{const e={get width(){return window.innerWidth},get height(){return window.innerHeight}};Lf.forEach(t=>t(e))},window.addEventListener("resize",Js)}function Z8(e){return Lf.add(e),Js||W8(),()=>{Lf.delete(e),!Lf.size&&typeof Js=="function"&&(window.removeEventListener("resize",Js),Js=void 0)}}function lA(e,t){return typeof e=="function"?Z8(e):G8(e,t)}function Q8(e){return B0(e)&&e.tagName==="svg"}const J8=[...rN,vt,dr],ez=e=>J8.find(nN(e)),uA=()=>({translate:0,scale:1,origin:0,originPoint:0}),eo=()=>({x:uA(),y:uA()}),cA=()=>({min:0,max:0}),St=()=>({x:cA(),y:cA()}),tz=new WeakMap;function Hd(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function ru(e){return typeof e=="string"||Array.isArray(e)}const U0=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],V0=["initial",...U0];function Kd(e){return Hd(e.animate)||V0.some(t=>ru(e[t]))}function dN(e){return!!(Kd(e)||e.variants)}function nz(e,t,n){for(const r in t){const s=t[r],o=n[r];if(Zt(s))e.addValue(r,s);else if(Zt(o))e.addValue(r,uo(s,{owner:e}));else if(o!==s)if(e.hasValue(r)){const u=e.getValue(r);u.liveStyle===!0?u.jump(s):u.hasAnimated||u.set(s)}else{const u=e.getStaticValue(r);e.addValue(r,uo(u!==void 0?u:s,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const mv={current:null},hN={current:!1},rz=typeof window<"u";function iz(){if(hN.current=!0,!!rz)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>mv.current=e.matches;e.addEventListener("change",t),t()}else mv.current=!1}const fA=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Yf={};function mN(e){Yf=e}function az(){return Yf}class sz{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:s,skipAnimations:o,blockInitialAnimation:u,visualState:f},d={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=k0,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const x=tn.now();this.renderScheduledAtthis.bindToMotionValue(r,n)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(hN.current||iz(),this.shouldReduceMotion=mv.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),na(this.notifyUpdate),na(this.render),this.valueSubscriptions.forEach(t=>t()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const t in this.events)this.events[t].clear();for(const t in this.features){const n=this.features[t];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),n.accelerate&&P8.has(t)&&this.current instanceof HTMLElement){const{factory:u,keyframes:f,times:d,ease:h,duration:m}=n.accelerate,p=new XM({element:this.current,name:t,keyframes:f,times:d,ease:h,duration:fr(m)}),v=u(p);this.valueSubscriptions.set(t,()=>{v(),p.cancel()});return}const r=xo.has(t);r&&this.onBindTransform&&this.onBindTransform();const s=n.on("change",u=>{this.latestValues[t]=u,this.props.onUpdate&&Ge.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;typeof window<"u"&&window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{s(),o&&o(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Yf){const n=Yf[t];if(!n)continue;const{isEnabled:r,Feature:s}=n;if(!this.features[t]&&s&&r(this.props)&&(this.features[t]=new s(this)),this.features[t]){const o=this.features[t];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):St()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;rn.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=uo(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(dM(r)||mM(r))?r=parseFloat(r):!ez(r)&&dr.test(n)&&(r=aN(t,n)),this.setBaseTarget(t,Zt(r)?r.get():r)),Zt(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const o=P0(this.props,n,this.presenceContext?.custom);o&&(r=o[t])}if(n&&r!==void 0)return r;const s=this.getBaseTargetFromProps(this.props,t);return s!==void 0&&!Zt(s)?s:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new x0),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){z0.render(this.render)}}class pN extends sz{constructor(){super(...arguments),this.KeyframeResolver=D8}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){const r=t.style;return r?r[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;Zt(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}class aa{constructor(t){this.isMounted=!1,this.node=t}update(){}}function gN({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function oz({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function lz(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function sg(e){return e===void 0||e===1}function pv({scale:e,scaleX:t,scaleY:n}){return!sg(e)||!sg(t)||!sg(n)}function Pa(e){return pv(e)||yN(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function yN(e){return dA(e.x)||dA(e.y)}function dA(e){return e&&e!=="0%"}function Gf(e,t,n){const r=e-n,s=t*r;return n+s}function hA(e,t,n,r,s){return s!==void 0&&(e=Gf(e,s,r)),Gf(e,n,r)+t}function gv(e,t=0,n=1,r,s){e.min=hA(e.min,t,n,r,s),e.max=hA(e.max,t,n,r,s)}function vN(e,{x:t,y:n}){gv(e.x,t.translate,t.scale,t.originPoint),gv(e.y,n.translate,n.scale,n.originPoint)}const mA=.999999999999,pA=1.0000000000001;function uz(e,t,n,r=!1){const s=n.length;if(!s)return;t.x=t.y=1;let o,u;for(let f=0;fmA&&(t.x=1),t.ymA&&(t.y=1)}function to(e,t){e.min=e.min+t,e.max=e.max+t}function gA(e,t,n,r,s=.5){const o=rt(e.min,e.max,s);gv(e,t,n,o,r)}function yA(e,t){return typeof e=="string"?parseFloat(e)/100*(t.max-t.min):e}function no(e,t){gA(e.x,yA(t.x,e.x),t.scaleX,t.scale,t.originX),gA(e.y,yA(t.y,e.y),t.scaleY,t.scale,t.originY)}function bN(e,t){return gN(lz(e.getBoundingClientRect(),t))}function cz(e,t,n){const r=bN(e,n),{scroll:s}=t;return s&&(to(r.x,s.offset.x),to(r.y,s.offset.y)),r}const fz={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},dz=bo.length;function hz(e,t,n){let r="",s=!0;for(let o=0;o{if(!t.target)return e;if(typeof e=="string")if(de.test(e))e=parseFloat(e);else return e;const n=vA(e,t.target.x),r=vA(e,t.target.y);return`${n}% ${r}%`}},mz={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,s=dr.parse(e);if(s.length>5)return r;const o=dr.createTransformer(e),u=typeof s[0]!="number"?1:0,f=n.x.scale*t.x,d=n.y.scale*t.y;s[0+u]/=f,s[1+u]/=d;const h=rt(f,d,.5);return typeof s[2+u]=="number"&&(s[2+u]/=h),typeof s[3+u]=="number"&&(s[3+u]/=h),o(s)}},yv={borderRadius:{...jl,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:jl,borderTopRightRadius:jl,borderBottomLeftRadius:jl,borderBottomRightRadius:jl,boxShadow:mz};function wN(e,{layout:t,layoutId:n}){return xo.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!yv[e]||e==="opacity")}function $0(e,t,n){const r=e.style,s=t?.style,o={};if(!r)return o;for(const u in r)(Zt(r[u])||s&&Zt(s[u])||wN(u,e)||n?.getValue(u)?.liveStyle!==void 0)&&(o[u]=r[u]);return o}function pz(e){return window.getComputedStyle(e)}class gz extends pN{constructor(){super(...arguments),this.type="html",this.renderInstance=xN}readValueFromInstance(t,n){if(xo.has(n))return this.projection?.isProjecting?nv(n):LL(t,n);{const r=pz(t),s=(MM(n)?r.getPropertyValue(n):r[n])||0;return typeof s=="string"?s.trim():s}}measureInstanceViewportBox(t,{transformPagePoint:n}){return bN(t,n)}build(t,n,r){q0(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return $0(t,n,r)}}const yz={offset:"stroke-dashoffset",array:"stroke-dasharray"},vz={offset:"strokeDashoffset",array:"strokeDasharray"};function bz(e,t,n=1,r=0,s=!0){e.pathLength=1;const o=s?yz:vz;e[o.offset]=`${-r}`,e[o.array]=`${t} ${n}`}const xz=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function _N(e,{attrX:t,attrY:n,attrScale:r,pathLength:s,pathSpacing:o=1,pathOffset:u=0,...f},d,h,m){if(q0(e,f,h),d){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:p,style:v}=e;p.transform&&(v.transform=p.transform,delete p.transform),(v.transform||p.transformOrigin)&&(v.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),v.transform&&(v.transformBox=m?.transformBox??"fill-box",delete p.transformBox);for(const x of xz)p[x]!==void 0&&(v[x]=p[x],delete p[x]);t!==void 0&&(p.x=t),n!==void 0&&(p.y=n),r!==void 0&&(p.scale=r),s!==void 0&&bz(p,s,o,u,!1)}const SN=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),AN=e=>typeof e=="string"&&e.toLowerCase()==="svg";function wz(e,t,n,r){xN(e,t,void 0,r);for(const s in t.attrs)e.setAttribute(SN.has(s)?s:R0(s),t.attrs[s])}function TN(e,t,n){const r=$0(e,t,n);for(const s in e)if(Zt(e[s])||Zt(t[s])){const o=bo.indexOf(s)!==-1?"attr"+s.charAt(0).toUpperCase()+s.substring(1):s;r[o]=e[s]}return r}class _z extends pN{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=St}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(xo.has(n)){const r=iN(n);return r&&r.default||0}return n=SN.has(n)?n:R0(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return TN(t,n,r)}build(t,n,r){_N(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,s){wz(t,n,r,s)}mount(t){this.isSVGTag=AN(t.tagName),super.mount(t)}}const Sz=V0.length;function ON(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?ON(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;nPromise.all(t.map(({animation:n,options:r})=>_8(e,n,r)))}function Ez(e){let t=Oz(e),n=bA(),r=!0,s=!1;const o=h=>(m,p)=>{const v=ao(e,p,h==="exit"?e.presenceContext?.custom:void 0);if(v){const{transition:x,transitionEnd:w,..._}=v;m={...m,..._,...w}}return m};function u(h){t=h(e)}function f(h){const{props:m}=e,p=ON(e.parent)||{},v=[],x=new Set;let w={},_=1/0;for(let O=0;O_&&k,te=!1;const ie=Array.isArray(N)?N:[N];let K=ie.reduce(o(M),{});C===!1&&(K={});const{prevResolvedValues:be={}}=j,pe={...be,...K},xe=ne=>{Y=!0,x.has(ne)&&(te=!0,x.delete(ne)),j.needsAnimating[ne]=!0;const le=e.getValue(ne);le&&(le.liveStyle=!1)};for(const ne in pe){const le=K[ne],ue=be[ne];if(w.hasOwnProperty(ne))continue;let P=!1;lv(le)&&lv(ue)?P=!EN(le,ue):P=le!==ue,P?le!=null?xe(ne):x.add(ne):le!==void 0&&x.has(ne)?xe(ne):j.protectedKeys[ne]=!0}j.prevProp=N,j.prevResolvedValues=K,j.isActive&&(w={...w,...K}),(r||s)&&e.blockInitialAnimation&&(Y=!1);const V=L&&I;Y&&(!V||te)&&v.push(...ie.map(ne=>{const le={type:M};if(typeof ne=="string"&&(r||s)&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:ue}=e,P=ao(ue,ne);if(ue.enteringChildren&&P){const{delayChildren:H}=P.transition||{};le.delay=GM(ue.enteringChildren,e,H)}}return{animation:ne,options:le}}))}if(x.size){const O={};if(typeof m.initial!="boolean"){const M=ao(e,Array.isArray(m.initial)?m.initial[0]:m.initial);M&&M.transition&&(O.transition=M.transition)}x.forEach(M=>{const j=e.getBaseTarget(M),N=e.getValue(M);N&&(N.liveStyle=!0),O[M]=j??null}),v.push({animation:O})}let S=!!v.length;return r&&(m.initial===!1||m.initial===m.animate)&&!e.manuallyAnimateOnMount&&(S=!1),r=!1,s=!1,S?t(v):Promise.resolve()}function d(h,m){if(n[h].isActive===m)return Promise.resolve();e.variantChildren?.forEach(v=>v.animationState?.setActive(h,m)),n[h].isActive=m;const p=f(h);for(const v in n)n[v].protectedKeys={};return p}return{animateChanges:f,setActive:d,setAnimateFunction:u,getState:()=>n,reset:()=>{n=bA(),s=!0}}}function jz(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!EN(t,e):!1}function Ma(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function bA(){return{animate:Ma(!0),whileInView:Ma(),whileHover:Ma(),whileTap:Ma(),whileDrag:Ma(),whileFocus:Ma(),exit:Ma()}}function xA(e,t){e.min=t.min,e.max=t.max}function sr(e,t){xA(e.x,t.x),xA(e.y,t.y)}function wA(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}const jN=1e-4,Mz=1-jN,Nz=1+jN,MN=.01,kz=0-MN,Cz=0+MN;function nn(e){return e.max-e.min}function Dz(e,t,n){return Math.abs(e-t)<=n}function _A(e,t,n,r=.5){e.origin=r,e.originPoint=rt(t.min,t.max,e.origin),e.scale=nn(n)/nn(t),e.translate=rt(n.min,n.max,e.origin)-e.originPoint,(e.scale>=Mz&&e.scale<=Nz||isNaN(e.scale))&&(e.scale=1),(e.translate>=kz&&e.translate<=Cz||isNaN(e.translate))&&(e.translate=0)}function Gl(e,t,n,r){_A(e.x,t.x,n.x,r?r.originX:void 0),_A(e.y,t.y,n.y,r?r.originY:void 0)}function SA(e,t,n){e.min=n.min+t.min,e.max=e.min+nn(t)}function Pz(e,t,n){SA(e.x,t.x,n.x),SA(e.y,t.y,n.y)}function AA(e,t,n){e.min=t.min-n.min,e.max=e.min+nn(t)}function Wf(e,t,n){AA(e.x,t.x,n.x),AA(e.y,t.y,n.y)}function TA(e,t,n,r,s){return e-=t,e=Gf(e,1/n,r),s!==void 0&&(e=Gf(e,1/s,r)),e}function Rz(e,t=0,n=1,r=.5,s,o=e,u=e){if(Or.test(t)&&(t=parseFloat(t),t=rt(u.min,u.max,t/100)-u.min),typeof t!="number")return;let f=rt(o.min,o.max,r);e===o&&(f-=t),e.min=TA(e.min,t,n,f,s),e.max=TA(e.max,t,n,f,s)}function OA(e,t,[n,r,s],o,u){Rz(e,t[n],t[r],t[s],t.scale,o,u)}const Lz=["x","scaleX","originX"],zz=["y","scaleY","originY"];function EA(e,t,n,r){OA(e.x,t,Lz,n?n.x:void 0,r?r.x:void 0),OA(e.y,t,zz,n?n.y:void 0,r?r.y:void 0)}function jA(e){return e.translate===0&&e.scale===1}function NN(e){return jA(e.x)&&jA(e.y)}function MA(e,t){return e.min===t.min&&e.max===t.max}function Iz(e,t){return MA(e.x,t.x)&&MA(e.y,t.y)}function NA(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function kN(e,t){return NA(e.x,t.x)&&NA(e.y,t.y)}function kA(e){return nn(e.x)/nn(e.y)}function CA(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function Sr(e){return[e("x"),e("y")]}function Bz(e,t,n){let r="";const s=e.x.translate/t.x,o=e.y.translate/t.y,u=n?.z||0;if((s||o||u)&&(r=`translate3d(${s}px, ${o}px, ${u}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:h,rotate:m,rotateX:p,rotateY:v,skewX:x,skewY:w}=n;h&&(r=`perspective(${h}px) ${r}`),m&&(r+=`rotate(${m}deg) `),p&&(r+=`rotateX(${p}deg) `),v&&(r+=`rotateY(${v}deg) `),x&&(r+=`skewX(${x}deg) `),w&&(r+=`skewY(${w}deg) `)}const f=e.x.scale*t.x,d=e.y.scale*t.y;return(f!==1||d!==1)&&(r+=`scale(${f}, ${d})`),r||"none"}const CN=["TopLeft","TopRight","BottomLeft","BottomRight"],Uz=CN.length,DA=e=>typeof e=="string"?parseFloat(e):e,PA=e=>typeof e=="number"||de.test(e);function Vz(e,t,n,r,s,o){s?(e.opacity=rt(0,n.opacity??1,qz(r)),e.opacityExit=rt(t.opacity??1,0,$z(r))):o&&(e.opacity=rt(t.opacity??1,n.opacity??1,r));for(let u=0;urt?1:n(eu(e,t,r))}function Fz(e,t,n){const r=Zt(e)?e:uo(e);return r.start(D0("",r,t,n)),r.animation}function iu(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const Hz=(e,t)=>e.depth-t.depth;class Kz{constructor(){this.children=[],this.isDirty=!1}add(t){v0(this.children,t),this.isDirty=!0}remove(t){Ff(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(Hz),this.isDirty=!1,this.children.forEach(t)}}function Xz(e,t){const n=tn.now(),r=({timestamp:s})=>{const o=s-n;o>=t&&(na(r),e(o-t))};return Ge.setup(r,!0),()=>na(r)}function zf(e){return Zt(e)?e.get():e}class Yz{constructor(){this.members=[]}add(t){v0(this.members,t);for(let n=this.members.length-1;n>=0;n--){const r=this.members[n];if(r===t||r===this.lead||r===this.prevLead)continue;const s=r.instance;(!s||s.isConnected===!1)&&!r.snapshot&&(Ff(this.members,r),r.unmount())}t.scheduleRender()}remove(t){if(Ff(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){for(let n=this.members.indexOf(t)-1;n>=0;n--){const r=this.members[n];if(r.isPresent!==!1&&r.instance?.isConnected!==!1)return this.promote(r),!0}return!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.updateSnapshot(),t.scheduleRender();const{layoutDependency:s}=r.options,{layoutDependency:o}=t.options;(s===void 0||s!==o)&&(t.resumeFrom=r,n&&(r.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root?.isUpdating&&(t.isLayoutDirty=!0)),t.options.crossfade===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{t.options.onExitComplete?.(),t.resumingFrom?.options.onExitComplete?.()})}scheduleRender(){this.members.forEach(t=>t.instance&&t.scheduleRender(!1))}removeLeadSnapshot(){this.lead?.snapshot&&(this.lead.snapshot=void 0)}}const If={hasAnimatedSinceResize:!0,hasEverUpdated:!1},og=["","X","Y","Z"],Gz=1e3;let Wz=0;function lg(e,t,n,r){const{latestValues:s}=t;s[e]&&(n[e]=s[e],t.setStaticValue(e,0),r&&(r[e]=0))}function PN(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=eN(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:s,layoutId:o}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Ge,!(s||o))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&PN(r)}function RN({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:s}){return class{constructor(u={},f=t?.()){this.id=Wz++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(Jz),this.nodes.forEach(rI),this.nodes.forEach(iI),this.nodes.forEach(eI)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=u,this.root=f?f.root||f:this,this.path=f?[...f.path,f]:[],this.parent=f,this.depth=f?f.depth+1:0;for(let d=0;dthis.root.updateBlockedByResize=!1;Ge.read(()=>{p=window.innerWidth}),e(u,()=>{const x=window.innerWidth;x!==p&&(p=x,this.root.updateBlockedByResize=!0,m&&m(),m=Xz(v,250),If.hasAnimatedSinceResize&&(If.hasAnimatedSinceResize=!1,this.nodes.forEach(IA)))})}f&&this.root.registerSharedNode(f,this),this.options.animate!==!1&&h&&(f||d)&&this.addEventListener("didUpdate",({delta:m,hasLayoutChanged:p,hasRelativeLayoutChanged:v,layout:x})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const w=this.options.transition||h.getDefaultTransition()||uI,{onLayoutAnimationStart:_,onLayoutAnimationComplete:S}=h.getProps(),O=!this.targetLayout||!kN(this.targetLayout,x),M=!p&&v;if(this.options.layoutRoot||this.resumeFrom||M||p&&(O||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const j={...C0(w,"layout"),onPlay:_,onComplete:S};(h.shouldReduceMotion||this.options.layoutRoot)&&(j.delay=0,j.type=!1),this.startAnimation(j),this.setAnimationOrigin(m,M)}else p||IA(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=x})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const u=this.getStack();u&&u.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),na(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(aI),this.animationId++)}getTransformTemplate(){const{visualElement:u}=this.options;return u&&u.getProps().transformTemplate}willUpdate(u=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&PN(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let m=0;m{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!nn(this.snapshot.measuredBox.x)&&!nn(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let d=0;d{const k=N/1e3;BA(p.x,u.x,k),BA(p.y,u.y,k),this.setTargetDelta(p),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Wf(v,this.layout.layoutBox,this.relativeParent.layout.layoutBox),oI(this.relativeTarget,this.relativeTargetOrigin,v,k),j&&Iz(this.relativeTarget,j)&&(this.isProjectionDirty=!1),j||(j=St()),sr(j,this.relativeTarget)),_&&(this.animationValues=m,Vz(m,h,this.latestValues,k,M,O)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=k},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(u){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(na(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Ge.update(()=>{If.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=uo(0)),this.motionValue.jump(0,!1),this.currentAnimation=Fz(this.motionValue,[0,1e3],{...u,velocity:0,isSync:!0,onUpdate:f=>{this.mixTargetDelta(f),u.onUpdate&&u.onUpdate(f)},onStop:()=>{},onComplete:()=>{u.onComplete&&u.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const u=this.getStack();u&&u.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Gz),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const u=this.getLead();let{targetWithTransforms:f,target:d,layout:h,latestValues:m}=u;if(!(!f||!d||!h)){if(this!==u&&this.layout&&h&&LN(this.options.animationType,this.layout.layoutBox,h.layoutBox)){d=this.target||St();const p=nn(this.layout.layoutBox.x);d.x.min=u.target.x.min,d.x.max=d.x.min+p;const v=nn(this.layout.layoutBox.y);d.y.min=u.target.y.min,d.y.max=d.y.min+v}sr(f,d),no(f,m),Gl(this.projectionDeltaWithTransform,this.layoutCorrected,f,m)}}registerSharedNode(u,f){this.sharedNodes.has(u)||this.sharedNodes.set(u,new Yz),this.sharedNodes.get(u).add(f);const h=f.options.initialPromotionConfig;f.promote({transition:h?h.transition:void 0,preserveFollowOpacity:h&&h.shouldPreserveFollowOpacity?h.shouldPreserveFollowOpacity(f):void 0})}isLead(){const u=this.getStack();return u?u.lead===this:!0}getLead(){const{layoutId:u}=this.options;return u?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:u}=this.options;return u?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:u}=this.options;if(u)return this.root.sharedNodes.get(u)}promote({needsReset:u,transition:f,preserveFollowOpacity:d}={}){const h=this.getStack();h&&h.promote(this,d),u&&(this.projectionDelta=void 0,this.needsReset=!0),f&&this.setOptions({transition:f})}relegate(){const u=this.getStack();return u?u.relegate(this):!1}resetSkewAndRotation(){const{visualElement:u}=this.options;if(!u)return;let f=!1;const{latestValues:d}=u;if((d.z||d.rotate||d.rotateX||d.rotateY||d.rotateZ||d.skewX||d.skewY)&&(f=!0),!f)return;const h={};d.z&&lg("z",u,h,this.animationValues);for(let m=0;mu.currentAnimation?.stop()),this.root.nodes.forEach(LA),this.root.sharedNodes.clear()}}}function Zz(e){e.updateLayout()}function Qz(e){const t=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:r}=e.layout,{animationType:s}=e.options,o=t.source!==e.layout.source;s==="size"?Sr(m=>{const p=o?t.measuredBox[m]:t.layoutBox[m],v=nn(p);p.min=n[m].min,p.max=p.min+v}):LN(s,t.layoutBox,n)&&Sr(m=>{const p=o?t.measuredBox[m]:t.layoutBox[m],v=nn(n[m]);p.max=p.min+v,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[m].max=e.relativeTarget[m].min+v)});const u=eo();Gl(u,n,t.layoutBox);const f=eo();o?Gl(f,e.applyTransform(r,!0),t.measuredBox):Gl(f,n,t.layoutBox);const d=!NN(u);let h=!1;if(!e.resumeFrom){const m=e.getClosestProjectingParent();if(m&&!m.resumeFrom){const{snapshot:p,layout:v}=m;if(p&&v){const x=St();Wf(x,t.layoutBox,p.layoutBox);const w=St();Wf(w,n,v.layoutBox),kN(x,w)||(h=!0),m.options.layoutRoot&&(e.relativeTarget=w,e.relativeTargetOrigin=x,e.relativeParent=m)}}}e.notifyListeners("didUpdate",{layout:n,snapshot:t,delta:f,layoutDelta:u,hasLayoutChanged:d,hasRelativeLayoutChanged:h})}else if(e.isLead()){const{onExitComplete:n}=e.options;n&&n()}e.options.transition=void 0}function Jz(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function eI(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function tI(e){e.clearSnapshot()}function LA(e){e.clearMeasurements()}function zA(e){e.isLayoutDirty=!1}function nI(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function IA(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function rI(e){e.resolveTargetDelta()}function iI(e){e.calcProjection()}function aI(e){e.resetSkewAndRotation()}function sI(e){e.removeLeadSnapshot()}function BA(e,t,n){e.translate=rt(t.translate,0,n),e.scale=rt(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function UA(e,t,n,r){e.min=rt(t.min,n.min,r),e.max=rt(t.max,n.max,r)}function oI(e,t,n,r){UA(e.x,t.x,n.x,r),UA(e.y,t.y,n.y,r)}function lI(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const uI={duration:.45,ease:[.4,0,.1,1]},VA=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),qA=VA("applewebkit/")&&!VA("chrome/")?Math.round:Jn;function $A(e){e.min=qA(e.min),e.max=qA(e.max)}function cI(e){$A(e.x),$A(e.y)}function LN(e,t,n){return e==="position"||e==="preserve-aspect"&&!Dz(kA(t),kA(n),.2)}function fI(e){return e!==e.root&&e.scroll?.wasRoot}const dI=RN({attachResizeListener:(e,t)=>iu(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),ug={current:void 0},zN=RN({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!ug.current){const e=new dI({});e.mount(window),e.setOptions({layoutScroll:!0}),ug.current=e}return ug.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),F0=A.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function FA(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function hI(...e){return t=>{let n=!1;const r=e.map(s=>{const o=FA(s,t);return!n&&typeof o=="function"&&(n=!0),o});if(n)return()=>{for(let s=0;s{const{width:v,height:x,top:w,left:_,right:S,bottom:O}=d.current;if(t||o===!1||!f.current||!v||!x)return;const M=n==="left"?`left: ${_}`:`right: ${S}`,j=r==="bottom"?`bottom: ${O}`:`top: ${w}`;f.current.dataset.motionPopId=u;const N=document.createElement("style");h&&(N.nonce=h);const k=s??document.head;return k.appendChild(N),N.sheet&&N.sheet.insertRule(` [data-motion-pop-id="${u}"] { position: absolute !important; width: ${v}px !important; @@ -14,7 +14,7 @@ Error generating stack: `+c.message+` ${M}px !important; ${j}px !important; } - `),()=>{N.contains(k)&&N.removeChild(k)}},[t]),b.jsx(pI,{isPresent:t,childRef:f,sizeRef:d,pop:o,children:o===!1?e:A.cloneElement(e,{ref:p})})}const yI=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:s,presenceAffectsLayout:o,mode:u,anchorX:f,anchorY:d,root:h})=>{const m=y0(vI),p=A.useId();let v=!0,x=A.useMemo(()=>(v=!1,{id:p,initial:t,isPresent:n,custom:s,onExitComplete:w=>{m.set(w,!0);for(const _ of m.values())if(!_)return;r&&r()},register:w=>(m.set(w,!1),()=>m.delete(w))}),[n,m,r]);return o&&v&&(x={...x}),A.useMemo(()=>{m.forEach((w,_)=>m.set(_,!1))},[n]),A.useEffect(()=>{!n&&!m.size&&r&&r()},[n]),e=b.jsx(gI,{pop:u==="popLayout",isPresent:n,anchorX:f,anchorY:d,root:h,children:e}),b.jsx(Fd.Provider,{value:x,children:e})};function vI(){return new Map}function zk(e=!0){const t=A.useContext(Fd);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:s}=t,o=A.useId();A.useEffect(()=>{if(e)return s(o)},[e]);const u=A.useCallback(()=>e&&r&&r(o),[o,r,e]);return!n&&r?[!1,u]:[!0]}const df=e=>e.key||"";function HA(e){const t=[];return A.Children.forEach(e,n=>{A.isValidElement(n)&&t.push(n)}),t}const KA=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:s=!0,mode:o="sync",propagate:u=!1,anchorX:f="left",anchorY:d="top",root:h})=>{const[m,p]=zk(u),v=A.useMemo(()=>HA(e),[e]),x=u&&!m?[]:v.map(df),w=A.useRef(!0),_=A.useRef(v),S=y0(()=>new Map),O=A.useRef(new Set),[M,j]=A.useState(v),[k,N]=A.useState(v);cM(()=>{w.current=!1,_.current=v;for(let I=0;I{const Y=df(I),te=u&&!m?!1:v===k||x.includes(Y),ie=()=>{if(O.current.has(Y))return;if(O.current.add(Y),S.has(Y))S.set(Y,!0);else return;let K=!0;S.forEach(be=>{be||(K=!1)}),K&&(L?.(),N(_.current),u&&p?.(),r&&r())};return b.jsx(yI,{isPresent:te,initial:!w.current||n?void 0:!1,custom:t,presenceAffectsLayout:s,mode:o,root:h,onExitComplete:te?void 0:ie,anchorX:f,anchorY:d,children:I},Y)})})},Ik=A.createContext({strict:!1}),XA={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let YA=!1;function bI(){if(YA)return;const e={};for(const t in XA)e[t]={isEnabled:n=>XA[t].some(r=>!!n[r])};hk(e),YA=!0}function Bk(){return bI(),az()}function xI(e){const t=Bk();for(const n in e)t[n]={...t[n],...e[n]};hk(t)}const wI=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function Zf(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||wI.has(e)}let Uk=e=>!Zf(e);function _I(e){typeof e=="function"&&(Uk=t=>t.startsWith("on")?!Zf(t):e(t))}try{_I(require("@emotion/is-prop-valid").default)}catch{}function SI(e,t,n){const r={};for(const s in e)s==="values"&&typeof e.values=="object"||(Uk(s)||n===!0&&Zf(s)||!t&&!Zf(s)||e.draggable&&s.startsWith("onDrag"))&&(r[s]=e[s]);return r}const Xd=A.createContext({});function AI(e,t){if(Kd(e)){const{initial:n,animate:r}=e;return{initial:n===!1||ru(n)?n:void 0,animate:ru(r)?r:void 0}}return e.inherit!==!1?t:{}}function TI(e){const{initial:t,animate:n}=AI(e,A.useContext(Xd));return A.useMemo(()=>({initial:t,animate:n}),[GA(t),GA(n)])}function GA(e){return Array.isArray(e)?e.join(" "):e}const H0=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function Vk(e,t,n){for(const r in t)!Zt(t[r])&&!xk(r,n)&&(e[r]=t[r])}function OI({transformTemplate:e},t){return A.useMemo(()=>{const n=H0();return q0(n,t,e),Object.assign({},n.vars,n.style)},[t])}function EI(e,t){const n=e.style||{},r={};return Vk(r,n,e),Object.assign(r,OI(e,t)),r}function jI(e,t){const n={},r=EI(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const qk=()=>({...H0(),attrs:{}});function MI(e,t,n,r){const s=A.useMemo(()=>{const o=qk();return wk(o,t,Sk(r),e.transformTemplate,e.style),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};Vk(o,e.style,e),s.style={...o,...s.style}}return s}const kI=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function K0(e){return typeof e!="string"||e.includes("-")?!1:!!(kI.indexOf(e)>-1||/[A-Z]/u.test(e))}function NI(e,t,n,{latestValues:r},s,o=!1,u){const d=(u??K0(e)?MI:jI)(t,r,s,e),h=SI(t,typeof e=="string",o),m=e!==A.Fragment?{...h,...d,ref:n}:{},{children:p}=t,v=A.useMemo(()=>Zt(p)?p.get():p,[p]);return A.createElement(e,{...m,children:v})}function CI({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,s){return{latestValues:DI(n,r,s,e),renderState:t()}}function DI(e,t,n,r){const s={},o=r(e,{});for(const v in o)s[v]=zf(o[v]);let{initial:u,animate:f}=e;const d=Kd(e),h=fk(e);t&&h&&!d&&e.inherit!==!1&&(u===void 0&&(u=t.initial),f===void 0&&(f=t.animate));let m=n?n.initial===!1:!1;m=m||u===!1;const p=m?f:u;if(p&&typeof p!="boolean"&&!Hd(p)){const v=Array.isArray(p)?p:[p];for(let x=0;x(t,n)=>{const r=A.useContext(Xd),s=A.useContext(Fd),o=()=>CI(e,t,r,s);return n?o():y0(o)},PI=$k({scrapeMotionValuesFromProps:$0,createRenderState:H0}),RI=$k({scrapeMotionValuesFromProps:Ak,createRenderState:qk}),LI=Symbol.for("motionComponentSymbol");function zI(e,t,n){const r=A.useRef(n);A.useInsertionEffect(()=>{r.current=n});const s=A.useRef(null);return A.useCallback(o=>{o&&e.onMount?.(o);const u=r.current;if(typeof u=="function")if(o){const f=u(o);typeof f=="function"&&(s.current=f)}else s.current?(s.current(),s.current=null):u(o);else u&&(u.current=o);t&&(o?t.mount(o):t.unmount())},[t])}const Fk=A.createContext({});function Gs(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function II(e,t,n,r,s,o){const{visualElement:u}=A.useContext(Xd),f=A.useContext(Ik),d=A.useContext(Fd),h=A.useContext(F0),m=h.reducedMotion,p=h.skipAnimations,v=A.useRef(null),x=A.useRef(!1);r=r||f.renderer,!v.current&&r&&(v.current=r(e,{visualState:t,parent:u,props:n,presenceContext:d,blockInitialAnimation:d?d.initial===!1:!1,reducedMotionConfig:m,skipAnimations:p,isSVG:o}),x.current&&v.current&&(v.current.manuallyAnimateOnMount=!0));const w=v.current,_=A.useContext(Fk);w&&!w.projection&&s&&(w.type==="html"||w.type==="svg")&&BI(v.current,n,s,_);const S=A.useRef(!1);A.useInsertionEffect(()=>{w&&S.current&&w.update(n,d)});const O=n[QM],M=A.useRef(!!O&&typeof window<"u"&&!window.MotionHandoffIsComplete?.(O)&&window.MotionHasOptimisedAnimation?.(O));return cM(()=>{x.current=!0,w&&(S.current=!0,window.MotionIsMounted=!0,w.updateFeatures(),w.scheduleRenderMicrotask(),M.current&&w.animationState&&w.animationState.animateChanges())}),A.useEffect(()=>{w&&(!M.current&&w.animationState&&w.animationState.animateChanges(),M.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(O)}),M.current=!1),w.enteringChildren=void 0)}),w}function BI(e,t,n,r){const{layoutId:s,layout:o,drag:u,dragConstraints:f,layoutScroll:d,layoutRoot:h,layoutCrossfade:m}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:Hk(e.parent)),e.projection.setOptions({layoutId:s,layout:o,alwaysMeasureLayout:!!u||f&&Gs(f),visualElement:e,animationType:typeof o=="string"?o:"both",initialPromotionConfig:r,crossfade:m,layoutScroll:d,layoutRoot:h})}function Hk(e){if(e)return e.options.allowProjection!==!1?e.projection:Hk(e.parent)}function cg(e,{forwardMotionProps:t=!1,type:n}={},r,s){r&&xI(r);const o=n?n==="svg":K0(e),u=o?RI:PI;function f(h,m){let p;const v={...A.useContext(F0),...h,layoutId:UI(h)},{isStatic:x}=v,w=TI(h),_=u(h,x);if(!x&&typeof window<"u"){VI();const S=qI(v);p=S.MeasureLayout,w.visualElement=II(e,_,v,s,S.ProjectionNode,o)}return b.jsxs(Xd.Provider,{value:w,children:[p&&w.visualElement?b.jsx(p,{visualElement:w.visualElement,...v}):null,NI(e,h,zI(_,w.visualElement,m),_,x,t,o)]})}f.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const d=A.forwardRef(f);return d[LI]=e,d}function UI({layoutId:e}){const t=A.useContext(g0).id;return t&&e!==void 0?t+"-"+e:e}function VI(e,t){A.useContext(Ik).strict}function qI(e){const t=Bk(),{drag:n,layout:r}=t;if(!n&&!r)return{};const s={...n,...r};return{MeasureLayout:n?.isEnabled(e)||r?.isEnabled(e)?s.MeasureLayout:void 0,ProjectionNode:s.ProjectionNode}}function $I(e,t){if(typeof Proxy>"u")return cg;const n=new Map,r=(o,u)=>cg(o,u,e,t),s=(o,u)=>r(o,u);return new Proxy(s,{get:(o,u)=>u==="create"?r:(n.has(u)||n.set(u,cg(u,void 0,e,t)),n.get(u))})}const FI=(e,t)=>t.isSVG??K0(e)?new _z(t):new gz(t,{allowProjection:e!==A.Fragment});class HI extends aa{constructor(t){super(t),t.animationState||(t.animationState=Ez(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();Hd(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let KI=0;class XI extends aa{constructor(){super(...arguments),this.id=KI++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;const s=this.node.animationState.setActive("exit",!t);n&&!t&&s.then(()=>{n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const YI={animation:{Feature:HI},exit:{Feature:XI}};function Au(e){return{point:{x:e.pageX,y:e.pageY}}}const GI=e=>t=>I0(t)&&e(t,Au(t));function Wl(e,t,n,r){return iu(e,t,GI(n),r)}const Kk=({current:e})=>e?e.ownerDocument.defaultView:null,WA=(e,t)=>Math.abs(e-t);function WI(e,t){const n=WA(e.x,t.x),r=WA(e.y,t.y);return Math.sqrt(n**2+r**2)}const ZA=new Set(["auto","scroll"]);class Xk{constructor(t,n,{transformPagePoint:r,contextWindow:s=window,dragSnapToOrigin:o=!1,distanceThreshold:u=3,element:f}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=x=>{this.handleScroll(x.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const x=dg(this.lastMoveEventInfo,this.history),w=this.startEvent!==null,_=WI(x.offset,{x:0,y:0})>=this.distanceThreshold;if(!w&&!_)return;const{point:S}=x,{timestamp:O}=Ft;this.history.push({...S,timestamp:O});const{onStart:M,onMove:j}=this.handlers;w||(M&&M(this.lastMoveEvent,x),this.startEvent=this.lastMoveEvent),j&&j(this.lastMoveEvent,x)},this.handlePointerMove=(x,w)=>{this.lastMoveEvent=x,this.lastMoveEventInfo=fg(w,this.transformPagePoint),Ge.update(this.updatePoint,!0)},this.handlePointerUp=(x,w)=>{this.end();const{onEnd:_,onSessionEnd:S,resumeAnimation:O}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&O&&O(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const M=dg(x.type==="pointercancel"?this.lastMoveEventInfo:fg(w,this.transformPagePoint),this.history);this.startEvent&&_&&_(x,M),S&&S(x,M)},!I0(t))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=u,this.contextWindow=s||window;const d=Au(t),h=fg(d,this.transformPagePoint),{point:m}=h,{timestamp:p}=Ft;this.history=[{...m,timestamp:p}];const{onSessionStart:v}=n;v&&v(t,dg(h,this.history)),this.removeListeners=wu(Wl(this.contextWindow,"pointermove",this.handlePointerMove),Wl(this.contextWindow,"pointerup",this.handlePointerUp),Wl(this.contextWindow,"pointercancel",this.handlePointerUp)),f&&this.startScrollTracking(f)}startScrollTracking(t){let n=t.parentElement;for(;n;){const r=getComputedStyle(n);(ZA.has(r.overflowX)||ZA.has(r.overflowY))&&this.scrollPositions.set(n,{x:n.scrollLeft,y:n.scrollTop}),n=n.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0}),window.addEventListener("scroll",this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(t){const n=this.scrollPositions.get(t);if(!n)return;const r=t===window,s=r?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop},o={x:s.x-n.x,y:s.y-n.y};o.x===0&&o.y===0||(r?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=o.x,this.lastMoveEventInfo.point.y+=o.y):this.history.length>0&&(this.history[0].x-=o.x,this.history[0].y-=o.y),this.scrollPositions.set(t,s),Ge.update(this.updatePoint,!0))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),na(this.updatePoint)}}function fg(e,t){return t?{point:t(e.point)}:e}function QA(e,t){return{x:e.x-t.x,y:e.y-t.y}}function dg({point:e},t){return{point:e,delta:QA(e,Yk(t)),offset:QA(e,ZI(t)),velocity:QI(t,.1)}}function ZI(e){return e[0]}function Yk(e){return e[e.length-1]}function QI(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const s=Yk(e);for(;n>=0&&(r=e[n],!(s.timestamp-r.timestamp>fr(t)));)n--;if(!r)return{x:0,y:0};r===e[0]&&e.length>2&&s.timestamp-r.timestamp>fr(t)*2&&(r=e[1]);const o=Gn(s.timestamp-r.timestamp);if(o===0)return{x:0,y:0};const u={x:(s.x-r.x)/o,y:(s.y-r.y)/o};return u.x===1/0&&(u.x=0),u.y===1/0&&(u.y=0),u}function JI(e,{min:t,max:n},r){return t!==void 0&&en&&(e=r?rt(n,e,r.max):Math.min(e,n)),e}function JA(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function eB(e,{top:t,left:n,bottom:r,right:s}){return{x:JA(e.x,n,s),y:JA(e.y,t,r)}}function eT(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.minr?n=eu(t.min,t.max-r,e.min):r>s&&(n=eu(e.min,e.max-s,t.min)),Mr(0,1,n)}function rB(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const vv=.35;function iB(e=vv){return e===!1?e=0:e===!0&&(e=vv),{x:tT(e,"left","right"),y:tT(e,"top","bottom")}}function tT(e,t,n){return{min:nT(e,t),max:nT(e,n)}}function nT(e,t){return typeof e=="number"?e:e[t]||0}const aB=new WeakMap;class sB{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=St(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:s}=this.visualElement;if(s&&s.isPresent===!1)return;const o=p=>{n&&this.snapToCursor(Au(p).point),this.stopAnimation()},u=(p,v)=>{const{drag:x,dragPropagation:w,onDragStart:_}=this.getProps();if(x&&!w&&(this.openDragLock&&this.openDragLock(),this.openDragLock=R8(x),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=v,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Sr(O=>{let M=this.getAxisMotionValue(O).get()||0;if(Or.test(M)){const{projection:j}=this.visualElement;if(j&&j.layout){const k=j.layout.layoutBox[O];k&&(M=nn(k)*(parseFloat(M)/100))}}this.originPoint[O]=M}),_&&Ge.update(()=>_(p,v),!1,!0),uv(this.visualElement,"transform");const{animationState:S}=this.visualElement;S&&S.setActive("whileDrag",!0)},f=(p,v)=>{this.latestPointerEvent=p,this.latestPanInfo=v;const{dragPropagation:x,dragDirectionLock:w,onDirectionLock:_,onDrag:S}=this.getProps();if(!x&&!this.openDragLock)return;const{offset:O}=v;if(w&&this.currentDirection===null){this.currentDirection=lB(O),this.currentDirection!==null&&_&&_(this.currentDirection);return}this.updateAxis("x",v.point,O),this.updateAxis("y",v.point,O),this.visualElement.render(),S&&Ge.update(()=>S(p,v),!1,!0)},d=(p,v)=>{this.latestPointerEvent=p,this.latestPanInfo=v,this.stop(p,v),this.latestPointerEvent=null,this.latestPanInfo=null},h=()=>{const{dragSnapToOrigin:p}=this.getProps();(p||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:m}=this.getProps();this.panSession=new Xk(t,{onSessionStart:o,onStart:u,onMove:f,onSessionEnd:d,resumeAnimation:h},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:m,distanceThreshold:r,contextWindow:Kk(this.visualElement),element:this.visualElement.current})}stop(t,n){const r=t||this.latestPointerEvent,s=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!s||!r)return;const{velocity:u}=s;this.startAnimation(u);const{onDragEnd:f}=this.getProps();f&&Ge.postRender(()=>f(r,s))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(t,n,r){const{drag:s}=this.getProps();if(!r||!hf(t,s,this.currentDirection))return;const o=this.getAxisMotionValue(t);let u=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(u=JI(u,this.constraints[t],this.elastic[t])),o.set(u)}resolveConstraints(){const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,s=this.constraints;t&&Gs(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=eB(r.layoutBox,t):this.constraints=!1,this.elastic=iB(n),s!==this.constraints&&!Gs(t)&&r&&this.constraints&&!this.hasMutatedConstraints&&Sr(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=rB(r.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Gs(t))return!1;const r=t.current,{projection:s}=this.visualElement;if(!s||!s.layout)return!1;const o=cz(r,s.root,this.visualElement.getTransformPagePoint());let u=tB(s.layout.layoutBox,o);if(n){const f=n(oz(u));this.hasMutatedConstraints=!!f,f&&(u=pk(f))}return u}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:s,dragTransition:o,dragSnapToOrigin:u,onDragTransitionEnd:f}=this.getProps(),d=this.constraints||{},h=Sr(m=>{if(!hf(m,n,this.currentDirection))return;let p=d&&d[m]||{};u&&(p={min:0,max:0});const v=s?200:1e6,x=s?40:1e7,w={type:"inertia",velocity:r?t[m]:0,bounceStiffness:v,bounceDamping:x,timeConstant:750,restDelta:1,restSpeed:10,...o,...p};return this.startAxisValueAnimation(m,w)});return Promise.all(h).then(f)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return uv(this.visualElement,t),r.start(D0(t,r,0,n,this.visualElement,!1))}stopAnimation(){Sr(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),s=r[n];return s||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){Sr(n=>{const{drag:r}=this.getProps();if(!hf(n,r,this.currentDirection))return;const{projection:s}=this.visualElement,o=this.getAxisMotionValue(n);if(s&&s.layout){const{min:u,max:f}=s.layout.layoutBox[n],d=o.get()||0;o.set(t[n]-rt(u,f,.5)+d)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!Gs(n)||!r||!this.constraints)return;this.stopAnimation();const s={x:0,y:0};Sr(u=>{const f=this.getAxisMotionValue(u);if(f&&this.constraints!==!1){const d=f.get();s[u]=nB({min:d,max:d},this.constraints[u])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.constraints=!1,this.resolveConstraints(),Sr(u=>{if(!hf(u,t,null))return;const f=this.getAxisMotionValue(u),{min:d,max:h}=this.constraints[u];f.set(rt(d,h,s[u]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;aB.set(this.visualElement,this);const t=this.visualElement.current,n=Wl(t,"pointerdown",h=>{const{drag:m,dragListener:p=!0}=this.getProps(),v=h.target,x=v!==t&&V8(v);m&&p&&!x&&this.start(h)});let r;const s=()=>{const{dragConstraints:h}=this.getProps();Gs(h)&&h.current&&(this.constraints=this.resolveRefConstraints(),r||(r=oB(t,h.current,()=>this.scalePositionWithinConstraints())))},{projection:o}=this.visualElement,u=o.addEventListener("measure",s);o&&!o.layout&&(o.root&&o.root.updateScroll(),o.updateLayout()),Ge.read(s);const f=iu(window,"resize",()=>this.scalePositionWithinConstraints()),d=o.addEventListener("didUpdate",(({delta:h,hasLayoutChanged:m})=>{this.isDragging&&m&&(Sr(p=>{const v=this.getAxisMotionValue(p);v&&(this.originPoint[p]+=h[p].translate,v.set(v.get()+h[p].translate))}),this.visualElement.render())}));return()=>{f(),n(),u(),d&&d(),r&&r()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:s=!1,dragConstraints:o=!1,dragElastic:u=vv,dragMomentum:f=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:s,dragConstraints:o,dragElastic:u,dragMomentum:f}}}function rT(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function oB(e,t,n){const r=lA(e,rT(n)),s=lA(t,rT(n));return()=>{r(),s()}}function hf(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function lB(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class uB extends aa{constructor(t){super(t),this.removeGroupControls=Jn,this.removeListeners=Jn,this.controls=new sB(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Jn}update(){const{dragControls:t}=this.node.getProps(),{dragControls:n}=this.node.prevProps||{};t!==n&&(this.removeGroupControls(),t&&(this.removeGroupControls=t.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}const hg=e=>(t,n)=>{e&&Ge.update(()=>e(t,n),!1,!0)};class cB extends aa{constructor(){super(...arguments),this.removePointerDownListener=Jn}onPointerDown(t){this.session=new Xk(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Kk(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:s}=this.node.getProps();return{onSessionStart:hg(t),onStart:hg(n),onMove:hg(r),onEnd:(o,u)=>{delete this.session,s&&Ge.postRender(()=>s(o,u))}}}mount(){this.removePointerDownListener=Wl(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let mg=!1;class fB extends A.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:s}=this.props,{projection:o}=t;o&&(n.group&&n.group.add(o),r&&r.register&&s&&r.register(o),mg&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),If.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:s,isPresent:o}=this.props,{projection:u}=r;return u&&(u.isPresent=o,t.layoutDependency!==n&&u.setOptions({...u.options,layoutDependency:n}),mg=!0,s||t.layoutDependency!==n||n===void 0||t.isPresent!==o?u.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?u.promote():u.relegate()||Ge.postRender(()=>{const f=u.getStack();(!f||!f.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),z0.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:s}=t;mg=!0,s&&(s.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(s),r&&r.deregister&&r.deregister(s))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function Gk(e){const[t,n]=zk(),r=A.useContext(g0);return b.jsx(fB,{...e,layoutGroup:r,switchLayoutGroup:A.useContext(Fk),isPresent:t,safeToRemove:n})}const dB={pan:{Feature:cB},drag:{Feature:uB,ProjectionNode:Lk,MeasureLayout:Gk}};function iT(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const s="onHover"+n,o=r[s];o&&Ge.postRender(()=>o(t,Au(t)))}class hB extends aa{mount(){const{current:t}=this.node;t&&(this.unmount=z8(t,(n,r)=>(iT(this.node,r,"Start"),s=>iT(this.node,s,"End"))))}unmount(){}}class mB extends aa{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=wu(iu(this.node.current,"focus",()=>this.onFocus()),iu(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function aT(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const s="onTap"+(n==="End"?"":n),o=r[s];o&&Ge.postRender(()=>o(t,Au(t)))}class pB extends aa{mount(){const{current:t}=this.node;if(!t)return;const{globalTapTarget:n,propagate:r}=this.node.props;this.unmount=$8(t,(s,o)=>(aT(this.node,o,"Start"),(u,{success:f})=>aT(this.node,u,f?"End":"Cancel")),{useGlobalTarget:n,stopPropagation:r?.tap===!1})}unmount(){}}const bv=new WeakMap,pg=new WeakMap,gB=e=>{const t=bv.get(e.target);t&&t(e)},yB=e=>{e.forEach(gB)};function vB({root:e,...t}){const n=e||document;pg.has(n)||pg.set(n,{});const r=pg.get(n),s=JSON.stringify(t);return r[s]||(r[s]=new IntersectionObserver(yB,{root:e,...t})),r[s]}function bB(e,t,n){const r=vB(t);return bv.set(e,n),r.observe(e),()=>{bv.delete(e),r.unobserve(e)}}const xB={some:0,all:1};class wB extends aa{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:s="some",once:o}=t,u={root:n?n.current:void 0,rootMargin:r,threshold:typeof s=="number"?s:xB[s]},f=d=>{const{isIntersecting:h}=d;if(this.isInView===h||(this.isInView=h,o&&!h&&this.hasEnteredView))return;h&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",h);const{onViewportEnter:m,onViewportLeave:p}=this.node.getProps(),v=h?m:p;v&&v(d)};return bB(this.node.current,u,f)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(_B(t,n))&&this.startObserver()}unmount(){}}function _B({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const SB={inView:{Feature:wB},tap:{Feature:pB},focus:{Feature:mB},hover:{Feature:hB}},AB={layout:{ProjectionNode:Lk,MeasureLayout:Gk}},TB={...YI,...SB,...dB,...AB},Tt=$I(TB,FI);function wo({id:e,title:t,subtitle:n,children:r,className:s="",wide:o=!1}){return b.jsx("section",{id:e,className:`pt-28 pb-20 px-4 sm:px-6 lg:px-8 ${s}`,children:b.jsxs("div",{className:`${o?"max-w-[1600px]":"max-w-7xl"} mx-auto`,children:[t&&b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0,margin:"-100px"},transition:{duration:.5},className:"text-center mb-12",children:[b.jsx("h2",{className:"text-3xl sm:text-4xl font-bold text-text-primary mb-3",children:t}),n&&b.jsx("p",{className:"text-lg text-text-secondary max-w-3xl mx-auto",children:n})]}),r]})})}function OB(){return b.jsx(wo,{id:"acknowledgements",title:"Contributions & Acknowledgements",subtitle:"",children:b.jsxs("div",{className:"max-w-3xl mx-auto space-y-8",children:[b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5},children:b.jsxs("div",{className:"rounded-xl border border-purple/30 bg-purple/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-purple-light mb-3",children:"Core Contributors"}),b.jsx("p",{className:"text-sm font-semibold text-text-primary",children:"Tara Bogavelli, Gabrielle Gauthier Melançon, Katrina Stankiewicz, Oluwanifemi Bamgbose, Hoang Nguyen, Raghav Mehndiratta, Hari Subramani"})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:b.jsxs("div",{className:"rounded-xl border border-blue/30 bg-blue/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-blue-light mb-2",children:"Secondary Contributors"}),b.jsx("p",{className:"text-sm text-text-secondary mb-3",children:"We thank the following individuals for their careful data review and thoughtful contributions to the framework."}),b.jsx("p",{className:"text-sm font-semibold text-text-primary",children:"Lindsay Brin, Akshay Kalkunte, Joseph Marinier, Jishnu Nair, Aman Tiwari"})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.2},children:b.jsxs("div",{className:"rounded-xl border border-amber/30 bg-amber/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-amber mb-2",children:"Management and Leadership"}),b.jsx("p",{className:"text-sm text-text-secondary mb-4",children:"We are grateful to the following individuals for their management, leadership, and support."}),b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Fanny Riols"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Research Scientist Manager"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Anil Madamala"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Director, Machine Learning Engineering Management"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Sridhar Nemala"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Senior Director, Machine Learning Engineering"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Srinivas Sunkara"}),b.jsx("span",{className:"text-xs text-text-muted",children:"VP, Research Engineering Management"})]})]})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.3},children:b.jsxs("div",{className:"rounded-xl border border-cyan/30 bg-cyan/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-cyan mb-2",children:"Upstream Contributors"}),b.jsxs("p",{className:"text-sm text-text-secondary",children:["We extend our thanks to the ",b.jsx("span",{className:"font-bold text-text-primary",children:"PAVA"})," and ",b.jsx("span",{className:"font-bold text-text-primary",children:"CLAE"})," teams whose prior work on evaluations and voice agents provided valuable inspiration for this project."]})]})}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.4},className:"rounded-xl border border-border-default bg-bg-secondary p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-text-primary mb-3",children:"Citation"}),b.jsx("pre",{className:"text-xs text-text-muted bg-bg-primary rounded-lg p-4 overflow-x-auto font-mono",children:`@misc{eva-2026, + `),()=>{k.contains(N)&&k.removeChild(N)}},[t]),b.jsx(pI,{isPresent:t,childRef:f,sizeRef:d,pop:o,children:o===!1?e:A.cloneElement(e,{ref:p})})}const yI=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:s,presenceAffectsLayout:o,mode:u,anchorX:f,anchorY:d,root:h})=>{const m=y0(vI),p=A.useId();let v=!0,x=A.useMemo(()=>(v=!1,{id:p,initial:t,isPresent:n,custom:s,onExitComplete:w=>{m.set(w,!0);for(const _ of m.values())if(!_)return;r&&r()},register:w=>(m.set(w,!1),()=>m.delete(w))}),[n,m,r]);return o&&v&&(x={...x}),A.useMemo(()=>{m.forEach((w,_)=>m.set(_,!1))},[n]),A.useEffect(()=>{!n&&!m.size&&r&&r()},[n]),e=b.jsx(gI,{pop:u==="popLayout",isPresent:n,anchorX:f,anchorY:d,root:h,children:e}),b.jsx(Fd.Provider,{value:x,children:e})};function vI(){return new Map}function IN(e=!0){const t=A.useContext(Fd);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:s}=t,o=A.useId();A.useEffect(()=>{if(e)return s(o)},[e]);const u=A.useCallback(()=>e&&r&&r(o),[o,r,e]);return!n&&r?[!1,u]:[!0]}const df=e=>e.key||"";function HA(e){const t=[];return A.Children.forEach(e,n=>{A.isValidElement(n)&&t.push(n)}),t}const KA=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:s=!0,mode:o="sync",propagate:u=!1,anchorX:f="left",anchorY:d="top",root:h})=>{const[m,p]=IN(u),v=A.useMemo(()=>HA(e),[e]),x=u&&!m?[]:v.map(df),w=A.useRef(!0),_=A.useRef(v),S=y0(()=>new Map),O=A.useRef(new Set),[M,j]=A.useState(v),[N,k]=A.useState(v);fM(()=>{w.current=!1,_.current=v;for(let I=0;I{const Y=df(I),te=u&&!m?!1:v===N||x.includes(Y),ie=()=>{if(O.current.has(Y))return;if(O.current.add(Y),S.has(Y))S.set(Y,!0);else return;let K=!0;S.forEach(be=>{be||(K=!1)}),K&&(L?.(),k(_.current),u&&p?.(),r&&r())};return b.jsx(yI,{isPresent:te,initial:!w.current||n?void 0:!1,custom:t,presenceAffectsLayout:s,mode:o,root:h,onExitComplete:te?void 0:ie,anchorX:f,anchorY:d,children:I},Y)})})},BN=A.createContext({strict:!1}),XA={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let YA=!1;function bI(){if(YA)return;const e={};for(const t in XA)e[t]={isEnabled:n=>XA[t].some(r=>!!n[r])};mN(e),YA=!0}function UN(){return bI(),az()}function xI(e){const t=UN();for(const n in e)t[n]={...t[n],...e[n]};mN(t)}const wI=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function Zf(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||wI.has(e)}let VN=e=>!Zf(e);function _I(e){typeof e=="function"&&(VN=t=>t.startsWith("on")?!Zf(t):e(t))}try{_I(require("@emotion/is-prop-valid").default)}catch{}function SI(e,t,n){const r={};for(const s in e)s==="values"&&typeof e.values=="object"||(VN(s)||n===!0&&Zf(s)||!t&&!Zf(s)||e.draggable&&s.startsWith("onDrag"))&&(r[s]=e[s]);return r}const Xd=A.createContext({});function AI(e,t){if(Kd(e)){const{initial:n,animate:r}=e;return{initial:n===!1||ru(n)?n:void 0,animate:ru(r)?r:void 0}}return e.inherit!==!1?t:{}}function TI(e){const{initial:t,animate:n}=AI(e,A.useContext(Xd));return A.useMemo(()=>({initial:t,animate:n}),[GA(t),GA(n)])}function GA(e){return Array.isArray(e)?e.join(" "):e}const H0=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function qN(e,t,n){for(const r in t)!Zt(t[r])&&!wN(r,n)&&(e[r]=t[r])}function OI({transformTemplate:e},t){return A.useMemo(()=>{const n=H0();return q0(n,t,e),Object.assign({},n.vars,n.style)},[t])}function EI(e,t){const n=e.style||{},r={};return qN(r,n,e),Object.assign(r,OI(e,t)),r}function jI(e,t){const n={},r=EI(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const $N=()=>({...H0(),attrs:{}});function MI(e,t,n,r){const s=A.useMemo(()=>{const o=$N();return _N(o,t,AN(r),e.transformTemplate,e.style),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};qN(o,e.style,e),s.style={...o,...s.style}}return s}const NI=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function K0(e){return typeof e!="string"||e.includes("-")?!1:!!(NI.indexOf(e)>-1||/[A-Z]/u.test(e))}function kI(e,t,n,{latestValues:r},s,o=!1,u){const d=(u??K0(e)?MI:jI)(t,r,s,e),h=SI(t,typeof e=="string",o),m=e!==A.Fragment?{...h,...d,ref:n}:{},{children:p}=t,v=A.useMemo(()=>Zt(p)?p.get():p,[p]);return A.createElement(e,{...m,children:v})}function CI({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,s){return{latestValues:DI(n,r,s,e),renderState:t()}}function DI(e,t,n,r){const s={},o=r(e,{});for(const v in o)s[v]=zf(o[v]);let{initial:u,animate:f}=e;const d=Kd(e),h=dN(e);t&&h&&!d&&e.inherit!==!1&&(u===void 0&&(u=t.initial),f===void 0&&(f=t.animate));let m=n?n.initial===!1:!1;m=m||u===!1;const p=m?f:u;if(p&&typeof p!="boolean"&&!Hd(p)){const v=Array.isArray(p)?p:[p];for(let x=0;x(t,n)=>{const r=A.useContext(Xd),s=A.useContext(Fd),o=()=>CI(e,t,r,s);return n?o():y0(o)},PI=FN({scrapeMotionValuesFromProps:$0,createRenderState:H0}),RI=FN({scrapeMotionValuesFromProps:TN,createRenderState:$N}),LI=Symbol.for("motionComponentSymbol");function zI(e,t,n){const r=A.useRef(n);A.useInsertionEffect(()=>{r.current=n});const s=A.useRef(null);return A.useCallback(o=>{o&&e.onMount?.(o);const u=r.current;if(typeof u=="function")if(o){const f=u(o);typeof f=="function"&&(s.current=f)}else s.current?(s.current(),s.current=null):u(o);else u&&(u.current=o);t&&(o?t.mount(o):t.unmount())},[t])}const HN=A.createContext({});function Gs(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function II(e,t,n,r,s,o){const{visualElement:u}=A.useContext(Xd),f=A.useContext(BN),d=A.useContext(Fd),h=A.useContext(F0),m=h.reducedMotion,p=h.skipAnimations,v=A.useRef(null),x=A.useRef(!1);r=r||f.renderer,!v.current&&r&&(v.current=r(e,{visualState:t,parent:u,props:n,presenceContext:d,blockInitialAnimation:d?d.initial===!1:!1,reducedMotionConfig:m,skipAnimations:p,isSVG:o}),x.current&&v.current&&(v.current.manuallyAnimateOnMount=!0));const w=v.current,_=A.useContext(HN);w&&!w.projection&&s&&(w.type==="html"||w.type==="svg")&&BI(v.current,n,s,_);const S=A.useRef(!1);A.useInsertionEffect(()=>{w&&S.current&&w.update(n,d)});const O=n[JM],M=A.useRef(!!O&&typeof window<"u"&&!window.MotionHandoffIsComplete?.(O)&&window.MotionHasOptimisedAnimation?.(O));return fM(()=>{x.current=!0,w&&(S.current=!0,window.MotionIsMounted=!0,w.updateFeatures(),w.scheduleRenderMicrotask(),M.current&&w.animationState&&w.animationState.animateChanges())}),A.useEffect(()=>{w&&(!M.current&&w.animationState&&w.animationState.animateChanges(),M.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(O)}),M.current=!1),w.enteringChildren=void 0)}),w}function BI(e,t,n,r){const{layoutId:s,layout:o,drag:u,dragConstraints:f,layoutScroll:d,layoutRoot:h,layoutCrossfade:m}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:KN(e.parent)),e.projection.setOptions({layoutId:s,layout:o,alwaysMeasureLayout:!!u||f&&Gs(f),visualElement:e,animationType:typeof o=="string"?o:"both",initialPromotionConfig:r,crossfade:m,layoutScroll:d,layoutRoot:h})}function KN(e){if(e)return e.options.allowProjection!==!1?e.projection:KN(e.parent)}function cg(e,{forwardMotionProps:t=!1,type:n}={},r,s){r&&xI(r);const o=n?n==="svg":K0(e),u=o?RI:PI;function f(h,m){let p;const v={...A.useContext(F0),...h,layoutId:UI(h)},{isStatic:x}=v,w=TI(h),_=u(h,x);if(!x&&typeof window<"u"){VI();const S=qI(v);p=S.MeasureLayout,w.visualElement=II(e,_,v,s,S.ProjectionNode,o)}return b.jsxs(Xd.Provider,{value:w,children:[p&&w.visualElement?b.jsx(p,{visualElement:w.visualElement,...v}):null,kI(e,h,zI(_,w.visualElement,m),_,x,t,o)]})}f.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const d=A.forwardRef(f);return d[LI]=e,d}function UI({layoutId:e}){const t=A.useContext(g0).id;return t&&e!==void 0?t+"-"+e:e}function VI(e,t){A.useContext(BN).strict}function qI(e){const t=UN(),{drag:n,layout:r}=t;if(!n&&!r)return{};const s={...n,...r};return{MeasureLayout:n?.isEnabled(e)||r?.isEnabled(e)?s.MeasureLayout:void 0,ProjectionNode:s.ProjectionNode}}function $I(e,t){if(typeof Proxy>"u")return cg;const n=new Map,r=(o,u)=>cg(o,u,e,t),s=(o,u)=>r(o,u);return new Proxy(s,{get:(o,u)=>u==="create"?r:(n.has(u)||n.set(u,cg(u,void 0,e,t)),n.get(u))})}const FI=(e,t)=>t.isSVG??K0(e)?new _z(t):new gz(t,{allowProjection:e!==A.Fragment});class HI extends aa{constructor(t){super(t),t.animationState||(t.animationState=Ez(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();Hd(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let KI=0;class XI extends aa{constructor(){super(...arguments),this.id=KI++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;const s=this.node.animationState.setActive("exit",!t);n&&!t&&s.then(()=>{n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const YI={animation:{Feature:HI},exit:{Feature:XI}};function Au(e){return{point:{x:e.pageX,y:e.pageY}}}const GI=e=>t=>I0(t)&&e(t,Au(t));function Wl(e,t,n,r){return iu(e,t,GI(n),r)}const XN=({current:e})=>e?e.ownerDocument.defaultView:null,WA=(e,t)=>Math.abs(e-t);function WI(e,t){const n=WA(e.x,t.x),r=WA(e.y,t.y);return Math.sqrt(n**2+r**2)}const ZA=new Set(["auto","scroll"]);class YN{constructor(t,n,{transformPagePoint:r,contextWindow:s=window,dragSnapToOrigin:o=!1,distanceThreshold:u=3,element:f}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=x=>{this.handleScroll(x.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const x=dg(this.lastMoveEventInfo,this.history),w=this.startEvent!==null,_=WI(x.offset,{x:0,y:0})>=this.distanceThreshold;if(!w&&!_)return;const{point:S}=x,{timestamp:O}=Ft;this.history.push({...S,timestamp:O});const{onStart:M,onMove:j}=this.handlers;w||(M&&M(this.lastMoveEvent,x),this.startEvent=this.lastMoveEvent),j&&j(this.lastMoveEvent,x)},this.handlePointerMove=(x,w)=>{this.lastMoveEvent=x,this.lastMoveEventInfo=fg(w,this.transformPagePoint),Ge.update(this.updatePoint,!0)},this.handlePointerUp=(x,w)=>{this.end();const{onEnd:_,onSessionEnd:S,resumeAnimation:O}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&O&&O(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const M=dg(x.type==="pointercancel"?this.lastMoveEventInfo:fg(w,this.transformPagePoint),this.history);this.startEvent&&_&&_(x,M),S&&S(x,M)},!I0(t))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=u,this.contextWindow=s||window;const d=Au(t),h=fg(d,this.transformPagePoint),{point:m}=h,{timestamp:p}=Ft;this.history=[{...m,timestamp:p}];const{onSessionStart:v}=n;v&&v(t,dg(h,this.history)),this.removeListeners=wu(Wl(this.contextWindow,"pointermove",this.handlePointerMove),Wl(this.contextWindow,"pointerup",this.handlePointerUp),Wl(this.contextWindow,"pointercancel",this.handlePointerUp)),f&&this.startScrollTracking(f)}startScrollTracking(t){let n=t.parentElement;for(;n;){const r=getComputedStyle(n);(ZA.has(r.overflowX)||ZA.has(r.overflowY))&&this.scrollPositions.set(n,{x:n.scrollLeft,y:n.scrollTop}),n=n.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0}),window.addEventListener("scroll",this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(t){const n=this.scrollPositions.get(t);if(!n)return;const r=t===window,s=r?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop},o={x:s.x-n.x,y:s.y-n.y};o.x===0&&o.y===0||(r?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=o.x,this.lastMoveEventInfo.point.y+=o.y):this.history.length>0&&(this.history[0].x-=o.x,this.history[0].y-=o.y),this.scrollPositions.set(t,s),Ge.update(this.updatePoint,!0))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),na(this.updatePoint)}}function fg(e,t){return t?{point:t(e.point)}:e}function QA(e,t){return{x:e.x-t.x,y:e.y-t.y}}function dg({point:e},t){return{point:e,delta:QA(e,GN(t)),offset:QA(e,ZI(t)),velocity:QI(t,.1)}}function ZI(e){return e[0]}function GN(e){return e[e.length-1]}function QI(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const s=GN(e);for(;n>=0&&(r=e[n],!(s.timestamp-r.timestamp>fr(t)));)n--;if(!r)return{x:0,y:0};r===e[0]&&e.length>2&&s.timestamp-r.timestamp>fr(t)*2&&(r=e[1]);const o=Gn(s.timestamp-r.timestamp);if(o===0)return{x:0,y:0};const u={x:(s.x-r.x)/o,y:(s.y-r.y)/o};return u.x===1/0&&(u.x=0),u.y===1/0&&(u.y=0),u}function JI(e,{min:t,max:n},r){return t!==void 0&&en&&(e=r?rt(n,e,r.max):Math.min(e,n)),e}function JA(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function eB(e,{top:t,left:n,bottom:r,right:s}){return{x:JA(e.x,n,s),y:JA(e.y,t,r)}}function e2(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.minr?n=eu(t.min,t.max-r,e.min):r>s&&(n=eu(e.min,e.max-s,t.min)),Mr(0,1,n)}function rB(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const vv=.35;function iB(e=vv){return e===!1?e=0:e===!0&&(e=vv),{x:t2(e,"left","right"),y:t2(e,"top","bottom")}}function t2(e,t,n){return{min:n2(e,t),max:n2(e,n)}}function n2(e,t){return typeof e=="number"?e:e[t]||0}const aB=new WeakMap;class sB{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=St(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:s}=this.visualElement;if(s&&s.isPresent===!1)return;const o=p=>{n&&this.snapToCursor(Au(p).point),this.stopAnimation()},u=(p,v)=>{const{drag:x,dragPropagation:w,onDragStart:_}=this.getProps();if(x&&!w&&(this.openDragLock&&this.openDragLock(),this.openDragLock=R8(x),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=v,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Sr(O=>{let M=this.getAxisMotionValue(O).get()||0;if(Or.test(M)){const{projection:j}=this.visualElement;if(j&&j.layout){const N=j.layout.layoutBox[O];N&&(M=nn(N)*(parseFloat(M)/100))}}this.originPoint[O]=M}),_&&Ge.update(()=>_(p,v),!1,!0),uv(this.visualElement,"transform");const{animationState:S}=this.visualElement;S&&S.setActive("whileDrag",!0)},f=(p,v)=>{this.latestPointerEvent=p,this.latestPanInfo=v;const{dragPropagation:x,dragDirectionLock:w,onDirectionLock:_,onDrag:S}=this.getProps();if(!x&&!this.openDragLock)return;const{offset:O}=v;if(w&&this.currentDirection===null){this.currentDirection=lB(O),this.currentDirection!==null&&_&&_(this.currentDirection);return}this.updateAxis("x",v.point,O),this.updateAxis("y",v.point,O),this.visualElement.render(),S&&Ge.update(()=>S(p,v),!1,!0)},d=(p,v)=>{this.latestPointerEvent=p,this.latestPanInfo=v,this.stop(p,v),this.latestPointerEvent=null,this.latestPanInfo=null},h=()=>{const{dragSnapToOrigin:p}=this.getProps();(p||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:m}=this.getProps();this.panSession=new YN(t,{onSessionStart:o,onStart:u,onMove:f,onSessionEnd:d,resumeAnimation:h},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:m,distanceThreshold:r,contextWindow:XN(this.visualElement),element:this.visualElement.current})}stop(t,n){const r=t||this.latestPointerEvent,s=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!s||!r)return;const{velocity:u}=s;this.startAnimation(u);const{onDragEnd:f}=this.getProps();f&&Ge.postRender(()=>f(r,s))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(t,n,r){const{drag:s}=this.getProps();if(!r||!hf(t,s,this.currentDirection))return;const o=this.getAxisMotionValue(t);let u=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(u=JI(u,this.constraints[t],this.elastic[t])),o.set(u)}resolveConstraints(){const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,s=this.constraints;t&&Gs(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=eB(r.layoutBox,t):this.constraints=!1,this.elastic=iB(n),s!==this.constraints&&!Gs(t)&&r&&this.constraints&&!this.hasMutatedConstraints&&Sr(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=rB(r.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Gs(t))return!1;const r=t.current,{projection:s}=this.visualElement;if(!s||!s.layout)return!1;const o=cz(r,s.root,this.visualElement.getTransformPagePoint());let u=tB(s.layout.layoutBox,o);if(n){const f=n(oz(u));this.hasMutatedConstraints=!!f,f&&(u=gN(f))}return u}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:s,dragTransition:o,dragSnapToOrigin:u,onDragTransitionEnd:f}=this.getProps(),d=this.constraints||{},h=Sr(m=>{if(!hf(m,n,this.currentDirection))return;let p=d&&d[m]||{};u&&(p={min:0,max:0});const v=s?200:1e6,x=s?40:1e7,w={type:"inertia",velocity:r?t[m]:0,bounceStiffness:v,bounceDamping:x,timeConstant:750,restDelta:1,restSpeed:10,...o,...p};return this.startAxisValueAnimation(m,w)});return Promise.all(h).then(f)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return uv(this.visualElement,t),r.start(D0(t,r,0,n,this.visualElement,!1))}stopAnimation(){Sr(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),s=r[n];return s||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){Sr(n=>{const{drag:r}=this.getProps();if(!hf(n,r,this.currentDirection))return;const{projection:s}=this.visualElement,o=this.getAxisMotionValue(n);if(s&&s.layout){const{min:u,max:f}=s.layout.layoutBox[n],d=o.get()||0;o.set(t[n]-rt(u,f,.5)+d)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!Gs(n)||!r||!this.constraints)return;this.stopAnimation();const s={x:0,y:0};Sr(u=>{const f=this.getAxisMotionValue(u);if(f&&this.constraints!==!1){const d=f.get();s[u]=nB({min:d,max:d},this.constraints[u])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.constraints=!1,this.resolveConstraints(),Sr(u=>{if(!hf(u,t,null))return;const f=this.getAxisMotionValue(u),{min:d,max:h}=this.constraints[u];f.set(rt(d,h,s[u]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;aB.set(this.visualElement,this);const t=this.visualElement.current,n=Wl(t,"pointerdown",h=>{const{drag:m,dragListener:p=!0}=this.getProps(),v=h.target,x=v!==t&&V8(v);m&&p&&!x&&this.start(h)});let r;const s=()=>{const{dragConstraints:h}=this.getProps();Gs(h)&&h.current&&(this.constraints=this.resolveRefConstraints(),r||(r=oB(t,h.current,()=>this.scalePositionWithinConstraints())))},{projection:o}=this.visualElement,u=o.addEventListener("measure",s);o&&!o.layout&&(o.root&&o.root.updateScroll(),o.updateLayout()),Ge.read(s);const f=iu(window,"resize",()=>this.scalePositionWithinConstraints()),d=o.addEventListener("didUpdate",(({delta:h,hasLayoutChanged:m})=>{this.isDragging&&m&&(Sr(p=>{const v=this.getAxisMotionValue(p);v&&(this.originPoint[p]+=h[p].translate,v.set(v.get()+h[p].translate))}),this.visualElement.render())}));return()=>{f(),n(),u(),d&&d(),r&&r()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:s=!1,dragConstraints:o=!1,dragElastic:u=vv,dragMomentum:f=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:s,dragConstraints:o,dragElastic:u,dragMomentum:f}}}function r2(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function oB(e,t,n){const r=lA(e,r2(n)),s=lA(t,r2(n));return()=>{r(),s()}}function hf(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function lB(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class uB extends aa{constructor(t){super(t),this.removeGroupControls=Jn,this.removeListeners=Jn,this.controls=new sB(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Jn}update(){const{dragControls:t}=this.node.getProps(),{dragControls:n}=this.node.prevProps||{};t!==n&&(this.removeGroupControls(),t&&(this.removeGroupControls=t.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}const hg=e=>(t,n)=>{e&&Ge.update(()=>e(t,n),!1,!0)};class cB extends aa{constructor(){super(...arguments),this.removePointerDownListener=Jn}onPointerDown(t){this.session=new YN(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:XN(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:s}=this.node.getProps();return{onSessionStart:hg(t),onStart:hg(n),onMove:hg(r),onEnd:(o,u)=>{delete this.session,s&&Ge.postRender(()=>s(o,u))}}}mount(){this.removePointerDownListener=Wl(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let mg=!1;class fB extends A.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:s}=this.props,{projection:o}=t;o&&(n.group&&n.group.add(o),r&&r.register&&s&&r.register(o),mg&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),If.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:s,isPresent:o}=this.props,{projection:u}=r;return u&&(u.isPresent=o,t.layoutDependency!==n&&u.setOptions({...u.options,layoutDependency:n}),mg=!0,s||t.layoutDependency!==n||n===void 0||t.isPresent!==o?u.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?u.promote():u.relegate()||Ge.postRender(()=>{const f=u.getStack();(!f||!f.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),z0.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:s}=t;mg=!0,s&&(s.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(s),r&&r.deregister&&r.deregister(s))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function WN(e){const[t,n]=IN(),r=A.useContext(g0);return b.jsx(fB,{...e,layoutGroup:r,switchLayoutGroup:A.useContext(HN),isPresent:t,safeToRemove:n})}const dB={pan:{Feature:cB},drag:{Feature:uB,ProjectionNode:zN,MeasureLayout:WN}};function i2(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const s="onHover"+n,o=r[s];o&&Ge.postRender(()=>o(t,Au(t)))}class hB extends aa{mount(){const{current:t}=this.node;t&&(this.unmount=z8(t,(n,r)=>(i2(this.node,r,"Start"),s=>i2(this.node,s,"End"))))}unmount(){}}class mB extends aa{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=wu(iu(this.node.current,"focus",()=>this.onFocus()),iu(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function a2(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const s="onTap"+(n==="End"?"":n),o=r[s];o&&Ge.postRender(()=>o(t,Au(t)))}class pB extends aa{mount(){const{current:t}=this.node;if(!t)return;const{globalTapTarget:n,propagate:r}=this.node.props;this.unmount=$8(t,(s,o)=>(a2(this.node,o,"Start"),(u,{success:f})=>a2(this.node,u,f?"End":"Cancel")),{useGlobalTarget:n,stopPropagation:r?.tap===!1})}unmount(){}}const bv=new WeakMap,pg=new WeakMap,gB=e=>{const t=bv.get(e.target);t&&t(e)},yB=e=>{e.forEach(gB)};function vB({root:e,...t}){const n=e||document;pg.has(n)||pg.set(n,{});const r=pg.get(n),s=JSON.stringify(t);return r[s]||(r[s]=new IntersectionObserver(yB,{root:e,...t})),r[s]}function bB(e,t,n){const r=vB(t);return bv.set(e,n),r.observe(e),()=>{bv.delete(e),r.unobserve(e)}}const xB={some:0,all:1};class wB extends aa{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:s="some",once:o}=t,u={root:n?n.current:void 0,rootMargin:r,threshold:typeof s=="number"?s:xB[s]},f=d=>{const{isIntersecting:h}=d;if(this.isInView===h||(this.isInView=h,o&&!h&&this.hasEnteredView))return;h&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",h);const{onViewportEnter:m,onViewportLeave:p}=this.node.getProps(),v=h?m:p;v&&v(d)};return bB(this.node.current,u,f)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(_B(t,n))&&this.startObserver()}unmount(){}}function _B({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const SB={inView:{Feature:wB},tap:{Feature:pB},focus:{Feature:mB},hover:{Feature:hB}},AB={layout:{ProjectionNode:zN,MeasureLayout:WN}},TB={...YI,...SB,...dB,...AB},Tt=$I(TB,FI);function wo({id:e,title:t,subtitle:n,children:r,className:s="",wide:o=!1}){return b.jsx("section",{id:e,className:`pt-28 pb-20 px-4 sm:px-6 lg:px-8 ${s}`,children:b.jsxs("div",{className:`${o?"max-w-[1600px]":"max-w-7xl"} mx-auto`,children:[t&&b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0,margin:"-100px"},transition:{duration:.5},className:"text-center mb-12",children:[b.jsx("h2",{className:"text-3xl sm:text-4xl font-bold text-text-primary mb-3",children:t}),n&&b.jsx("p",{className:"text-lg text-text-secondary max-w-3xl mx-auto",children:n})]}),r]})})}function OB(){return b.jsx(wo,{id:"acknowledgements",title:"Contributions & Acknowledgements",subtitle:"",children:b.jsxs("div",{className:"max-w-3xl mx-auto space-y-8",children:[b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5},children:b.jsxs("div",{className:"rounded-xl border border-purple/30 bg-purple/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-purple-light mb-3",children:"Core Contributors"}),b.jsx("p",{className:"text-sm font-semibold text-text-primary",children:"Tara Bogavelli, Gabrielle Gauthier Melançon, Katrina Stankiewicz, Oluwanifemi Bamgbose, Hoang Nguyen, Raghav Mehndiratta, Hari Subramani"})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:b.jsxs("div",{className:"rounded-xl border border-blue/30 bg-blue/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-blue-light mb-2",children:"Secondary Contributors"}),b.jsx("p",{className:"text-sm text-text-secondary mb-3",children:"We thank the following individuals for their careful data review and thoughtful contributions to the framework."}),b.jsx("p",{className:"text-sm font-semibold text-text-primary",children:"Lindsay Brin, Akshay Kalkunte, Joseph Marinier, Jishnu Nair, Aman Tiwari"})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.2},children:b.jsxs("div",{className:"rounded-xl border border-amber/30 bg-amber/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-amber mb-2",children:"Management and Leadership"}),b.jsx("p",{className:"text-sm text-text-secondary mb-4",children:"We are grateful to the following individuals for their management, leadership, and support."}),b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Fanny Riols"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Research Scientist Manager"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Anil Madamala"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Director, Machine Learning Engineering Management"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Sridhar Nemala"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Senior Director, Machine Learning Engineering"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Srinivas Sunkara"}),b.jsx("span",{className:"text-xs text-text-muted",children:"VP, Research Engineering Management"})]})]})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.3},children:b.jsxs("div",{className:"rounded-xl border border-cyan/30 bg-cyan/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-cyan mb-2",children:"Upstream Contributors"}),b.jsxs("p",{className:"text-sm text-text-secondary",children:["We extend our thanks to the ",b.jsx("span",{className:"font-bold text-text-primary",children:"PAVA"})," and ",b.jsx("span",{className:"font-bold text-text-primary",children:"CLAE"})," teams whose prior work on evaluations and voice agents provided valuable inspiration for this project."]})]})}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.4},className:"rounded-xl border border-border-default bg-bg-secondary p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-text-primary mb-3",children:"Citation"}),b.jsx("pre",{className:"text-xs text-text-muted bg-bg-primary rounded-lg p-4 overflow-x-auto font-mono",children:`@misc{eva-2026, title={EVA: A New End-to-end Framework for Evaluating Voice Agents}, author={Bogavelli, Tara and Gauthier Melançon, Gabrielle and Stankiewicz, Katrina and Bamgbose, Oluwanifemi @@ -22,8 +22,9 @@ Error generating stack: `+c.message+` and Subramani, Hari}, year={2026}, url={https://github.com/ServiceNow/eva} -}`})]})]})})}function EB(){return b.jsx("section",{id:"hero",className:"pt-32 pb-20 px-4 sm:px-6 lg:px-8",children:b.jsxs("div",{className:"max-w-5xl mx-auto text-center",children:[b.jsxs("div",{children:[b.jsxs("h1",{className:"text-3xl sm:text-4xl lg:text-[2.75rem] font-extrabold mb-2 leading-tight bg-clip-text text-transparent",style:{backgroundImage:"linear-gradient(to right, #7C3AED, #818CF8, #60A5FA)"},children:["A New End-to-end Framework for",b.jsx("br",{}),"Evaluating Voice Agents (EVA)"]}),b.jsx("p",{className:"text-sm sm:text-base font-bold text-[#A78BFA] max-w-3xl mx-auto mb-2.5",children:"Tara Bogavelli, Gabrielle Gauthier Melançon, Katrina Stankiewicz, Oluwanifemi Bamgbose, Hoang Nguyen, Raghav Mehndiratta, Hari Subramani*"}),b.jsx("p",{className:"text-base sm:text-lg font-semibold text-text-secondary max-w-3xl mx-auto mb-4",children:"ServiceNow AI Research"}),b.jsx("p",{className:"text-base sm:text-lg text-text-muted max-w-3xl mx-auto mb-14 leading-relaxed",children:"An open-source evaluation framework that measures voice agents over complete, multi-turn spoken conversations using a realistic bot-to-bot architecture. EVA captures the compounding failure modes that component-level benchmarks miss."})]}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.6,delay:.2},className:"grid grid-cols-1 sm:grid-cols-2 gap-10 max-w-5xl mx-auto mb-14",children:[b.jsxs("div",{className:"flex flex-col",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary text-center mb-5",children:"Data"}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-7 flex-1 flex flex-col",children:[b.jsxs("div",{className:"flex items-center justify-center gap-3 mb-4",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg bg-amber/10 flex items-center justify-center flex-shrink-0",children:b.jsx(h6,{className:"w-5 h-5 text-amber"})}),b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"Airline"})]}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed mb-4 text-center",children:"Passengers calling to rebook disrupted flights — IRROPS rebooking, voluntary changes, cancellations, and vouchers."}),b.jsx("div",{className:"flex flex-wrap justify-center gap-1.5 mb-6",children:["IRROPS Rebooking","Voluntary Changes","Cancellations","Vouchers","Standby"].map(e=>b.jsx("span",{className:"px-2 py-0.5 rounded-full bg-amber/10 text-amber text-xs font-medium",children:e},e))}),b.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-3 mt-auto",children:[b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"15"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Tools"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"50"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Scenarios"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"3"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Trials each"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 flex flex-col items-center justify-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"150"}),b.jsxs("div",{className:"text-xs text-text-muted leading-tight text-center",children:["Simulated",b.jsx("br",{}),"Conversations"]})]})]}),b.jsx("p",{className:"text-sm font-bold text-text-primary text-center mt-4",children:"More domains coming soon!"})]})]}),b.jsxs("div",{className:"flex flex-col",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary text-center mb-5",children:"Evaluation Dimensions"}),b.jsxs("div",{className:"space-y-4 flex-1 flex flex-col",children:[b.jsxs("div",{className:"rounded-xl border border-purple/30 bg-purple/5 p-7 flex-1 flex flex-col items-center justify-center text-center",children:[b.jsx("div",{className:"text-sm font-semibold text-purple-light tracking-wide uppercase mb-1",children:"EVA-A"}),b.jsx("div",{className:"text-xl font-bold text-text-primary",children:"Accuracy"}),b.jsx("p",{className:"text-sm text-text-secondary mt-2",children:"Did the agent complete the task correctly?"})]}),b.jsxs("div",{className:"rounded-xl border border-blue/30 bg-blue/5 p-7 flex-1 flex flex-col items-center justify-center text-center",children:[b.jsx("div",{className:"text-sm font-semibold text-blue-light tracking-wide uppercase mb-1",children:"EVA-X"}),b.jsx("div",{className:"text-xl font-bold text-text-primary",children:"Experience"}),b.jsx("p",{className:"text-sm text-text-secondary mt-2",children:"Was the conversational experience high quality?"})]})]})]})]}),b.jsxs(Tt.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.6,delay:.4},className:"flex flex-wrap justify-center gap-3",children:[b.jsxs("a",{href:"https://github.com/ServiceNow/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-purple text-white font-medium text-sm hover:bg-purple-dim transition-colors",children:[b.jsx(r6,{className:"w-4 h-4"})," View on GitHub"]}),b.jsxs("a",{href:"https://huggingface.co/datasets/ServiceNow-AI/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-bg-tertiary text-text-primary font-medium text-sm hover:bg-bg-hover border border-border-default transition-colors",children:[b.jsx(JR,{className:"w-4 h-4"})," Dataset"]}),b.jsxs("a",{href:"https://huggingface.co/blog/ServiceNow-AI/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-bg-tertiary text-text-primary font-medium text-sm hover:bg-bg-hover border border-border-default transition-colors",children:[b.jsx(t6,{className:"w-4 h-4"})," Blog Post"]})]}),b.jsx("p",{className:"text-xs text-text-muted mt-6",children:"*Full list of contributors found in the Contributors tab"})]})})}function Fi({label:e,sublabel:t,color:n,delay:r=0}){return b.jsxs(Tt.div,{initial:{opacity:0,scale:.9},whileInView:{opacity:1,scale:1},viewport:{once:!0},transition:{duration:.4,delay:r},className:"relative rounded-xl border bg-bg-secondary px-6 py-5 text-center",style:{borderColor:n+"40"},children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:e}),t&&b.jsx("div",{className:"text-sm text-text-muted mt-1",children:t}),b.jsx("div",{className:"absolute inset-0 rounded-xl opacity-10",style:{background:`radial-gradient(ellipse at center, ${n}, transparent 70%)`}})]})}function Mn({color:e,className:t=""}){return b.jsx("div",{className:`mx-auto ${t}`,style:{width:"2px",background:`repeating-linear-gradient(to bottom, ${e}80 0px, ${e}80 6px, transparent 6px, transparent 10px)`}})}function gg({color:e,className:t=""}){return b.jsx("div",{className:t,style:{height:"2px",background:`repeating-linear-gradient(to right, ${e}80 0px, ${e}80 6px, transparent 6px, transparent 10px)`}})}function jB(){return b.jsx(wo,{id:"architecture",title:"Bot-to-Bot Architecture",subtitle:"EVA evaluates voice agents using realistic bot-to-bot audio conversations over WebSocket, then computes metrics independently on the validated conversations.",children:b.jsxs("div",{className:"max-w-5xl mx-auto relative",children:[b.jsx("div",{className:"flex justify-center px-4",children:b.jsx("div",{className:"w-full max-w-72",children:b.jsx(Fi,{label:"Evaluation Runner",sublabel:"Orchestrates parallel evaluation",color:"#8B5CF6",delay:0})})}),b.jsx(Mn,{color:"#8B5CF6",className:"h-8"}),b.jsx("div",{className:"flex justify-center px-4",children:b.jsx("div",{className:"w-full max-w-64",children:b.jsx(Fi,{label:"Conversation Worker",sublabel:"Per-scenario execution",color:"#8B5CF6",delay:.1})})}),b.jsx("div",{className:"hidden md:flex justify-center",children:b.jsxs("div",{className:"relative w-[60%]",children:[b.jsx(Mn,{color:"#8B5CF6",className:"h-5"}),b.jsx(gg,{color:"#8B5CF6",className:"w-full"}),b.jsxs("div",{className:"flex justify-between",children:[b.jsx(Mn,{color:"#38BDF8",className:"h-5"}),b.jsx(Mn,{color:"#8B5CF6",className:"h-5"})]})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#38BDF8",className:"h-8"})}),b.jsxs("div",{className:"hidden md:grid grid-cols-[1fr_auto_1fr] gap-4 items-start",children:[b.jsxs("div",{children:[b.jsx(Fi,{label:"User Simulator",color:"#38BDF8",delay:.2}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Scenario-specific"})," — Unique goal, specific decision logic, persona & constraints per conversation"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Human-like voice"})," — Conversational TTS"]})]})]}),b.jsxs("div",{className:"flex flex-col items-center justify-center pt-6 px-2",children:[b.jsxs("div",{className:"flex items-center justify-center",children:[b.jsx("span",{className:"text-cyan font-bold",children:"←"}),b.jsx("div",{style:{width:"56px",height:"2px",background:"repeating-linear-gradient(to right, #06B6D480 0px, #06B6D480 6px, transparent 6px, transparent 10px)"}}),b.jsx("span",{className:"text-cyan font-bold",children:"→"})]}),b.jsx("div",{className:"mt-2 px-3 py-1.5 rounded-full bg-cyan/10 border border-cyan/30 text-cyan text-xs font-medium whitespace-nowrap",children:"WebSocket Audio"})]}),b.jsxs("div",{children:[b.jsx(Fi,{label:"Voice Agent",sublabel:"Pipecat Server",color:"#8B5CF6",delay:.3}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Cascade Pipeline"})," — STT + LLM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Audio-native models"})," — S2S, LALM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Turn Detection"})," — Built-in Pipecat Silero VAD + Smart Turn Analyzer (unless overridden by external VAD)"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Tool Executor"})," — Dynamic python tools"]})]})]})]}),b.jsxs("div",{className:"md:hidden flex flex-col items-center gap-4",children:[b.jsxs("div",{className:"w-full max-w-sm",children:[b.jsx(Fi,{label:"User Simulator",color:"#38BDF8",delay:.2}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Scenario-specific"})," — Unique goal, decision logic, persona & constraints"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Human-like voice"})," — Conversational TTS"]})]})]}),b.jsxs("div",{className:"flex flex-col items-center py-2",children:[b.jsxs("div",{className:"flex flex-col items-center",children:[b.jsx("span",{className:"text-cyan font-bold",children:"↑"}),b.jsx("div",{style:{width:"2px",height:"36px",background:"repeating-linear-gradient(to bottom, #06B6D480 0px, #06B6D480 6px, transparent 6px, transparent 10px)"}}),b.jsx("span",{className:"text-cyan font-bold",children:"↓"})]}),b.jsx("div",{className:"mt-2 px-3 py-1.5 rounded-full bg-cyan/10 border border-cyan/30 text-cyan text-xs font-medium whitespace-nowrap",children:"WebSocket Audio"})]}),b.jsxs("div",{className:"w-full max-w-sm",children:[b.jsx(Fi,{label:"Voice Agent",sublabel:"Pipecat Server",color:"#8B5CF6",delay:.3}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Cascade Pipeline"})," — STT + LLM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Audio-native models"})," — S2S, LALM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Turn Detection"})," — VAD + Smart Turn Analyzer"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Tool Executor"})," — Dynamic python tools"]})]})]})]}),b.jsx("div",{className:"hidden md:flex justify-center mt-3",children:b.jsxs("div",{className:"relative w-[60%]",children:[b.jsxs("div",{className:"flex justify-between",children:[b.jsx(Mn,{color:"#F59E0B",className:"h-5"}),b.jsx(Mn,{color:"#F59E0B",className:"h-5"})]}),b.jsx(gg,{color:"#F59E0B",className:"w-full"})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#F59E0B",className:"h-8"})}),b.jsx("div",{className:"flex justify-center px-4 my-4 w-full",children:b.jsxs("div",{className:"flex flex-col md:flex-row items-stretch justify-center gap-4 md:gap-6 w-full max-w-md md:max-w-none md:w-auto",children:[b.jsxs("div",{className:"md:w-[250px] py-3 rounded-lg bg-bg-tertiary border border-border-default text-center",children:[b.jsx("div",{className:"text-sm font-medium text-text-primary",children:"Audio Files"}),b.jsx("div",{className:"text-xs text-text-muted mt-1",children:"WAV recordings (assistant, user, mixed)"})]}),b.jsxs("div",{className:"md:w-[250px] py-3 rounded-lg bg-bg-tertiary border border-border-default text-center",children:[b.jsx("div",{className:"text-sm font-medium text-text-primary",children:"Logs & Transcripts"}),b.jsx("div",{className:"text-xs text-text-muted mt-1",children:"audit_log.json, transcript.jsonl, events"})]})]})}),b.jsx("div",{className:"hidden md:flex justify-center",children:b.jsxs("div",{className:"relative",style:{width:"524px"},children:[b.jsxs("div",{className:"flex justify-between",style:{padding:"0 80px"},children:[b.jsx(Mn,{color:"#F59E0B",className:"h-5"}),b.jsx(Mn,{color:"#F59E0B",className:"h-5"})]}),b.jsx(gg,{color:"#F59E0B",className:"w-full"}),b.jsx(Mn,{color:"#F59E0B",className:"h-8"})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#F59E0B",className:"h-8"})}),b.jsx("div",{className:"flex justify-center px-4 -mt-2",children:b.jsx("div",{className:"w-full max-w-80",children:b.jsx(Fi,{label:"Validators",sublabel:"Reruns invalid conversations",color:"#F59E0B",delay:.4})})}),b.jsx(Mn,{color:"#F59E0B",className:"h-8"}),b.jsx("div",{className:"flex justify-center px-4",children:b.jsxs("div",{className:"w-full max-w-[28rem]",children:[b.jsx(Fi,{label:"Metrics Suite",sublabel:"Independent post-execution evaluation",color:"#F59E0B",delay:.5}),b.jsxs("div",{className:"grid grid-cols-3 gap-4 mt-5",children:[b.jsxs("div",{className:"rounded-xl border border-purple/25 bg-purple/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-purple-light",children:"EVA-A"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"3 accuracy metrics"})]}),b.jsxs("div",{className:"rounded-xl border border-blue/25 bg-blue/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-blue-light",children:"EVA-X"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"3 experience metrics"})]}),b.jsxs("div",{className:"rounded-xl border border-amber/25 bg-amber/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-amber",children:"Diagnostic"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"5 diagnostic metrics"})]})]})]})})]})})}const MB={deterministic:"Deterministic",llm_judge:"LLM Judge",lalm_judge:"Audio LLM Judge"},kB={deterministic:"#06B6D4",llm_judge:"#8B5CF6",lalm_judge:"#F59E0B"},Tu=[{id:"task_completion",displayName:"Task Completion",category:"eva-a",type:"deterministic",description:"Evaluates whether the agent correctly completed the task by comparing the expected end state of the scenario database against the actual end state after the conversation. This is a strict, deterministic comparison inspired by tau-bench-style evaluation.",inputs:"Initial scenario database state, final scenario database state, expected end state database",outputRange:"Binary: 0 (fail) or 1 (pass)",passThreshold:"1.0"},{id:"agent_tts_fidelity",displayName:"Agent Speech Fidelity",badge:"beta",category:"eva-a",type:"lalm_judge",judgeModel:"Gemini 3.1 Pro",judgeAccuracy:.8957,judgeScores:[{label:"accuracy",value:.8957,std:.0258},{label:"macro_f1_classes_0_1",value:.856,std:.024}],description:"Measures whether the agent correctly spoke the information it intended to communicate. TTS systems can mispronounce, skip, or distort words — in a voice context, if a confirmation code is not spoken correctly, the user cannot act on it regardless of whether the LLM produced the right answer.",inputs:"Agent audio recording, intended assistant text (what LLM generated)",outputRange:"Binary per turn (0=low fidelity, 1=high fidelity), aggregated as mean across turns",passThreshold:"≥ 0.95",judgePrompt:`You are an expert evaluator judging the fidelity of text-to-speech (TTS) audio against the intended text. You will listen to one audio clip and verify that the spoken content faithfully reproduces the intended text, with special attention to TTS-critical entities. - +}`})]})]})})}function EB(){return b.jsx("section",{id:"hero",className:"pt-32 pb-20 px-4 sm:px-6 lg:px-8",children:b.jsxs("div",{className:"max-w-5xl mx-auto text-center",children:[b.jsxs("div",{children:[b.jsxs("h1",{className:"text-3xl sm:text-4xl lg:text-[2.75rem] font-extrabold mb-2 leading-tight bg-clip-text text-transparent",style:{backgroundImage:"linear-gradient(to right, #7C3AED, #818CF8, #60A5FA)"},children:["A New End-to-end Framework for",b.jsx("br",{}),"Evaluating Voice Agents (EVA)"]}),b.jsx("p",{className:"text-sm sm:text-base font-bold text-[#A78BFA] max-w-3xl mx-auto mb-2.5",children:"Tara Bogavelli, Gabrielle Gauthier Melançon, Katrina Stankiewicz, Oluwanifemi Bamgbose, Hoang Nguyen, Raghav Mehndiratta, Hari Subramani*"}),b.jsx("p",{className:"text-base sm:text-lg font-semibold text-text-secondary max-w-3xl mx-auto mb-4",children:"ServiceNow AI Research"}),b.jsx("p",{className:"text-base sm:text-lg text-text-muted max-w-3xl mx-auto mb-14 leading-relaxed",children:"An open-source evaluation framework that measures voice agents over complete, multi-turn spoken conversations using a realistic bot-to-bot architecture. EVA captures the compounding failure modes that component-level benchmarks miss."})]}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.6,delay:.2},className:"grid grid-cols-1 sm:grid-cols-2 gap-10 max-w-5xl mx-auto mb-14",children:[b.jsxs("div",{className:"flex flex-col",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary text-center mb-5",children:"Data"}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-7 flex-1 flex flex-col",children:[b.jsxs("div",{className:"flex items-center justify-center gap-3 mb-4",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg bg-amber/10 flex items-center justify-center flex-shrink-0",children:b.jsx(h6,{className:"w-5 h-5 text-amber"})}),b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"Airline"})]}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed mb-4 text-center",children:"Passengers calling to rebook disrupted flights — IRROPS rebooking, voluntary changes, cancellations, and vouchers."}),b.jsx("div",{className:"flex flex-wrap justify-center gap-1.5 mb-6",children:["IRROPS Rebooking","Voluntary Changes","Cancellations","Vouchers","Standby"].map(e=>b.jsx("span",{className:"px-2 py-0.5 rounded-full bg-amber/10 text-amber text-xs font-medium",children:e},e))}),b.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-3 mt-auto",children:[b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"15"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Tools"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"50"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Scenarios"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"3"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Trials each"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 flex flex-col items-center justify-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"150"}),b.jsxs("div",{className:"text-xs text-text-muted leading-tight text-center",children:["Simulated",b.jsx("br",{}),"Conversations"]})]})]}),b.jsx("p",{className:"text-sm font-bold text-text-primary text-center mt-4",children:"More domains coming soon!"})]})]}),b.jsxs("div",{className:"flex flex-col",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary text-center mb-5",children:"Evaluation Dimensions"}),b.jsxs("div",{className:"space-y-4 flex-1 flex flex-col",children:[b.jsxs("div",{className:"rounded-xl border border-purple/30 bg-purple/5 p-7 flex-1 flex flex-col items-center justify-center text-center",children:[b.jsx("div",{className:"text-sm font-semibold text-purple-light tracking-wide uppercase mb-1",children:"EVA-A"}),b.jsx("div",{className:"text-xl font-bold text-text-primary",children:"Accuracy"}),b.jsx("p",{className:"text-sm text-text-secondary mt-2",children:"Did the agent complete the task correctly?"})]}),b.jsxs("div",{className:"rounded-xl border border-blue/30 bg-blue/5 p-7 flex-1 flex flex-col items-center justify-center text-center",children:[b.jsx("div",{className:"text-sm font-semibold text-blue-light tracking-wide uppercase mb-1",children:"EVA-X"}),b.jsx("div",{className:"text-xl font-bold text-text-primary",children:"Experience"}),b.jsx("p",{className:"text-sm text-text-secondary mt-2",children:"Was the conversational experience high quality?"})]})]})]})]}),b.jsxs(Tt.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.6,delay:.4},className:"flex flex-wrap justify-center gap-3",children:[b.jsxs("a",{href:"https://github.com/ServiceNow/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-purple text-white font-medium text-sm hover:bg-purple-dim transition-colors",children:[b.jsx(r6,{className:"w-4 h-4"})," View on GitHub"]}),b.jsxs("a",{href:"https://huggingface.co/datasets/ServiceNow-AI/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-bg-tertiary text-text-primary font-medium text-sm hover:bg-bg-hover border border-border-default transition-colors",children:[b.jsx(e6,{className:"w-4 h-4"})," Dataset"]}),b.jsxs("a",{href:"https://huggingface.co/blog/ServiceNow-AI/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-bg-tertiary text-text-primary font-medium text-sm hover:bg-bg-hover border border-border-default transition-colors",children:[b.jsx(oM,{className:"w-4 h-4"})," Blog Post"]})]}),b.jsx("p",{className:"text-xs text-text-muted mt-6",children:"*Full list of contributors found in the Contributors tab"})]})})}function Fi({label:e,sublabel:t,color:n,delay:r=0}){return b.jsxs(Tt.div,{initial:{opacity:0,scale:.9},whileInView:{opacity:1,scale:1},viewport:{once:!0},transition:{duration:.4,delay:r},className:"relative rounded-xl border bg-bg-secondary px-6 py-5 text-center",style:{borderColor:n+"40"},children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:e}),t&&b.jsx("div",{className:"text-sm text-text-muted mt-1",children:t}),b.jsx("div",{className:"absolute inset-0 rounded-xl opacity-10",style:{background:`radial-gradient(ellipse at center, ${n}, transparent 70%)`}})]})}function Mn({color:e,className:t=""}){return b.jsx("div",{className:`mx-auto ${t}`,style:{width:"2px",background:`repeating-linear-gradient(to bottom, ${e}80 0px, ${e}80 6px, transparent 6px, transparent 10px)`}})}function gg({color:e,className:t=""}){return b.jsx("div",{className:t,style:{height:"2px",background:`repeating-linear-gradient(to right, ${e}80 0px, ${e}80 6px, transparent 6px, transparent 10px)`}})}function jB(){return b.jsx(wo,{id:"architecture",title:"Bot-to-Bot Architecture",subtitle:"EVA evaluates voice agents using realistic bot-to-bot audio conversations over WebSocket, then computes metrics independently on the validated conversations.",children:b.jsxs("div",{className:"max-w-5xl mx-auto relative",children:[b.jsx("div",{className:"flex justify-center px-4",children:b.jsx("div",{className:"w-full max-w-72",children:b.jsx(Fi,{label:"Evaluation Runner",sublabel:"Orchestrates parallel evaluation",color:"#8B5CF6",delay:0})})}),b.jsx(Mn,{color:"#8B5CF6",className:"h-8"}),b.jsx("div",{className:"flex justify-center px-4",children:b.jsx("div",{className:"w-full max-w-64",children:b.jsx(Fi,{label:"Conversation Worker",sublabel:"Per-scenario execution",color:"#8B5CF6",delay:.1})})}),b.jsx("div",{className:"hidden md:flex justify-center",children:b.jsxs("div",{className:"relative w-[60%]",children:[b.jsx(Mn,{color:"#8B5CF6",className:"h-5"}),b.jsx(gg,{color:"#8B5CF6",className:"w-full"}),b.jsxs("div",{className:"flex justify-between",children:[b.jsx(Mn,{color:"#38BDF8",className:"h-5"}),b.jsx(Mn,{color:"#8B5CF6",className:"h-5"})]})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#38BDF8",className:"h-8"})}),b.jsxs("div",{className:"hidden md:grid grid-cols-[1fr_auto_1fr] gap-4 items-start",children:[b.jsxs("div",{children:[b.jsx(Fi,{label:"User Simulator",color:"#38BDF8",delay:.2}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Scenario-specific"})," — Unique goal, specific decision logic, persona & constraints per conversation"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Human-like voice"})," — Conversational TTS"]})]})]}),b.jsxs("div",{className:"flex flex-col items-center justify-center pt-6 px-2",children:[b.jsxs("div",{className:"flex items-center justify-center",children:[b.jsx("span",{className:"text-cyan font-bold",children:"←"}),b.jsx("div",{style:{width:"56px",height:"2px",background:"repeating-linear-gradient(to right, #06B6D480 0px, #06B6D480 6px, transparent 6px, transparent 10px)"}}),b.jsx("span",{className:"text-cyan font-bold",children:"→"})]}),b.jsx("div",{className:"mt-2 px-3 py-1.5 rounded-full bg-cyan/10 border border-cyan/30 text-cyan text-xs font-medium whitespace-nowrap",children:"WebSocket Audio"})]}),b.jsxs("div",{children:[b.jsx(Fi,{label:"Voice Agent",sublabel:"Pipecat Server",color:"#8B5CF6",delay:.3}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Cascade Pipeline"})," — STT + LLM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Audio-native models"})," — S2S, LALM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Turn Detection"})," — Built-in Pipecat Silero VAD + Smart Turn Analyzer (unless overridden by external VAD)"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Tool Executor"})," — Dynamic python tools"]})]})]})]}),b.jsxs("div",{className:"md:hidden flex flex-col items-center gap-4",children:[b.jsxs("div",{className:"w-full max-w-sm",children:[b.jsx(Fi,{label:"User Simulator",color:"#38BDF8",delay:.2}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Scenario-specific"})," — Unique goal, decision logic, persona & constraints"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Human-like voice"})," — Conversational TTS"]})]})]}),b.jsxs("div",{className:"flex flex-col items-center py-2",children:[b.jsxs("div",{className:"flex flex-col items-center",children:[b.jsx("span",{className:"text-cyan font-bold",children:"↑"}),b.jsx("div",{style:{width:"2px",height:"36px",background:"repeating-linear-gradient(to bottom, #06B6D480 0px, #06B6D480 6px, transparent 6px, transparent 10px)"}}),b.jsx("span",{className:"text-cyan font-bold",children:"↓"})]}),b.jsx("div",{className:"mt-2 px-3 py-1.5 rounded-full bg-cyan/10 border border-cyan/30 text-cyan text-xs font-medium whitespace-nowrap",children:"WebSocket Audio"})]}),b.jsxs("div",{className:"w-full max-w-sm",children:[b.jsx(Fi,{label:"Voice Agent",sublabel:"Pipecat Server",color:"#8B5CF6",delay:.3}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Cascade Pipeline"})," — STT + LLM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Audio-native models"})," — S2S, LALM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Turn Detection"})," — VAD + Smart Turn Analyzer"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Tool Executor"})," — Dynamic python tools"]})]})]})]}),b.jsx("div",{className:"hidden md:flex justify-center mt-3",children:b.jsxs("div",{className:"relative w-[60%]",children:[b.jsxs("div",{className:"flex justify-between",children:[b.jsx(Mn,{color:"#F59E0B",className:"h-5"}),b.jsx(Mn,{color:"#F59E0B",className:"h-5"})]}),b.jsx(gg,{color:"#F59E0B",className:"w-full"})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#F59E0B",className:"h-8"})}),b.jsx("div",{className:"flex justify-center px-4 my-4 w-full",children:b.jsxs("div",{className:"flex flex-col md:flex-row items-stretch justify-center gap-4 md:gap-6 w-full max-w-md md:max-w-none md:w-auto",children:[b.jsxs("div",{className:"md:w-[250px] py-3 rounded-lg bg-bg-tertiary border border-border-default text-center",children:[b.jsx("div",{className:"text-sm font-medium text-text-primary",children:"Audio Files"}),b.jsx("div",{className:"text-xs text-text-muted mt-1",children:"WAV recordings (assistant, user, mixed)"})]}),b.jsxs("div",{className:"md:w-[250px] py-3 rounded-lg bg-bg-tertiary border border-border-default text-center",children:[b.jsx("div",{className:"text-sm font-medium text-text-primary",children:"Logs & Transcripts"}),b.jsx("div",{className:"text-xs text-text-muted mt-1",children:"audit_log.json, transcript.jsonl, events"})]})]})}),b.jsx("div",{className:"hidden md:flex justify-center",children:b.jsxs("div",{className:"relative",style:{width:"524px"},children:[b.jsxs("div",{className:"flex justify-between",style:{padding:"0 80px"},children:[b.jsx(Mn,{color:"#F59E0B",className:"h-5"}),b.jsx(Mn,{color:"#F59E0B",className:"h-5"})]}),b.jsx(gg,{color:"#F59E0B",className:"w-full"}),b.jsx(Mn,{color:"#F59E0B",className:"h-8"})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#F59E0B",className:"h-8"})}),b.jsx("div",{className:"flex justify-center px-4 -mt-2",children:b.jsx("div",{className:"w-full max-w-80",children:b.jsx(Fi,{label:"Validators",sublabel:"Reruns invalid conversations",color:"#F59E0B",delay:.4})})}),b.jsx(Mn,{color:"#F59E0B",className:"h-8"}),b.jsx("div",{className:"flex justify-center px-4",children:b.jsxs("div",{className:"w-full max-w-[28rem]",children:[b.jsx(Fi,{label:"Metrics Suite",sublabel:"Independent post-execution evaluation",color:"#F59E0B",delay:.5}),b.jsxs("div",{className:"grid grid-cols-3 gap-4 mt-5",children:[b.jsxs("div",{className:"rounded-xl border border-purple/25 bg-purple/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-purple-light",children:"EVA-A"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"3 accuracy metrics"})]}),b.jsxs("div",{className:"rounded-xl border border-blue/25 bg-blue/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-blue-light",children:"EVA-X"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"3 experience metrics"})]}),b.jsxs("div",{className:"rounded-xl border border-amber/25 bg-amber/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-amber",children:"Diagnostic"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"5 diagnostic metrics"})]})]})]})})]})})}const MB={deterministic:"Deterministic",llm_judge:"LLM Judge",lalm_judge:"Audio LLM Judge"},NB={deterministic:"#06B6D4",llm_judge:"#8B5CF6",lalm_judge:"#F59E0B"},Tu=[{id:"task_completion",displayName:"Task Completion",category:"eva-a",type:"deterministic",description:"Evaluates whether the agent correctly completed the task by comparing the expected end state of the scenario database against the actual end state after the conversation. This is a strict, deterministic comparison inspired by tau-bench-style evaluation.",inputs:"Initial scenario database state, final scenario database state, expected end state database",outputRange:"Binary: 0 (fail) or 1 (pass)",passThreshold:"1.0"},{id:"agent_tts_fidelity",displayName:"Agent Speech Fidelity",badge:"beta",category:"eva-a",type:"lalm_judge",judgeModel:"Gemini 3.1 Pro",judgeAccuracy:.8957,judgeScores:[{label:"accuracy",value:.8957,std:.0258},{label:"macro_f1",value:.856,std:.024}],description:"Measures whether the agent correctly spoke the information it intended to communicate. TTS systems can mispronounce, skip, or distort words — in a voice context, if a confirmation code is not spoken correctly, the user cannot act on it regardless of whether the LLM produced the right answer.",inputs:"Agent audio recording, intended assistant text (what LLM generated)",outputRange:"Binary per turn (0=low fidelity, 1=high fidelity), aggregated as mean across turns",passThreshold:"≥ 0.95",judgePrompt:`You are an expert evaluator judging the fidelity of this audio file against the intended text. +You will listen to one audio clip and verify that the spoken content faithfully reproduces the intended text, with special attention to TTS-critical entities. +The audio provided is a recording of the agent's side of a conversation, and contains only the agent responses, not the user. ## Intended Turns {intended_turns_formatted} @@ -40,16 +41,9 @@ The intended text may contain non-spoken tags and markers. You must understand t Tags like [slow], [firm], [annoyed] describe how the words were meant to be spoken. They are NOT spoken aloud and should never be expected in the audio. ### Interruption Tags -These are metadata markers inserted during post-processing to describe what happened in the conversation. They are NOT spoken aloud. Never penalize the audio for not containing these tags. -The tags also tell you that certain portions of the intended text were likely never spoken, because the speaker was interrupted or cut themselves off. Do NOT penalize for missing words that fall in a region the tags indicate was not spoken. +{interruption_tags_reference} -Tag definitions: -• [assistant interrupts] — The agent started speaking over the user. Text after this tag in the user's intended text may have been partially or fully drowned out by the agent speaking. Expect that some words after this tag may be missing or garbled in the audio. -• [user interrupts] — The user started speaking over the agent. Text after this tag in the agent's intended text may have been partially or fully spoken before the agent yielded the floor. Expect that some words after this tag may be missing. -• [likely cut off by user] — In agent intended text, marks approximately where the agent's speech was cut off by the user. Text BEFORE this tag was likely cut off at some point — the speaker may not have finished everything before it. Text AFTER this tag was most likely said (the agent resumed after the interruption). Do not penalize for missing words before this tag. -• [speaker likely cut itself off] — The agent stopped talking on its own, probably because it detected the user was speaking. Words before this tag were probably not all said. The text after this tag is what the agent said after resuming. Do not penalize for missing words before this tag. -• [likely interruption] — An unexplained break in the speaker's audio. Words around this boundary may be missing or fragmented. -• [assistant starts replying - user interrupts] — In user intended text, the user was speaking, the agent began to reply, and the user interrupted the agent. Text around this boundary may have overlapping speech. Some words near this tag may be missing or garbled. +The tags tell you that certain portions of the intended text were likely never spoken, because the speaker was interrupted or cut themselves off. Do NOT penalize for missing words that fall in a region the tags indicate was not spoken. **Key principle:** If a tag indicates that a section of text was likely not spoken aloud (due to interruption or cut-off), do NOT penalize for those words being missing from the audio. Only evaluate fidelity for words that were reasonably expected to have been spoken. @@ -82,8 +76,6 @@ For each intended turn, compare what you hear in the audio against the intended - Non-spoken tags: [slow], [firm], [annoyed], and all interruption tags listed above - Words in regions flagged by interruption tags as likely not spoken -**IMPORTANT: Only rate what you clearly hear.** If you cannot clearly make out a word or entity, note the uncertainty in your explanation rather than guessing. Do not fabricate or assume what was spoken. - ## Rating Scale (per turn) - **1 (High Fidelity)**: All entities are spoken correctly. Non-entity words are faithfully reproduced with no meaningful omissions or additions. - **0 (Low Fidelity)**: One or more entity errors, OR significant non-entity word errors that change the meaning of the turn. @@ -94,12 +86,13 @@ Respond with a JSON object. Each turn entry must include the turn_id matching th "turns": [ {{ "turn_id": , + "transcript": "explanation": "", "rating": <0 or 1> }} ], "explanation": "" -}}`},{id:"faithfulness",displayName:"Faithfulness",category:"eva-a",type:"llm_judge",judgeModel:"Claude Opus 4.6",judgeAccuracy:.7672,judgeScores:[{label:"accuracy",value:.8394,std:.0292},{label:"macro_f1",value:.8065,std:.0286}],description:"Measures whether the agent's responses were consistent with its instructions, provided policy, user inputs, and tool call results. Evaluates across 5 dimensions: fabricating tool parameters, misrepresenting tool results, violating policies, failing to disambiguate, and hallucination.",inputs:"Agent role, agent instructions, available tools, current date/time, full conversation trace with tool calls",outputRange:"1-3 scale, normalized to 0-1 (1=unfaithful, 2=partially faithful, 3=fully faithful)",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator analyzing whether a voice assistant remains faithful to information, policies, and instructions throughout a conversation. You will evaluate the conversation across five dimensions, each scored as a binary flag (true = issue present, false = no issue). +}}`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/agent_speech_fidelity_development.md"},{id:"faithfulness",displayName:"Faithfulness",category:"eva-a",type:"llm_judge",judgeModel:"Claude Opus 4.6",judgeAccuracy:.7672,judgeScores:[{label:"accuracy",value:.8394,std:.0292},{label:"macro_f1",value:.8065,std:.0286}],description:"Measures whether the agent's responses were consistent with its instructions, provided policy, user inputs, and tool call results. Evaluates across 5 dimensions: fabricating tool parameters, misrepresenting tool results, violating policies, failing to disambiguate, and hallucination.",inputs:"Agent role, agent instructions, available tools, current date/time, full conversation trace with tool calls",outputRange:"1-3 scale, normalized to 0-1 (1=unfaithful, 2=partially faithful, 3=fully faithful)",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator analyzing whether a voice assistant remains faithful to information, policies, and instructions throughout a conversation. You will evaluate the conversation across five dimensions, each scored as a binary flag (true = issue present, false = no issue). Each dimension evaluates a **different type of faithfulness violation**. Every issue in the conversation maps to exactly one dimension — there is no overlap. @@ -288,7 +281,7 @@ Respond in JSON format: }} }}, "rating": -}}`},{id:"turn_taking",displayName:"Turn Taking",badge:"beta",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",description:"Measures whether the agent spoke at the right time — not interrupting the user during speech, but also not introducing excessive silence. Early responses cut off users; late responses make interactions feel unresponsive.",inputs:"Segment transitions with latencies, interruption flags, user/assistant transcripts (expected + heard)",outputRange:"-1 to +1 per turn (-1=early/interrupting, 0=on-time, +1=late), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`ROLE +}}`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/faithfulness_development.md"},{id:"turn_taking",displayName:"Turn Taking",badge:"beta",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",description:"Measures whether the agent spoke at the right time — not interrupting the user during speech, but also not introducing excessive silence. Early responses cut off users; late responses make interactions feel unresponsive.",inputs:"Segment transitions with latencies, interruption flags, user/assistant transcripts (expected + heard)",outputRange:"-1 to +1 per turn (-1=early/interrupting, 0=on-time, +1=late), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`ROLE You are a judge evaluating a voice agent conversation transcript for turn-taking accuracy: Did the agent take the floor at the correct time after the user finished? You will work from text transcripts, timestamps, and metadata tags — not audio. @@ -460,7 +453,7 @@ Return a JSON array with one object per turn: {{"turn_id": 2, "explanation": "...", "label": "Early / Interrupting", "rating": -1}} ] Make sure to use the same turn ids as provided in the conversation context. It typically starts at 1. -The length of the array must equal the number of assistant turns in the conversation.`},{id:"conciseness",displayName:"Conciseness",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.9226,judgeScores:[{label:"accuracy",value:.9226,std:.0076},{label:"macro_f1",value:.8375,std:.0112}],description:"Measures whether the agent's responses were appropriately brief and focused for spoken delivery. In voice, users cannot skim, re-read, or scroll back — presenting too many options, asking multiple questions per turn, or including unnecessary hedging degrades the interaction.",inputs:"Full conversation trace with all turns",outputRange:"1-3 per turn (1=verbose, 2=adequate, 3=concise), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator judging the conciseness and voice-appropriateness of assistant responses in a voice conversation. +The length of the array must equal the number of assistant turns in the conversation.`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/turn_taking_development.md"},{id:"conciseness",displayName:"Conciseness",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.9226,judgeScores:[{label:"accuracy",value:.9226,std:.0076},{label:"macro_f1",value:.8375,std:.0112}],description:"Measures whether the agent's responses were appropriately brief and focused for spoken delivery. In voice, users cannot skim, re-read, or scroll back — presenting too many options, asking multiple questions per turn, or including unnecessary hedging degrades the interaction.",inputs:"Full conversation trace with all turns",outputRange:"1-3 per turn (1=verbose, 2=adequate, 3=concise), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator judging the conciseness and voice-appropriateness of assistant responses in a voice conversation. ## Conversation {conversation_turns} @@ -563,7 +556,7 @@ Provide your response as a valid JSON array, one entry per turn. Each entry must }} ] -If the turn is rated 3 or null, failure_modes must be an empty list: [].`},{id:"conversation_progression",displayName:"Conversation Progression",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.799,judgeScores:[{label:"accuracy",value:.799,std:.0112},{label:"macro_f1",value:.7817,std:.0128}],description:"Measures whether the agent moved the conversation forward effectively — avoiding unnecessary repetition, retaining context across turns, and driving toward task completion without stalling.",inputs:"Full conversation trace",outputRange:"1-3 (1=clear progression issues, 2=minor issues, 3=smooth progression), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator analyzing whether a voice assistant effectively moved a conversation forward. You will evaluate the conversation across four dimensions, each scored as a binary flag (true = issue present, false = no issue). +If the turn is rated 3 or null, failure_modes must be an empty list: [].`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/conciseness_development.md"},{id:"conversation_progression",displayName:"Conversation Progression",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.799,judgeScores:[{label:"accuracy",value:.799,std:.0112},{label:"macro_f1",value:.7817,std:.0128}],description:"Measures whether the agent moved the conversation forward effectively — avoiding unnecessary repetition, retaining context across turns, and driving toward task completion without stalling.",inputs:"Full conversation trace",outputRange:"1-3 (1=clear progression issues, 2=minor issues, 3=smooth progression), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator analyzing whether a voice assistant effectively moved a conversation forward. You will evaluate the conversation across four dimensions, each scored as a binary flag (true = issue present, false = no issue). Each dimension evaluates a **different type of action**. Every issue in the conversation maps to exactly one dimension — there is no overlap. Ensure to consider both the assistant agent instructions and the following agent dimensions when evaluating the conversation. @@ -718,7 +711,7 @@ Respond in JSON format. The "evidence" field must ALWAYS contain 1-2 sentences r }} }}, "rating": -}}`},{id:"authentication_success",displayName:"Authentication Success",category:"debug",type:"deterministic",description:"Checks whether the agent successfully authenticated the user by verifying identity through required credentials (e.g., confirmation number, last name).",inputs:"Audit log tool calls, expected authentication parameters",outputRange:"Binary: 0 (fail) or 1 (pass)"},{id:"response_speed",displayName:"Response Speed",category:"debug",type:"deterministic",description:"Measures the elapsed time in seconds between the user's last audio and the agent's first audio response. A direct measurement of end-to-end latency.",inputs:"Audio timestamp data from pipeline events",outputRange:"Seconds (lower is better). Normalized: (5.0 - clamped_speed) / 3.0 for scores in 0-1 range"},{id:"stt_wer",displayName:"STT Accuracy (WER)",category:"debug",type:"deterministic",description:"Speech-to-Text Word Error Rate computed using jiwer. Measures overall transcription quality by comparing what the user intended to say against what the agent's STT system actually transcribed. Score is reported as accuracy (1 - WER, clamped to 0-1).",inputs:"Intended user turns (TTS text), transcribed user turns (STT output)",outputRange:"Accuracy 0-1 (1.0 = perfect transcription, 0.0 = completely wrong)"},{id:"tool_call_validity",displayName:"Tool Call Validity",category:"debug",type:"deterministic",description:"Checks whether all tool calls made by the agent used valid tool names and provided required parameters according to the tool schema.",inputs:"Audit log tool calls, agent tool definitions",outputRange:"Binary: 0 (invalid calls present) or 1 (all calls valid)"},{id:"transcription_accuracy_key_entities",displayName:"Key Entity Transcription",category:"debug",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.9453,judgeScores:[{label:"entity_f1_lenient",value:.9453,std:.0031},{label:"correctness_with_penalty",value:.8623,std:.0081}],description:"Evaluates whether the agent correctly transcribed key named entities from user speech — confirmation codes, names, flight numbers, dates, and similar entities where transcription errors are conversation-ending rather than merely cosmetic.",inputs:"User intended speech text (what TTS was asked to say), agent's transcription of user speech",outputRange:"Ratio 0-1 (proportion of correctly transcribed entities across all turns)",judgePrompt:`You are an expert evaluator analyzing Speech-to-Text (STT) transcription accuracy for key entities across an entire conversation. +}}`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/conversation_progression_development.md"},{id:"authentication_success",displayName:"Authentication Success",category:"debug",type:"deterministic",description:"Checks whether the agent successfully authenticated the user by verifying identity through required credentials (e.g., confirmation number, last name).",inputs:"Audit log tool calls, expected authentication parameters",outputRange:"Binary: 0 (fail) or 1 (pass)"},{id:"response_speed",displayName:"Response Speed",category:"debug",type:"deterministic",description:"Measures the elapsed time in seconds between the user's last audio and the agent's first audio response. A direct measurement of end-to-end latency.",inputs:"Audio timestamp data from pipeline events",outputRange:"Seconds (lower is better). Normalized: (5.0 - clamped_speed) / 3.0 for scores in 0-1 range"},{id:"stt_wer",displayName:"STT Accuracy (WER)",category:"debug",type:"deterministic",description:"Speech-to-Text Word Error Rate computed using jiwer. Measures overall transcription quality by comparing what the user intended to say against what the agent's STT system actually transcribed. Score is reported as accuracy (1 - WER, clamped to 0-1).",inputs:"Intended user turns (TTS text), transcribed user turns (STT output)",outputRange:"Accuracy 0-1 (1.0 = perfect transcription, 0.0 = completely wrong)"},{id:"tool_call_validity",displayName:"Tool Call Validity",category:"debug",type:"deterministic",description:"Checks whether all tool calls made by the agent used valid tool names and provided required parameters according to the tool schema.",inputs:"Audit log tool calls, agent tool definitions",outputRange:"Binary: 0 (invalid calls present) or 1 (all calls valid)"},{id:"transcription_accuracy_key_entities",displayName:"Key Entity Transcription",category:"debug",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.9453,judgeScores:[{label:"entity_f1_lenient",value:.9453,std:.0031},{label:"correctness_with_penalty",value:.8623,std:.0081}],description:"Evaluates whether the agent correctly transcribed key named entities from user speech — confirmation codes, names, flight numbers, dates, and similar entities where transcription errors are conversation-ending rather than merely cosmetic.",inputs:"User intended speech text (what TTS was asked to say), agent's transcription of user speech",outputRange:"Ratio 0-1 (proportion of correctly transcribed entities across all turns)",judgePrompt:`You are an expert evaluator analyzing Speech-to-Text (STT) transcription accuracy for key entities across an entire conversation. Your task: 1. For EACH user turn, identify all key entities in the EXPECTED text @@ -879,7 +872,7 @@ Transcribed: \`My phone number is 404-555.\` ], "summary": "<1-2 sentence summary for this turn>" }} -]`},{id:"user_behavioral_fidelity",displayName:"User Behavioral Fidelity",category:"validation",type:"llm_judge",judgeModel:"GPT-5.2",description:"Determines whether the simulated user's behavior corrupted the voice agent evaluation — specifically, whether the user's actions led to the database being in a different state than it should be, or prevented the agent from completing actions it otherwise would have.",inputs:"Agent-side transcript with tool calls, user-side text (ground truth), user goal, user persona, modification tools list",outputRange:"Binary: 0 (corrupted) or 1 (clean)",judgePrompt:`You are an expert evaluator determining whether a simulated user's behavior has corrupted the voice agent evaluation. +]`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/transcription_accuracy_key_entities.md"},{id:"user_behavioral_fidelity",displayName:"User Behavioral Fidelity",category:"validation",type:"llm_judge",judgeModel:"GPT-5.2",description:"Determines whether the simulated user's behavior corrupted the voice agent evaluation — specifically, whether the user's actions led to the database being in a different state than it should be, or prevented the agent from completing actions it otherwise would have.",inputs:"Agent-side transcript with tool calls, user-side text (ground truth), user goal, user persona, modification tools list",outputRange:"Binary: 0 (corrupted) or 1 (clean)",judgePrompt:`You are an expert evaluator determining whether a simulated user's behavior has corrupted the voice agent evaluation. Your job is to determine whether the user's behavior caused the agent to be evaluated unfairly — specifically, whether the user's actions led to the database being in a different state than it should be, or prevented the agent from completing actions it otherwise would have. @@ -1031,10 +1024,10 @@ Respond with a JSON object. Each turn entry must include the turn_id matching th "rating": <1, 2, 3> }} ] -}}`}],NB=Tu.filter(e=>e.category==="eva-a"),CB=Tu.filter(e=>e.category==="eva-x"),sT=Tu.filter(e=>e.category==="debug"),oT=Tu.filter(e=>e.category==="validation");Tu.filter(e=>e.type==="llm_judge"||e.type==="lalm_judge");function DB({prompt:e,model:t}){const[n,r]=A.useState(!1),s=A.useCallback(()=>r(!1),[]);return A.useEffect(()=>{if(!n)return;const o=u=>{u.key==="Escape"&&s()};return document.addEventListener("keydown",o),document.body.style.overflow="hidden",()=>{document.removeEventListener("keydown",o),document.body.style.overflow=""}},[n,s]),b.jsxs(b.Fragment,{children:[b.jsxs("button",{onClick:()=>r(!0),className:"mt-3 flex items-center gap-1.5 text-xs font-medium text-purple-light hover:text-purple transition-colors",children:["View Judge Prompt",t&&b.jsxs("span",{className:"text-text-muted",children:["(",t,")"]})]}),n&&b.jsxs("div",{className:"fixed inset-0 z-[100] flex items-center justify-center p-4",onClick:o=>{o.target===o.currentTarget&&s()},children:[b.jsx("div",{className:"absolute inset-0 bg-black/70 backdrop-blur-sm"}),b.jsxs("div",{className:"relative w-full max-w-4xl max-h-[85vh] flex flex-col rounded-xl border border-border-default bg-bg-primary shadow-2xl",children:[b.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-border-default flex-shrink-0",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary",children:"Judge Prompt"}),t&&b.jsxs("div",{className:"text-xs text-text-muted mt-0.5",children:["Model: ",t]})]}),b.jsx("button",{onClick:s,className:"p-1.5 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(uM,{className:"w-5 h-5"})})]}),b.jsx("div",{className:"overflow-y-auto flex-1",children:b.jsx("pre",{className:"px-6 py-5 text-[13px] leading-relaxed text-text-primary font-mono whitespace-pre-wrap break-words",children:e})})]})]})]})}const PB={deterministic:ZR,llm_judge:oM,lalm_judge:Gy};function mf({metric:e}){const[t,n]=A.useState(!1),[r,s]=A.useState(!1),o=PB[e.type],u=kB[e.type];return b.jsxs(Tt.div,{layout:!0,className:"rounded-xl border border-border-default bg-bg-secondary overflow-hidden",children:[b.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center justify-between p-5 text-left hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{className:"flex items-center gap-3",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center flex-shrink-0",style:{backgroundColor:u+"20"},children:b.jsx(o,{className:"w-5 h-5",style:{color:u}})}),b.jsxs("div",{children:[b.jsxs("div",{className:"text-base font-semibold text-text-primary",children:[e.displayName,e.badge&&b.jsx("span",{className:"ml-2 text-[10px] px-1.5 py-0.5 rounded-full bg-amber/10 text-amber border border-amber/20 font-medium uppercase align-middle",children:e.badge})]}),b.jsxs("div",{className:"text-xs font-medium mt-0.5",style:{color:u},children:[MB[e.type],e.judgeModel&&b.jsxs("span",{className:"text-text-muted",children:[" · ",e.judgeModel]})]})]})]}),b.jsx(ai,{className:`w-5 h-5 text-text-muted transition-transform ${t?"rotate-180":""}`})]}),b.jsx(KA,{children:t&&b.jsx(Tt.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:b.jsxs("div",{className:"px-5 pb-5 space-y-4",children:[b.jsx("div",{className:"border-t border-border-default pt-4",children:b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:e.description})}),b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Inputs"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.inputs})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Output"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.outputRange})]}),e.passThreshold&&b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Pass Threshold"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.passThreshold})]})]}),e.judgePrompt&&b.jsx(DB,{prompt:e.judgePrompt,model:e.judgeModel}),e.judgeScores&&e.judgeScores.length>0&&b.jsxs("div",{className:"rounded-lg border border-border-default overflow-hidden",children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center justify-between px-4 py-3 text-left hover:bg-bg-hover/30 transition-colors",children:[b.jsx("div",{className:"text-sm font-semibold text-text-secondary",children:"Judge Accuracy"}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${r?"rotate-180":""}`})]}),b.jsx(KA,{children:r&&b.jsx(Tt.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.15},className:"overflow-hidden",children:b.jsxs("div",{className:"px-4 pb-4 space-y-3",children:[b.jsx("div",{className:"border-t border-border-default pt-3",children:b.jsx("div",{className:"flex flex-wrap gap-3",children:e.judgeScores.map(({label:f,value:d,std:h})=>b.jsxs("div",{className:"flex items-center gap-2 rounded-lg bg-bg-primary px-3 py-2",children:[b.jsx("span",{className:"text-xs text-text-muted font-mono",children:f}),b.jsxs("span",{className:"text-sm font-semibold text-text-primary",children:[(d*100).toFixed(1),"%",h!=null&&b.jsxs("span",{className:"text-text-muted font-normal text-xs ml-1",children:["(±",(h*100).toFixed(1),"%)"]})]})]},f))})}),e.judgeDevelopmentNotes?b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:e.judgeDevelopmentNotes}):b.jsx("p",{className:"text-sm text-text-muted italic"})]})})})]})]})})})]})}function RB(){const[e,t]=A.useState(!1);return b.jsxs(wo,{id:"metrics",title:"Evaluation Methodology",subtitle:"EVA produces two fundamental scores composed of multiple sub-metrics. Click any metric to explore what it measures, its inputs, and the judge prompt.",children:[b.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-8",children:[b.jsxs(Tt.div,{initial:{opacity:0,x:-20},whileInView:{opacity:1,x:0},viewport:{once:!0},transition:{duration:.5},children:[b.jsxs("div",{className:"rounded-xl border-2 border-purple/30 bg-purple/5 p-5 text-center",children:[b.jsx("div",{className:"text-sm font-bold text-purple-light tracking-widest uppercase mb-1",children:"EVA-A"}),b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"Accuracy"}),b.jsx("p",{className:"text-sm text-text-secondary mt-1.5",children:"Did the agent complete the task correctly?"})]}),b.jsx("div",{className:"flex justify-center",children:b.jsx("div",{className:"w-px h-5 bg-purple/30"})}),b.jsx("div",{className:"space-y-3 pt-0",children:NB.map(n=>b.jsx(mf,{metric:n},n.id))})]}),b.jsxs(Tt.div,{initial:{opacity:0,x:20},whileInView:{opacity:1,x:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:[b.jsxs("div",{className:"rounded-xl border-2 border-blue/30 bg-blue/5 p-5 text-center",children:[b.jsx("div",{className:"text-sm font-bold text-blue-light tracking-widest uppercase mb-1",children:"EVA-X"}),b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"Experience"}),b.jsx("p",{className:"text-sm text-text-secondary mt-1.5",children:"Was the conversational experience high quality?"})]}),b.jsx("div",{className:"flex justify-center",children:b.jsx("div",{className:"w-px h-5 bg-blue/30"})}),b.jsx("div",{className:"space-y-3 pt-0",children:CB.map(n=>b.jsx(mf,{metric:n},n.id))})]})]}),b.jsxs("div",{className:"mt-10",children:[b.jsxs("div",{className:"mb-6",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary mb-2",children:"Aggregate Metrics"}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:"EVA aggregates per-trial metric scores into four aggregate metrics, each capturing a different aspect of success and reliability."})]}),b.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-6",children:[b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass@1"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, the proportion of trials where ",b.jsx("em",{children:"all"})," metric thresholds are met (",b.jsx("em",{children:"c"}),"/",b.jsx("em",{children:"n"}),"), where ",b.jsx("em",{children:"c"})," is the number of passing trials and ",b.jsx("em",{children:"n"})," is the total number of trials (n=3), then averaged across all scenarios."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass@k (k=3)"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, 1 if at least one of the k (3) trials meets pass criteria for all metrics, otherwise 0, then averaged across all scenarios. Measures whether the system ",b.jsx("em",{children:"can"})," succeed."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass^k (k=3)"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, we estimate the theoretical probability of passing k = 3 consecutive independent trials as (",b.jsx("em",{children:"c"}),"/",b.jsx("em",{children:"n"}),")",b.jsx("sup",{children:"k"})," where c is the number of passing trials out of n = 3 total. We then average this value across all scenarios to measure consistency and reliability."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"Mean"}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:"For each sample, we average sub-metric scores per dimension, then average across all 150 samples. Raw scores avoid binarizing near-boundary differences into a full pass/fail gap, capturing more nuanced system comparisons."})]})]})]}),b.jsxs("div",{className:"mt-10",children:[b.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center justify-between rounded-xl border border-border-default bg-bg-secondary px-6 py-5 hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-base font-semibold text-text-secondary text-left",children:"Diagnostic & Validation Metrics"}),b.jsxs("div",{className:"text-sm text-text-muted mt-1 text-left",children:[sT.length+oT.length," additional metrics for diagnostics and quality control"]})]}),b.jsx(ai,{className:`w-5 h-5 text-text-muted transition-transform ${e?"rotate-180":""}`})]}),e&&b.jsxs("div",{className:"mt-4 grid grid-cols-1 lg:grid-cols-2 gap-8 opacity-80",children:[b.jsxs("div",{children:[b.jsxs("div",{className:"px-1 mb-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-muted uppercase tracking-wider mb-1",children:"Diagnostic Metrics"}),b.jsxs("p",{className:"text-sm text-text-muted leading-relaxed",children:["Diagnostic metrics for understanding ",b.jsx("em",{children:"why"})," the core scores look the way they do. These help identify which pipeline component (STT, LLM, TTS) is contributing to failures but are not part of the EVA-A or EVA-X scores."]})]}),b.jsx("div",{className:"space-y-3",children:sT.map(n=>b.jsx(mf,{metric:n},n.id))})]}),b.jsxs("div",{children:[b.jsxs("div",{className:"px-1 mb-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-muted uppercase tracking-wider mb-1",children:"Validation Metrics"}),b.jsx("p",{className:"text-sm text-text-muted leading-relaxed",children:"Validators run before evaluation. Any conversation that fails validation is regenerated so that core metrics are only computed on conversations with a well-behaved user simulator and properly completed interactions."})]}),b.jsx("div",{className:"space-y-3",children:oT.map(n=>b.jsx(mf,{metric:n},n.id))})]})]})]}),b.jsxs("div",{className:"flex flex-wrap justify-center gap-6 mt-8",children:[b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-cyan/20 border border-cyan/40"}),"Deterministic (Code)"]}),b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-purple/20 border border-purple/40"}),"LLM Judge (Text)"]}),b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-amber/20 border border-amber/40"}),"Audio LLM Judge (LALM)"]})]})]})}function Wk(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(t=0;t{var{children:n,width:r,height:s,viewBox:o,className:u,style:f,title:d,desc:h}=e,m=UB(e,BB),p=o||{width:r,height:s,x:0,y:0},v=et("recharts-surface",u);return A.createElement("svg",xv({},er(m),{className:v,width:r,height:s,style:f,viewBox:"".concat(p.x," ").concat(p.y," ").concat(p.width," ").concat(p.height),ref:t}),A.createElement("title",null,d),A.createElement("desc",null,h),n)}),qB=["children","className"];function wv(){return wv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:n,className:r}=e,s=$B(e,qB),o=et("recharts-layer",r);return A.createElement("g",wv({className:o},er(s),{ref:t}),n)}),G0=iM(),HB=A.createContext(null);function Ye(e){return function(){return e}}const eN=Math.cos,Qf=Math.sin,pr=Math.sqrt,Jf=Math.PI,Yd=2*Jf,_v=Math.PI,Sv=2*_v,Ra=1e-6,KB=Sv-Ra;function tN(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return tN;const n=10**t;return function(r){this._+=r[0];for(let s=1,o=r.length;sRa)if(!(Math.abs(p*d-h*m)>Ra)||!o)this._append`L${this._x1=t},${this._y1=n}`;else{let x=r-u,w=s-f,_=d*d+h*h,S=x*x+w*w,O=Math.sqrt(_),M=Math.sqrt(v),j=o*Math.tan((_v-Math.acos((_+v-S)/(2*O*M)))/2),k=j/M,N=j/O;Math.abs(k-1)>Ra&&this._append`L${t+k*m},${n+k*p}`,this._append`A${o},${o},0,0,${+(p*x>m*w)},${this._x1=t+N*d},${this._y1=n+N*h}`}}arc(t,n,r,s,o,u){if(t=+t,n=+n,r=+r,u=!!u,r<0)throw new Error(`negative radius: ${r}`);let f=r*Math.cos(s),d=r*Math.sin(s),h=t+f,m=n+d,p=1^u,v=u?s-o:o-s;this._x1===null?this._append`M${h},${m}`:(Math.abs(this._x1-h)>Ra||Math.abs(this._y1-m)>Ra)&&this._append`L${h},${m}`,r&&(v<0&&(v=v%Sv+Sv),v>KB?this._append`A${r},${r},0,1,${p},${t-f},${n-d}A${r},${r},0,1,${p},${this._x1=h},${this._y1=m}`:v>Ra&&this._append`A${r},${r},0,${+(v>=_v)},${p},${this._x1=t+r*Math.cos(o)},${this._y1=n+r*Math.sin(o)}`)}rect(t,n,r,s){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+s}h${-r}Z`}toString(){return this._}}function W0(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new YB(t)}function Z0(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function nN(e){this._context=e}nN.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);break}}};function Gd(e){return new nN(e)}function rN(e){return e[0]}function iN(e){return e[1]}function aN(e,t){var n=Ye(!0),r=null,s=Gd,o=null,u=W0(f);e=typeof e=="function"?e:e===void 0?rN:Ye(e),t=typeof t=="function"?t:t===void 0?iN:Ye(t);function f(d){var h,m=(d=Z0(d)).length,p,v=!1,x;for(r==null&&(o=s(x=u())),h=0;h<=m;++h)!(h=x;--w)f.point(j[w],k[w]);f.lineEnd(),f.areaEnd()}O&&(j[v]=+e(S,v,p),k[v]=+t(S,v,p),f.point(r?+r(S,v,p):j[v],n?+n(S,v,p):k[v]))}if(M)return f=null,M+""||null}function m(){return aN().defined(s).curve(u).context(o)}return h.x=function(p){return arguments.length?(e=typeof p=="function"?p:Ye(+p),r=null,h):e},h.x0=function(p){return arguments.length?(e=typeof p=="function"?p:Ye(+p),h):e},h.x1=function(p){return arguments.length?(r=p==null?null:typeof p=="function"?p:Ye(+p),h):r},h.y=function(p){return arguments.length?(t=typeof p=="function"?p:Ye(+p),n=null,h):t},h.y0=function(p){return arguments.length?(t=typeof p=="function"?p:Ye(+p),h):t},h.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:Ye(+p),h):n},h.lineX0=h.lineY0=function(){return m().x(e).y(t)},h.lineY1=function(){return m().x(e).y(n)},h.lineX1=function(){return m().x(r).y(t)},h.defined=function(p){return arguments.length?(s=typeof p=="function"?p:Ye(!!p),h):s},h.curve=function(p){return arguments.length?(u=p,o!=null&&(f=u(o)),h):u},h.context=function(p){return arguments.length?(p==null?o=f=null:f=u(o=p),h):o},h}class sN{constructor(t,n){this._context=t,this._x=n}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(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function GB(e){return new sN(e,!0)}function WB(e){return new sN(e,!1)}const Q0={draw(e,t){const n=pr(t/Jf);e.moveTo(n,0),e.arc(0,0,n,0,Yd)}},ZB={draw(e,t){const n=pr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},oN=pr(1/3),QB=oN*2,JB={draw(e,t){const n=pr(t/QB),r=n*oN;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},e9={draw(e,t){const n=pr(t),r=-n/2;e.rect(r,r,n,n)}},t9=.8908130915292852,lN=Qf(Jf/10)/Qf(7*Jf/10),n9=Qf(Yd/10)*lN,r9=-eN(Yd/10)*lN,i9={draw(e,t){const n=pr(t*t9),r=n9*n,s=r9*n;e.moveTo(0,-n),e.lineTo(r,s);for(let o=1;o<5;++o){const u=Yd*o/5,f=eN(u),d=Qf(u);e.lineTo(d*n,-f*n),e.lineTo(f*r-d*s,d*r+f*s)}e.closePath()}},yg=pr(3),a9={draw(e,t){const n=-pr(t/(yg*3));e.moveTo(0,n*2),e.lineTo(-yg*n,-n),e.lineTo(yg*n,-n),e.closePath()}},Kn=-.5,Xn=pr(3)/2,Av=1/pr(12),s9=(Av/2+1)*3,o9={draw(e,t){const n=pr(t/s9),r=n/2,s=n*Av,o=r,u=n*Av+n,f=-o,d=u;e.moveTo(r,s),e.lineTo(o,u),e.lineTo(f,d),e.lineTo(Kn*r-Xn*s,Xn*r+Kn*s),e.lineTo(Kn*o-Xn*u,Xn*o+Kn*u),e.lineTo(Kn*f-Xn*d,Xn*f+Kn*d),e.lineTo(Kn*r+Xn*s,Kn*s-Xn*r),e.lineTo(Kn*o+Xn*u,Kn*u-Xn*o),e.lineTo(Kn*f+Xn*d,Kn*d-Xn*f),e.closePath()}};function l9(e,t){let n=null,r=W0(s);e=typeof e=="function"?e:Ye(e||Q0),t=typeof t=="function"?t:Ye(t===void 0?64:+t);function s(){let o;if(n||(n=o=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),o)return n=null,o+""||null}return s.type=function(o){return arguments.length?(e=typeof o=="function"?o:Ye(o),s):e},s.size=function(o){return arguments.length?(t=typeof o=="function"?o:Ye(+o),s):t},s.context=function(o){return arguments.length?(n=o??null,s):n},s}function ed(){}function td(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 uN(e){this._context=e}uN.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:td(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function u9(e){return new uN(e)}function cN(e){this._context=e}cN.prototype={areaStart:ed,areaEnd:ed,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);break}}},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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function c9(e){return new cN(e)}function fN(e){this._context=e}fN.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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function f9(e){return new fN(e)}function dN(e){this._context=e}dN.prototype={areaStart:ed,areaEnd:ed,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 d9(e){return new dN(e)}function lT(e){return e<0?-1:1}function uT(e,t,n){var r=e._x1-e._x0,s=t-e._x1,o=(e._y1-e._y0)/(r||s<0&&-0),u=(n-e._y1)/(s||r<0&&-0),f=(o*s+u*r)/(r+s);return(lT(o)+lT(u))*Math.min(Math.abs(o),Math.abs(u),.5*Math.abs(f))||0}function cT(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function vg(e,t,n){var r=e._x0,s=e._y0,o=e._x1,u=e._y1,f=(o-r)/3;e._context.bezierCurveTo(r+f,s+f*t,o-f,u-f*n,o,u)}function nd(e){this._context=e}nd.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:vg(this,this._t0,cT(this,this._t0));break}(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,vg(this,cT(this,n=uT(this,e,t)),n);break;default:vg(this,this._t0,n=uT(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function hN(e){this._context=new mN(e)}(hN.prototype=Object.create(nd.prototype)).point=function(e,t){nd.prototype.point.call(this,t,e)};function mN(e){this._context=e}mN.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,s,o){this._context.bezierCurveTo(t,e,r,n,o,s)}};function h9(e){return new nd(e)}function m9(e){return new hN(e)}function pN(e){this._context=e}pN.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=fT(e),s=fT(t),o=0,u=1;u=0;--t)s[t]=(u[t]-s[t+1])/o[t];for(o[n-1]=(e[n]+s[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)}break}}this._x=e,this._y=t}};function g9(e){return new Wd(e,.5)}function y9(e){return new Wd(e,0)}function v9(e){return new Wd(e,1)}function Ya(e,t){if((u=e.length)>1)for(var n=1,r,s,o=e[t[0]],u,f=o.length;n=0;)n[t]=t;return n}function b9(e,t){return e[t]}function x9(e){const t=[];return t.key=e,t}function w9(){var e=Ye([]),t=Tv,n=Ya,r=b9;function s(o){var u=Array.from(e.apply(this,arguments),x9),f,d=u.length,h=-1,m;for(const p of o)for(f=0,++h;f0){for(var n,r,s=0,o=e[0].length,u;s0){for(var n=0,r=e[t[0]],s,o=r.length;n0)||!((o=(s=e[t[0]]).length)>0))){for(var n=0,r=1,s,o,u;r1&&arguments[1]!==void 0?arguments[1]:M9,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function ut(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var f=n[u-1];return typeof f=="string"?s+f+o:f!==void 0?s+Ji(f)+o:s+o},"")}var Wn=e=>e===0?0:e>0?1:-1,oi=e=>typeof e=="number"&&e!=+e,Ga=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,ye=e=>(typeof e=="number"||e instanceof Number)&&!oi(e),Nr=e=>ye(e)||typeof e=="string",k9=0,au=e=>{var t=++k9;return"".concat(e||"").concat(t)},ra=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ye(t)&&typeof t!="string")return r;var o;if(Ga(t)){if(n==null)return r;var u=t.indexOf("%");o=n*parseFloat(t.slice(0,u))/100}else o=+t;return oi(o)&&(o=r),s&&n!=null&&o>n&&(o=n),o},yN=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):co(r,t))===n)}var N9=e=>{for(var t=e.length,n=0,r=0,s=0,o=0,u=1/0,f=-1/0,d=0,h=0,m=0;me===null||typeof e>"u",Ou=e=>dt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function mn(e){return e!=null}function _o(){}var C9=["type","size","sizeType"];function Ov(){return Ov=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(Ou(e));return bN[t]||Q0},U9=(e,t,n)=>{if(t==="area")return e;switch(n){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var r=18*I9;return 1.25*e*e*(Math.tan(r)-Math.tan(r*2)*Math.tan(r)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},V9=(e,t)=>{bN["symbol".concat(Ou(e))]=t},nb=e=>{var{type:t="circle",size:n=64,sizeType:r="area"}=e,s=L9(e,C9),o=xT(xT({},s),{},{type:t,size:n,sizeType:r}),u="circle";typeof t=="string"&&(u=t);var f=()=>{var v=B9(u),x=l9().type(v).size(U9(n,r,u)),w=x();if(w!==null)return w},{className:d,cx:h,cy:m}=o,p=er(o);return ye(h)&&ye(m)&&ye(n)?A.createElement("path",Ov({},p,{className:et("recharts-symbols",d),transform:"translate(".concat(h,", ").concat(m,")"),d:f()})):null};nb.registerSymbol=V9;var xN=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,q9=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(A.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(s=>{X0(s)&&typeof n[s]=="function"&&(r[s]=(o=>n[s](n,o)))}),r},$9=(e,t,n)=>r=>(e(t,n,r),null),wN=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(s=>{var o=e[s];X0(s)&&typeof o=="function"&&(r||(r={}),r[s]=$9(o,t,n))}),r},F9=e=>Array.isArray(e)&&e.length>0;function wT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function H9(e){for(var t=1;t(u[f]===void 0&&r[f]!==void 0&&(u[f]=r[f]),u),n);return o}var Og={},Eg={},_T;function G9(){return _T||(_T=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){const s=new Map;for(let o=0;o=0}e.isLength=t})(Cg)),Cg}var OT;function SN(){return OT||(OT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Z9();function n(r){return r!=null&&typeof r!="function"&&t.isLength(r.length)}e.isArrayLike=n})(Ng)),Ng}var Dg={},ET;function Q9(){return ET||(ET=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="object"&&n!==null}e.isObjectLike=t})(Dg)),Dg}var jT;function J9(){return jT||(jT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=SN(),n=Q9();function r(s){return n.isObjectLike(s)&&t.isArrayLike(s)}e.isArrayLikeObject=r})(kg)),kg}var Pg={},Rg={},MT;function e7(){return MT||(MT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=tb();function n(r){return function(s){return t.get(s,r)}}e.property=n})(Rg)),Rg}var Lg={},zg={},Ig={},Bg={},kT;function AN(){return kT||(kT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n!==null&&(typeof n=="object"||typeof n=="function")}e.isObject=t})(Bg)),Bg}var Ug={},NT;function TN(){return NT||(NT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null||typeof n!="object"&&typeof n!="function"}e.isPrimitive=t})(Ug)),Ug}var Vg={},CT;function ON(){return CT||(CT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){return n===r||Number.isNaN(n)&&Number.isNaN(r)}e.isEqualsSameValueZero=t})(Vg)),Vg}var DT;function t7(){return DT||(DT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=AN(),n=TN(),r=ON();function s(m,p,v){return typeof v!="function"?s(m,p,()=>{}):o(m,p,function x(w,_,S,O,M,j){const k=v(w,_,S,O,M,j);return k!==void 0?!!k:o(w,_,x,j)},new Map)}function o(m,p,v,x){if(p===m)return!0;switch(typeof p){case"object":return u(m,p,v,x);case"function":return Object.keys(p).length>0?o(m,{...p},v,x):r.isEqualsSameValueZero(m,p);default:return t.isObject(m)?typeof p=="string"?p==="":!0:r.isEqualsSameValueZero(m,p)}}function u(m,p,v,x){if(p==null)return!0;if(Array.isArray(p))return d(m,p,v,x);if(p instanceof Map)return f(m,p,v,x);if(p instanceof Set)return h(m,p,v,x);const w=Object.keys(p);if(m==null||n.isPrimitive(m))return w.length===0;if(w.length===0)return!0;if(x?.has(p))return x.get(p)===m;x?.set(p,m);try{for(let _=0;_{})}e.isMatch=n})(zg)),zg}var qg={},$g={},Fg={},RT;function n7(){return RT||(RT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Object.getOwnPropertySymbols(n).filter(r=>Object.prototype.propertyIsEnumerable.call(n,r))}e.getSymbols=t})(Fg)),Fg}var Hg={},LT;function rb(){return LT||(LT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null?n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(n)}e.getTag=t})(Hg)),Hg}var Kg={},zT;function jN(){return zT||(zT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",n="[object String]",r="[object Number]",s="[object Boolean]",o="[object Arguments]",u="[object Symbol]",f="[object Date]",d="[object Map]",h="[object Set]",m="[object Array]",p="[object Function]",v="[object ArrayBuffer]",x="[object Object]",w="[object Error]",_="[object DataView]",S="[object Uint8Array]",O="[object Uint8ClampedArray]",M="[object Uint16Array]",j="[object Uint32Array]",k="[object BigUint64Array]",N="[object Int8Array]",C="[object Int16Array]",L="[object Int32Array]",I="[object BigInt64Array]",Y="[object Float32Array]",te="[object Float64Array]";e.argumentsTag=o,e.arrayBufferTag=v,e.arrayTag=m,e.bigInt64ArrayTag=I,e.bigUint64ArrayTag=k,e.booleanTag=s,e.dataViewTag=_,e.dateTag=f,e.errorTag=w,e.float32ArrayTag=Y,e.float64ArrayTag=te,e.functionTag=p,e.int16ArrayTag=C,e.int32ArrayTag=L,e.int8ArrayTag=N,e.mapTag=d,e.numberTag=r,e.objectTag=x,e.regexpTag=t,e.setTag=h,e.stringTag=n,e.symbolTag=u,e.uint16ArrayTag=M,e.uint32ArrayTag=j,e.uint8ArrayTag=S,e.uint8ClampedArrayTag=O})(Kg)),Kg}var Xg={},IT;function r7(){return IT||(IT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}e.isTypedArray=t})(Xg)),Xg}var BT;function MN(){return BT||(BT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=n7(),n=rb(),r=jN(),s=TN(),o=r7();function u(m,p){return f(m,void 0,m,new Map,p)}function f(m,p,v,x=new Map,w=void 0){const _=w?.(m,p,v,x);if(_!==void 0)return _;if(s.isPrimitive(m))return m;if(x.has(m))return x.get(m);if(Array.isArray(m)){const S=new Array(m.length);x.set(m,S);for(let O=0;Ot.isMatch(o,s)}e.matches=r})(Lg)),Lg}var Yg={},Gg={},Wg={},qT;function s7(){return qT||(qT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=MN(),n=rb(),r=jN();function s(o,u){return t.cloneDeepWith(o,(f,d,h,m)=>{const p=u?.(f,d,h,m);if(p!==void 0)return p;if(typeof o=="object"){if(n.getTag(o)===r.objectTag&&typeof o.constructor!="function"){const v={};return m.set(o,v),t.copyProperties(v,o,h,m),v}switch(Object.prototype.toString.call(o)){case r.numberTag:case r.stringTag:case r.booleanTag:{const v=new o.constructor(o?.valueOf());return t.copyProperties(v,o),v}case r.argumentsTag:{const v={};return t.copyProperties(v,o),v.length=o.length,v[Symbol.iterator]=o[Symbol.iterator],v}default:return}}})}e.cloneDeepWith=s})(Wg)),Wg}var $T;function o7(){return $T||($T=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=s7();function n(r){return t.cloneDeepWith(r)}e.cloneDeep=n})(Gg)),Gg}var Zg={},Qg={},FT;function kN(){return FT||(FT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function n(r,s=Number.MAX_SAFE_INTEGER){switch(typeof r){case"number":return Number.isInteger(r)&&r>=0&&r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?h:f;return iy.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:m,iy}var JT;function y7(){return JT||(JT=1,ry.exports=g7()),ry.exports}var e2;function v7(){if(e2)return ny;e2=1;var e=yo(),t=y7();function n(h,m){return h===m&&(h!==0||1/h===1/m)||h!==h&&m!==m}var r=typeof Object.is=="function"?Object.is:n,s=t.useSyncExternalStore,o=e.useRef,u=e.useEffect,f=e.useMemo,d=e.useDebugValue;return ny.useSyncExternalStoreWithSelector=function(h,m,p,v,x){var w=o(null);if(w.current===null){var _={hasValue:!1,value:null};w.current=_}else _=w.current;w=f(function(){function O(C){if(!M){if(M=!0,j=C,C=v(C),x!==void 0&&_.hasValue){var L=_.value;if(x(L,C))return k=L}return k=C}if(L=k,r(j,C))return L;var I=v(C);return x!==void 0&&x(L,I)?(j=C,L):(j=C,k=I)}var M=!1,j,k,N=p===void 0?null:p;return[function(){return O(m())},N===null?void 0:function(){return O(N())}]},[m,p,v,x]);var S=s(h,w[0],w[1]);return u(function(){_.hasValue=!0,_.value=S},[S]),d(S),S},ny}var t2;function b7(){return t2||(t2=1,ty.exports=v7()),ty.exports}var x7=b7(),ib=A.createContext(null),w7=e=>e,it=()=>{var e=A.useContext(ib);return e?e.store.dispatch:w7},Bf=()=>{},_7=()=>Bf,S7=(e,t)=>e===t;function ve(e){var t=A.useContext(ib),n=A.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Bf,[t,e]);return x7.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:_7,t?t.store.getState:Bf,t?t.store.getState:Bf,n,S7)}function A7(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function T7(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function O7(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var n2=e=>Array.isArray(e)?e:[e];function E7(e){const t=Array.isArray(e[0])?e[0]:e;return O7(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function j7(e,t){const n=[],{length:r}=e;for(let s=0;s{n=gf(),u.resetResultsCount()},u.resultsCount=()=>o,u.resetResultsCount=()=>{o=0},u}function C7(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...s)=>{let o=0,u=0,f,d={},h=s.pop();typeof h=="object"&&(d=h,h=s.pop()),A7(h,`createSelector expects an output function after the inputs, but received: [${typeof h}]`);const m={...n,...d},{memoize:p,memoizeOptions:v=[],argsMemoize:x=NN,argsMemoizeOptions:w=[]}=m,_=n2(v),S=n2(w),O=E7(s),M=p(function(){return o++,h.apply(null,arguments)},..._),j=x(function(){u++;const N=j7(O,arguments);return f=M.apply(null,N),f},...S);return Object.assign(j,{resultFunc:h,memoizedResultFunc:M,dependencies:O,dependencyRecomputations:()=>u,resetDependencyRecomputations:()=>{u=0},lastResult:()=>f,recomputations:()=>o,resetRecomputations:()=>{o=0},memoize:p,argsMemoize:x})};return Object.assign(r,{withTypes:()=>r}),r}var $=C7(NN),D7=Object.assign((e,t=$)=>{T7(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),r=n.map(o=>e[o]);return t(r,(...o)=>o.reduce((u,f,d)=>(u[n[d]]=f,u),{}))},{withTypes:()=>D7}),ay={},sy={},oy={},i2;function P7(){return i2||(i2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"?1:r===null?2:r===void 0?3:r!==r?4:0}const n=(r,s,o)=>{if(r!==s){const u=t(r),f=t(s);if(u===f&&u===0){if(rs)return o==="desc"?-1:1}return o==="desc"?f-u:u-f}return 0};e.compareValues=n})(oy)),oy}var ly={},uy={},a2;function CN(){return a2||(a2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"||n instanceof Symbol}e.isSymbol=t})(uy)),uy}var s2;function R7(){return s2||(s2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=CN(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function s(o,u){return Array.isArray(o)?!1:typeof o=="number"||typeof o=="boolean"||o==null||t.isSymbol(o)?!0:typeof o=="string"&&(r.test(o)||!n.test(o))||u!=null&&Object.hasOwn(u,o)}e.isKey=s})(ly)),ly}var o2;function L7(){return o2||(o2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=P7(),n=R7(),r=eb();function s(o,u,f,d){if(o==null)return[];f=d?void 0:f,Array.isArray(o)||(o=Object.values(o)),Array.isArray(u)||(u=u==null?[null]:[u]),u.length===0&&(u=[null]),Array.isArray(f)||(f=f==null?[]:[f]),f=f.map(x=>String(x));const h=(x,w)=>{let _=x;for(let S=0;Sw==null||x==null?w:typeof x=="object"&&"key"in x?Object.hasOwn(w,x.key)?w[x.key]:h(w,x.path):typeof x=="function"?x(w):Array.isArray(x)?h(w,x):typeof w=="object"?w[x]:w,p=u.map(x=>(Array.isArray(x)&&x.length===1&&(x=x[0]),x==null||typeof x=="function"||Array.isArray(x)||n.isKey(x)?x:{key:x,path:r.toPath(x)}));return o.map(x=>({original:x,criteria:p.map(w=>m(w,x))})).slice().sort((x,w)=>{for(let _=0;_x.original)}e.orderBy=s})(sy)),sy}var cy={},l2;function z7(){return l2||(l2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r=1){const s=[],o=Math.floor(r),u=(f,d)=>{for(let h=0;h1&&r.isIterateeCall(o,u[0],u[1])?u=[]:f>2&&r.isIterateeCall(u[0],u[1],u[2])&&(u=[u[0]]),t.orderBy(o,n.flatten(u),["asc"])}e.sortBy=s})(ay)),ay}var dy,f2;function B7(){return f2||(f2=1,dy=I7().sortBy),dy}var U7=B7();const Zd=ia(U7);var PN=e=>e.legend.settings,V7=e=>e.legend.size,q7=e=>e.legend.payload;$([q7,PN],(e,t)=>{var{itemSorter:n}=t,r=e.flat(1);return n?Zd(r,n):r});var yf=1;function $7(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,n]=A.useState({height:0,left:0,top:0,width:0}),r=A.useCallback(s=>{if(s!=null){var o=s.getBoundingClientRect(),u={height:o.height,left:o.left,top:o.top,width:o.width};(Math.abs(u.height-t.height)>yf||Math.abs(u.left-t.left)>yf||Math.abs(u.top-t.top)>yf||Math.abs(u.width-t.width)>yf)&&n({height:u.height,left:u.left,top:u.top,width:u.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,r]}function $t(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 F7=typeof Symbol=="function"&&Symbol.observable||"@@observable",d2=F7,hy=()=>Math.random().toString(36).substring(7).split("").join("."),H7={INIT:`@@redux/INIT${hy()}`,REPLACE:`@@redux/REPLACE${hy()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${hy()}`},rd=H7;function ab(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function RN(e,t,n){if(typeof e!="function")throw new Error($t(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error($t(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error($t(1));return n(RN)(e,t)}let r=e,s=t,o=new Map,u=o,f=0,d=!1;function h(){u===o&&(u=new Map,o.forEach((S,O)=>{u.set(O,S)}))}function m(){if(d)throw new Error($t(3));return s}function p(S){if(typeof S!="function")throw new Error($t(4));if(d)throw new Error($t(5));let O=!0;h();const M=f++;return u.set(M,S),function(){if(O){if(d)throw new Error($t(6));O=!1,h(),u.delete(M),o=null}}}function v(S){if(!ab(S))throw new Error($t(7));if(typeof S.type>"u")throw new Error($t(8));if(typeof S.type!="string")throw new Error($t(17));if(d)throw new Error($t(9));try{d=!0,s=r(s,S)}finally{d=!1}return(o=u).forEach(M=>{M()}),S}function x(S){if(typeof S!="function")throw new Error($t(10));r=S,v({type:rd.REPLACE})}function w(){const S=p;return{subscribe(O){if(typeof O!="object"||O===null)throw new Error($t(11));function M(){const k=O;k.next&&k.next(m())}return M(),{unsubscribe:S(M)}},[d2](){return this}}}return v({type:rd.INIT}),{dispatch:v,subscribe:p,getState:m,replaceReducer:x,[d2]:w}}function K7(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:rd.INIT})>"u")throw new Error($t(12));if(typeof n(void 0,{type:rd.PROBE_UNKNOWN_ACTION()})>"u")throw new Error($t(13))})}function LN(e){const t=Object.keys(e),n={};for(let o=0;o"u")throw f&&f.type,new Error($t(14));h[p]=w,d=d||w!==x}return d=d||r.length!==Object.keys(u).length,d?h:u}}function id(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function X7(...e){return t=>(n,r)=>{const s=t(n,r);let o=()=>{throw new Error($t(15))};const u={getState:s.getState,dispatch:(d,...h)=>o(d,...h)},f=e.map(d=>d(u));return o=id(...f)(s.dispatch),{...s,dispatch:o}}}function zN(e){return ab(e)&&"type"in e&&typeof e.type=="string"}var IN=Symbol.for("immer-nothing"),h2=Symbol.for("immer-draftable"),an=Symbol.for("immer-state");function lr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Cn=Object,fo=Cn.getPrototypeOf,ad="constructor",Qd="prototype",Ev="configurable",sd="enumerable",Uf="writable",su="value",li=e=>!!e&&!!e[an];function mr(e){return e?BN(e)||eh(e)||!!e[h2]||!!e[ad]?.[h2]||th(e)||nh(e):!1}var Y7=Cn[Qd][ad].toString(),m2=new WeakMap;function BN(e){if(!e||!sb(e))return!1;const t=fo(e);if(t===null||t===Cn[Qd])return!0;const n=Cn.hasOwnProperty.call(t,ad)&&t[ad];if(n===Object)return!0;if(!Ws(n))return!1;let r=m2.get(n);return r===void 0&&(r=Function.toString.call(n),m2.set(n,r)),r===Y7}function Jd(e,t,n=!0){Eu(e)===0?(n?Reflect.ownKeys(e):Cn.keys(e)).forEach(s=>{t(s,e[s],e)}):e.forEach((r,s)=>t(s,r,e))}function Eu(e){const t=e[an];return t?t.type_:eh(e)?1:th(e)?2:nh(e)?3:0}var p2=(e,t,n=Eu(e))=>n===2?e.has(t):Cn[Qd].hasOwnProperty.call(e,t),jv=(e,t,n=Eu(e))=>n===2?e.get(t):e[t],od=(e,t,n,r=Eu(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function G7(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var eh=Array.isArray,th=e=>e instanceof Map,nh=e=>e instanceof Set,sb=e=>typeof e=="object",Ws=e=>typeof e=="function",my=e=>typeof e=="boolean";function W7(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Jr=e=>e.copy_||e.base_,ob=e=>e.modified_?e.copy_:e.base_;function Mv(e,t){if(th(e))return new Map(e);if(nh(e))return new Set(e);if(eh(e))return Array[Qd].slice.call(e);const n=BN(e);if(t===!0||t==="class_only"&&!n){const r=Cn.getOwnPropertyDescriptors(e);delete r[an];let s=Reflect.ownKeys(r);for(let o=0;o1&&Cn.defineProperties(e,{set:vf,add:vf,clear:vf,delete:vf}),Cn.freeze(e),t&&Jd(e,(n,r)=>{lb(r,!0)},!1)),e}function Z7(){lr(2)}var vf={[su]:Z7};function rh(e){return e===null||!sb(e)?!0:Cn.isFrozen(e)}var ld="MapSet",kv="Patches",g2="ArrayMethods",UN={};function Wa(e){const t=UN[e];return t||lr(0,e),t}var y2=e=>!!UN[e],ou,VN=()=>ou,Q7=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:y2(ld)?Wa(ld):void 0,arrayMethodsPlugin_:y2(g2)?Wa(g2):void 0});function v2(e,t){t&&(e.patchPlugin_=Wa(kv),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Nv(e){Cv(e),e.drafts_.forEach(J7),e.drafts_=null}function Cv(e){e===ou&&(ou=e.parent_)}var b2=e=>ou=Q7(ou,e);function J7(e){const t=e[an];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function x2(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[an].modified_&&(Nv(t),lr(4)),mr(e)&&(e=w2(t,e));const{patchPlugin_:s}=t;s&&s.generateReplacementPatches_(n[an].base_,e,t)}else e=w2(t,n);return eU(t,e,!0),Nv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==IN?e:void 0}function w2(e,t){if(rh(t))return t;const n=t[an];if(!n)return ud(t,e.handledSet_,e);if(!ih(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);FN(n,e)}return n.copy_}function eU(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&lb(t,n)}function qN(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var ih=(e,t)=>e.scope_===t,tU=[];function $N(e,t,n,r){const s=Jr(e),o=e.type_;if(r!==void 0&&jv(s,r,o)===t){od(s,r,n,o);return}if(!e.draftLocations_){const f=e.draftLocations_=new Map;Jd(s,(d,h)=>{if(li(h)){const m=f.get(h)||[];m.push(d),f.set(h,m)}})}const u=e.draftLocations_.get(t)??tU;for(const f of u)od(s,f,n,o)}function nU(e,t,n){e.callbacks_.push(function(s){const o=t;if(!o||!ih(o,s))return;s.mapSetPlugin_?.fixSetContents(o);const u=ob(o);$N(e,o.draft_??o,u,n),FN(o,s)})}function FN(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:r}=t;if(r){const s=r.getPath(e);s&&r.generatePatches_(e,s,t)}qN(e)}}function rU(e,t,n){const{scope_:r}=e;if(li(n)){const s=n[an];ih(s,r)&&s.callbacks_.push(function(){Vf(e);const u=ob(s);$N(e,n,u,t)})}else mr(n)&&e.callbacks_.push(function(){const o=Jr(e);e.type_===3?o.has(n)&&ud(n,r.handledSet_,r):jv(o,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ud(jv(e.copy_,t,e.type_),r.handledSet_,r)})}function ud(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||li(e)||t.has(e)||!mr(e)||rh(e)||(t.add(e),Jd(e,(r,s)=>{if(li(s)){const o=s[an];if(ih(o,n)){const u=ob(o);od(e,r,u,e.type_),qN(o)}}else mr(s)&&ud(s,t,n)})),e}function iU(e,t){const n=eh(e),r={type_:n?1:0,scope_:t?t.scope_:VN(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let s=r,o=cd;n&&(s=[r],o=lu);const{revoke:u,proxy:f}=Proxy.revocable(s,o);return r.draft_=f,r.revoke_=u,[f,r]}var cd={get(e,t){if(t===an)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const s=Jr(e);if(!p2(s,t,e.type_))return aU(e,s,t);const o=s[t];if(e.finalized_||!mr(o)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&W7(t))return o;if(o===py(e.base_,t)){Vf(e);const u=e.type_===1?+t:t,f=Pv(e.scope_,o,e,u);return e.copy_[u]=f}return o},has(e,t){return t in Jr(e)},ownKeys(e){return Reflect.ownKeys(Jr(e))},set(e,t,n){const r=HN(Jr(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const s=py(Jr(e),t),o=s?.[an];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(G7(n,s)&&(n!==void 0||p2(e.base_,t,e.type_)))return!0;Vf(e),Dv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),rU(e,t,n)),!0},deleteProperty(e,t){return Vf(e),py(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Dv(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Jr(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Uf]:!0,[Ev]:e.type_!==1||t!=="length",[sd]:r[sd],[su]:n[t]}},defineProperty(){lr(11)},getPrototypeOf(e){return fo(e.base_)},setPrototypeOf(){lr(12)}},lu={};for(let e in cd){let t=cd[e];lu[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}lu.deleteProperty=function(e,t){return lu.set.call(this,e,t,void 0)};lu.set=function(e,t,n){return cd.set.call(this,e[0],t,n,e[0])};function py(e,t){const n=e[an];return(n?Jr(n):e)[t]}function aU(e,t,n){const r=HN(t,n);return r?su in r?r[su]:r.get?.call(e.draft_):void 0}function HN(e,t){if(!(t in e))return;let n=fo(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=fo(n)}}function Dv(e){e.modified_||(e.modified_=!0,e.parent_&&Dv(e.parent_))}function Vf(e){e.copy_||(e.assigned_=new Map,e.copy_=Mv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var sU=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,s)=>{if(Ws(n)&&!Ws(r)){const u=r;r=n;const f=this;return function(h=u,...m){return f.produce(h,p=>r.call(this,p,...m))}}Ws(r)||lr(6),s!==void 0&&!Ws(s)&&lr(7);let o;if(mr(n)){const u=b2(this),f=Pv(u,n,void 0);let d=!0;try{o=r(f),d=!1}finally{d?Nv(u):Cv(u)}return v2(u,s),x2(o,u)}else if(!n||!sb(n)){if(o=r(n),o===void 0&&(o=n),o===IN&&(o=void 0),this.autoFreeze_&&lb(o,!0),s){const u=[],f=[];Wa(kv).generateReplacementPatches_(n,o,{patches_:u,inversePatches_:f}),s(u,f)}return o}else lr(1,n)},this.produceWithPatches=(n,r)=>{if(Ws(n))return(f,...d)=>this.produceWithPatches(f,h=>n(h,...d));let s,o;return[this.produce(n,r,(f,d)=>{s=f,o=d}),s,o]},my(t?.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),my(t?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),my(t?.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){mr(t)||lr(8),li(t)&&(t=Zn(t));const n=b2(this),r=Pv(n,t,void 0);return r[an].isManual_=!0,Cv(n),r}finishDraft(t,n){const r=t&&t[an];(!r||!r.isManual_)&&lr(9);const{scope_:s}=r;return v2(s,n),x2(void 0,s)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,n){let r;for(r=n.length-1;r>=0;r--){const o=n[r];if(o.path.length===0&&o.op==="replace"){t=o.value;break}}r>-1&&(n=n.slice(r+1));const s=Wa(kv).applyPatches_;return li(t)?s(t,n):this.produce(t,o=>s(o,n))}};function Pv(e,t,n,r){const[s,o]=th(t)?Wa(ld).proxyMap_(t,n):nh(t)?Wa(ld).proxySet_(t,n):iU(t,n);return(n?.scope_??VN()).drafts_.push(s),o.callbacks_=n?.callbacks_??[],o.key_=r,n&&r!==void 0?nU(n,o,r):o.callbacks_.push(function(d){d.mapSetPlugin_?.fixSetContents(o);const{patchPlugin_:h}=d;o.modified_&&h&&h.generatePatches_(o,[],d)}),s}function Zn(e){return li(e)||lr(10,e),KN(e)}function KN(e){if(!mr(e)||rh(e))return e;const t=e[an];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Mv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Mv(e,!0);return Jd(n,(s,o)=>{od(n,s,KN(o))},r),t&&(t.finalized_=!1),n}var oU=new sU,XN=oU.produce;function YN(e){return({dispatch:n,getState:r})=>s=>o=>typeof o=="function"?o(n,r,e):s(o)}var lU=YN(),uU=YN,cU=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?id:id.apply(null,arguments)};function Pn(e,t){function n(...r){if(t){let s=t(...r);if(!s)throw new Error(Dn(0));return{type:e,payload:s.payload,..."meta"in s&&{meta:s.meta},..."error"in s&&{error:s.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>zN(r)&&r.type===e,n}var GN=class Fl extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Fl.prototype)}static get[Symbol.species](){return Fl}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Fl(...t[0].concat(this)):new Fl(...t.concat(this))}};function _2(e){return mr(e)?XN(e,()=>{}):e}function bf(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function fU(e){return typeof e=="boolean"}var dU=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:s=!0,actionCreatorCheck:o=!0}=t??{};let u=new GN;return n&&(fU(n)?u.push(lU):u.push(uU(n.extraArgument))),u},WN="RTK_autoBatch",Qe=()=>e=>({payload:e,meta:{[WN]:!0}}),S2=e=>t=>{setTimeout(t,e)},ZN=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let s=!0,o=!1,u=!1;const f=new Set,d=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:S2(10):e.type==="callback"?e.queueNotification:S2(e.timeout),h=()=>{u=!1,o&&(o=!1,f.forEach(m=>m()))};return Object.assign({},r,{subscribe(m){const p=()=>s&&m(),v=r.subscribe(p);return f.add(m),()=>{v(),f.delete(m)}},dispatch(m){try{return s=!m?.meta?.[WN],o=!s,o&&(u||(u=!0,d(h))),r.dispatch(m)}finally{s=!0}}})},hU=e=>function(n){const{autoBatch:r=!0}=n??{};let s=new GN(e);return r&&s.push(ZN(typeof r=="object"?r:void 0)),s};function mU(e){const t=dU(),{reducer:n=void 0,middleware:r,devTools:s=!0,preloadedState:o=void 0,enhancers:u=void 0}=e||{};let f;if(typeof n=="function")f=n;else if(ab(n))f=LN(n);else throw new Error(Dn(1));let d;typeof r=="function"?d=r(t):d=t();let h=id;s&&(h=cU({trace:!1,...typeof s=="object"&&s}));const m=X7(...d),p=hU(m);let v=typeof u=="function"?u(p):p();const x=h(...v);return RN(f,o,x)}function QN(e){const t={},n=[];let r;const s={addCase(o,u){const f=typeof o=="string"?o:o.type;if(!f)throw new Error(Dn(28));if(f in t)throw new Error(Dn(29));return t[f]=u,s},addAsyncThunk(o,u){return u.pending&&(t[o.pending.type]=u.pending),u.rejected&&(t[o.rejected.type]=u.rejected),u.fulfilled&&(t[o.fulfilled.type]=u.fulfilled),u.settled&&n.push({matcher:o.settled,reducer:u.settled}),s},addMatcher(o,u){return n.push({matcher:o,reducer:u}),s},addDefaultCase(o){return r=o,s}};return e(s),[t,n,r]}function pU(e){return typeof e=="function"}function gU(e,t){let[n,r,s]=QN(t),o;if(pU(e))o=()=>_2(e());else{const f=_2(e);o=()=>f}function u(f=o(),d){let h=[n[d.type],...r.filter(({matcher:m})=>m(d)).map(({reducer:m})=>m)];return h.filter(m=>!!m).length===0&&(h=[s]),h.reduce((m,p)=>{if(p)if(li(m)){const x=p(m,d);return x===void 0?m:x}else{if(mr(m))return XN(m,v=>p(v,d));{const v=p(m,d);if(v===void 0){if(m===null)return m;throw Error("A case reducer on a non-draftable value must not return undefined")}return v}}return m},f)}return u.getInitialState=o,u}var yU="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",vU=(e=21)=>{let t="",n=e;for(;n--;)t+=yU[Math.random()*64|0];return t},bU=Symbol.for("rtk-slice-createasyncthunk");function xU(e,t){return`${e}/${t}`}function wU({creators:e}={}){const t=e?.asyncThunk?.[bU];return function(r){const{name:s,reducerPath:o=s}=r;if(!s)throw new Error(Dn(11));const u=(typeof r.reducers=="function"?r.reducers(SU()):r.reducers)||{},f=Object.keys(u),d={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},h={addCase(j,k){const N=typeof j=="string"?j:j.type;if(!N)throw new Error(Dn(12));if(N in d.sliceCaseReducersByType)throw new Error(Dn(13));return d.sliceCaseReducersByType[N]=k,h},addMatcher(j,k){return d.sliceMatchers.push({matcher:j,reducer:k}),h},exposeAction(j,k){return d.actionCreators[j]=k,h},exposeCaseReducer(j,k){return d.sliceCaseReducersByName[j]=k,h}};f.forEach(j=>{const k=u[j],N={reducerName:j,type:xU(s,j),createNotation:typeof r.reducers=="function"};TU(k)?EU(N,k,h,t):AU(N,k,h)});function m(){const[j={},k=[],N=void 0]=typeof r.extraReducers=="function"?QN(r.extraReducers):[r.extraReducers],C={...j,...d.sliceCaseReducersByType};return gU(r.initialState,L=>{for(let I in C)L.addCase(I,C[I]);for(let I of d.sliceMatchers)L.addMatcher(I.matcher,I.reducer);for(let I of k)L.addMatcher(I.matcher,I.reducer);N&&L.addDefaultCase(N)})}const p=j=>j,v=new Map,x=new WeakMap;let w;function _(j,k){return w||(w=m()),w(j,k)}function S(){return w||(w=m()),w.getInitialState()}function O(j,k=!1){function N(L){let I=L[j];return typeof I>"u"&&k&&(I=bf(x,N,S)),I}function C(L=p){const I=bf(v,k,()=>new WeakMap);return bf(I,L,()=>{const Y={};for(const[te,ie]of Object.entries(r.selectors??{}))Y[te]=_U(ie,L,()=>bf(x,L,S),k);return Y})}return{reducerPath:j,getSelectors:C,get selectors(){return C(N)},selectSlice:N}}const M={name:s,reducer:_,actions:d.actionCreators,caseReducers:d.sliceCaseReducersByName,getInitialState:S,...O(o),injectInto(j,{reducerPath:k,...N}={}){const C=k??o;return j.inject({reducerPath:C,reducer:_},N),{...M,...O(C,!0)}}};return M}}function _U(e,t,n,r){function s(o,...u){let f=t(o);return typeof f>"u"&&r&&(f=n()),e(f,...u)}return s.unwrapped=e,s}var Qt=wU();function SU(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function AU({type:e,reducerName:t,createNotation:n},r,s){let o,u;if("reducer"in r){if(n&&!OU(r))throw new Error(Dn(17));o=r.reducer,u=r.prepare}else o=r;s.addCase(e,o).exposeCaseReducer(t,o).exposeAction(t,u?Pn(e,u):Pn(e))}function TU(e){return e._reducerDefinitionType==="asyncThunk"}function OU(e){return e._reducerDefinitionType==="reducerWithPrepare"}function EU({type:e,reducerName:t},n,r,s){if(!s)throw new Error(Dn(18));const{payloadCreator:o,fulfilled:u,pending:f,rejected:d,settled:h,options:m}=n,p=s(e,o,m);r.exposeAction(t,p),u&&r.addCase(p.fulfilled,u),f&&r.addCase(p.pending,f),d&&r.addCase(p.rejected,d),h&&r.addMatcher(p.settled,h),r.exposeCaseReducer(t,{fulfilled:u||xf,pending:f||xf,rejected:d||xf,settled:h||xf})}function xf(){}var jU="task",JN="listener",eC="completed",ub="cancelled",MU=`task-${ub}`,kU=`task-${eC}`,Rv=`${JN}-${ub}`,NU=`${JN}-${eC}`,ah=class{constructor(e){this.code=e,this.message=`${jU} ${ub} (reason: ${e})`}name="TaskAbortError";message},cb=(e,t)=>{if(typeof e!="function")throw new TypeError(Dn(32))},fd=()=>{},tC=(e,t=fd)=>(e.catch(t),e),nC=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Ha=e=>{if(e.aborted)throw new ah(e.reason)};function rC(e,t){let n=fd;return new Promise((r,s)=>{const o=()=>s(new ah(e.reason));if(e.aborted){o();return}n=nC(e,o),t.finally(()=>n()).then(r,s)}).finally(()=>{n=fd})}var CU=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof ah?"cancelled":"rejected",error:n}}finally{t?.()}},dd=e=>t=>tC(rC(e,t).then(n=>(Ha(e),n))),iC=e=>{const t=dd(e);return n=>t(new Promise(r=>setTimeout(r,n)))},{assign:so}=Object,A2={},sh="listenerMiddleware",DU=(e,t)=>{const n=r=>nC(e,()=>r.abort(e.reason));return(r,s)=>{cb(r);const o=new AbortController;n(o);const u=CU(async()=>{Ha(e),Ha(o.signal);const f=await r({pause:dd(o.signal),delay:iC(o.signal),signal:o.signal});return Ha(o.signal),f},()=>o.abort(kU));return s?.autoJoin&&t.push(u.catch(fd)),{result:dd(e)(u),cancel(){o.abort(MU)}}}},PU=(e,t)=>{const n=async(r,s)=>{Ha(t);let o=()=>{};const f=[new Promise((d,h)=>{let m=e({predicate:r,effect:(p,v)=>{v.unsubscribe(),d([p,v.getState(),v.getOriginalState()])}});o=()=>{m(),h()}})];s!=null&&f.push(new Promise(d=>setTimeout(d,s,null)));try{const d=await rC(t,Promise.race(f));return Ha(t),d}finally{o()}};return(r,s)=>tC(n(r,s))},aC=e=>{let{type:t,actionCreator:n,matcher:r,predicate:s,effect:o}=e;if(t)s=Pn(t).match;else if(n)t=n.type,s=n.match;else if(r)s=r;else if(!s)throw new Error(Dn(21));return cb(o),{predicate:s,type:t,effect:o}},sC=so(e=>{const{type:t,predicate:n,effect:r}=aC(e);return{id:vU(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(Dn(22))}}},{withTypes:()=>sC}),T2=(e,t)=>{const{type:n,effect:r,predicate:s}=aC(t);return Array.from(e.values()).find(o=>(typeof n=="string"?o.type===n:o.predicate===s)&&o.effect===r)},Lv=e=>{e.pending.forEach(t=>{t.abort(Rv)})},RU=(e,t)=>()=>{for(const n of t.keys())Lv(n);e.clear()},O2=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},oC=so(Pn(`${sh}/add`),{withTypes:()=>oC}),LU=Pn(`${sh}/removeAll`),lC=so(Pn(`${sh}/remove`),{withTypes:()=>lC}),zU=(...e)=>{console.error(`${sh}/error`,...e)},ju=(e={})=>{const t=new Map,n=new Map,r=x=>{const w=n.get(x)??0;n.set(x,w+1)},s=x=>{const w=n.get(x)??1;w===1?n.delete(x):n.set(x,w-1)},{extra:o,onError:u=zU}=e;cb(u);const f=x=>(x.unsubscribe=()=>t.delete(x.id),t.set(x.id,x),w=>{x.unsubscribe(),w?.cancelActive&&Lv(x)}),d=x=>{const w=T2(t,x)??sC(x);return f(w)};so(d,{withTypes:()=>d});const h=x=>{const w=T2(t,x);return w&&(w.unsubscribe(),x.cancelActive&&Lv(w)),!!w};so(h,{withTypes:()=>h});const m=async(x,w,_,S)=>{const O=new AbortController,M=PU(d,O.signal),j=[];try{x.pending.add(O),r(x),await Promise.resolve(x.effect(w,so({},_,{getOriginalState:S,condition:(k,N)=>M(k,N).then(Boolean),take:M,delay:iC(O.signal),pause:dd(O.signal),extra:o,signal:O.signal,fork:DU(O.signal,j),unsubscribe:x.unsubscribe,subscribe:()=>{t.set(x.id,x)},cancelActiveListeners:()=>{x.pending.forEach((k,N,C)=>{k!==O&&(k.abort(Rv),C.delete(k))})},cancel:()=>{O.abort(Rv),x.pending.delete(O)},throwIfCancelled:()=>{Ha(O.signal)}})))}catch(k){k instanceof ah||O2(u,k,{raisedBy:"effect"})}finally{await Promise.all(j),O.abort(NU),s(x),x.pending.delete(O)}},p=RU(t,n);return{middleware:x=>w=>_=>{if(!zN(_))return w(_);if(oC.match(_))return d(_.payload);if(LU.match(_)){p();return}if(lC.match(_))return h(_.payload);let S=x.getState();const O=()=>{if(S===A2)throw new Error(Dn(23));return S};let M;try{if(M=w(_),t.size>0){const j=x.getState(),k=Array.from(t.values());for(const N of k){let C=!1;try{C=N.predicate(_,j,S)}catch(L){C=!1,O2(u,L,{raisedBy:"predicate"})}C&&m(N,_,x,O)}}}finally{S=A2}return M},startListening:d,stopListening:h,clearListeners:p}};function Dn(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 IU={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},uC=Qt({name:"chartLayout",initialState:IU,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,s,o;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(s=t.payload.bottom)!==null&&s!==void 0?s:0,e.margin.left=(o=t.payload.left)!==null&&o!==void 0?o:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:BU,setLayout:UU,setChartSize:VU,setScale:qU}=uC.actions,$U=uC.reducer;function cC(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function Le(e){return Number.isFinite(e)}function Cr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function E2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ro(e){for(var t=1;t{if(t&&n){var{width:r,height:s}=n,{align:o,verticalAlign:u,layout:f}=t;if((f==="vertical"||f==="horizontal"&&u==="middle")&&o!=="center"&&ye(e[o]))return ro(ro({},e),{},{[o]:e[o]+(r||0)});if((f==="horizontal"||f==="vertical"&&o==="center")&&u!=="middle"&&ye(e[u]))return ro(ro({},e),{},{[u]:e[u]+(s||0)})}return e},sa=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",fC=(e,t,n,r)=>{if(r)return e.map(f=>f.coordinate);var s,o,u=e.map(f=>(f.coordinate===t&&(s=!0),f.coordinate===n&&(o=!0),f.coordinate));return s||u.push(t),o||u.push(n),u},dC=(e,t,n)=>{if(!e)return null;var{duplicateDomain:r,type:s,range:o,scale:u,realScaleType:f,isCategorical:d,categoricalDomain:h,tickCount:m,ticks:p,niceTicks:v,axisType:x}=e;if(!u)return null;var w=f==="scaleBand"&&u.bandwidth?u.bandwidth()/2:2,_=s==="category"&&u.bandwidth?u.bandwidth()/w:0;if(_=x==="angleAxis"&&o&&o.length>=2?Wn(o[0]-o[1])*2*_:_,p||v){var S=(p||v||[]).map((O,M)=>{var j=r?r.indexOf(O):O,k=u.map(j);return Le(k)?{coordinate:k+_,value:O,offset:_,index:M}:null}).filter(mn);return S}return d&&h?h.map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:O,index:M,offset:_}:null}).filter(mn):u.ticks&&m!=null?u.ticks(m).map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:O,index:M,offset:_}:null}).filter(mn):u.domain().map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:r?r[O]:O,index:M,offset:_}:null}).filter(mn)},YU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var s=0;s=0?(h[0]=o,o+=v,h[1]=o):(h[0]=u,u+=v,h[1]=u)}}}},GU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var s=0;s=0?(d[0]=o,o+=h,d[1]=o):(d[0]=0,d[1]=0)}}}},WU={sign:YU,expand:_9,none:Ya,silhouette:S9,wiggle:A9,positive:GU},ZU=(e,t,n)=>{var r,s=(r=WU[n])!==null&&r!==void 0?r:Ya,o=w9().keys(t).value((f,d)=>Number(Ot(f,d,0))).order(Tv).offset(s),u=o(e);return u.forEach((f,d)=>{f.forEach((h,m)=>{var p=Ot(e[m],t[d],0);Array.isArray(p)&&p.length===2&&ye(p[0])&&ye(p[1])&&(h[0]=p[0],h[1]=p[1])})}),u};function j2(e){var{axis:t,ticks:n,bandSize:r,entry:s,index:o,dataKey:u}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!dt(s[t.dataKey])){var f=vN(n,"value",s[t.dataKey]);if(f)return f.coordinate+r/2}return n!=null&&n[o]?n[o].coordinate+r/2:null}var d=Ot(s,dt(u)?t.dataKey:u),h=t.scale.map(d);return ye(h)?h:null}var QU=e=>{var t=e.flat(2).filter(ye);return[Math.min(...t),Math.max(...t)]},JU=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],eV=(e,t,n)=>{if(e!=null)return JU(Object.keys(e).reduce((r,s)=>{var o=e[s];if(!o)return r;var{stackedData:u}=o,f=u.reduce((d,h)=>{var m=cC(h,t,n),p=QU(m);return!Le(p[0])||!Le(p[1])?d:[Math.min(d[0],p[0]),Math.max(d[1],p[1])]},[1/0,-1/0]);return[Math.min(f[0],r[0]),Math.max(f[1],r[1])]},[1/0,-1/0]))},M2=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,k2=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,N2=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();return r}if(e&&t&&t.length>=2){for(var s=Zd(t,m=>m.coordinate),o=1/0,u=1,f=s.length;u{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},nV=(e,t)=>t==="centric"?e.angle:e.radius,hi=e=>e.layout.width,mi=e=>e.layout.height,rV=e=>e.layout.scale,mC=e=>e.layout.margin,oh=$(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),lh=$(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),iV="data-recharts-item-index",pC="data-recharts-item-id",Mu=60;function D2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function wf(e){for(var t=1;te.brush.height;function uV(e){var t=lh(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var s=typeof r.width=="number"?r.width:Mu;return n+s}return n},0)}function cV(e){var t=lh(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var s=typeof r.width=="number"?r.width:Mu;return n+s}return n},0)}function fV(e){var t=oh(e);return t.reduce((n,r)=>r.orientation==="top"&&!r.mirror&&!r.hide?n+r.height:n,0)}function dV(e){var t=oh(e);return t.reduce((n,r)=>r.orientation==="bottom"&&!r.mirror&&!r.hide?n+r.height:n,0)}var Xt=$([hi,mi,mC,lV,uV,cV,fV,dV,PN,V7],(e,t,n,r,s,o,u,f,d,h)=>{var m={left:(n.left||0)+s,right:(n.right||0)+o},p={top:(n.top||0)+u,bottom:(n.bottom||0)+f},v=wf(wf({},p),m),x=v.bottom;v.bottom+=r,v=XU(v,d,h);var w=e-v.left-v.right,_=t-v.top-v.bottom;return wf(wf({brushBottom:x},v),{},{width:Math.max(w,0),height:Math.max(_,0)})}),hV=$(Xt,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),gC=$(hi,mi,(e,t)=>({x:0,y:0,width:e,height:t})),mV=A.createContext(null),Jt=()=>A.useContext(mV)!=null,uh=e=>e.brush,ch=$([uh,Xt,mC],(e,t,n)=>({height:e.height,x:ye(e.x)?e.x:t.left,y:ye(e.y)?e.y:t.top+t.height+t.brushBottom-(n?.bottom||0),width:ye(e.width)?e.width:t.width})),gy={},yy={},vy={},P2;function pV(){return P2||(P2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r,{signal:s,edges:o}={}){let u,f=null;const d=o!=null&&o.includes("leading"),h=o==null||o.includes("trailing"),m=()=>{f!==null&&(n.apply(u,f),u=void 0,f=null)},p=()=>{h&&m(),_()};let v=null;const x=()=>{v!=null&&clearTimeout(v),v=setTimeout(()=>{v=null,p()},r)},w=()=>{v!==null&&(clearTimeout(v),v=null)},_=()=>{w(),u=void 0,f=null},S=()=>{m()},O=function(...M){if(s?.aborted)return;u=this,f=M;const j=v==null;x(),d&&j&&m()};return O.schedule=x,O.cancel=_,O.flush=S,s?.addEventListener("abort",_,{once:!0}),O}e.debounce=t})(vy)),vy}var R2;function gV(){return R2||(R2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pV();function n(r,s=0,o={}){typeof o!="object"&&(o={});const{leading:u=!1,trailing:f=!0,maxWait:d}=o,h=Array(2);u&&(h[0]="leading"),f&&(h[1]="trailing");let m,p=null;const v=t.debounce(function(..._){m=r.apply(this,_),p=null},s,{edges:h}),x=function(..._){return d!=null&&(p===null&&(p=Date.now()),Date.now()-p>=d)?(m=r.apply(this,_),p=Date.now(),v.cancel(),v.schedule(),m):(v.apply(this,_),m)},w=()=>(v.flush(),m);return x.cancel=v.cancel,x.flush=w,x}e.debounce=n})(yy)),yy}var L2;function yV(){return L2||(L2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=gV();function n(r,s=0,o={}){const{leading:u=!0,trailing:f=!0}=o;return t.debounce(r,s,{leading:u,maxWait:s,trailing:f})}e.throttle=n})(gy)),gy}var by,z2;function vV(){return z2||(z2=1,by=yV().throttle),by}var bV=vV();const xV=ia(bV);var hd=function(t,n){for(var r=arguments.length,s=new Array(r>2?r-2:0),o=2;os[u++]))}},Ar={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},yC=(e,t,n)=>{var{width:r=Ar.width,height:s=Ar.height,aspect:o,maxHeight:u}=n,f=Ga(r)?e:Number(r),d=Ga(s)?t:Number(s);return o&&o>0&&(f?d=f/o:d&&(f=d*o),u&&d!=null&&d>u&&(d=u)),{calculatedWidth:f,calculatedHeight:d}},wV={width:0,height:0,overflow:"visible"},_V={width:0,overflowX:"visible"},SV={height:0,overflowY:"visible"},AV={},TV=e=>{var{width:t,height:n}=e,r=Ga(t),s=Ga(n);return r&&s?wV:r?_V:s?SV:AV};function OV(e){var{width:t,height:n,aspect:r}=e,s=t,o=n;return s===void 0&&o===void 0?(s=Ar.width,o=Ar.height):s===void 0?s=r&&r>0?void 0:Ar.width:o===void 0&&(o=r&&r>0?void 0:Ar.height),{width:s,height:o}}function zv(){return zv=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:n,height:r}),[n,r]);return kV(s)?A.createElement(vC.Provider,{value:s},t):null}var fb=()=>A.useContext(vC),NV=A.forwardRef((e,t)=>{var{aspect:n,initialDimension:r=Ar.initialDimension,width:s,height:o,minWidth:u=Ar.minWidth,minHeight:f,maxHeight:d,children:h,debounce:m=Ar.debounce,id:p,className:v,onResize:x,style:w={}}=e,_=A.useRef(null),S=A.useRef();S.current=x,A.useImperativeHandle(t,()=>_.current);var[O,M]=A.useState({containerWidth:r.width,containerHeight:r.height}),j=A.useCallback((I,Y)=>{M(te=>{var ie=Math.round(I),K=Math.round(Y);return te.containerWidth===ie&&te.containerHeight===K?te:{containerWidth:ie,containerHeight:K}})},[]);A.useEffect(()=>{if(_.current==null||typeof ResizeObserver>"u")return _o;var I=K=>{var be,pe=K[0];if(pe!=null){var{width:xe,height:V}=pe.contentRect;j(xe,V),(be=S.current)===null||be===void 0||be.call(S,xe,V)}};m>0&&(I=xV(I,m,{trailing:!0,leading:!1}));var Y=new ResizeObserver(I),{width:te,height:ie}=_.current.getBoundingClientRect();return j(te,ie),Y.observe(_.current),()=>{Y.disconnect()}},[j,m]);var{containerWidth:k,containerHeight:N}=O;hd(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:C,calculatedHeight:L}=yC(k,N,{width:s,height:o,aspect:n,maxHeight:d});return hd(C!=null&&C>0||L!=null&&L>0,`The width(%s) and height(%s) of chart should be greater than 0, +}}`}],kB=Tu.filter(e=>e.category==="eva-a"),CB=Tu.filter(e=>e.category==="eva-x"),s2=Tu.filter(e=>e.category==="debug"),o2=Tu.filter(e=>e.category==="validation");Tu.filter(e=>e.type==="llm_judge"||e.type==="lalm_judge");function DB({prompt:e,model:t}){const[n,r]=A.useState(!1),s=A.useCallback(()=>r(!1),[]);return A.useEffect(()=>{if(!n)return;const o=u=>{u.key==="Escape"&&s()};return document.addEventListener("keydown",o),document.body.style.overflow="hidden",()=>{document.removeEventListener("keydown",o),document.body.style.overflow=""}},[n,s]),b.jsxs(b.Fragment,{children:[b.jsxs("button",{onClick:()=>r(!0),className:"mt-3 flex items-center gap-1.5 text-xs font-medium text-purple-light hover:text-purple transition-colors",children:["View Judge Prompt",t&&b.jsxs("span",{className:"text-text-muted",children:["(",t,")"]})]}),n&&b.jsxs("div",{className:"fixed inset-0 z-[100] flex items-center justify-center p-4",onClick:o=>{o.target===o.currentTarget&&s()},children:[b.jsx("div",{className:"absolute inset-0 bg-black/70 backdrop-blur-sm"}),b.jsxs("div",{className:"relative w-full max-w-4xl max-h-[85vh] flex flex-col rounded-xl border border-border-default bg-bg-primary shadow-2xl",children:[b.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-border-default flex-shrink-0",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary",children:"Judge Prompt"}),t&&b.jsxs("div",{className:"text-xs text-text-muted mt-0.5",children:["Model: ",t]})]}),b.jsx("button",{onClick:s,className:"p-1.5 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(cM,{className:"w-5 h-5"})})]}),b.jsx("div",{className:"overflow-y-auto flex-1",children:b.jsx("pre",{className:"px-6 py-5 text-[13px] leading-relaxed text-text-primary font-mono whitespace-pre-wrap break-words",children:e})})]})]})]})}const PB={deterministic:QR,llm_judge:lM,lalm_judge:Gy};function mf({metric:e}){const[t,n]=A.useState(!1),[r,s]=A.useState(!1),o=PB[e.type],u=NB[e.type];return b.jsxs(Tt.div,{layout:!0,className:"rounded-xl border border-border-default bg-bg-secondary overflow-hidden",children:[b.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center justify-between p-5 text-left hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{className:"flex items-center gap-3",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center flex-shrink-0",style:{backgroundColor:u+"20"},children:b.jsx(o,{className:"w-5 h-5",style:{color:u}})}),b.jsxs("div",{children:[b.jsxs("div",{className:"text-base font-semibold text-text-primary",children:[e.displayName,e.badge&&b.jsx("span",{className:"ml-2 text-[10px] px-1.5 py-0.5 rounded-full bg-amber/10 text-amber border border-amber/20 font-medium uppercase align-middle",children:e.badge})]}),b.jsxs("div",{className:"text-xs font-medium mt-0.5",style:{color:u},children:[MB[e.type],e.judgeModel&&b.jsxs("span",{className:"text-text-muted",children:[" · ",e.judgeModel]})]})]})]}),b.jsx(ai,{className:`w-5 h-5 text-text-muted transition-transform ${t?"rotate-180":""}`})]}),b.jsx(KA,{children:t&&b.jsx(Tt.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:b.jsxs("div",{className:"px-5 pb-5 space-y-4",children:[b.jsx("div",{className:"border-t border-border-default pt-4",children:b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:e.description})}),b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Inputs"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.inputs})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Output"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.outputRange})]}),e.passThreshold&&b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Pass Threshold"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.passThreshold})]})]}),e.judgePrompt&&b.jsx(DB,{prompt:e.judgePrompt,model:e.judgeModel}),e.judgeScores&&e.judgeScores.length>0&&b.jsxs("div",{className:"rounded-lg border border-border-default overflow-hidden",children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center justify-between px-4 py-3 text-left hover:bg-bg-hover/30 transition-colors",children:[b.jsx("div",{className:"text-sm font-semibold text-text-secondary",children:"Judge Accuracy"}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${r?"rotate-180":""}`})]}),b.jsx(KA,{children:r&&b.jsx(Tt.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.15},className:"overflow-hidden",children:b.jsxs("div",{className:"px-4 pb-4 space-y-3",children:[b.jsx("div",{className:"border-t border-border-default pt-3",children:b.jsx("div",{className:"flex flex-wrap gap-3",children:e.judgeScores.map(({label:f,value:d,std:h})=>b.jsxs("div",{className:"flex items-center gap-2 rounded-lg bg-bg-primary px-3 py-2",children:[b.jsx("span",{className:"text-xs text-text-muted font-mono",children:f}),b.jsxs("span",{className:"text-sm font-semibold text-text-primary",children:[(d*100).toFixed(1),"%",h!=null&&b.jsxs("span",{className:"text-text-muted font-normal text-xs ml-1",children:["(±",(h*100).toFixed(1),"%)"]})]})]},f))})}),e.developmentDocUrl&&b.jsxs("a",{href:e.developmentDocUrl,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1.5 text-sm text-accent-primary hover:text-accent-hover transition-colors",children:["View judge development details",b.jsx(oM,{className:"w-3.5 h-3.5"})]}),e.judgeDevelopmentNotes&&b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:e.judgeDevelopmentNotes})]})})})]})]})})})]})}function RB(){const[e,t]=A.useState(!1);return b.jsxs(wo,{id:"metrics",title:"Evaluation Methodology",subtitle:"EVA produces two fundamental scores composed of multiple sub-metrics. Click any metric to explore what it measures, its inputs, and the judge prompt.",children:[b.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-8",children:[b.jsxs(Tt.div,{initial:{opacity:0,x:-20},whileInView:{opacity:1,x:0},viewport:{once:!0},transition:{duration:.5},children:[b.jsxs("div",{className:"rounded-xl border-2 border-purple/30 bg-purple/5 p-5 text-center",children:[b.jsx("div",{className:"text-sm font-bold text-purple-light tracking-widest uppercase mb-1",children:"EVA-A"}),b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"Accuracy"}),b.jsx("p",{className:"text-sm text-text-secondary mt-1.5",children:"Did the agent complete the task correctly?"})]}),b.jsx("div",{className:"flex justify-center",children:b.jsx("div",{className:"w-px h-5 bg-purple/30"})}),b.jsx("div",{className:"space-y-3 pt-0",children:kB.map(n=>b.jsx(mf,{metric:n},n.id))})]}),b.jsxs(Tt.div,{initial:{opacity:0,x:20},whileInView:{opacity:1,x:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:[b.jsxs("div",{className:"rounded-xl border-2 border-blue/30 bg-blue/5 p-5 text-center",children:[b.jsx("div",{className:"text-sm font-bold text-blue-light tracking-widest uppercase mb-1",children:"EVA-X"}),b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"Experience"}),b.jsx("p",{className:"text-sm text-text-secondary mt-1.5",children:"Was the conversational experience high quality?"})]}),b.jsx("div",{className:"flex justify-center",children:b.jsx("div",{className:"w-px h-5 bg-blue/30"})}),b.jsx("div",{className:"space-y-3 pt-0",children:CB.map(n=>b.jsx(mf,{metric:n},n.id))})]})]}),b.jsxs("div",{className:"mt-10",children:[b.jsxs("div",{className:"mb-6",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary mb-2",children:"Aggregate Metrics"}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:"EVA aggregates per-trial metric scores into four aggregate metrics, each capturing a different aspect of success and reliability."})]}),b.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-6",children:[b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass@1"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, the proportion of trials where ",b.jsx("em",{children:"all"})," metric thresholds are met (",b.jsx("em",{children:"c"}),"/",b.jsx("em",{children:"n"}),"), where ",b.jsx("em",{children:"c"})," is the number of passing trials and ",b.jsx("em",{children:"n"})," is the total number of trials (n=3), then averaged across all scenarios."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass@k (k=3)"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, 1 if at least one of the k (3) trials meets pass criteria for all metrics, otherwise 0, then averaged across all scenarios. Measures whether the system ",b.jsx("em",{children:"can"})," succeed."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass^k (k=3)"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, we estimate the theoretical probability of passing k = 3 consecutive independent trials as (",b.jsx("em",{children:"c"}),"/",b.jsx("em",{children:"n"}),")",b.jsx("sup",{children:"k"})," where c is the number of passing trials out of n = 3 total. We then average this value across all scenarios to measure consistency and reliability."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"Mean"}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:"For each sample, we average sub-metric scores per dimension, then average across all 150 samples. Raw scores avoid binarizing near-boundary differences into a full pass/fail gap, capturing more nuanced system comparisons."})]})]})]}),b.jsxs("div",{className:"mt-10",children:[b.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center justify-between rounded-xl border border-border-default bg-bg-secondary px-6 py-5 hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-base font-semibold text-text-secondary text-left",children:"Diagnostic & Validation Metrics"}),b.jsxs("div",{className:"text-sm text-text-muted mt-1 text-left",children:[s2.length+o2.length," additional metrics for diagnostics and quality control"]})]}),b.jsx(ai,{className:`w-5 h-5 text-text-muted transition-transform ${e?"rotate-180":""}`})]}),e&&b.jsxs("div",{className:"mt-4 grid grid-cols-1 lg:grid-cols-2 gap-8 opacity-80",children:[b.jsxs("div",{children:[b.jsxs("div",{className:"px-1 mb-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-muted uppercase tracking-wider mb-1",children:"Diagnostic Metrics"}),b.jsxs("p",{className:"text-sm text-text-muted leading-relaxed",children:["Diagnostic metrics for understanding ",b.jsx("em",{children:"why"})," the core scores look the way they do. These help identify which pipeline component (STT, LLM, TTS) is contributing to failures but are not part of the EVA-A or EVA-X scores."]})]}),b.jsx("div",{className:"space-y-3",children:s2.map(n=>b.jsx(mf,{metric:n},n.id))})]}),b.jsxs("div",{children:[b.jsxs("div",{className:"px-1 mb-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-muted uppercase tracking-wider mb-1",children:"Validation Metrics"}),b.jsx("p",{className:"text-sm text-text-muted leading-relaxed",children:"Validators run before evaluation. Any conversation that fails validation is regenerated so that core metrics are only computed on conversations with a well-behaved user simulator and properly completed interactions."})]}),b.jsx("div",{className:"space-y-3",children:o2.map(n=>b.jsx(mf,{metric:n},n.id))})]})]})]}),b.jsxs("div",{className:"flex flex-wrap justify-center gap-6 mt-8",children:[b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-cyan/20 border border-cyan/40"}),"Deterministic (Code)"]}),b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-purple/20 border border-purple/40"}),"LLM Judge (Text)"]}),b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-amber/20 border border-amber/40"}),"Audio LLM Judge (LALM)"]})]})]})}function ZN(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(t=0;t{var{children:n,width:r,height:s,viewBox:o,className:u,style:f,title:d,desc:h}=e,m=UB(e,BB),p=o||{width:r,height:s,x:0,y:0},v=et("recharts-surface",u);return A.createElement("svg",xv({},er(m),{className:v,width:r,height:s,style:f,viewBox:"".concat(p.x," ").concat(p.y," ").concat(p.width," ").concat(p.height),ref:t}),A.createElement("title",null,d),A.createElement("desc",null,h),n)}),qB=["children","className"];function wv(){return wv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:n,className:r}=e,s=$B(e,qB),o=et("recharts-layer",r);return A.createElement("g",wv({className:o},er(s),{ref:t}),n)}),G0=iM(),HB=A.createContext(null);function Ye(e){return function(){return e}}const tk=Math.cos,Qf=Math.sin,pr=Math.sqrt,Jf=Math.PI,Yd=2*Jf,_v=Math.PI,Sv=2*_v,Ra=1e-6,KB=Sv-Ra;function nk(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return nk;const n=10**t;return function(r){this._+=r[0];for(let s=1,o=r.length;sRa)if(!(Math.abs(p*d-h*m)>Ra)||!o)this._append`L${this._x1=t},${this._y1=n}`;else{let x=r-u,w=s-f,_=d*d+h*h,S=x*x+w*w,O=Math.sqrt(_),M=Math.sqrt(v),j=o*Math.tan((_v-Math.acos((_+v-S)/(2*O*M)))/2),N=j/M,k=j/O;Math.abs(N-1)>Ra&&this._append`L${t+N*m},${n+N*p}`,this._append`A${o},${o},0,0,${+(p*x>m*w)},${this._x1=t+k*d},${this._y1=n+k*h}`}}arc(t,n,r,s,o,u){if(t=+t,n=+n,r=+r,u=!!u,r<0)throw new Error(`negative radius: ${r}`);let f=r*Math.cos(s),d=r*Math.sin(s),h=t+f,m=n+d,p=1^u,v=u?s-o:o-s;this._x1===null?this._append`M${h},${m}`:(Math.abs(this._x1-h)>Ra||Math.abs(this._y1-m)>Ra)&&this._append`L${h},${m}`,r&&(v<0&&(v=v%Sv+Sv),v>KB?this._append`A${r},${r},0,1,${p},${t-f},${n-d}A${r},${r},0,1,${p},${this._x1=h},${this._y1=m}`:v>Ra&&this._append`A${r},${r},0,${+(v>=_v)},${p},${this._x1=t+r*Math.cos(o)},${this._y1=n+r*Math.sin(o)}`)}rect(t,n,r,s){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+s}h${-r}Z`}toString(){return this._}}function W0(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new YB(t)}function Z0(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function rk(e){this._context=e}rk.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);break}}};function Gd(e){return new rk(e)}function ik(e){return e[0]}function ak(e){return e[1]}function sk(e,t){var n=Ye(!0),r=null,s=Gd,o=null,u=W0(f);e=typeof e=="function"?e:e===void 0?ik:Ye(e),t=typeof t=="function"?t:t===void 0?ak:Ye(t);function f(d){var h,m=(d=Z0(d)).length,p,v=!1,x;for(r==null&&(o=s(x=u())),h=0;h<=m;++h)!(h=x;--w)f.point(j[w],N[w]);f.lineEnd(),f.areaEnd()}O&&(j[v]=+e(S,v,p),N[v]=+t(S,v,p),f.point(r?+r(S,v,p):j[v],n?+n(S,v,p):N[v]))}if(M)return f=null,M+""||null}function m(){return sk().defined(s).curve(u).context(o)}return h.x=function(p){return arguments.length?(e=typeof p=="function"?p:Ye(+p),r=null,h):e},h.x0=function(p){return arguments.length?(e=typeof p=="function"?p:Ye(+p),h):e},h.x1=function(p){return arguments.length?(r=p==null?null:typeof p=="function"?p:Ye(+p),h):r},h.y=function(p){return arguments.length?(t=typeof p=="function"?p:Ye(+p),n=null,h):t},h.y0=function(p){return arguments.length?(t=typeof p=="function"?p:Ye(+p),h):t},h.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:Ye(+p),h):n},h.lineX0=h.lineY0=function(){return m().x(e).y(t)},h.lineY1=function(){return m().x(e).y(n)},h.lineX1=function(){return m().x(r).y(t)},h.defined=function(p){return arguments.length?(s=typeof p=="function"?p:Ye(!!p),h):s},h.curve=function(p){return arguments.length?(u=p,o!=null&&(f=u(o)),h):u},h.context=function(p){return arguments.length?(p==null?o=f=null:f=u(o=p),h):o},h}class ok{constructor(t,n){this._context=t,this._x=n}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(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function GB(e){return new ok(e,!0)}function WB(e){return new ok(e,!1)}const Q0={draw(e,t){const n=pr(t/Jf);e.moveTo(n,0),e.arc(0,0,n,0,Yd)}},ZB={draw(e,t){const n=pr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},lk=pr(1/3),QB=lk*2,JB={draw(e,t){const n=pr(t/QB),r=n*lk;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},e9={draw(e,t){const n=pr(t),r=-n/2;e.rect(r,r,n,n)}},t9=.8908130915292852,uk=Qf(Jf/10)/Qf(7*Jf/10),n9=Qf(Yd/10)*uk,r9=-tk(Yd/10)*uk,i9={draw(e,t){const n=pr(t*t9),r=n9*n,s=r9*n;e.moveTo(0,-n),e.lineTo(r,s);for(let o=1;o<5;++o){const u=Yd*o/5,f=tk(u),d=Qf(u);e.lineTo(d*n,-f*n),e.lineTo(f*r-d*s,d*r+f*s)}e.closePath()}},yg=pr(3),a9={draw(e,t){const n=-pr(t/(yg*3));e.moveTo(0,n*2),e.lineTo(-yg*n,-n),e.lineTo(yg*n,-n),e.closePath()}},Kn=-.5,Xn=pr(3)/2,Av=1/pr(12),s9=(Av/2+1)*3,o9={draw(e,t){const n=pr(t/s9),r=n/2,s=n*Av,o=r,u=n*Av+n,f=-o,d=u;e.moveTo(r,s),e.lineTo(o,u),e.lineTo(f,d),e.lineTo(Kn*r-Xn*s,Xn*r+Kn*s),e.lineTo(Kn*o-Xn*u,Xn*o+Kn*u),e.lineTo(Kn*f-Xn*d,Xn*f+Kn*d),e.lineTo(Kn*r+Xn*s,Kn*s-Xn*r),e.lineTo(Kn*o+Xn*u,Kn*u-Xn*o),e.lineTo(Kn*f+Xn*d,Kn*d-Xn*f),e.closePath()}};function l9(e,t){let n=null,r=W0(s);e=typeof e=="function"?e:Ye(e||Q0),t=typeof t=="function"?t:Ye(t===void 0?64:+t);function s(){let o;if(n||(n=o=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),o)return n=null,o+""||null}return s.type=function(o){return arguments.length?(e=typeof o=="function"?o:Ye(o),s):e},s.size=function(o){return arguments.length?(t=typeof o=="function"?o:Ye(+o),s):t},s.context=function(o){return arguments.length?(n=o??null,s):n},s}function ed(){}function td(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 ck(e){this._context=e}ck.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:td(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function u9(e){return new ck(e)}function fk(e){this._context=e}fk.prototype={areaStart:ed,areaEnd:ed,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);break}}},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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function c9(e){return new fk(e)}function dk(e){this._context=e}dk.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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function f9(e){return new dk(e)}function hk(e){this._context=e}hk.prototype={areaStart:ed,areaEnd:ed,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 d9(e){return new hk(e)}function l2(e){return e<0?-1:1}function u2(e,t,n){var r=e._x1-e._x0,s=t-e._x1,o=(e._y1-e._y0)/(r||s<0&&-0),u=(n-e._y1)/(s||r<0&&-0),f=(o*s+u*r)/(r+s);return(l2(o)+l2(u))*Math.min(Math.abs(o),Math.abs(u),.5*Math.abs(f))||0}function c2(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function vg(e,t,n){var r=e._x0,s=e._y0,o=e._x1,u=e._y1,f=(o-r)/3;e._context.bezierCurveTo(r+f,s+f*t,o-f,u-f*n,o,u)}function nd(e){this._context=e}nd.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:vg(this,this._t0,c2(this,this._t0));break}(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,vg(this,c2(this,n=u2(this,e,t)),n);break;default:vg(this,this._t0,n=u2(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function mk(e){this._context=new pk(e)}(mk.prototype=Object.create(nd.prototype)).point=function(e,t){nd.prototype.point.call(this,t,e)};function pk(e){this._context=e}pk.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,s,o){this._context.bezierCurveTo(t,e,r,n,o,s)}};function h9(e){return new nd(e)}function m9(e){return new mk(e)}function gk(e){this._context=e}gk.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=f2(e),s=f2(t),o=0,u=1;u=0;--t)s[t]=(u[t]-s[t+1])/o[t];for(o[n-1]=(e[n]+s[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)}break}}this._x=e,this._y=t}};function g9(e){return new Wd(e,.5)}function y9(e){return new Wd(e,0)}function v9(e){return new Wd(e,1)}function Ya(e,t){if((u=e.length)>1)for(var n=1,r,s,o=e[t[0]],u,f=o.length;n=0;)n[t]=t;return n}function b9(e,t){return e[t]}function x9(e){const t=[];return t.key=e,t}function w9(){var e=Ye([]),t=Tv,n=Ya,r=b9;function s(o){var u=Array.from(e.apply(this,arguments),x9),f,d=u.length,h=-1,m;for(const p of o)for(f=0,++h;f0){for(var n,r,s=0,o=e[0].length,u;s0){for(var n=0,r=e[t[0]],s,o=r.length;n0)||!((o=(s=e[t[0]]).length)>0))){for(var n=0,r=1,s,o,u;r1&&arguments[1]!==void 0?arguments[1]:M9,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function ut(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var f=n[u-1];return typeof f=="string"?s+f+o:f!==void 0?s+Ji(f)+o:s+o},"")}var Wn=e=>e===0?0:e>0?1:-1,oi=e=>typeof e=="number"&&e!=+e,Ga=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,ye=e=>(typeof e=="number"||e instanceof Number)&&!oi(e),kr=e=>ye(e)||typeof e=="string",N9=0,au=e=>{var t=++N9;return"".concat(e||"").concat(t)},ra=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ye(t)&&typeof t!="string")return r;var o;if(Ga(t)){if(n==null)return r;var u=t.indexOf("%");o=n*parseFloat(t.slice(0,u))/100}else o=+t;return oi(o)&&(o=r),s&&n!=null&&o>n&&(o=n),o},vk=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):co(r,t))===n)}var k9=e=>{for(var t=e.length,n=0,r=0,s=0,o=0,u=1/0,f=-1/0,d=0,h=0,m=0;me===null||typeof e>"u",Ou=e=>dt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function mn(e){return e!=null}function _o(){}var C9=["type","size","sizeType"];function Ov(){return Ov=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(Ou(e));return xk[t]||Q0},U9=(e,t,n)=>{if(t==="area")return e;switch(n){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var r=18*I9;return 1.25*e*e*(Math.tan(r)-Math.tan(r*2)*Math.tan(r)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},V9=(e,t)=>{xk["symbol".concat(Ou(e))]=t},nb=e=>{var{type:t="circle",size:n=64,sizeType:r="area"}=e,s=L9(e,C9),o=x2(x2({},s),{},{type:t,size:n,sizeType:r}),u="circle";typeof t=="string"&&(u=t);var f=()=>{var v=B9(u),x=l9().type(v).size(U9(n,r,u)),w=x();if(w!==null)return w},{className:d,cx:h,cy:m}=o,p=er(o);return ye(h)&&ye(m)&&ye(n)?A.createElement("path",Ov({},p,{className:et("recharts-symbols",d),transform:"translate(".concat(h,", ").concat(m,")"),d:f()})):null};nb.registerSymbol=V9;var wk=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,q9=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(A.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(s=>{X0(s)&&typeof n[s]=="function"&&(r[s]=(o=>n[s](n,o)))}),r},$9=(e,t,n)=>r=>(e(t,n,r),null),_k=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(s=>{var o=e[s];X0(s)&&typeof o=="function"&&(r||(r={}),r[s]=$9(o,t,n))}),r},F9=e=>Array.isArray(e)&&e.length>0;function w2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function H9(e){for(var t=1;t(u[f]===void 0&&r[f]!==void 0&&(u[f]=r[f]),u),n);return o}var Og={},Eg={},_2;function G9(){return _2||(_2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){const s=new Map;for(let o=0;o=0}e.isLength=t})(Cg)),Cg}var O2;function Ak(){return O2||(O2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Z9();function n(r){return r!=null&&typeof r!="function"&&t.isLength(r.length)}e.isArrayLike=n})(kg)),kg}var Dg={},E2;function Q9(){return E2||(E2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="object"&&n!==null}e.isObjectLike=t})(Dg)),Dg}var j2;function J9(){return j2||(j2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Ak(),n=Q9();function r(s){return n.isObjectLike(s)&&t.isArrayLike(s)}e.isArrayLikeObject=r})(Ng)),Ng}var Pg={},Rg={},M2;function e7(){return M2||(M2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=tb();function n(r){return function(s){return t.get(s,r)}}e.property=n})(Rg)),Rg}var Lg={},zg={},Ig={},Bg={},N2;function Tk(){return N2||(N2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n!==null&&(typeof n=="object"||typeof n=="function")}e.isObject=t})(Bg)),Bg}var Ug={},k2;function Ok(){return k2||(k2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null||typeof n!="object"&&typeof n!="function"}e.isPrimitive=t})(Ug)),Ug}var Vg={},C2;function Ek(){return C2||(C2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){return n===r||Number.isNaN(n)&&Number.isNaN(r)}e.isEqualsSameValueZero=t})(Vg)),Vg}var D2;function t7(){return D2||(D2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Tk(),n=Ok(),r=Ek();function s(m,p,v){return typeof v!="function"?s(m,p,()=>{}):o(m,p,function x(w,_,S,O,M,j){const N=v(w,_,S,O,M,j);return N!==void 0?!!N:o(w,_,x,j)},new Map)}function o(m,p,v,x){if(p===m)return!0;switch(typeof p){case"object":return u(m,p,v,x);case"function":return Object.keys(p).length>0?o(m,{...p},v,x):r.isEqualsSameValueZero(m,p);default:return t.isObject(m)?typeof p=="string"?p==="":!0:r.isEqualsSameValueZero(m,p)}}function u(m,p,v,x){if(p==null)return!0;if(Array.isArray(p))return d(m,p,v,x);if(p instanceof Map)return f(m,p,v,x);if(p instanceof Set)return h(m,p,v,x);const w=Object.keys(p);if(m==null||n.isPrimitive(m))return w.length===0;if(w.length===0)return!0;if(x?.has(p))return x.get(p)===m;x?.set(p,m);try{for(let _=0;_{})}e.isMatch=n})(zg)),zg}var qg={},$g={},Fg={},R2;function n7(){return R2||(R2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Object.getOwnPropertySymbols(n).filter(r=>Object.prototype.propertyIsEnumerable.call(n,r))}e.getSymbols=t})(Fg)),Fg}var Hg={},L2;function rb(){return L2||(L2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null?n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(n)}e.getTag=t})(Hg)),Hg}var Kg={},z2;function Mk(){return z2||(z2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",n="[object String]",r="[object Number]",s="[object Boolean]",o="[object Arguments]",u="[object Symbol]",f="[object Date]",d="[object Map]",h="[object Set]",m="[object Array]",p="[object Function]",v="[object ArrayBuffer]",x="[object Object]",w="[object Error]",_="[object DataView]",S="[object Uint8Array]",O="[object Uint8ClampedArray]",M="[object Uint16Array]",j="[object Uint32Array]",N="[object BigUint64Array]",k="[object Int8Array]",C="[object Int16Array]",L="[object Int32Array]",I="[object BigInt64Array]",Y="[object Float32Array]",te="[object Float64Array]";e.argumentsTag=o,e.arrayBufferTag=v,e.arrayTag=m,e.bigInt64ArrayTag=I,e.bigUint64ArrayTag=N,e.booleanTag=s,e.dataViewTag=_,e.dateTag=f,e.errorTag=w,e.float32ArrayTag=Y,e.float64ArrayTag=te,e.functionTag=p,e.int16ArrayTag=C,e.int32ArrayTag=L,e.int8ArrayTag=k,e.mapTag=d,e.numberTag=r,e.objectTag=x,e.regexpTag=t,e.setTag=h,e.stringTag=n,e.symbolTag=u,e.uint16ArrayTag=M,e.uint32ArrayTag=j,e.uint8ArrayTag=S,e.uint8ClampedArrayTag=O})(Kg)),Kg}var Xg={},I2;function r7(){return I2||(I2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}e.isTypedArray=t})(Xg)),Xg}var B2;function Nk(){return B2||(B2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=n7(),n=rb(),r=Mk(),s=Ok(),o=r7();function u(m,p){return f(m,void 0,m,new Map,p)}function f(m,p,v,x=new Map,w=void 0){const _=w?.(m,p,v,x);if(_!==void 0)return _;if(s.isPrimitive(m))return m;if(x.has(m))return x.get(m);if(Array.isArray(m)){const S=new Array(m.length);x.set(m,S);for(let O=0;Ot.isMatch(o,s)}e.matches=r})(Lg)),Lg}var Yg={},Gg={},Wg={},q2;function s7(){return q2||(q2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Nk(),n=rb(),r=Mk();function s(o,u){return t.cloneDeepWith(o,(f,d,h,m)=>{const p=u?.(f,d,h,m);if(p!==void 0)return p;if(typeof o=="object"){if(n.getTag(o)===r.objectTag&&typeof o.constructor!="function"){const v={};return m.set(o,v),t.copyProperties(v,o,h,m),v}switch(Object.prototype.toString.call(o)){case r.numberTag:case r.stringTag:case r.booleanTag:{const v=new o.constructor(o?.valueOf());return t.copyProperties(v,o),v}case r.argumentsTag:{const v={};return t.copyProperties(v,o),v.length=o.length,v[Symbol.iterator]=o[Symbol.iterator],v}default:return}}})}e.cloneDeepWith=s})(Wg)),Wg}var $2;function o7(){return $2||($2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=s7();function n(r){return t.cloneDeepWith(r)}e.cloneDeep=n})(Gg)),Gg}var Zg={},Qg={},F2;function kk(){return F2||(F2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function n(r,s=Number.MAX_SAFE_INTEGER){switch(typeof r){case"number":return Number.isInteger(r)&&r>=0&&r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?h:f;return iy.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:m,iy}var J2;function y7(){return J2||(J2=1,ry.exports=g7()),ry.exports}var eT;function v7(){if(eT)return ny;eT=1;var e=yo(),t=y7();function n(h,m){return h===m&&(h!==0||1/h===1/m)||h!==h&&m!==m}var r=typeof Object.is=="function"?Object.is:n,s=t.useSyncExternalStore,o=e.useRef,u=e.useEffect,f=e.useMemo,d=e.useDebugValue;return ny.useSyncExternalStoreWithSelector=function(h,m,p,v,x){var w=o(null);if(w.current===null){var _={hasValue:!1,value:null};w.current=_}else _=w.current;w=f(function(){function O(C){if(!M){if(M=!0,j=C,C=v(C),x!==void 0&&_.hasValue){var L=_.value;if(x(L,C))return N=L}return N=C}if(L=N,r(j,C))return L;var I=v(C);return x!==void 0&&x(L,I)?(j=C,L):(j=C,N=I)}var M=!1,j,N,k=p===void 0?null:p;return[function(){return O(m())},k===null?void 0:function(){return O(k())}]},[m,p,v,x]);var S=s(h,w[0],w[1]);return u(function(){_.hasValue=!0,_.value=S},[S]),d(S),S},ny}var tT;function b7(){return tT||(tT=1,ty.exports=v7()),ty.exports}var x7=b7(),ib=A.createContext(null),w7=e=>e,it=()=>{var e=A.useContext(ib);return e?e.store.dispatch:w7},Bf=()=>{},_7=()=>Bf,S7=(e,t)=>e===t;function ve(e){var t=A.useContext(ib),n=A.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Bf,[t,e]);return x7.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:_7,t?t.store.getState:Bf,t?t.store.getState:Bf,n,S7)}function A7(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function T7(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function O7(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var nT=e=>Array.isArray(e)?e:[e];function E7(e){const t=Array.isArray(e[0])?e[0]:e;return O7(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function j7(e,t){const n=[],{length:r}=e;for(let s=0;s{n=gf(),u.resetResultsCount()},u.resultsCount=()=>o,u.resetResultsCount=()=>{o=0},u}function C7(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...s)=>{let o=0,u=0,f,d={},h=s.pop();typeof h=="object"&&(d=h,h=s.pop()),A7(h,`createSelector expects an output function after the inputs, but received: [${typeof h}]`);const m={...n,...d},{memoize:p,memoizeOptions:v=[],argsMemoize:x=Ck,argsMemoizeOptions:w=[]}=m,_=nT(v),S=nT(w),O=E7(s),M=p(function(){return o++,h.apply(null,arguments)},..._),j=x(function(){u++;const k=j7(O,arguments);return f=M.apply(null,k),f},...S);return Object.assign(j,{resultFunc:h,memoizedResultFunc:M,dependencies:O,dependencyRecomputations:()=>u,resetDependencyRecomputations:()=>{u=0},lastResult:()=>f,recomputations:()=>o,resetRecomputations:()=>{o=0},memoize:p,argsMemoize:x})};return Object.assign(r,{withTypes:()=>r}),r}var $=C7(Ck),D7=Object.assign((e,t=$)=>{T7(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),r=n.map(o=>e[o]);return t(r,(...o)=>o.reduce((u,f,d)=>(u[n[d]]=f,u),{}))},{withTypes:()=>D7}),ay={},sy={},oy={},iT;function P7(){return iT||(iT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"?1:r===null?2:r===void 0?3:r!==r?4:0}const n=(r,s,o)=>{if(r!==s){const u=t(r),f=t(s);if(u===f&&u===0){if(rs)return o==="desc"?-1:1}return o==="desc"?f-u:u-f}return 0};e.compareValues=n})(oy)),oy}var ly={},uy={},aT;function Dk(){return aT||(aT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"||n instanceof Symbol}e.isSymbol=t})(uy)),uy}var sT;function R7(){return sT||(sT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Dk(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function s(o,u){return Array.isArray(o)?!1:typeof o=="number"||typeof o=="boolean"||o==null||t.isSymbol(o)?!0:typeof o=="string"&&(r.test(o)||!n.test(o))||u!=null&&Object.hasOwn(u,o)}e.isKey=s})(ly)),ly}var oT;function L7(){return oT||(oT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=P7(),n=R7(),r=eb();function s(o,u,f,d){if(o==null)return[];f=d?void 0:f,Array.isArray(o)||(o=Object.values(o)),Array.isArray(u)||(u=u==null?[null]:[u]),u.length===0&&(u=[null]),Array.isArray(f)||(f=f==null?[]:[f]),f=f.map(x=>String(x));const h=(x,w)=>{let _=x;for(let S=0;Sw==null||x==null?w:typeof x=="object"&&"key"in x?Object.hasOwn(w,x.key)?w[x.key]:h(w,x.path):typeof x=="function"?x(w):Array.isArray(x)?h(w,x):typeof w=="object"?w[x]:w,p=u.map(x=>(Array.isArray(x)&&x.length===1&&(x=x[0]),x==null||typeof x=="function"||Array.isArray(x)||n.isKey(x)?x:{key:x,path:r.toPath(x)}));return o.map(x=>({original:x,criteria:p.map(w=>m(w,x))})).slice().sort((x,w)=>{for(let _=0;_x.original)}e.orderBy=s})(sy)),sy}var cy={},lT;function z7(){return lT||(lT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r=1){const s=[],o=Math.floor(r),u=(f,d)=>{for(let h=0;h1&&r.isIterateeCall(o,u[0],u[1])?u=[]:f>2&&r.isIterateeCall(u[0],u[1],u[2])&&(u=[u[0]]),t.orderBy(o,n.flatten(u),["asc"])}e.sortBy=s})(ay)),ay}var dy,fT;function B7(){return fT||(fT=1,dy=I7().sortBy),dy}var U7=B7();const Zd=ia(U7);var Rk=e=>e.legend.settings,V7=e=>e.legend.size,q7=e=>e.legend.payload;$([q7,Rk],(e,t)=>{var{itemSorter:n}=t,r=e.flat(1);return n?Zd(r,n):r});var yf=1;function $7(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,n]=A.useState({height:0,left:0,top:0,width:0}),r=A.useCallback(s=>{if(s!=null){var o=s.getBoundingClientRect(),u={height:o.height,left:o.left,top:o.top,width:o.width};(Math.abs(u.height-t.height)>yf||Math.abs(u.left-t.left)>yf||Math.abs(u.top-t.top)>yf||Math.abs(u.width-t.width)>yf)&&n({height:u.height,left:u.left,top:u.top,width:u.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,r]}function $t(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 F7=typeof Symbol=="function"&&Symbol.observable||"@@observable",dT=F7,hy=()=>Math.random().toString(36).substring(7).split("").join("."),H7={INIT:`@@redux/INIT${hy()}`,REPLACE:`@@redux/REPLACE${hy()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${hy()}`},rd=H7;function ab(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function Lk(e,t,n){if(typeof e!="function")throw new Error($t(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error($t(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error($t(1));return n(Lk)(e,t)}let r=e,s=t,o=new Map,u=o,f=0,d=!1;function h(){u===o&&(u=new Map,o.forEach((S,O)=>{u.set(O,S)}))}function m(){if(d)throw new Error($t(3));return s}function p(S){if(typeof S!="function")throw new Error($t(4));if(d)throw new Error($t(5));let O=!0;h();const M=f++;return u.set(M,S),function(){if(O){if(d)throw new Error($t(6));O=!1,h(),u.delete(M),o=null}}}function v(S){if(!ab(S))throw new Error($t(7));if(typeof S.type>"u")throw new Error($t(8));if(typeof S.type!="string")throw new Error($t(17));if(d)throw new Error($t(9));try{d=!0,s=r(s,S)}finally{d=!1}return(o=u).forEach(M=>{M()}),S}function x(S){if(typeof S!="function")throw new Error($t(10));r=S,v({type:rd.REPLACE})}function w(){const S=p;return{subscribe(O){if(typeof O!="object"||O===null)throw new Error($t(11));function M(){const N=O;N.next&&N.next(m())}return M(),{unsubscribe:S(M)}},[dT](){return this}}}return v({type:rd.INIT}),{dispatch:v,subscribe:p,getState:m,replaceReducer:x,[dT]:w}}function K7(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:rd.INIT})>"u")throw new Error($t(12));if(typeof n(void 0,{type:rd.PROBE_UNKNOWN_ACTION()})>"u")throw new Error($t(13))})}function zk(e){const t=Object.keys(e),n={};for(let o=0;o"u")throw f&&f.type,new Error($t(14));h[p]=w,d=d||w!==x}return d=d||r.length!==Object.keys(u).length,d?h:u}}function id(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function X7(...e){return t=>(n,r)=>{const s=t(n,r);let o=()=>{throw new Error($t(15))};const u={getState:s.getState,dispatch:(d,...h)=>o(d,...h)},f=e.map(d=>d(u));return o=id(...f)(s.dispatch),{...s,dispatch:o}}}function Ik(e){return ab(e)&&"type"in e&&typeof e.type=="string"}var Bk=Symbol.for("immer-nothing"),hT=Symbol.for("immer-draftable"),an=Symbol.for("immer-state");function lr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Cn=Object,fo=Cn.getPrototypeOf,ad="constructor",Qd="prototype",Ev="configurable",sd="enumerable",Uf="writable",su="value",li=e=>!!e&&!!e[an];function mr(e){return e?Uk(e)||eh(e)||!!e[hT]||!!e[ad]?.[hT]||th(e)||nh(e):!1}var Y7=Cn[Qd][ad].toString(),mT=new WeakMap;function Uk(e){if(!e||!sb(e))return!1;const t=fo(e);if(t===null||t===Cn[Qd])return!0;const n=Cn.hasOwnProperty.call(t,ad)&&t[ad];if(n===Object)return!0;if(!Ws(n))return!1;let r=mT.get(n);return r===void 0&&(r=Function.toString.call(n),mT.set(n,r)),r===Y7}function Jd(e,t,n=!0){Eu(e)===0?(n?Reflect.ownKeys(e):Cn.keys(e)).forEach(s=>{t(s,e[s],e)}):e.forEach((r,s)=>t(s,r,e))}function Eu(e){const t=e[an];return t?t.type_:eh(e)?1:th(e)?2:nh(e)?3:0}var pT=(e,t,n=Eu(e))=>n===2?e.has(t):Cn[Qd].hasOwnProperty.call(e,t),jv=(e,t,n=Eu(e))=>n===2?e.get(t):e[t],od=(e,t,n,r=Eu(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function G7(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var eh=Array.isArray,th=e=>e instanceof Map,nh=e=>e instanceof Set,sb=e=>typeof e=="object",Ws=e=>typeof e=="function",my=e=>typeof e=="boolean";function W7(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Jr=e=>e.copy_||e.base_,ob=e=>e.modified_?e.copy_:e.base_;function Mv(e,t){if(th(e))return new Map(e);if(nh(e))return new Set(e);if(eh(e))return Array[Qd].slice.call(e);const n=Uk(e);if(t===!0||t==="class_only"&&!n){const r=Cn.getOwnPropertyDescriptors(e);delete r[an];let s=Reflect.ownKeys(r);for(let o=0;o1&&Cn.defineProperties(e,{set:vf,add:vf,clear:vf,delete:vf}),Cn.freeze(e),t&&Jd(e,(n,r)=>{lb(r,!0)},!1)),e}function Z7(){lr(2)}var vf={[su]:Z7};function rh(e){return e===null||!sb(e)?!0:Cn.isFrozen(e)}var ld="MapSet",Nv="Patches",gT="ArrayMethods",Vk={};function Wa(e){const t=Vk[e];return t||lr(0,e),t}var yT=e=>!!Vk[e],ou,qk=()=>ou,Q7=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:yT(ld)?Wa(ld):void 0,arrayMethodsPlugin_:yT(gT)?Wa(gT):void 0});function vT(e,t){t&&(e.patchPlugin_=Wa(Nv),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function kv(e){Cv(e),e.drafts_.forEach(J7),e.drafts_=null}function Cv(e){e===ou&&(ou=e.parent_)}var bT=e=>ou=Q7(ou,e);function J7(e){const t=e[an];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function xT(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[an].modified_&&(kv(t),lr(4)),mr(e)&&(e=wT(t,e));const{patchPlugin_:s}=t;s&&s.generateReplacementPatches_(n[an].base_,e,t)}else e=wT(t,n);return eU(t,e,!0),kv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==Bk?e:void 0}function wT(e,t){if(rh(t))return t;const n=t[an];if(!n)return ud(t,e.handledSet_,e);if(!ih(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);Hk(n,e)}return n.copy_}function eU(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&lb(t,n)}function $k(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var ih=(e,t)=>e.scope_===t,tU=[];function Fk(e,t,n,r){const s=Jr(e),o=e.type_;if(r!==void 0&&jv(s,r,o)===t){od(s,r,n,o);return}if(!e.draftLocations_){const f=e.draftLocations_=new Map;Jd(s,(d,h)=>{if(li(h)){const m=f.get(h)||[];m.push(d),f.set(h,m)}})}const u=e.draftLocations_.get(t)??tU;for(const f of u)od(s,f,n,o)}function nU(e,t,n){e.callbacks_.push(function(s){const o=t;if(!o||!ih(o,s))return;s.mapSetPlugin_?.fixSetContents(o);const u=ob(o);Fk(e,o.draft_??o,u,n),Hk(o,s)})}function Hk(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:r}=t;if(r){const s=r.getPath(e);s&&r.generatePatches_(e,s,t)}$k(e)}}function rU(e,t,n){const{scope_:r}=e;if(li(n)){const s=n[an];ih(s,r)&&s.callbacks_.push(function(){Vf(e);const u=ob(s);Fk(e,n,u,t)})}else mr(n)&&e.callbacks_.push(function(){const o=Jr(e);e.type_===3?o.has(n)&&ud(n,r.handledSet_,r):jv(o,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ud(jv(e.copy_,t,e.type_),r.handledSet_,r)})}function ud(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||li(e)||t.has(e)||!mr(e)||rh(e)||(t.add(e),Jd(e,(r,s)=>{if(li(s)){const o=s[an];if(ih(o,n)){const u=ob(o);od(e,r,u,e.type_),$k(o)}}else mr(s)&&ud(s,t,n)})),e}function iU(e,t){const n=eh(e),r={type_:n?1:0,scope_:t?t.scope_:qk(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let s=r,o=cd;n&&(s=[r],o=lu);const{revoke:u,proxy:f}=Proxy.revocable(s,o);return r.draft_=f,r.revoke_=u,[f,r]}var cd={get(e,t){if(t===an)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const s=Jr(e);if(!pT(s,t,e.type_))return aU(e,s,t);const o=s[t];if(e.finalized_||!mr(o)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&W7(t))return o;if(o===py(e.base_,t)){Vf(e);const u=e.type_===1?+t:t,f=Pv(e.scope_,o,e,u);return e.copy_[u]=f}return o},has(e,t){return t in Jr(e)},ownKeys(e){return Reflect.ownKeys(Jr(e))},set(e,t,n){const r=Kk(Jr(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const s=py(Jr(e),t),o=s?.[an];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(G7(n,s)&&(n!==void 0||pT(e.base_,t,e.type_)))return!0;Vf(e),Dv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),rU(e,t,n)),!0},deleteProperty(e,t){return Vf(e),py(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Dv(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Jr(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Uf]:!0,[Ev]:e.type_!==1||t!=="length",[sd]:r[sd],[su]:n[t]}},defineProperty(){lr(11)},getPrototypeOf(e){return fo(e.base_)},setPrototypeOf(){lr(12)}},lu={};for(let e in cd){let t=cd[e];lu[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}lu.deleteProperty=function(e,t){return lu.set.call(this,e,t,void 0)};lu.set=function(e,t,n){return cd.set.call(this,e[0],t,n,e[0])};function py(e,t){const n=e[an];return(n?Jr(n):e)[t]}function aU(e,t,n){const r=Kk(t,n);return r?su in r?r[su]:r.get?.call(e.draft_):void 0}function Kk(e,t){if(!(t in e))return;let n=fo(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=fo(n)}}function Dv(e){e.modified_||(e.modified_=!0,e.parent_&&Dv(e.parent_))}function Vf(e){e.copy_||(e.assigned_=new Map,e.copy_=Mv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var sU=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,s)=>{if(Ws(n)&&!Ws(r)){const u=r;r=n;const f=this;return function(h=u,...m){return f.produce(h,p=>r.call(this,p,...m))}}Ws(r)||lr(6),s!==void 0&&!Ws(s)&&lr(7);let o;if(mr(n)){const u=bT(this),f=Pv(u,n,void 0);let d=!0;try{o=r(f),d=!1}finally{d?kv(u):Cv(u)}return vT(u,s),xT(o,u)}else if(!n||!sb(n)){if(o=r(n),o===void 0&&(o=n),o===Bk&&(o=void 0),this.autoFreeze_&&lb(o,!0),s){const u=[],f=[];Wa(Nv).generateReplacementPatches_(n,o,{patches_:u,inversePatches_:f}),s(u,f)}return o}else lr(1,n)},this.produceWithPatches=(n,r)=>{if(Ws(n))return(f,...d)=>this.produceWithPatches(f,h=>n(h,...d));let s,o;return[this.produce(n,r,(f,d)=>{s=f,o=d}),s,o]},my(t?.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),my(t?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),my(t?.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){mr(t)||lr(8),li(t)&&(t=Zn(t));const n=bT(this),r=Pv(n,t,void 0);return r[an].isManual_=!0,Cv(n),r}finishDraft(t,n){const r=t&&t[an];(!r||!r.isManual_)&&lr(9);const{scope_:s}=r;return vT(s,n),xT(void 0,s)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,n){let r;for(r=n.length-1;r>=0;r--){const o=n[r];if(o.path.length===0&&o.op==="replace"){t=o.value;break}}r>-1&&(n=n.slice(r+1));const s=Wa(Nv).applyPatches_;return li(t)?s(t,n):this.produce(t,o=>s(o,n))}};function Pv(e,t,n,r){const[s,o]=th(t)?Wa(ld).proxyMap_(t,n):nh(t)?Wa(ld).proxySet_(t,n):iU(t,n);return(n?.scope_??qk()).drafts_.push(s),o.callbacks_=n?.callbacks_??[],o.key_=r,n&&r!==void 0?nU(n,o,r):o.callbacks_.push(function(d){d.mapSetPlugin_?.fixSetContents(o);const{patchPlugin_:h}=d;o.modified_&&h&&h.generatePatches_(o,[],d)}),s}function Zn(e){return li(e)||lr(10,e),Xk(e)}function Xk(e){if(!mr(e)||rh(e))return e;const t=e[an];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Mv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Mv(e,!0);return Jd(n,(s,o)=>{od(n,s,Xk(o))},r),t&&(t.finalized_=!1),n}var oU=new sU,Yk=oU.produce;function Gk(e){return({dispatch:n,getState:r})=>s=>o=>typeof o=="function"?o(n,r,e):s(o)}var lU=Gk(),uU=Gk,cU=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?id:id.apply(null,arguments)};function Pn(e,t){function n(...r){if(t){let s=t(...r);if(!s)throw new Error(Dn(0));return{type:e,payload:s.payload,..."meta"in s&&{meta:s.meta},..."error"in s&&{error:s.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>Ik(r)&&r.type===e,n}var Wk=class Fl extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Fl.prototype)}static get[Symbol.species](){return Fl}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Fl(...t[0].concat(this)):new Fl(...t.concat(this))}};function _T(e){return mr(e)?Yk(e,()=>{}):e}function bf(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function fU(e){return typeof e=="boolean"}var dU=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:s=!0,actionCreatorCheck:o=!0}=t??{};let u=new Wk;return n&&(fU(n)?u.push(lU):u.push(uU(n.extraArgument))),u},Zk="RTK_autoBatch",Qe=()=>e=>({payload:e,meta:{[Zk]:!0}}),ST=e=>t=>{setTimeout(t,e)},Qk=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let s=!0,o=!1,u=!1;const f=new Set,d=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:ST(10):e.type==="callback"?e.queueNotification:ST(e.timeout),h=()=>{u=!1,o&&(o=!1,f.forEach(m=>m()))};return Object.assign({},r,{subscribe(m){const p=()=>s&&m(),v=r.subscribe(p);return f.add(m),()=>{v(),f.delete(m)}},dispatch(m){try{return s=!m?.meta?.[Zk],o=!s,o&&(u||(u=!0,d(h))),r.dispatch(m)}finally{s=!0}}})},hU=e=>function(n){const{autoBatch:r=!0}=n??{};let s=new Wk(e);return r&&s.push(Qk(typeof r=="object"?r:void 0)),s};function mU(e){const t=dU(),{reducer:n=void 0,middleware:r,devTools:s=!0,preloadedState:o=void 0,enhancers:u=void 0}=e||{};let f;if(typeof n=="function")f=n;else if(ab(n))f=zk(n);else throw new Error(Dn(1));let d;typeof r=="function"?d=r(t):d=t();let h=id;s&&(h=cU({trace:!1,...typeof s=="object"&&s}));const m=X7(...d),p=hU(m);let v=typeof u=="function"?u(p):p();const x=h(...v);return Lk(f,o,x)}function Jk(e){const t={},n=[];let r;const s={addCase(o,u){const f=typeof o=="string"?o:o.type;if(!f)throw new Error(Dn(28));if(f in t)throw new Error(Dn(29));return t[f]=u,s},addAsyncThunk(o,u){return u.pending&&(t[o.pending.type]=u.pending),u.rejected&&(t[o.rejected.type]=u.rejected),u.fulfilled&&(t[o.fulfilled.type]=u.fulfilled),u.settled&&n.push({matcher:o.settled,reducer:u.settled}),s},addMatcher(o,u){return n.push({matcher:o,reducer:u}),s},addDefaultCase(o){return r=o,s}};return e(s),[t,n,r]}function pU(e){return typeof e=="function"}function gU(e,t){let[n,r,s]=Jk(t),o;if(pU(e))o=()=>_T(e());else{const f=_T(e);o=()=>f}function u(f=o(),d){let h=[n[d.type],...r.filter(({matcher:m})=>m(d)).map(({reducer:m})=>m)];return h.filter(m=>!!m).length===0&&(h=[s]),h.reduce((m,p)=>{if(p)if(li(m)){const x=p(m,d);return x===void 0?m:x}else{if(mr(m))return Yk(m,v=>p(v,d));{const v=p(m,d);if(v===void 0){if(m===null)return m;throw Error("A case reducer on a non-draftable value must not return undefined")}return v}}return m},f)}return u.getInitialState=o,u}var yU="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",vU=(e=21)=>{let t="",n=e;for(;n--;)t+=yU[Math.random()*64|0];return t},bU=Symbol.for("rtk-slice-createasyncthunk");function xU(e,t){return`${e}/${t}`}function wU({creators:e}={}){const t=e?.asyncThunk?.[bU];return function(r){const{name:s,reducerPath:o=s}=r;if(!s)throw new Error(Dn(11));const u=(typeof r.reducers=="function"?r.reducers(SU()):r.reducers)||{},f=Object.keys(u),d={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},h={addCase(j,N){const k=typeof j=="string"?j:j.type;if(!k)throw new Error(Dn(12));if(k in d.sliceCaseReducersByType)throw new Error(Dn(13));return d.sliceCaseReducersByType[k]=N,h},addMatcher(j,N){return d.sliceMatchers.push({matcher:j,reducer:N}),h},exposeAction(j,N){return d.actionCreators[j]=N,h},exposeCaseReducer(j,N){return d.sliceCaseReducersByName[j]=N,h}};f.forEach(j=>{const N=u[j],k={reducerName:j,type:xU(s,j),createNotation:typeof r.reducers=="function"};TU(N)?EU(k,N,h,t):AU(k,N,h)});function m(){const[j={},N=[],k=void 0]=typeof r.extraReducers=="function"?Jk(r.extraReducers):[r.extraReducers],C={...j,...d.sliceCaseReducersByType};return gU(r.initialState,L=>{for(let I in C)L.addCase(I,C[I]);for(let I of d.sliceMatchers)L.addMatcher(I.matcher,I.reducer);for(let I of N)L.addMatcher(I.matcher,I.reducer);k&&L.addDefaultCase(k)})}const p=j=>j,v=new Map,x=new WeakMap;let w;function _(j,N){return w||(w=m()),w(j,N)}function S(){return w||(w=m()),w.getInitialState()}function O(j,N=!1){function k(L){let I=L[j];return typeof I>"u"&&N&&(I=bf(x,k,S)),I}function C(L=p){const I=bf(v,N,()=>new WeakMap);return bf(I,L,()=>{const Y={};for(const[te,ie]of Object.entries(r.selectors??{}))Y[te]=_U(ie,L,()=>bf(x,L,S),N);return Y})}return{reducerPath:j,getSelectors:C,get selectors(){return C(k)},selectSlice:k}}const M={name:s,reducer:_,actions:d.actionCreators,caseReducers:d.sliceCaseReducersByName,getInitialState:S,...O(o),injectInto(j,{reducerPath:N,...k}={}){const C=N??o;return j.inject({reducerPath:C,reducer:_},k),{...M,...O(C,!0)}}};return M}}function _U(e,t,n,r){function s(o,...u){let f=t(o);return typeof f>"u"&&r&&(f=n()),e(f,...u)}return s.unwrapped=e,s}var Qt=wU();function SU(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function AU({type:e,reducerName:t,createNotation:n},r,s){let o,u;if("reducer"in r){if(n&&!OU(r))throw new Error(Dn(17));o=r.reducer,u=r.prepare}else o=r;s.addCase(e,o).exposeCaseReducer(t,o).exposeAction(t,u?Pn(e,u):Pn(e))}function TU(e){return e._reducerDefinitionType==="asyncThunk"}function OU(e){return e._reducerDefinitionType==="reducerWithPrepare"}function EU({type:e,reducerName:t},n,r,s){if(!s)throw new Error(Dn(18));const{payloadCreator:o,fulfilled:u,pending:f,rejected:d,settled:h,options:m}=n,p=s(e,o,m);r.exposeAction(t,p),u&&r.addCase(p.fulfilled,u),f&&r.addCase(p.pending,f),d&&r.addCase(p.rejected,d),h&&r.addMatcher(p.settled,h),r.exposeCaseReducer(t,{fulfilled:u||xf,pending:f||xf,rejected:d||xf,settled:h||xf})}function xf(){}var jU="task",eC="listener",tC="completed",ub="cancelled",MU=`task-${ub}`,NU=`task-${tC}`,Rv=`${eC}-${ub}`,kU=`${eC}-${tC}`,ah=class{constructor(e){this.code=e,this.message=`${jU} ${ub} (reason: ${e})`}name="TaskAbortError";message},cb=(e,t)=>{if(typeof e!="function")throw new TypeError(Dn(32))},fd=()=>{},nC=(e,t=fd)=>(e.catch(t),e),rC=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Ha=e=>{if(e.aborted)throw new ah(e.reason)};function iC(e,t){let n=fd;return new Promise((r,s)=>{const o=()=>s(new ah(e.reason));if(e.aborted){o();return}n=rC(e,o),t.finally(()=>n()).then(r,s)}).finally(()=>{n=fd})}var CU=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof ah?"cancelled":"rejected",error:n}}finally{t?.()}},dd=e=>t=>nC(iC(e,t).then(n=>(Ha(e),n))),aC=e=>{const t=dd(e);return n=>t(new Promise(r=>setTimeout(r,n)))},{assign:so}=Object,AT={},sh="listenerMiddleware",DU=(e,t)=>{const n=r=>rC(e,()=>r.abort(e.reason));return(r,s)=>{cb(r);const o=new AbortController;n(o);const u=CU(async()=>{Ha(e),Ha(o.signal);const f=await r({pause:dd(o.signal),delay:aC(o.signal),signal:o.signal});return Ha(o.signal),f},()=>o.abort(NU));return s?.autoJoin&&t.push(u.catch(fd)),{result:dd(e)(u),cancel(){o.abort(MU)}}}},PU=(e,t)=>{const n=async(r,s)=>{Ha(t);let o=()=>{};const f=[new Promise((d,h)=>{let m=e({predicate:r,effect:(p,v)=>{v.unsubscribe(),d([p,v.getState(),v.getOriginalState()])}});o=()=>{m(),h()}})];s!=null&&f.push(new Promise(d=>setTimeout(d,s,null)));try{const d=await iC(t,Promise.race(f));return Ha(t),d}finally{o()}};return(r,s)=>nC(n(r,s))},sC=e=>{let{type:t,actionCreator:n,matcher:r,predicate:s,effect:o}=e;if(t)s=Pn(t).match;else if(n)t=n.type,s=n.match;else if(r)s=r;else if(!s)throw new Error(Dn(21));return cb(o),{predicate:s,type:t,effect:o}},oC=so(e=>{const{type:t,predicate:n,effect:r}=sC(e);return{id:vU(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(Dn(22))}}},{withTypes:()=>oC}),TT=(e,t)=>{const{type:n,effect:r,predicate:s}=sC(t);return Array.from(e.values()).find(o=>(typeof n=="string"?o.type===n:o.predicate===s)&&o.effect===r)},Lv=e=>{e.pending.forEach(t=>{t.abort(Rv)})},RU=(e,t)=>()=>{for(const n of t.keys())Lv(n);e.clear()},OT=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},lC=so(Pn(`${sh}/add`),{withTypes:()=>lC}),LU=Pn(`${sh}/removeAll`),uC=so(Pn(`${sh}/remove`),{withTypes:()=>uC}),zU=(...e)=>{console.error(`${sh}/error`,...e)},ju=(e={})=>{const t=new Map,n=new Map,r=x=>{const w=n.get(x)??0;n.set(x,w+1)},s=x=>{const w=n.get(x)??1;w===1?n.delete(x):n.set(x,w-1)},{extra:o,onError:u=zU}=e;cb(u);const f=x=>(x.unsubscribe=()=>t.delete(x.id),t.set(x.id,x),w=>{x.unsubscribe(),w?.cancelActive&&Lv(x)}),d=x=>{const w=TT(t,x)??oC(x);return f(w)};so(d,{withTypes:()=>d});const h=x=>{const w=TT(t,x);return w&&(w.unsubscribe(),x.cancelActive&&Lv(w)),!!w};so(h,{withTypes:()=>h});const m=async(x,w,_,S)=>{const O=new AbortController,M=PU(d,O.signal),j=[];try{x.pending.add(O),r(x),await Promise.resolve(x.effect(w,so({},_,{getOriginalState:S,condition:(N,k)=>M(N,k).then(Boolean),take:M,delay:aC(O.signal),pause:dd(O.signal),extra:o,signal:O.signal,fork:DU(O.signal,j),unsubscribe:x.unsubscribe,subscribe:()=>{t.set(x.id,x)},cancelActiveListeners:()=>{x.pending.forEach((N,k,C)=>{N!==O&&(N.abort(Rv),C.delete(N))})},cancel:()=>{O.abort(Rv),x.pending.delete(O)},throwIfCancelled:()=>{Ha(O.signal)}})))}catch(N){N instanceof ah||OT(u,N,{raisedBy:"effect"})}finally{await Promise.all(j),O.abort(kU),s(x),x.pending.delete(O)}},p=RU(t,n);return{middleware:x=>w=>_=>{if(!Ik(_))return w(_);if(lC.match(_))return d(_.payload);if(LU.match(_)){p();return}if(uC.match(_))return h(_.payload);let S=x.getState();const O=()=>{if(S===AT)throw new Error(Dn(23));return S};let M;try{if(M=w(_),t.size>0){const j=x.getState(),N=Array.from(t.values());for(const k of N){let C=!1;try{C=k.predicate(_,j,S)}catch(L){C=!1,OT(u,L,{raisedBy:"predicate"})}C&&m(k,_,x,O)}}}finally{S=AT}return M},startListening:d,stopListening:h,clearListeners:p}};function Dn(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 IU={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},cC=Qt({name:"chartLayout",initialState:IU,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,s,o;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(s=t.payload.bottom)!==null&&s!==void 0?s:0,e.margin.left=(o=t.payload.left)!==null&&o!==void 0?o:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:BU,setLayout:UU,setChartSize:VU,setScale:qU}=cC.actions,$U=cC.reducer;function fC(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function Le(e){return Number.isFinite(e)}function Cr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function ET(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ro(e){for(var t=1;t{if(t&&n){var{width:r,height:s}=n,{align:o,verticalAlign:u,layout:f}=t;if((f==="vertical"||f==="horizontal"&&u==="middle")&&o!=="center"&&ye(e[o]))return ro(ro({},e),{},{[o]:e[o]+(r||0)});if((f==="horizontal"||f==="vertical"&&o==="center")&&u!=="middle"&&ye(e[u]))return ro(ro({},e),{},{[u]:e[u]+(s||0)})}return e},sa=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",dC=(e,t,n,r)=>{if(r)return e.map(f=>f.coordinate);var s,o,u=e.map(f=>(f.coordinate===t&&(s=!0),f.coordinate===n&&(o=!0),f.coordinate));return s||u.push(t),o||u.push(n),u},hC=(e,t,n)=>{if(!e)return null;var{duplicateDomain:r,type:s,range:o,scale:u,realScaleType:f,isCategorical:d,categoricalDomain:h,tickCount:m,ticks:p,niceTicks:v,axisType:x}=e;if(!u)return null;var w=f==="scaleBand"&&u.bandwidth?u.bandwidth()/2:2,_=s==="category"&&u.bandwidth?u.bandwidth()/w:0;if(_=x==="angleAxis"&&o&&o.length>=2?Wn(o[0]-o[1])*2*_:_,p||v){var S=(p||v||[]).map((O,M)=>{var j=r?r.indexOf(O):O,N=u.map(j);return Le(N)?{coordinate:N+_,value:O,offset:_,index:M}:null}).filter(mn);return S}return d&&h?h.map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:O,index:M,offset:_}:null}).filter(mn):u.ticks&&m!=null?u.ticks(m).map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:O,index:M,offset:_}:null}).filter(mn):u.domain().map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:r?r[O]:O,index:M,offset:_}:null}).filter(mn)},YU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var s=0;s=0?(h[0]=o,o+=v,h[1]=o):(h[0]=u,u+=v,h[1]=u)}}}},GU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var s=0;s=0?(d[0]=o,o+=h,d[1]=o):(d[0]=0,d[1]=0)}}}},WU={sign:YU,expand:_9,none:Ya,silhouette:S9,wiggle:A9,positive:GU},ZU=(e,t,n)=>{var r,s=(r=WU[n])!==null&&r!==void 0?r:Ya,o=w9().keys(t).value((f,d)=>Number(Ot(f,d,0))).order(Tv).offset(s),u=o(e);return u.forEach((f,d)=>{f.forEach((h,m)=>{var p=Ot(e[m],t[d],0);Array.isArray(p)&&p.length===2&&ye(p[0])&&ye(p[1])&&(h[0]=p[0],h[1]=p[1])})}),u};function jT(e){var{axis:t,ticks:n,bandSize:r,entry:s,index:o,dataKey:u}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!dt(s[t.dataKey])){var f=bk(n,"value",s[t.dataKey]);if(f)return f.coordinate+r/2}return n!=null&&n[o]?n[o].coordinate+r/2:null}var d=Ot(s,dt(u)?t.dataKey:u),h=t.scale.map(d);return ye(h)?h:null}var QU=e=>{var t=e.flat(2).filter(ye);return[Math.min(...t),Math.max(...t)]},JU=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],eV=(e,t,n)=>{if(e!=null)return JU(Object.keys(e).reduce((r,s)=>{var o=e[s];if(!o)return r;var{stackedData:u}=o,f=u.reduce((d,h)=>{var m=fC(h,t,n),p=QU(m);return!Le(p[0])||!Le(p[1])?d:[Math.min(d[0],p[0]),Math.max(d[1],p[1])]},[1/0,-1/0]);return[Math.min(f[0],r[0]),Math.max(f[1],r[1])]},[1/0,-1/0]))},MT=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,NT=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,kT=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();return r}if(e&&t&&t.length>=2){for(var s=Zd(t,m=>m.coordinate),o=1/0,u=1,f=s.length;u{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},nV=(e,t)=>t==="centric"?e.angle:e.radius,hi=e=>e.layout.width,mi=e=>e.layout.height,rV=e=>e.layout.scale,pC=e=>e.layout.margin,oh=$(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),lh=$(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),iV="data-recharts-item-index",gC="data-recharts-item-id",Mu=60;function DT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function wf(e){for(var t=1;te.brush.height;function uV(e){var t=lh(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var s=typeof r.width=="number"?r.width:Mu;return n+s}return n},0)}function cV(e){var t=lh(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var s=typeof r.width=="number"?r.width:Mu;return n+s}return n},0)}function fV(e){var t=oh(e);return t.reduce((n,r)=>r.orientation==="top"&&!r.mirror&&!r.hide?n+r.height:n,0)}function dV(e){var t=oh(e);return t.reduce((n,r)=>r.orientation==="bottom"&&!r.mirror&&!r.hide?n+r.height:n,0)}var Xt=$([hi,mi,pC,lV,uV,cV,fV,dV,Rk,V7],(e,t,n,r,s,o,u,f,d,h)=>{var m={left:(n.left||0)+s,right:(n.right||0)+o},p={top:(n.top||0)+u,bottom:(n.bottom||0)+f},v=wf(wf({},p),m),x=v.bottom;v.bottom+=r,v=XU(v,d,h);var w=e-v.left-v.right,_=t-v.top-v.bottom;return wf(wf({brushBottom:x},v),{},{width:Math.max(w,0),height:Math.max(_,0)})}),hV=$(Xt,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),yC=$(hi,mi,(e,t)=>({x:0,y:0,width:e,height:t})),mV=A.createContext(null),Jt=()=>A.useContext(mV)!=null,uh=e=>e.brush,ch=$([uh,Xt,pC],(e,t,n)=>({height:e.height,x:ye(e.x)?e.x:t.left,y:ye(e.y)?e.y:t.top+t.height+t.brushBottom-(n?.bottom||0),width:ye(e.width)?e.width:t.width})),gy={},yy={},vy={},PT;function pV(){return PT||(PT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r,{signal:s,edges:o}={}){let u,f=null;const d=o!=null&&o.includes("leading"),h=o==null||o.includes("trailing"),m=()=>{f!==null&&(n.apply(u,f),u=void 0,f=null)},p=()=>{h&&m(),_()};let v=null;const x=()=>{v!=null&&clearTimeout(v),v=setTimeout(()=>{v=null,p()},r)},w=()=>{v!==null&&(clearTimeout(v),v=null)},_=()=>{w(),u=void 0,f=null},S=()=>{m()},O=function(...M){if(s?.aborted)return;u=this,f=M;const j=v==null;x(),d&&j&&m()};return O.schedule=x,O.cancel=_,O.flush=S,s?.addEventListener("abort",_,{once:!0}),O}e.debounce=t})(vy)),vy}var RT;function gV(){return RT||(RT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pV();function n(r,s=0,o={}){typeof o!="object"&&(o={});const{leading:u=!1,trailing:f=!0,maxWait:d}=o,h=Array(2);u&&(h[0]="leading"),f&&(h[1]="trailing");let m,p=null;const v=t.debounce(function(..._){m=r.apply(this,_),p=null},s,{edges:h}),x=function(..._){return d!=null&&(p===null&&(p=Date.now()),Date.now()-p>=d)?(m=r.apply(this,_),p=Date.now(),v.cancel(),v.schedule(),m):(v.apply(this,_),m)},w=()=>(v.flush(),m);return x.cancel=v.cancel,x.flush=w,x}e.debounce=n})(yy)),yy}var LT;function yV(){return LT||(LT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=gV();function n(r,s=0,o={}){const{leading:u=!0,trailing:f=!0}=o;return t.debounce(r,s,{leading:u,maxWait:s,trailing:f})}e.throttle=n})(gy)),gy}var by,zT;function vV(){return zT||(zT=1,by=yV().throttle),by}var bV=vV();const xV=ia(bV);var hd=function(t,n){for(var r=arguments.length,s=new Array(r>2?r-2:0),o=2;os[u++]))}},Ar={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},vC=(e,t,n)=>{var{width:r=Ar.width,height:s=Ar.height,aspect:o,maxHeight:u}=n,f=Ga(r)?e:Number(r),d=Ga(s)?t:Number(s);return o&&o>0&&(f?d=f/o:d&&(f=d*o),u&&d!=null&&d>u&&(d=u)),{calculatedWidth:f,calculatedHeight:d}},wV={width:0,height:0,overflow:"visible"},_V={width:0,overflowX:"visible"},SV={height:0,overflowY:"visible"},AV={},TV=e=>{var{width:t,height:n}=e,r=Ga(t),s=Ga(n);return r&&s?wV:r?_V:s?SV:AV};function OV(e){var{width:t,height:n,aspect:r}=e,s=t,o=n;return s===void 0&&o===void 0?(s=Ar.width,o=Ar.height):s===void 0?s=r&&r>0?void 0:Ar.width:o===void 0&&(o=r&&r>0?void 0:Ar.height),{width:s,height:o}}function zv(){return zv=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:n,height:r}),[n,r]);return NV(s)?A.createElement(bC.Provider,{value:s},t):null}var fb=()=>A.useContext(bC),kV=A.forwardRef((e,t)=>{var{aspect:n,initialDimension:r=Ar.initialDimension,width:s,height:o,minWidth:u=Ar.minWidth,minHeight:f,maxHeight:d,children:h,debounce:m=Ar.debounce,id:p,className:v,onResize:x,style:w={}}=e,_=A.useRef(null),S=A.useRef();S.current=x,A.useImperativeHandle(t,()=>_.current);var[O,M]=A.useState({containerWidth:r.width,containerHeight:r.height}),j=A.useCallback((I,Y)=>{M(te=>{var ie=Math.round(I),K=Math.round(Y);return te.containerWidth===ie&&te.containerHeight===K?te:{containerWidth:ie,containerHeight:K}})},[]);A.useEffect(()=>{if(_.current==null||typeof ResizeObserver>"u")return _o;var I=K=>{var be,pe=K[0];if(pe!=null){var{width:xe,height:V}=pe.contentRect;j(xe,V),(be=S.current)===null||be===void 0||be.call(S,xe,V)}};m>0&&(I=xV(I,m,{trailing:!0,leading:!1}));var Y=new ResizeObserver(I),{width:te,height:ie}=_.current.getBoundingClientRect();return j(te,ie),Y.observe(_.current),()=>{Y.disconnect()}},[j,m]);var{containerWidth:N,containerHeight:k}=O;hd(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:C,calculatedHeight:L}=vC(N,k,{width:s,height:o,aspect:n,maxHeight:d});return hd(C!=null&&C>0||L!=null&&L>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.`,C,L,s,o,u,f,n),A.createElement("div",{id:p?"".concat(p):void 0,className:et("recharts-responsive-container",v),style:B2(B2({},w),{},{width:s,height:o,minWidth:u,minHeight:f,maxHeight:d}),ref:_},A.createElement("div",{style:TV({width:s,height:o})},A.createElement(bC,{width:C,height:L},h)))}),CV=A.forwardRef((e,t)=>{var n=fb();if(Cr(n.width)&&Cr(n.height))return e.children;var{width:r,height:s}=OV({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:o,calculatedHeight:u}=yC(void 0,void 0,{width:r,height:s,aspect:e.aspect,maxHeight:e.maxHeight});return ye(o)&&ye(u)?A.createElement(bC,{width:o,height:u},e.children):A.createElement(NV,zv({},e,{width:r,height:s,ref:t}))});function db(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}}var ku=()=>{var e,t=Jt(),n=ve(hV),r=ve(ch),s=(e=ve(uh))===null||e===void 0?void 0:e.padding;return!t||!r||!s?n:{width:r.width-s.left-s.right,height:r.height-s.top-s.bottom,x:s.left,y:s.top}},DV={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},xC=()=>{var e;return(e=ve(Xt))!==null&&e!==void 0?e:DV},wC=()=>ve(hi),_C=()=>ve(mi),ht=e=>e.layout.layoutType,Nu=()=>ve(ht),SC=()=>{var e=Nu();if(e==="horizontal"||e==="vertical")return e},AC=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},PV=()=>{var e=Nu();return e!==void 0},Cu=e=>{var t=it(),n=Jt(),{width:r,height:s}=e,o=fb(),u=r,f=s;return o&&(u=o.width>0?o.width:r,f=o.height>0?o.height:s),A.useEffect(()=>{!n&&Cr(u)&&Cr(f)&&t(VU({width:u,height:f}))},[t,n,u,f]),null},TC=Symbol.for("immer-nothing"),U2=Symbol.for("immer-draftable"),Rn=Symbol.for("immer-state");function ur(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var uu=Object.getPrototypeOf;function ho(e){return!!e&&!!e[Rn]}function Za(e){return e?OC(e)||Array.isArray(e)||!!e[U2]||!!e.constructor?.[U2]||Du(e)||dh(e):!1}var RV=Object.prototype.constructor.toString(),V2=new WeakMap;function OC(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let r=V2.get(n);return r===void 0&&(r=Function.toString.call(n),V2.set(n,r)),r===RV}function md(e,t,n=!0){fh(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(s=>{t(s,e[s],e)}):e.forEach((r,s)=>t(s,r,e))}function fh(e){const t=e[Rn];return t?t.type_:Array.isArray(e)?1:Du(e)?2:dh(e)?3:0}function Iv(e,t){return fh(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function EC(e,t,n){const r=fh(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function LV(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Du(e){return e instanceof Map}function dh(e){return e instanceof Set}function La(e){return e.copy_||e.base_}function Bv(e,t){if(Du(e))return new Map(e);if(dh(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=OC(e);if(t===!0||t==="class_only"&&!n){const r=Object.getOwnPropertyDescriptors(e);delete r[Rn];let s=Reflect.ownKeys(r);for(let o=0;o1&&Object.defineProperties(e,{set:_f,add:_f,clear:_f,delete:_f}),Object.freeze(e),t&&Object.values(e).forEach(n=>hb(n,!0))),e}function zV(){ur(2)}var _f={value:zV};function hh(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var IV={};function Qa(e){const t=IV[e];return t||ur(0,e),t}var cu;function jC(){return cu}function BV(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function q2(e,t){t&&(Qa("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Uv(e){Vv(e),e.drafts_.forEach(UV),e.drafts_=null}function Vv(e){e===cu&&(cu=e.parent_)}function $2(e){return cu=BV(cu,e)}function UV(e){const t=e[Rn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function F2(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return e!==void 0&&e!==n?(n[Rn].modified_&&(Uv(t),ur(4)),Za(e)&&(e=pd(t,e),t.parent_||gd(t,e)),t.patches_&&Qa("Patches").generateReplacementPatches_(n[Rn].base_,e,t.patches_,t.inversePatches_)):e=pd(t,n,[]),Uv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==TC?e:void 0}function pd(e,t,n){if(hh(t))return t;const r=e.immer_.shouldUseStrictIteration(),s=t[Rn];if(!s)return md(t,(o,u)=>H2(e,s,t,o,u,n),r),t;if(s.scope_!==e)return t;if(!s.modified_)return gd(e,s.base_,!0),s.base_;if(!s.finalized_){s.finalized_=!0,s.scope_.unfinalizedDrafts_--;const o=s.copy_;let u=o,f=!1;s.type_===3&&(u=new Set(o),o.clear(),f=!0),md(u,(d,h)=>H2(e,s,o,d,h,n,f),r),gd(e,o,!1),n&&e.patches_&&Qa("Patches").generatePatches_(s,n,e.patches_,e.inversePatches_)}return s.copy_}function H2(e,t,n,r,s,o,u){if(s==null||typeof s!="object"&&!u)return;const f=hh(s);if(!(f&&!u)){if(ho(s)){const d=o&&t&&t.type_!==3&&!Iv(t.assigned_,r)?o.concat(r):void 0,h=pd(e,s,d);if(EC(n,r,h),ho(h))e.canAutoFreeze_=!1;else return}else u&&n.add(s);if(Za(s)&&!f){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[r]===s&&f)return;pd(e,s),(!t||!t.scope_.parent_)&&typeof r!="symbol"&&(Du(n)?n.has(r):Object.prototype.propertyIsEnumerable.call(n,r))&&gd(e,s)}}}function gd(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&hb(t,n)}function VV(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:jC(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let s=r,o=mb;n&&(s=[r],o=fu);const{revoke:u,proxy:f}=Proxy.revocable(s,o);return r.draft_=f,r.revoke_=u,f}var mb={get(e,t){if(t===Rn)return e;const n=La(e);if(!Iv(n,t))return qV(e,n,t);const r=n[t];return e.finalized_||!Za(r)?r:r===xy(e.base_,t)?(wy(e),e.copy_[t]=$v(r,e)):r},has(e,t){return t in La(e)},ownKeys(e){return Reflect.ownKeys(La(e))},set(e,t,n){const r=MC(La(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const s=xy(La(e),t),o=s?.[Rn];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(LV(n,s)&&(n!==void 0||Iv(e.base_,t)))return!0;wy(e),qv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty(e,t){return xy(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,wy(e),qv(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=La(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:r.enumerable,value:n[t]}},defineProperty(){ur(11)},getPrototypeOf(e){return uu(e.base_)},setPrototypeOf(){ur(12)}},fu={};md(mb,(e,t)=>{fu[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});fu.deleteProperty=function(e,t){return fu.set.call(this,e,t,void 0)};fu.set=function(e,t,n){return mb.set.call(this,e[0],t,n,e[0])};function xy(e,t){const n=e[Rn];return(n?La(n):e)[t]}function qV(e,t,n){const r=MC(t,n);return r?"value"in r?r.value:r.get?.call(e.draft_):void 0}function MC(e,t){if(!(t in e))return;let n=uu(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=uu(n)}}function qv(e){e.modified_||(e.modified_=!0,e.parent_&&qv(e.parent_))}function wy(e){e.copy_||(e.copy_=Bv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var $V=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,n,r)=>{if(typeof t=="function"&&typeof n!="function"){const o=n;n=t;const u=this;return function(d=o,...h){return u.produce(d,m=>n.call(this,m,...h))}}typeof n!="function"&&ur(6),r!==void 0&&typeof r!="function"&&ur(7);let s;if(Za(t)){const o=$2(this),u=$v(t,void 0);let f=!0;try{s=n(u),f=!1}finally{f?Uv(o):Vv(o)}return q2(o,r),F2(s,o)}else if(!t||typeof t!="object"){if(s=n(t),s===void 0&&(s=t),s===TC&&(s=void 0),this.autoFreeze_&&hb(s,!0),r){const o=[],u=[];Qa("Patches").generateReplacementPatches_(t,s,o,u),r(o,u)}return s}else ur(1,t)},this.produceWithPatches=(t,n)=>{if(typeof t=="function")return(u,...f)=>this.produceWithPatches(u,d=>t(d,...f));let r,s;return[this.produce(t,n,(u,f)=>{r=u,s=f}),r,s]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof e?.useStrictIteration=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Za(e)||ur(8),ho(e)&&(e=FV(e));const t=$2(this),n=$v(e,void 0);return n[Rn].isManual_=!0,Vv(t),n}finishDraft(e,t){const n=e&&e[Rn];(!n||!n.isManual_)&&ur(9);const{scope_:r}=n;return q2(r,t),F2(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--){const s=t[n];if(s.path.length===0&&s.op==="replace"){e=s.value;break}}n>-1&&(t=t.slice(n+1));const r=Qa("Patches").applyPatches_;return ho(e)?r(e,t):this.produce(e,s=>r(s,t))}};function $v(e,t){const n=Du(e)?Qa("MapSet").proxyMap_(e,t):dh(e)?Qa("MapSet").proxySet_(e,t):VV(e,t);return(t?t.scope_:jC()).drafts_.push(n),n}function FV(e){return ho(e)||ur(10,e),kC(e)}function kC(e){if(!Za(e)||hh(e))return e;const t=e[Rn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Bv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Bv(e,!0);return md(n,(s,o)=>{EC(n,s,kC(o))},r),t&&(t.finalized_=!1),n}var HV=new $V;HV.produce;var KV={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},NC=Qt({name:"legend",initialState:KV,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},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:Qe()},replaceLegendPayload:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).payload.indexOf(n);s>-1&&(e.payload[s]=r)},prepare:Qe()},removeLegendPayload:{reducer(e,t){var n=Zn(e).payload.indexOf(t.payload);n>-1&&e.payload.splice(n,1)},prepare:Qe()}}}),{setLegendSize:Ene,setLegendSettings:jne,addLegendPayload:XV,replaceLegendPayload:YV,removeLegendPayload:GV}=NC.actions,WV=NC.reducer,_y={exports:{}},Sy={};var K2;function ZV(){if(K2)return Sy;K2=1;var e=yo();function t(d,h){return d===h&&(d!==0||1/d===1/h)||d!==d&&h!==h}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,s=e.useRef,o=e.useEffect,u=e.useMemo,f=e.useDebugValue;return Sy.useSyncExternalStoreWithSelector=function(d,h,m,p,v){var x=s(null);if(x.current===null){var w={hasValue:!1,value:null};x.current=w}else w=x.current;x=u(function(){function S(N){if(!O){if(O=!0,M=N,N=p(N),v!==void 0&&w.hasValue){var C=w.value;if(v(C,N))return j=C}return j=N}if(C=j,n(M,N))return C;var L=p(N);return v!==void 0&&v(C,L)?(M=N,C):(M=N,j=L)}var O=!1,M,j,k=m===void 0?null:m;return[function(){return S(h())},k===null?void 0:function(){return S(k())}]},[h,m,p,v]);var _=r(d,x[0],x[1]);return o(function(){w.hasValue=!0,w.value=_},[_]),f(_),_},Sy}var X2;function QV(){return X2||(X2=1,_y.exports=ZV()),_y.exports}QV();function JV(e){e()}function eq(){let e=null,t=null;return{clear(){e=null,t=null},notify(){JV(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const s=t={callback:n,next:null,prev:t};return s.prev?s.prev.next=s:e=s,function(){!r||e===null||(r=!1,s.next?s.next.prev=s.prev:t=s.prev,s.prev?s.prev.next=s.next:e=s.next)}}}}var Y2={notify(){},get:()=>[]};function tq(e,t){let n,r=Y2,s=0,o=!1;function u(_){m();const S=r.subscribe(_);let O=!1;return()=>{O||(O=!0,S(),p())}}function f(){r.notify()}function d(){w.onStateChange&&w.onStateChange()}function h(){return o}function m(){s++,n||(n=e.subscribe(d),r=eq())}function p(){s--,n&&s===0&&(n(),n=void 0,r.clear(),r=Y2)}function v(){o||(o=!0,m())}function x(){o&&(o=!1,p())}const w={addNestedSub:u,notifyNestedSubs:f,handleChangeWrapper:d,isSubscribed:h,trySubscribe:v,tryUnsubscribe:x,getListeners:()=>r};return w}var nq=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",rq=nq(),iq=()=>typeof navigator<"u"&&navigator.product==="ReactNative",aq=iq(),sq=()=>rq||aq?A.useLayoutEffect:A.useEffect,oq=sq();function G2(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function lq(e,t){if(G2(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let s=0;s{const d=tq(s);return{store:s,subscription:d,getServerState:r?()=>r:void 0}},[s,r]),u=A.useMemo(()=>s.getState(),[s]);oq(()=>{const{subscription:d}=o;return d.onStateChange=d.notifyNestedSubs,d.trySubscribe(),u!==s.getState()&&d.notifyNestedSubs(),()=>{d.tryUnsubscribe(),d.onStateChange=void 0}},[o,u]);const f=n||dq;return A.createElement(f.Provider,{value:o},t)}var mq=hq,pq=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius","throttledEvents"]);function gq(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function mh(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(pq.has(r)){if(e[r]==null&&t[r]==null)continue;if(!lq(e[r],t[r]))return!1}else if(!gq(e[r],t[r]))return!1;return!0}function Fv(){return Fv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=qs.separator,contentStyle:n,itemStyle:r,labelStyle:s=qs.labelStyle,payload:o,formatter:u,itemSorter:f,wrapperClassName:d,labelClassName:h,label:m,labelFormatter:p,accessibilityLayer:v=qs.accessibilityLayer}=e,x=()=>{if(o&&o.length){var N={padding:0,margin:0},C=wq(o,f),L=C.map((I,Y)=>{if(I.type==="none")return null;var te=I.formatter||u||xq,{value:ie,name:K}=I,be=ie,pe=K;if(te){var xe=te(ie,K,I,Y,o);if(Array.isArray(xe))[be,pe]=xe;else if(xe!=null)be=xe;else return null}var V=Ml(Ml({},qs.itemStyle),{},{color:I.color||qs.itemStyle.color},r);return A.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(Y),style:V},Nr(pe)?A.createElement("span",{className:"recharts-tooltip-item-name"},pe):null,Nr(pe)?A.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,A.createElement("span",{className:"recharts-tooltip-item-value"},be),A.createElement("span",{className:"recharts-tooltip-item-unit"},I.unit||""))});return A.createElement("ul",{className:"recharts-tooltip-item-list",style:N},L)}return null},w=Ml(Ml({},qs.contentStyle),n),_=Ml({margin:0},s),S=!dt(m),O=S?m:"",M=et("recharts-default-tooltip",d),j=et("recharts-tooltip-label",h);S&&p&&o!==void 0&&o!==null&&(O=p(m,o));var k=v?{role:"status","aria-live":"assertive"}:{};return A.createElement("div",Fv({className:M,style:w},k),A.createElement("p",{className:j,style:_},A.isValidElement(O)?O:"".concat(O)),x())},kl="recharts-tooltip-wrapper",Sq={visibility:"hidden"};function Aq(e){var{coordinate:t,translateX:n,translateY:r}=e;return et(kl,{["".concat(kl,"-right")]:ye(n)&&t&&ye(t.x)&&n>=t.x,["".concat(kl,"-left")]:ye(n)&&t&&ye(t.x)&&n=t.y,["".concat(kl,"-top")]:ye(r)&&t&&ye(t.y)&&r0?s:0),p=n[r]+s;if(t[r])return u[r]?m:p;var v=d[r];if(v==null)return 0;if(u[r]){var x=m,w=v;return xS?Math.max(m,v):Math.max(p,v)}function Tq(e){var{translateX:t,translateY:n,useTranslate3d:r}=e;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function Oq(e){var{allowEscapeViewBox:t,coordinate:n,offsetTop:r,offsetLeft:s,position:o,reverseDirection:u,tooltipBox:f,useTranslate3d:d,viewBox:h}=e,m,p,v;return f.height>0&&f.width>0&&n?(p=Z2({allowEscapeViewBox:t,coordinate:n,key:"x",offset:s,position:o,reverseDirection:u,tooltipDimension:f.width,viewBox:h,viewBoxDimension:h.width}),v=Z2({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:o,reverseDirection:u,tooltipDimension:f.height,viewBox:h,viewBoxDimension:h.height}),m=Tq({translateX:p,translateY:v,useTranslate3d:d})):m=Sq,{cssProperties:m,cssClasses:Aq({translateX:p,translateY:v,coordinate:n})}}var Eq=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Pu={isSsr:Eq()};function CC(){var[e,t]=A.useState(()=>Pu.isSsr||!window.matchMedia?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches);return A.useEffect(()=>{if(window.matchMedia){var n=window.matchMedia("(prefers-reduced-motion: reduce)"),r=()=>{t(n.matches)};return n.addEventListener("change",r),()=>{n.removeEventListener("change",r)}}},[]),e}function Q2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function $s(e){for(var t=1;t({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}}));A.useEffect(()=>{var w=_=>{if(_.key==="Escape"){var S,O,M,j;h({dismissed:!0,dismissedAtCoordinate:{x:(S=(O=e.coordinate)===null||O===void 0?void 0:O.x)!==null&&S!==void 0?S:0,y:(M=(j=e.coordinate)===null||j===void 0?void 0:j.y)!==null&&M!==void 0?M:0}})}};return document.addEventListener("keydown",w),()=>{document.removeEventListener("keydown",w)}},[(t=e.coordinate)===null||t===void 0?void 0:t.x,(n=e.coordinate)===null||n===void 0?void 0:n.y]),d.dismissed&&(((r=(s=e.coordinate)===null||s===void 0?void 0:s.x)!==null&&r!==void 0?r:0)!==d.dismissedAtCoordinate.x||((o=(u=e.coordinate)===null||u===void 0?void 0:u.y)!==null&&o!==void 0?o:0)!==d.dismissedAtCoordinate.y)&&h($s($s({},d),{},{dismissed:!1}));var{cssClasses:m,cssProperties:p}=Oq({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:{height:e.lastBoundingBox.height,width:e.lastBoundingBox.width},useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),v=e.hasPortalFromProps?{}:$s($s({transition:Nq({prefersReducedMotion:f,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},p),{},{pointerEvents:"none",position:"absolute",top:0,left:0}),x=$s($s({},v),{},{visibility:!d.dismissed&&e.active&&e.hasPayload?"visible":"hidden"},e.wrapperStyle);return A.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:m,style:x,ref:e.innerRef},e.children)}var Dq=A.memo(Cq),DC=()=>{var e;return(e=ve(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function Hv(){return Hv=Object.assign?Object.assign.bind():function(e){for(var t=1;tLe(e.x)&&Le(e.y),nO=e=>e.base!=null&&yd(e.base)&&yd(e),Nl=e=>e.x,Cl=e=>e.y,zq=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(Ou(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=tO["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return tO[n]||Gd},rO={connectNulls:!1,type:"linear"},Iq=e=>{var{type:t=rO.type,points:n=[],baseLine:r,layout:s,connectNulls:o=rO.connectNulls}=e,u=zq(t,s),f=o?n.filter(yd):n;if(Array.isArray(r)){var d,h=n.map((w,_)=>eO(eO({},w),{},{base:r[_]}));s==="vertical"?d=pf().y(Cl).x1(Nl).x0(w=>w.base.x):d=pf().x(Nl).y1(Cl).y0(w=>w.base.y);var m=d.defined(nO).curve(u),p=o?h.filter(nO):h;return m(p)}var v;s==="vertical"&&ye(r)?v=pf().y(Cl).x1(Nl).x0(r):ye(r)?v=pf().x(Nl).y1(Cl).y0(r):v=aN().x(Nl).y(Cl);var x=v.defined(yd).curve(u);return x(f)},pb=e=>{var{className:t,points:n,path:r,pathRef:s}=e,o=Nu();if((!n||!n.length)&&!r)return null;var u={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||o,connectNulls:e.connectNulls},f=n&&n.length?Iq(u):r;return A.createElement("path",Hv({},kr(e),q9(e),{className:et("recharts-curve",t),d:f===null?void 0:f,ref:s}))},Bq=["x","y","top","left","width","height","className"];function Kv(){return Kv=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(s,"v").concat(r,"M").concat(o,",").concat(t,"h").concat(n),Xq=e=>{var{x:t=0,y:n=0,top:r=0,left:s=0,width:o=0,height:u=0,className:f}=e,d=Fq(e,Bq),h=Uq({x:t,y:n,top:r,left:s,width:o,height:u},d);return!ye(t)||!ye(n)||!ye(o)||!ye(u)||!ye(r)||!ye(s)?null:A.createElement("path",Kv({},er(h),{className:et("recharts-cross",f),d:Kq(t,n,o,u,r,s)}))};function Yq(e,t,n,r){var s=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-s:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-s,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function aO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function sO(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),PC=(e,t,n)=>e.map(r=>"".concat(Qq(r)," ").concat(t,"ms ").concat(n)).join(","),Jq=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((n,r)=>n.filter(s=>r.includes(s))),du=(e,t)=>Object.keys(t).reduce((n,r)=>sO(sO({},n),{},{[r]:e(r,t[r])}),{});function oO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function At(e){for(var t=1;te+(t-e)*n,Xv=e=>{var{from:t,to:n}=e;return t!==n},RC=(e,t,n)=>{var r=du((s,o)=>{if(Xv(o)){var[u,f]=e(o.from,o.to,o.velocity);return At(At({},o),{},{from:u,velocity:f})}return o},t);return n<1?du((s,o)=>Xv(o)&&r[s]!=null?At(At({},o),{},{velocity:vd(o.velocity,r[s].velocity,n),from:vd(o.from,r[s].from,n)}):o,t):RC(e,r,n-1)};function r$(e,t,n,r,s,o){var u,f=r.reduce((v,x)=>At(At({},v),{},{[x]:{from:e[x],velocity:0,to:t[x]}}),{}),d=()=>du((v,x)=>x.from,f),h=()=>!Object.values(f).filter(Xv).length,m=null,p=v=>{u||(u=v);var x=v-u,w=x/n.dt;f=RC(n,f,w),s(At(At(At({},e),t),d())),u=v,h()||(m=o.setTimeout(p))};return()=>(m=o.setTimeout(p),()=>{var v;(v=m)===null||v===void 0||v()})}function i$(e,t,n,r,s,o,u){var f=null,d=s.reduce((p,v)=>{var x=e[v],w=t[v];return x==null||w==null?p:At(At({},p),{},{[v]:[x,w]})},{}),h,m=p=>{h||(h=p);var v=(p-h)/r,x=du((_,S)=>vd(...S,n(v)),d);if(o(At(At(At({},e),t),x)),v<1)f=u.setTimeout(m);else{var w=du((_,S)=>vd(...S,n(1)),d);o(At(At(At({},e),t),w))}};return()=>(f=u.setTimeout(m),()=>{var p;(p=f)===null||p===void 0||p()})}const a$=(e,t,n,r,s,o)=>{var u=Jq(e,t);return n==null?()=>(s(At(At({},e),t)),()=>{}):n.isStepper===!0?r$(e,t,n,u,s,o):i$(e,t,n,r,u,s,o)};var bd=1e-4,LC=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],zC=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),lO=(e,t)=>n=>{var r=LC(e,t);return zC(r,n)},s$=(e,t)=>n=>{var r=LC(e,t),s=[...r.map((o,u)=>o*u).slice(1),0];return zC(s,n)},o$=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var s=r.map(o=>parseFloat(o));return[s[0],s[1],s[2],s[3]]},l$=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var s=lO(e,n),o=lO(t,r),u=s$(e,n),f=h=>h>1?1:h<0?0:h,d=h=>{for(var m=h>1?1:h,p=m,v=0;v<8;++v){var x=s(p)-m,w=u(p);if(Math.abs(x-m)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:n=100,damping:r=8,dt:s=17}=t,o=(u,f,d)=>{var h=-(u-f)*n,m=d*r,p=d+(h-m)*s/1e3,v=d*s/1e3+u;return Math.abs(v-f){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return uO(e);case"spring":return c$();default:if(e.split("(")[0]==="cubic-bezier")return uO(e)}return typeof e=="function"?e:null};function d$(e){var t,n=()=>null,r=!1,s=null,o=u=>{if(!r){if(Array.isArray(u)){if(!u.length)return;var f=u,[d,...h]=f;if(typeof d=="number"){s=e.setTimeout(o.bind(null,h),d);return}o(d),s=e.setTimeout(o.bind(null,h));return}typeof u=="string"&&(t=u,n(t)),typeof u=="object"&&(t=u,n(t)),typeof u=="function"&&u()}};return{stop:()=>{r=!0},start:u=>{r=!1,s&&(s(),s=null),o(u)},subscribe:u=>(n=u,()=>{n=()=>null}),getTimeoutController:()=>e}}class h${setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),s=null,o=u=>{u-r>=n?t(u):typeof requestAnimationFrame=="function"&&(s=requestAnimationFrame(o))};return s=requestAnimationFrame(o),()=>{s!=null&&cancelAnimationFrame(s)}}}function m$(){return d$(new h$)}var p$=A.createContext(m$);function g$(e,t){var n=A.useContext(p$);return A.useMemo(()=>t??n(e),[e,t,n])}var y$={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},cO={t:0},Ay={t:1};function gb(e){var t=vn(e,y$),{isActive:n,canBegin:r,duration:s,easing:o,begin:u,onAnimationEnd:f,onAnimationStart:d,children:h}=t,m=CC(),p=n==="auto"?!Pu.isSsr&&!m:n,v=g$(t.animationId,t.animationManager),[x,w]=A.useState(p?cO:Ay),_=A.useRef(null);return A.useEffect(()=>{p||w(Ay)},[p]),A.useEffect(()=>{if(!p||!r)return _o;var S=a$(cO,Ay,f$(o),s,w,v.getTimeoutController()),O=()=>{_.current=S()};return v.start([d,u,O,s,f]),()=>{v.stop(),_.current&&_.current(),f()}},[p,r,s,o,u,d,f,v]),h(x.t)}function yb(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=A.useRef(au(t)),r=A.useRef(e);return r.current!==e&&(n.current=au(t),r.current=e),n.current}var v$=["radius"],b$=["radius"],fO,dO,hO,mO,pO,gO,yO,vO,bO,xO;function wO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function _O(e){for(var t=1;t{var o=Ji(n),u=Ji(r),f=Math.min(Math.abs(o)/2,Math.abs(u)/2),d=u>=0?1:-1,h=o>=0?1:-1,m=u>=0&&o>=0||u<0&&o<0?1:0,p;if(f>0&&Array.isArray(s)){for(var v=[0,0,0,0],x=0,w=4;xf?f:S}p=ut(fO||(fO=xr(["M",",",""])),e,t+d*v[0]),v[0]>0&&(p+=ut(dO||(dO=xr(["A ",",",",0,0,",",",",",""])),v[0],v[0],m,e+h*v[0],t)),p+=ut(hO||(hO=xr(["L ",",",""])),e+n-h*v[1],t),v[1]>0&&(p+=ut(mO||(mO=xr(["A ",",",",0,0,",`, + height and width.`,C,L,s,o,u,f,n),A.createElement("div",{id:p?"".concat(p):void 0,className:et("recharts-responsive-container",v),style:BT(BT({},w),{},{width:s,height:o,minWidth:u,minHeight:f,maxHeight:d}),ref:_},A.createElement("div",{style:TV({width:s,height:o})},A.createElement(xC,{width:C,height:L},h)))}),CV=A.forwardRef((e,t)=>{var n=fb();if(Cr(n.width)&&Cr(n.height))return e.children;var{width:r,height:s}=OV({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:o,calculatedHeight:u}=vC(void 0,void 0,{width:r,height:s,aspect:e.aspect,maxHeight:e.maxHeight});return ye(o)&&ye(u)?A.createElement(xC,{width:o,height:u},e.children):A.createElement(kV,zv({},e,{width:r,height:s,ref:t}))});function db(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}}var Nu=()=>{var e,t=Jt(),n=ve(hV),r=ve(ch),s=(e=ve(uh))===null||e===void 0?void 0:e.padding;return!t||!r||!s?n:{width:r.width-s.left-s.right,height:r.height-s.top-s.bottom,x:s.left,y:s.top}},DV={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},wC=()=>{var e;return(e=ve(Xt))!==null&&e!==void 0?e:DV},_C=()=>ve(hi),SC=()=>ve(mi),ht=e=>e.layout.layoutType,ku=()=>ve(ht),AC=()=>{var e=ku();if(e==="horizontal"||e==="vertical")return e},TC=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},PV=()=>{var e=ku();return e!==void 0},Cu=e=>{var t=it(),n=Jt(),{width:r,height:s}=e,o=fb(),u=r,f=s;return o&&(u=o.width>0?o.width:r,f=o.height>0?o.height:s),A.useEffect(()=>{!n&&Cr(u)&&Cr(f)&&t(VU({width:u,height:f}))},[t,n,u,f]),null},OC=Symbol.for("immer-nothing"),UT=Symbol.for("immer-draftable"),Rn=Symbol.for("immer-state");function ur(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var uu=Object.getPrototypeOf;function ho(e){return!!e&&!!e[Rn]}function Za(e){return e?EC(e)||Array.isArray(e)||!!e[UT]||!!e.constructor?.[UT]||Du(e)||dh(e):!1}var RV=Object.prototype.constructor.toString(),VT=new WeakMap;function EC(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let r=VT.get(n);return r===void 0&&(r=Function.toString.call(n),VT.set(n,r)),r===RV}function md(e,t,n=!0){fh(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(s=>{t(s,e[s],e)}):e.forEach((r,s)=>t(s,r,e))}function fh(e){const t=e[Rn];return t?t.type_:Array.isArray(e)?1:Du(e)?2:dh(e)?3:0}function Iv(e,t){return fh(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function jC(e,t,n){const r=fh(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function LV(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Du(e){return e instanceof Map}function dh(e){return e instanceof Set}function La(e){return e.copy_||e.base_}function Bv(e,t){if(Du(e))return new Map(e);if(dh(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=EC(e);if(t===!0||t==="class_only"&&!n){const r=Object.getOwnPropertyDescriptors(e);delete r[Rn];let s=Reflect.ownKeys(r);for(let o=0;o1&&Object.defineProperties(e,{set:_f,add:_f,clear:_f,delete:_f}),Object.freeze(e),t&&Object.values(e).forEach(n=>hb(n,!0))),e}function zV(){ur(2)}var _f={value:zV};function hh(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var IV={};function Qa(e){const t=IV[e];return t||ur(0,e),t}var cu;function MC(){return cu}function BV(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function qT(e,t){t&&(Qa("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Uv(e){Vv(e),e.drafts_.forEach(UV),e.drafts_=null}function Vv(e){e===cu&&(cu=e.parent_)}function $T(e){return cu=BV(cu,e)}function UV(e){const t=e[Rn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function FT(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return e!==void 0&&e!==n?(n[Rn].modified_&&(Uv(t),ur(4)),Za(e)&&(e=pd(t,e),t.parent_||gd(t,e)),t.patches_&&Qa("Patches").generateReplacementPatches_(n[Rn].base_,e,t.patches_,t.inversePatches_)):e=pd(t,n,[]),Uv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==OC?e:void 0}function pd(e,t,n){if(hh(t))return t;const r=e.immer_.shouldUseStrictIteration(),s=t[Rn];if(!s)return md(t,(o,u)=>HT(e,s,t,o,u,n),r),t;if(s.scope_!==e)return t;if(!s.modified_)return gd(e,s.base_,!0),s.base_;if(!s.finalized_){s.finalized_=!0,s.scope_.unfinalizedDrafts_--;const o=s.copy_;let u=o,f=!1;s.type_===3&&(u=new Set(o),o.clear(),f=!0),md(u,(d,h)=>HT(e,s,o,d,h,n,f),r),gd(e,o,!1),n&&e.patches_&&Qa("Patches").generatePatches_(s,n,e.patches_,e.inversePatches_)}return s.copy_}function HT(e,t,n,r,s,o,u){if(s==null||typeof s!="object"&&!u)return;const f=hh(s);if(!(f&&!u)){if(ho(s)){const d=o&&t&&t.type_!==3&&!Iv(t.assigned_,r)?o.concat(r):void 0,h=pd(e,s,d);if(jC(n,r,h),ho(h))e.canAutoFreeze_=!1;else return}else u&&n.add(s);if(Za(s)&&!f){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[r]===s&&f)return;pd(e,s),(!t||!t.scope_.parent_)&&typeof r!="symbol"&&(Du(n)?n.has(r):Object.prototype.propertyIsEnumerable.call(n,r))&&gd(e,s)}}}function gd(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&hb(t,n)}function VV(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:MC(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let s=r,o=mb;n&&(s=[r],o=fu);const{revoke:u,proxy:f}=Proxy.revocable(s,o);return r.draft_=f,r.revoke_=u,f}var mb={get(e,t){if(t===Rn)return e;const n=La(e);if(!Iv(n,t))return qV(e,n,t);const r=n[t];return e.finalized_||!Za(r)?r:r===xy(e.base_,t)?(wy(e),e.copy_[t]=$v(r,e)):r},has(e,t){return t in La(e)},ownKeys(e){return Reflect.ownKeys(La(e))},set(e,t,n){const r=NC(La(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const s=xy(La(e),t),o=s?.[Rn];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(LV(n,s)&&(n!==void 0||Iv(e.base_,t)))return!0;wy(e),qv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty(e,t){return xy(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,wy(e),qv(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=La(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:r.enumerable,value:n[t]}},defineProperty(){ur(11)},getPrototypeOf(e){return uu(e.base_)},setPrototypeOf(){ur(12)}},fu={};md(mb,(e,t)=>{fu[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});fu.deleteProperty=function(e,t){return fu.set.call(this,e,t,void 0)};fu.set=function(e,t,n){return mb.set.call(this,e[0],t,n,e[0])};function xy(e,t){const n=e[Rn];return(n?La(n):e)[t]}function qV(e,t,n){const r=NC(t,n);return r?"value"in r?r.value:r.get?.call(e.draft_):void 0}function NC(e,t){if(!(t in e))return;let n=uu(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=uu(n)}}function qv(e){e.modified_||(e.modified_=!0,e.parent_&&qv(e.parent_))}function wy(e){e.copy_||(e.copy_=Bv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var $V=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,n,r)=>{if(typeof t=="function"&&typeof n!="function"){const o=n;n=t;const u=this;return function(d=o,...h){return u.produce(d,m=>n.call(this,m,...h))}}typeof n!="function"&&ur(6),r!==void 0&&typeof r!="function"&&ur(7);let s;if(Za(t)){const o=$T(this),u=$v(t,void 0);let f=!0;try{s=n(u),f=!1}finally{f?Uv(o):Vv(o)}return qT(o,r),FT(s,o)}else if(!t||typeof t!="object"){if(s=n(t),s===void 0&&(s=t),s===OC&&(s=void 0),this.autoFreeze_&&hb(s,!0),r){const o=[],u=[];Qa("Patches").generateReplacementPatches_(t,s,o,u),r(o,u)}return s}else ur(1,t)},this.produceWithPatches=(t,n)=>{if(typeof t=="function")return(u,...f)=>this.produceWithPatches(u,d=>t(d,...f));let r,s;return[this.produce(t,n,(u,f)=>{r=u,s=f}),r,s]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof e?.useStrictIteration=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Za(e)||ur(8),ho(e)&&(e=FV(e));const t=$T(this),n=$v(e,void 0);return n[Rn].isManual_=!0,Vv(t),n}finishDraft(e,t){const n=e&&e[Rn];(!n||!n.isManual_)&&ur(9);const{scope_:r}=n;return qT(r,t),FT(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--){const s=t[n];if(s.path.length===0&&s.op==="replace"){e=s.value;break}}n>-1&&(t=t.slice(n+1));const r=Qa("Patches").applyPatches_;return ho(e)?r(e,t):this.produce(e,s=>r(s,t))}};function $v(e,t){const n=Du(e)?Qa("MapSet").proxyMap_(e,t):dh(e)?Qa("MapSet").proxySet_(e,t):VV(e,t);return(t?t.scope_:MC()).drafts_.push(n),n}function FV(e){return ho(e)||ur(10,e),kC(e)}function kC(e){if(!Za(e)||hh(e))return e;const t=e[Rn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Bv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Bv(e,!0);return md(n,(s,o)=>{jC(n,s,kC(o))},r),t&&(t.finalized_=!1),n}var HV=new $V;HV.produce;var KV={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},CC=Qt({name:"legend",initialState:KV,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},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:Qe()},replaceLegendPayload:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).payload.indexOf(n);s>-1&&(e.payload[s]=r)},prepare:Qe()},removeLegendPayload:{reducer(e,t){var n=Zn(e).payload.indexOf(t.payload);n>-1&&e.payload.splice(n,1)},prepare:Qe()}}}),{setLegendSize:Ene,setLegendSettings:jne,addLegendPayload:XV,replaceLegendPayload:YV,removeLegendPayload:GV}=CC.actions,WV=CC.reducer,_y={exports:{}},Sy={};var KT;function ZV(){if(KT)return Sy;KT=1;var e=yo();function t(d,h){return d===h&&(d!==0||1/d===1/h)||d!==d&&h!==h}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,s=e.useRef,o=e.useEffect,u=e.useMemo,f=e.useDebugValue;return Sy.useSyncExternalStoreWithSelector=function(d,h,m,p,v){var x=s(null);if(x.current===null){var w={hasValue:!1,value:null};x.current=w}else w=x.current;x=u(function(){function S(k){if(!O){if(O=!0,M=k,k=p(k),v!==void 0&&w.hasValue){var C=w.value;if(v(C,k))return j=C}return j=k}if(C=j,n(M,k))return C;var L=p(k);return v!==void 0&&v(C,L)?(M=k,C):(M=k,j=L)}var O=!1,M,j,N=m===void 0?null:m;return[function(){return S(h())},N===null?void 0:function(){return S(N())}]},[h,m,p,v]);var _=r(d,x[0],x[1]);return o(function(){w.hasValue=!0,w.value=_},[_]),f(_),_},Sy}var XT;function QV(){return XT||(XT=1,_y.exports=ZV()),_y.exports}QV();function JV(e){e()}function eq(){let e=null,t=null;return{clear(){e=null,t=null},notify(){JV(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const s=t={callback:n,next:null,prev:t};return s.prev?s.prev.next=s:e=s,function(){!r||e===null||(r=!1,s.next?s.next.prev=s.prev:t=s.prev,s.prev?s.prev.next=s.next:e=s.next)}}}}var YT={notify(){},get:()=>[]};function tq(e,t){let n,r=YT,s=0,o=!1;function u(_){m();const S=r.subscribe(_);let O=!1;return()=>{O||(O=!0,S(),p())}}function f(){r.notify()}function d(){w.onStateChange&&w.onStateChange()}function h(){return o}function m(){s++,n||(n=e.subscribe(d),r=eq())}function p(){s--,n&&s===0&&(n(),n=void 0,r.clear(),r=YT)}function v(){o||(o=!0,m())}function x(){o&&(o=!1,p())}const w={addNestedSub:u,notifyNestedSubs:f,handleChangeWrapper:d,isSubscribed:h,trySubscribe:v,tryUnsubscribe:x,getListeners:()=>r};return w}var nq=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",rq=nq(),iq=()=>typeof navigator<"u"&&navigator.product==="ReactNative",aq=iq(),sq=()=>rq||aq?A.useLayoutEffect:A.useEffect,oq=sq();function GT(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function lq(e,t){if(GT(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let s=0;s{const d=tq(s);return{store:s,subscription:d,getServerState:r?()=>r:void 0}},[s,r]),u=A.useMemo(()=>s.getState(),[s]);oq(()=>{const{subscription:d}=o;return d.onStateChange=d.notifyNestedSubs,d.trySubscribe(),u!==s.getState()&&d.notifyNestedSubs(),()=>{d.tryUnsubscribe(),d.onStateChange=void 0}},[o,u]);const f=n||dq;return A.createElement(f.Provider,{value:o},t)}var mq=hq,pq=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius","throttledEvents"]);function gq(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function mh(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(pq.has(r)){if(e[r]==null&&t[r]==null)continue;if(!lq(e[r],t[r]))return!1}else if(!gq(e[r],t[r]))return!1;return!0}function Fv(){return Fv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=qs.separator,contentStyle:n,itemStyle:r,labelStyle:s=qs.labelStyle,payload:o,formatter:u,itemSorter:f,wrapperClassName:d,labelClassName:h,label:m,labelFormatter:p,accessibilityLayer:v=qs.accessibilityLayer}=e,x=()=>{if(o&&o.length){var k={padding:0,margin:0},C=wq(o,f),L=C.map((I,Y)=>{if(I.type==="none")return null;var te=I.formatter||u||xq,{value:ie,name:K}=I,be=ie,pe=K;if(te){var xe=te(ie,K,I,Y,o);if(Array.isArray(xe))[be,pe]=xe;else if(xe!=null)be=xe;else return null}var V=Ml(Ml({},qs.itemStyle),{},{color:I.color||qs.itemStyle.color},r);return A.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(Y),style:V},kr(pe)?A.createElement("span",{className:"recharts-tooltip-item-name"},pe):null,kr(pe)?A.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,A.createElement("span",{className:"recharts-tooltip-item-value"},be),A.createElement("span",{className:"recharts-tooltip-item-unit"},I.unit||""))});return A.createElement("ul",{className:"recharts-tooltip-item-list",style:k},L)}return null},w=Ml(Ml({},qs.contentStyle),n),_=Ml({margin:0},s),S=!dt(m),O=S?m:"",M=et("recharts-default-tooltip",d),j=et("recharts-tooltip-label",h);S&&p&&o!==void 0&&o!==null&&(O=p(m,o));var N=v?{role:"status","aria-live":"assertive"}:{};return A.createElement("div",Fv({className:M,style:w},N),A.createElement("p",{className:j,style:_},A.isValidElement(O)?O:"".concat(O)),x())},Nl="recharts-tooltip-wrapper",Sq={visibility:"hidden"};function Aq(e){var{coordinate:t,translateX:n,translateY:r}=e;return et(Nl,{["".concat(Nl,"-right")]:ye(n)&&t&&ye(t.x)&&n>=t.x,["".concat(Nl,"-left")]:ye(n)&&t&&ye(t.x)&&n=t.y,["".concat(Nl,"-top")]:ye(r)&&t&&ye(t.y)&&r0?s:0),p=n[r]+s;if(t[r])return u[r]?m:p;var v=d[r];if(v==null)return 0;if(u[r]){var x=m,w=v;return xS?Math.max(m,v):Math.max(p,v)}function Tq(e){var{translateX:t,translateY:n,useTranslate3d:r}=e;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function Oq(e){var{allowEscapeViewBox:t,coordinate:n,offsetTop:r,offsetLeft:s,position:o,reverseDirection:u,tooltipBox:f,useTranslate3d:d,viewBox:h}=e,m,p,v;return f.height>0&&f.width>0&&n?(p=ZT({allowEscapeViewBox:t,coordinate:n,key:"x",offset:s,position:o,reverseDirection:u,tooltipDimension:f.width,viewBox:h,viewBoxDimension:h.width}),v=ZT({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:o,reverseDirection:u,tooltipDimension:f.height,viewBox:h,viewBoxDimension:h.height}),m=Tq({translateX:p,translateY:v,useTranslate3d:d})):m=Sq,{cssProperties:m,cssClasses:Aq({translateX:p,translateY:v,coordinate:n})}}var Eq=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Pu={isSsr:Eq()};function DC(){var[e,t]=A.useState(()=>Pu.isSsr||!window.matchMedia?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches);return A.useEffect(()=>{if(window.matchMedia){var n=window.matchMedia("(prefers-reduced-motion: reduce)"),r=()=>{t(n.matches)};return n.addEventListener("change",r),()=>{n.removeEventListener("change",r)}}},[]),e}function QT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function $s(e){for(var t=1;t({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}}));A.useEffect(()=>{var w=_=>{if(_.key==="Escape"){var S,O,M,j;h({dismissed:!0,dismissedAtCoordinate:{x:(S=(O=e.coordinate)===null||O===void 0?void 0:O.x)!==null&&S!==void 0?S:0,y:(M=(j=e.coordinate)===null||j===void 0?void 0:j.y)!==null&&M!==void 0?M:0}})}};return document.addEventListener("keydown",w),()=>{document.removeEventListener("keydown",w)}},[(t=e.coordinate)===null||t===void 0?void 0:t.x,(n=e.coordinate)===null||n===void 0?void 0:n.y]),d.dismissed&&(((r=(s=e.coordinate)===null||s===void 0?void 0:s.x)!==null&&r!==void 0?r:0)!==d.dismissedAtCoordinate.x||((o=(u=e.coordinate)===null||u===void 0?void 0:u.y)!==null&&o!==void 0?o:0)!==d.dismissedAtCoordinate.y)&&h($s($s({},d),{},{dismissed:!1}));var{cssClasses:m,cssProperties:p}=Oq({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:{height:e.lastBoundingBox.height,width:e.lastBoundingBox.width},useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),v=e.hasPortalFromProps?{}:$s($s({transition:kq({prefersReducedMotion:f,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},p),{},{pointerEvents:"none",position:"absolute",top:0,left:0}),x=$s($s({},v),{},{visibility:!d.dismissed&&e.active&&e.hasPayload?"visible":"hidden"},e.wrapperStyle);return A.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:m,style:x,ref:e.innerRef},e.children)}var Dq=A.memo(Cq),PC=()=>{var e;return(e=ve(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function Hv(){return Hv=Object.assign?Object.assign.bind():function(e){for(var t=1;tLe(e.x)&&Le(e.y),nO=e=>e.base!=null&&yd(e.base)&&yd(e),kl=e=>e.x,Cl=e=>e.y,zq=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(Ou(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=tO["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return tO[n]||Gd},rO={connectNulls:!1,type:"linear"},Iq=e=>{var{type:t=rO.type,points:n=[],baseLine:r,layout:s,connectNulls:o=rO.connectNulls}=e,u=zq(t,s),f=o?n.filter(yd):n;if(Array.isArray(r)){var d,h=n.map((w,_)=>eO(eO({},w),{},{base:r[_]}));s==="vertical"?d=pf().y(Cl).x1(kl).x0(w=>w.base.x):d=pf().x(kl).y1(Cl).y0(w=>w.base.y);var m=d.defined(nO).curve(u),p=o?h.filter(nO):h;return m(p)}var v;s==="vertical"&&ye(r)?v=pf().y(Cl).x1(kl).x0(r):ye(r)?v=pf().x(kl).y1(Cl).y0(r):v=sk().x(kl).y(Cl);var x=v.defined(yd).curve(u);return x(f)},pb=e=>{var{className:t,points:n,path:r,pathRef:s}=e,o=ku();if((!n||!n.length)&&!r)return null;var u={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||o,connectNulls:e.connectNulls},f=n&&n.length?Iq(u):r;return A.createElement("path",Hv({},Nr(e),q9(e),{className:et("recharts-curve",t),d:f===null?void 0:f,ref:s}))},Bq=["x","y","top","left","width","height","className"];function Kv(){return Kv=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(s,"v").concat(r,"M").concat(o,",").concat(t,"h").concat(n),Xq=e=>{var{x:t=0,y:n=0,top:r=0,left:s=0,width:o=0,height:u=0,className:f}=e,d=Fq(e,Bq),h=Uq({x:t,y:n,top:r,left:s,width:o,height:u},d);return!ye(t)||!ye(n)||!ye(o)||!ye(u)||!ye(r)||!ye(s)?null:A.createElement("path",Kv({},er(h),{className:et("recharts-cross",f),d:Kq(t,n,o,u,r,s)}))};function Yq(e,t,n,r){var s=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-s:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-s,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function aO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function sO(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),RC=(e,t,n)=>e.map(r=>"".concat(Qq(r)," ").concat(t,"ms ").concat(n)).join(","),Jq=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((n,r)=>n.filter(s=>r.includes(s))),du=(e,t)=>Object.keys(t).reduce((n,r)=>sO(sO({},n),{},{[r]:e(r,t[r])}),{});function oO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function At(e){for(var t=1;te+(t-e)*n,Xv=e=>{var{from:t,to:n}=e;return t!==n},LC=(e,t,n)=>{var r=du((s,o)=>{if(Xv(o)){var[u,f]=e(o.from,o.to,o.velocity);return At(At({},o),{},{from:u,velocity:f})}return o},t);return n<1?du((s,o)=>Xv(o)&&r[s]!=null?At(At({},o),{},{velocity:vd(o.velocity,r[s].velocity,n),from:vd(o.from,r[s].from,n)}):o,t):LC(e,r,n-1)};function r$(e,t,n,r,s,o){var u,f=r.reduce((v,x)=>At(At({},v),{},{[x]:{from:e[x],velocity:0,to:t[x]}}),{}),d=()=>du((v,x)=>x.from,f),h=()=>!Object.values(f).filter(Xv).length,m=null,p=v=>{u||(u=v);var x=v-u,w=x/n.dt;f=LC(n,f,w),s(At(At(At({},e),t),d())),u=v,h()||(m=o.setTimeout(p))};return()=>(m=o.setTimeout(p),()=>{var v;(v=m)===null||v===void 0||v()})}function i$(e,t,n,r,s,o,u){var f=null,d=s.reduce((p,v)=>{var x=e[v],w=t[v];return x==null||w==null?p:At(At({},p),{},{[v]:[x,w]})},{}),h,m=p=>{h||(h=p);var v=(p-h)/r,x=du((_,S)=>vd(...S,n(v)),d);if(o(At(At(At({},e),t),x)),v<1)f=u.setTimeout(m);else{var w=du((_,S)=>vd(...S,n(1)),d);o(At(At(At({},e),t),w))}};return()=>(f=u.setTimeout(m),()=>{var p;(p=f)===null||p===void 0||p()})}const a$=(e,t,n,r,s,o)=>{var u=Jq(e,t);return n==null?()=>(s(At(At({},e),t)),()=>{}):n.isStepper===!0?r$(e,t,n,u,s,o):i$(e,t,n,r,u,s,o)};var bd=1e-4,zC=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],IC=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),lO=(e,t)=>n=>{var r=zC(e,t);return IC(r,n)},s$=(e,t)=>n=>{var r=zC(e,t),s=[...r.map((o,u)=>o*u).slice(1),0];return IC(s,n)},o$=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var s=r.map(o=>parseFloat(o));return[s[0],s[1],s[2],s[3]]},l$=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var s=lO(e,n),o=lO(t,r),u=s$(e,n),f=h=>h>1?1:h<0?0:h,d=h=>{for(var m=h>1?1:h,p=m,v=0;v<8;++v){var x=s(p)-m,w=u(p);if(Math.abs(x-m)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:n=100,damping:r=8,dt:s=17}=t,o=(u,f,d)=>{var h=-(u-f)*n,m=d*r,p=d+(h-m)*s/1e3,v=d*s/1e3+u;return Math.abs(v-f){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return uO(e);case"spring":return c$();default:if(e.split("(")[0]==="cubic-bezier")return uO(e)}return typeof e=="function"?e:null};function d$(e){var t,n=()=>null,r=!1,s=null,o=u=>{if(!r){if(Array.isArray(u)){if(!u.length)return;var f=u,[d,...h]=f;if(typeof d=="number"){s=e.setTimeout(o.bind(null,h),d);return}o(d),s=e.setTimeout(o.bind(null,h));return}typeof u=="string"&&(t=u,n(t)),typeof u=="object"&&(t=u,n(t)),typeof u=="function"&&u()}};return{stop:()=>{r=!0},start:u=>{r=!1,s&&(s(),s=null),o(u)},subscribe:u=>(n=u,()=>{n=()=>null}),getTimeoutController:()=>e}}class h${setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),s=null,o=u=>{u-r>=n?t(u):typeof requestAnimationFrame=="function"&&(s=requestAnimationFrame(o))};return s=requestAnimationFrame(o),()=>{s!=null&&cancelAnimationFrame(s)}}}function m$(){return d$(new h$)}var p$=A.createContext(m$);function g$(e,t){var n=A.useContext(p$);return A.useMemo(()=>t??n(e),[e,t,n])}var y$={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},cO={t:0},Ay={t:1};function gb(e){var t=vn(e,y$),{isActive:n,canBegin:r,duration:s,easing:o,begin:u,onAnimationEnd:f,onAnimationStart:d,children:h}=t,m=DC(),p=n==="auto"?!Pu.isSsr&&!m:n,v=g$(t.animationId,t.animationManager),[x,w]=A.useState(p?cO:Ay),_=A.useRef(null);return A.useEffect(()=>{p||w(Ay)},[p]),A.useEffect(()=>{if(!p||!r)return _o;var S=a$(cO,Ay,f$(o),s,w,v.getTimeoutController()),O=()=>{_.current=S()};return v.start([d,u,O,s,f]),()=>{v.stop(),_.current&&_.current(),f()}},[p,r,s,o,u,d,f,v]),h(x.t)}function yb(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=A.useRef(au(t)),r=A.useRef(e);return r.current!==e&&(n.current=au(t),r.current=e),n.current}var v$=["radius"],b$=["radius"],fO,dO,hO,mO,pO,gO,yO,vO,bO,xO;function wO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function _O(e){for(var t=1;t{var o=Ji(n),u=Ji(r),f=Math.min(Math.abs(o)/2,Math.abs(u)/2),d=u>=0?1:-1,h=o>=0?1:-1,m=u>=0&&o>=0||u<0&&o<0?1:0,p;if(f>0&&Array.isArray(s)){for(var v=[0,0,0,0],x=0,w=4;xf?f:S}p=ut(fO||(fO=xr(["M",",",""])),e,t+d*v[0]),v[0]>0&&(p+=ut(dO||(dO=xr(["A ",",",",0,0,",",",",",""])),v[0],v[0],m,e+h*v[0],t)),p+=ut(hO||(hO=xr(["L ",",",""])),e+n-h*v[1],t),v[1]>0&&(p+=ut(mO||(mO=xr(["A ",",",",0,0,",`, `,",",""])),v[1],v[1],m,e+n,t+d*v[1])),p+=ut(pO||(pO=xr(["L ",",",""])),e+n,t+r-d*v[2]),v[2]>0&&(p+=ut(gO||(gO=xr(["A ",",",",0,0,",`, `,",",""])),v[2],v[2],m,e+n-h*v[2],t+r)),p+=ut(yO||(yO=xr(["L ",",",""])),e+h*v[3],t+r),v[3]>0&&(p+=ut(vO||(vO=xr(["A ",",",",0,0,",`, `,",",""])),v[3],v[3],m,e,t+r-d*v[3])),p+="Z"}else if(f>0&&s===+s&&s>0){var O=Math.min(f,s);p=ut(bO||(bO=xr(["M ",",",` @@ -1044,23 +1037,23 @@ Respond with a JSON object. Each turn entry must include the turn_id matching th L `,",",` A `,",",",0,0,",",",",",` L `,",",` - A `,",",",0,0,",",",","," Z"])),e,t+d*O,O,O,m,e+h*O,t,e+n-h*O,t,O,O,m,e+n,t+d*O,e+n,t+r-d*O,O,O,m,e+n-h*O,t+r,e+h*O,t+r,O,O,m,e,t+r-d*O)}else p=ut(xO||(xO=xr(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return p},TO={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},IC=e=>{var t=vn(e,TO),n=A.useRef(null),[r,s]=A.useState(-1);A.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var Q=n.current.getTotalLength();Q&&s(Q)}catch{}},[]);var{x:o,y:u,width:f,height:d,radius:h,className:m}=t,{animationEasing:p,animationDuration:v,animationBegin:x,isAnimationActive:w,isUpdateAnimationActive:_}=t,S=A.useRef(f),O=A.useRef(d),M=A.useRef(o),j=A.useRef(u),k=A.useMemo(()=>({x:o,y:u,width:f,height:d,radius:h}),[o,u,f,d,h]),N=yb(k,"rectangle-");if(o!==+o||u!==+u||f!==+f||d!==+d||f===0||d===0)return null;var C=et("recharts-rectangle",m);if(!_){var L=er(t),{radius:I}=L,Y=SO(L,v$);return A.createElement("path",xd({},Y,{x:Ji(o),y:Ji(u),width:Ji(f),height:Ji(d),radius:typeof h=="number"?h:void 0,className:C,d:AO(o,u,f,d,h)}))}var te=S.current,ie=O.current,K=M.current,be=j.current,pe="0px ".concat(r===-1?1:r,"px"),xe="".concat(r,"px ").concat(r,"px"),V=PC(["strokeDasharray"],v,typeof p=="string"?p:TO.animationEasing);return A.createElement(gb,{animationId:N,key:N,canBegin:r>0,duration:v,easing:p,isActive:_,begin:x},Q=>{var ne=kn(te,f,Q),le=kn(ie,d,Q),ue=kn(K,o,Q),P=kn(be,u,Q);n.current&&(S.current=ne,O.current=le,M.current=ue,j.current=P);var H;w?Q>0?H={transition:V,strokeDasharray:xe}:H={strokeDasharray:pe}:H={strokeDasharray:xe};var ae=er(t),{radius:se}=ae,Z=SO(ae,b$);return A.createElement("path",xd({},Z,{radius:typeof h=="number"?h:void 0,className:C,d:AO(ue,P,ne,le,h),ref:n,style:_O(_O({},H),t.style)}))})};function OO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function EO(e){for(var t=1;te*180/Math.PI,Kt=(e,t,n,r)=>({x:e+Math.cos(-wd*r)*n,y:t+Math.sin(-wd*r)*n}),j$=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},M$=(e,t)=>{var{x:n,y:r}=e,{x:s,y:o}=t;return Math.sqrt((n-s)**2+(r-o)**2)},k$=(e,t)=>{var{x:n,y:r}=e,{cx:s,cy:o}=t,u=M$({x:n,y:r},{x:s,y:o});if(u<=0)return{radius:u,angle:0};var f=(n-s)/u,d=Math.acos(f);return r>o&&(d=2*Math.PI-d),{radius:u,angle:E$(d),angleInRadian:d}},N$=e=>{var{startAngle:t,endAngle:n}=e,r=Math.floor(t/360),s=Math.floor(n/360),o=Math.min(r,s);return{startAngle:t-o*360,endAngle:n-o*360}},C$=(e,t)=>{var{startAngle:n,endAngle:r}=t,s=Math.floor(n/360),o=Math.floor(r/360),u=Math.min(s,o);return e+u*360},D$=(e,t)=>{var{relativeX:n,relativeY:r}=e,{radius:s,angle:o}=k$({x:n,y:r},t),{innerRadius:u,outerRadius:f}=t;if(sf||s===0)return null;var{startAngle:d,endAngle:h}=N$(t),m=o,p;if(d<=h){for(;m>h;)m-=360;for(;m=d&&m<=h}else{for(;m>d;)m-=360;for(;m=h&&m<=d}return p?EO(EO({},t),{},{radius:s,angle:C$(m,t)}):null};function BC(e){var{cx:t,cy:n,radius:r,startAngle:s,endAngle:o}=e,u=Kt(t,n,r,s),f=Kt(t,n,r,o);return{points:[u,f],cx:t,cy:n,radius:r,startAngle:s,endAngle:o}}var jO,MO,kO,NO,CO,DO,PO;function Yv(){return Yv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=Wn(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},Sf=e=>{var{cx:t,cy:n,radius:r,angle:s,sign:o,isExternal:u,cornerRadius:f,cornerIsExternal:d}=e,h=f*(u?1:-1)+r,m=Math.asin(f/h)/wd,p=d?s:s+o*m,v=Kt(t,n,h,p),x=Kt(t,n,r,p),w=d?s-o*m:s,_=Kt(t,n,h*Math.cos(m*wd),w);return{center:v,circleTangency:x,lineTangency:_,theta:m}},UC=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:s,startAngle:o,endAngle:u}=e,f=P$(o,u),d=o+f,h=Kt(t,n,s,o),m=Kt(t,n,s,d),p=ut(jO||(jO=Ua(["M ",",",` + A `,",",",0,0,",",",","," Z"])),e,t+d*O,O,O,m,e+h*O,t,e+n-h*O,t,O,O,m,e+n,t+d*O,e+n,t+r-d*O,O,O,m,e+n-h*O,t+r,e+h*O,t+r,O,O,m,e,t+r-d*O)}else p=ut(xO||(xO=xr(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return p},TO={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},BC=e=>{var t=vn(e,TO),n=A.useRef(null),[r,s]=A.useState(-1);A.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var Q=n.current.getTotalLength();Q&&s(Q)}catch{}},[]);var{x:o,y:u,width:f,height:d,radius:h,className:m}=t,{animationEasing:p,animationDuration:v,animationBegin:x,isAnimationActive:w,isUpdateAnimationActive:_}=t,S=A.useRef(f),O=A.useRef(d),M=A.useRef(o),j=A.useRef(u),N=A.useMemo(()=>({x:o,y:u,width:f,height:d,radius:h}),[o,u,f,d,h]),k=yb(N,"rectangle-");if(o!==+o||u!==+u||f!==+f||d!==+d||f===0||d===0)return null;var C=et("recharts-rectangle",m);if(!_){var L=er(t),{radius:I}=L,Y=SO(L,v$);return A.createElement("path",xd({},Y,{x:Ji(o),y:Ji(u),width:Ji(f),height:Ji(d),radius:typeof h=="number"?h:void 0,className:C,d:AO(o,u,f,d,h)}))}var te=S.current,ie=O.current,K=M.current,be=j.current,pe="0px ".concat(r===-1?1:r,"px"),xe="".concat(r,"px ").concat(r,"px"),V=RC(["strokeDasharray"],v,typeof p=="string"?p:TO.animationEasing);return A.createElement(gb,{animationId:k,key:k,canBegin:r>0,duration:v,easing:p,isActive:_,begin:x},Q=>{var ne=Nn(te,f,Q),le=Nn(ie,d,Q),ue=Nn(K,o,Q),P=Nn(be,u,Q);n.current&&(S.current=ne,O.current=le,M.current=ue,j.current=P);var H;w?Q>0?H={transition:V,strokeDasharray:xe}:H={strokeDasharray:pe}:H={strokeDasharray:xe};var ae=er(t),{radius:se}=ae,Z=SO(ae,b$);return A.createElement("path",xd({},Z,{radius:typeof h=="number"?h:void 0,className:C,d:AO(ue,P,ne,le,h),ref:n,style:_O(_O({},H),t.style)}))})};function OO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function EO(e){for(var t=1;te*180/Math.PI,Kt=(e,t,n,r)=>({x:e+Math.cos(-wd*r)*n,y:t+Math.sin(-wd*r)*n}),j$=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},M$=(e,t)=>{var{x:n,y:r}=e,{x:s,y:o}=t;return Math.sqrt((n-s)**2+(r-o)**2)},N$=(e,t)=>{var{x:n,y:r}=e,{cx:s,cy:o}=t,u=M$({x:n,y:r},{x:s,y:o});if(u<=0)return{radius:u,angle:0};var f=(n-s)/u,d=Math.acos(f);return r>o&&(d=2*Math.PI-d),{radius:u,angle:E$(d),angleInRadian:d}},k$=e=>{var{startAngle:t,endAngle:n}=e,r=Math.floor(t/360),s=Math.floor(n/360),o=Math.min(r,s);return{startAngle:t-o*360,endAngle:n-o*360}},C$=(e,t)=>{var{startAngle:n,endAngle:r}=t,s=Math.floor(n/360),o=Math.floor(r/360),u=Math.min(s,o);return e+u*360},D$=(e,t)=>{var{relativeX:n,relativeY:r}=e,{radius:s,angle:o}=N$({x:n,y:r},t),{innerRadius:u,outerRadius:f}=t;if(sf||s===0)return null;var{startAngle:d,endAngle:h}=k$(t),m=o,p;if(d<=h){for(;m>h;)m-=360;for(;m=d&&m<=h}else{for(;m>d;)m-=360;for(;m=h&&m<=d}return p?EO(EO({},t),{},{radius:s,angle:C$(m,t)}):null};function UC(e){var{cx:t,cy:n,radius:r,startAngle:s,endAngle:o}=e,u=Kt(t,n,r,s),f=Kt(t,n,r,o);return{points:[u,f],cx:t,cy:n,radius:r,startAngle:s,endAngle:o}}var jO,MO,NO,kO,CO,DO,PO;function Yv(){return Yv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=Wn(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},Sf=e=>{var{cx:t,cy:n,radius:r,angle:s,sign:o,isExternal:u,cornerRadius:f,cornerIsExternal:d}=e,h=f*(u?1:-1)+r,m=Math.asin(f/h)/wd,p=d?s:s+o*m,v=Kt(t,n,h,p),x=Kt(t,n,r,p),w=d?s-o*m:s,_=Kt(t,n,h*Math.cos(m*wd),w);return{center:v,circleTangency:x,lineTangency:_,theta:m}},VC=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:s,startAngle:o,endAngle:u}=e,f=P$(o,u),d=o+f,h=Kt(t,n,s,o),m=Kt(t,n,s,d),p=ut(jO||(jO=Ua(["M ",",",` A `,",",`,0, `,",",`, `,",",` `])),h.x,h.y,s,s,+(Math.abs(f)>180),+(o>d),m.x,m.y);if(r>0){var v=Kt(t,n,r,o),x=Kt(t,n,r,d);p+=ut(MO||(MO=Ua(["L ",",",` A `,",",`,0, `,",",`, - `,","," Z"])),x.x,x.y,r,r,+(Math.abs(f)>180),+(o<=d),v.x,v.y)}else p+=ut(kO||(kO=Ua(["L ",","," Z"])),t,n);return p},R$=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:s,cornerRadius:o,forceCornerRadius:u,cornerIsExternal:f,startAngle:d,endAngle:h}=e,m=Wn(h-d),{circleTangency:p,lineTangency:v,theta:x}=Sf({cx:t,cy:n,radius:s,angle:d,sign:m,cornerRadius:o,cornerIsExternal:f}),{circleTangency:w,lineTangency:_,theta:S}=Sf({cx:t,cy:n,radius:s,angle:h,sign:-m,cornerRadius:o,cornerIsExternal:f}),O=f?Math.abs(d-h):Math.abs(d-h)-x-S;if(O<0)return u?ut(NO||(NO=Ua(["M ",",",` + `,","," Z"])),x.x,x.y,r,r,+(Math.abs(f)>180),+(o<=d),v.x,v.y)}else p+=ut(NO||(NO=Ua(["L ",","," Z"])),t,n);return p},R$=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:s,cornerRadius:o,forceCornerRadius:u,cornerIsExternal:f,startAngle:d,endAngle:h}=e,m=Wn(h-d),{circleTangency:p,lineTangency:v,theta:x}=Sf({cx:t,cy:n,radius:s,angle:d,sign:m,cornerRadius:o,cornerIsExternal:f}),{circleTangency:w,lineTangency:_,theta:S}=Sf({cx:t,cy:n,radius:s,angle:h,sign:-m,cornerRadius:o,cornerIsExternal:f}),O=f?Math.abs(d-h):Math.abs(d-h)-x-S;if(O<0)return u?ut(kO||(kO=Ua(["M ",",",` a`,",",",0,0,1,",`,0 a`,",",",0,0,1,",`,0 - `])),v.x,v.y,o,o,o*2,o,o,-o*2):UC({cx:t,cy:n,innerRadius:r,outerRadius:s,startAngle:d,endAngle:h});var M=ut(CO||(CO=Ua(["M ",",",` + `])),v.x,v.y,o,o,o*2,o,o,-o*2):VC({cx:t,cy:n,innerRadius:r,outerRadius:s,startAngle:d,endAngle:h});var M=ut(CO||(CO=Ua(["M ",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` A`,",",",0,0,",",",",",` - `])),v.x,v.y,o,o,+(m<0),p.x,p.y,s,s,+(O>180),+(m<0),w.x,w.y,o,o,+(m<0),_.x,_.y);if(r>0){var{circleTangency:j,lineTangency:k,theta:N}=Sf({cx:t,cy:n,radius:r,angle:d,sign:m,isExternal:!0,cornerRadius:o,cornerIsExternal:f}),{circleTangency:C,lineTangency:L,theta:I}=Sf({cx:t,cy:n,radius:r,angle:h,sign:-m,isExternal:!0,cornerRadius:o,cornerIsExternal:f}),Y=f?Math.abs(d-h):Math.abs(d-h)-N-I;if(Y<0&&o===0)return"".concat(M,"L").concat(t,",").concat(n,"Z");M+=ut(DO||(DO=Ua(["L",",",` + `])),v.x,v.y,o,o,+(m<0),p.x,p.y,s,s,+(O>180),+(m<0),w.x,w.y,o,o,+(m<0),_.x,_.y);if(r>0){var{circleTangency:j,lineTangency:N,theta:k}=Sf({cx:t,cy:n,radius:r,angle:d,sign:m,isExternal:!0,cornerRadius:o,cornerIsExternal:f}),{circleTangency:C,lineTangency:L,theta:I}=Sf({cx:t,cy:n,radius:r,angle:h,sign:-m,isExternal:!0,cornerRadius:o,cornerIsExternal:f}),Y=f?Math.abs(d-h):Math.abs(d-h)-k-I;if(Y<0&&o===0)return"".concat(M,"L").concat(t,",").concat(n,"Z");M+=ut(DO||(DO=Ua(["L",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` - A`,",",",0,0,",",",",","Z"])),L.x,L.y,o,o,+(m<0),C.x,C.y,r,r,+(Y>180),+(m>0),j.x,j.y,o,o,+(m<0),k.x,k.y)}else M+=ut(PO||(PO=Ua(["L",",","Z"])),t,n);return M},L$={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},VC=e=>{var t=vn(e,L$),{cx:n,cy:r,innerRadius:s,outerRadius:o,cornerRadius:u,forceCornerRadius:f,cornerIsExternal:d,startAngle:h,endAngle:m,className:p}=t;if(o0&&Math.abs(h-m)<360?_=R$({cx:n,cy:r,innerRadius:s,outerRadius:o,cornerRadius:Math.min(w,x/2),forceCornerRadius:f,cornerIsExternal:d,startAngle:h,endAngle:m}):_=UC({cx:n,cy:r,innerRadius:s,outerRadius:o,startAngle:h,endAngle:m}),A.createElement("path",Yv({},er(t),{className:v,d:_}))};function z$(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(xN(t)){if(e==="centric"){var{cx:r,cy:s,innerRadius:o,outerRadius:u,angle:f}=t,d=Kt(r,s,o,f),h=Kt(r,s,u,f);return[{x:d.x,y:d.y},{x:h.x,y:h.y}]}return BC(t)}}var Ty={},Oy={},Ey={},RO;function I$(){return RO||(RO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=CN();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(Ey)),Ey}var LO;function B$(){return LO||(LO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=I$();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(Oy)),Oy}var zO;function U$(){return zO||(zO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=DN(),n=B$();function r(s,o,u){u&&typeof u!="number"&&t.isIterateeCall(s,o,u)&&(o=u=void 0),s=n.toFinite(s),o===void 0?(o=s,s=0):o=n.toFinite(o),u=u===void 0?se.chartData,$$=$([oa],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),vb=(e,t,n,r)=>r?$$(e):oa(e);function Er(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(Le(t)&&Le(n))return!0}return!1}function BO(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function $C(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,s,o;if(Le(n))s=n;else if(typeof n=="function")return;if(Le(r))o=r;else if(typeof r=="function")return;var u=[s,o];if(Er(u))return u}}function F$(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(Er(r))return BO(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[s,o]=e,u,f;if(s==="auto")t!=null&&(u=Math.min(...t));else if(ye(s))u=s;else if(typeof s=="function")try{t!=null&&(u=s(t?.[0]))}catch{}else if(typeof s=="string"&&M2.test(s)){var d=M2.exec(s);if(d==null||d[1]==null||t==null)u=void 0;else{var h=+d[1];u=t[0]-h}}else u=t?.[0];if(o==="auto")t!=null&&(f=Math.max(...t));else if(ye(o))f=o;else if(typeof o=="function")try{t!=null&&(f=o(t?.[1]))}catch{}else if(typeof o=="string"&&k2.test(o)){var m=k2.exec(o);if(m==null||m[1]==null||t==null)f=void 0;else{var p=+m[1];f=t[1]+p}}else f=t?.[1];var v=[u,f];if(Er(v))return t==null?v:BO(v,t,n)}}}var So=1e9,H$={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},xb,nt=!0,tr="[DecimalError] ",Ka=tr+"Invalid argument: ",bb=tr+"Exponent out of range: ",Ao=Math.floor,za=Math.pow,K$=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Nn,Nt=1e7,Je=7,FC=9007199254740991,_d=Ao(FC/Je),ce={};ce.absoluteValue=ce.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ce.comparedTo=ce.cmp=function(e){var t,n,r,s,o=this;if(e=new o.constructor(e),o.s!==e.s)return o.s||-e.s;if(o.e!==e.e)return o.e>e.e^o.s<0?1:-1;for(r=o.d.length,s=e.d.length,t=0,n=re.d[t]^o.s<0?1:-1;return r===s?0:r>s^o.s<0?1:-1};ce.decimalPlaces=ce.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*Je;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ce.dividedBy=ce.div=function(e){return ri(this,new this.constructor(e))};ce.dividedToIntegerBy=ce.idiv=function(e){var t=this,n=t.constructor;return Xe(ri(t,new n(e),0,1),n.precision)};ce.equals=ce.eq=function(e){return!this.cmp(e)};ce.exponent=function(){return bt(this)};ce.greaterThan=ce.gt=function(e){return this.cmp(e)>0};ce.greaterThanOrEqualTo=ce.gte=function(e){return this.cmp(e)>=0};ce.isInteger=ce.isint=function(){return this.e>this.d.length-2};ce.isNegative=ce.isneg=function(){return this.s<0};ce.isPositive=ce.ispos=function(){return this.s>0};ce.isZero=function(){return this.s===0};ce.lessThan=ce.lt=function(e){return this.cmp(e)<0};ce.lessThanOrEqualTo=ce.lte=function(e){return this.cmp(e)<1};ce.logarithm=ce.log=function(e){var t,n=this,r=n.constructor,s=r.precision,o=s+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Nn))throw Error(tr+"NaN");if(n.s<1)throw Error(tr+(n.s?"NaN":"-Infinity"));return n.eq(Nn)?new r(0):(nt=!1,t=ri(hu(n,o),hu(e,o),o),nt=!0,Xe(t,s))};ce.minus=ce.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?XC(t,e):HC(t,(e.s=-e.s,e))};ce.modulo=ce.mod=function(e){var t,n=this,r=n.constructor,s=r.precision;if(e=new r(e),!e.s)throw Error(tr+"NaN");return n.s?(nt=!1,t=ri(n,e,0,1).times(e),nt=!0,n.minus(t)):Xe(new r(n),s)};ce.naturalExponential=ce.exp=function(){return KC(this)};ce.naturalLogarithm=ce.ln=function(){return hu(this)};ce.negated=ce.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ce.plus=ce.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?HC(t,e):XC(t,(e.s=-e.s,e))};ce.precision=ce.sd=function(e){var t,n,r,s=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ka+e);if(t=bt(s)+1,r=s.d.length-1,n=r*Je+1,r=s.d[r],r){for(;r%10==0;r/=10)n--;for(r=s.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ce.squareRoot=ce.sqrt=function(){var e,t,n,r,s,o,u,f=this,d=f.constructor;if(f.s<1){if(!f.s)return new d(0);throw Error(tr+"NaN")}for(e=bt(f),nt=!1,s=Math.sqrt(+f),s==0||s==1/0?(t=Tr(f.d),(t.length+e)%2==0&&(t+="0"),s=Math.sqrt(t),e=Ao((e+1)/2)-(e<0||e%2),s==1/0?t="5e"+e:(t=s.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new d(t)):r=new d(s.toString()),n=d.precision,s=u=n+3;;)if(o=r,r=o.plus(ri(f,o,u+2)).times(.5),Tr(o.d).slice(0,u)===(t=Tr(r.d)).slice(0,u)){if(t=t.slice(u-3,u+1),s==u&&t=="4999"){if(Xe(o,n+1,0),o.times(o).eq(f)){r=o;break}}else if(t!="9999")break;u+=4}return nt=!0,Xe(r,n)};ce.times=ce.mul=function(e){var t,n,r,s,o,u,f,d,h,m=this,p=m.constructor,v=m.d,x=(e=new p(e)).d;if(!m.s||!e.s)return new p(0);for(e.s*=m.s,n=m.e+e.e,d=v.length,h=x.length,d=0;){for(t=0,s=d+r;s>r;)f=o[s]+x[r]*v[s-r-1]+t,o[s--]=f%Nt|0,t=f/Nt|0;o[s]=(o[s]+t)%Nt|0}for(;!o[--u];)o.pop();return t?++n:o.shift(),e.d=o,e.e=n,nt?Xe(e,p.precision):e};ce.toDecimalPlaces=ce.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Dr(e,0,So),t===void 0?t=r.rounding:Dr(t,0,8),Xe(n,e+bt(n)+1,t))};ce.toExponential=function(e,t){var n,r=this,s=r.constructor;return e===void 0?n=Ja(r,!0):(Dr(e,0,So),t===void 0?t=s.rounding:Dr(t,0,8),r=Xe(new s(r),e+1,t),n=Ja(r,!0,e+1)),n};ce.toFixed=function(e,t){var n,r,s=this,o=s.constructor;return e===void 0?Ja(s):(Dr(e,0,So),t===void 0?t=o.rounding:Dr(t,0,8),r=Xe(new o(s),e+bt(s)+1,t),n=Ja(r.abs(),!1,e+bt(r)+1),s.isneg()&&!s.isZero()?"-"+n:n)};ce.toInteger=ce.toint=function(){var e=this,t=e.constructor;return Xe(new t(e),bt(e)+1,t.rounding)};ce.toNumber=function(){return+this};ce.toPower=ce.pow=function(e){var t,n,r,s,o,u,f=this,d=f.constructor,h=12,m=+(e=new d(e));if(!e.s)return new d(Nn);if(f=new d(f),!f.s){if(e.s<1)throw Error(tr+"Infinity");return f}if(f.eq(Nn))return f;if(r=d.precision,e.eq(Nn))return Xe(f,r);if(t=e.e,n=e.d.length-1,u=t>=n,o=f.s,u){if((n=m<0?-m:m)<=FC){for(s=new d(Nn),t=Math.ceil(r/Je+4),nt=!1;n%2&&(s=s.times(f),VO(s.d,t)),n=Ao(n/2),n!==0;)f=f.times(f),VO(f.d,t);return nt=!0,e.s<0?new d(Nn).div(s):Xe(s,r)}}else if(o<0)throw Error(tr+"NaN");return o=o<0&&e.d[Math.max(t,n)]&1?-1:1,f.s=1,nt=!1,s=e.times(hu(f,r+h)),nt=!0,s=KC(s),s.s=o,s};ce.toPrecision=function(e,t){var n,r,s=this,o=s.constructor;return e===void 0?(n=bt(s),r=Ja(s,n<=o.toExpNeg||n>=o.toExpPos)):(Dr(e,1,So),t===void 0?t=o.rounding:Dr(t,0,8),s=Xe(new o(s),e,t),n=bt(s),r=Ja(s,e<=n||n<=o.toExpNeg,e)),r};ce.toSignificantDigits=ce.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Dr(e,1,So),t===void 0?t=r.rounding:Dr(t,0,8)),Xe(new r(n),e,t)};ce.toString=ce.valueOf=ce.val=ce.toJSON=ce[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=bt(e),n=e.constructor;return Ja(e,t<=n.toExpNeg||t>=n.toExpPos)};function HC(e,t){var n,r,s,o,u,f,d,h,m=e.constructor,p=m.precision;if(!e.s||!t.s)return t.s||(t=new m(e)),nt?Xe(t,p):t;if(d=e.d,h=t.d,u=e.e,s=t.e,d=d.slice(),o=u-s,o){for(o<0?(r=d,o=-o,f=h.length):(r=h,s=u,f=d.length),u=Math.ceil(p/Je),f=u>f?u+1:f+1,o>f&&(o=f,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for(f=d.length,o=h.length,f-o<0&&(o=f,r=h,h=d,d=r),n=0;o;)n=(d[--o]=d[o]+h[o]+n)/Nt|0,d[o]%=Nt;for(n&&(d.unshift(n),++s),f=d.length;d[--f]==0;)d.pop();return t.d=d,t.e=s,nt?Xe(t,p):t}function Dr(e,t,n){if(e!==~~e||en)throw Error(Ka+e)}function Tr(e){var t,n,r,s=e.length-1,o="",u=e[0];if(s>0){for(o+=u,t=1;tu?1:-1;else for(f=d=0;fs[f]?1:-1;break}return d}function n(r,s,o){for(var u=0;o--;)r[o]-=u,u=r[o]1;)r.shift()}return function(r,s,o,u){var f,d,h,m,p,v,x,w,_,S,O,M,j,k,N,C,L,I,Y=r.constructor,te=r.s==s.s?1:-1,ie=r.d,K=s.d;if(!r.s)return new Y(r);if(!s.s)throw Error(tr+"Division by zero");for(d=r.e-s.e,L=K.length,N=ie.length,x=new Y(te),w=x.d=[],h=0;K[h]==(ie[h]||0);)++h;if(K[h]>(ie[h]||0)&&--d,o==null?M=o=Y.precision:u?M=o+(bt(r)-bt(s))+1:M=o,M<0)return new Y(0);if(M=M/Je+2|0,h=0,L==1)for(m=0,K=K[0],M++;(h1&&(K=e(K,m),ie=e(ie,m),L=K.length,N=ie.length),k=L,_=ie.slice(0,L),S=_.length;S=Nt/2&&++C;do m=0,f=t(K,_,L,S),f<0?(O=_[0],L!=S&&(O=O*Nt+(_[1]||0)),m=O/C|0,m>1?(m>=Nt&&(m=Nt-1),p=e(K,m),v=p.length,S=_.length,f=t(p,_,v,S),f==1&&(m--,n(p,L16)throw Error(bb+bt(e));if(!e.s)return new m(Nn);for(nt=!1,f=p,u=new m(.03125);e.abs().gte(.1);)e=e.times(u),h+=5;for(r=Math.log(za(2,h))/Math.LN10*2+5|0,f+=r,n=s=o=new m(Nn),m.precision=f;;){if(s=Xe(s.times(e),f),n=n.times(++d),u=o.plus(ri(s,n,f)),Tr(u.d).slice(0,f)===Tr(o.d).slice(0,f)){for(;h--;)o=Xe(o.times(o),f);return m.precision=p,t==null?(nt=!0,Xe(o,p)):o}o=u}}function bt(e){for(var t=e.e*Je,n=e.d[0];n>=10;n/=10)t++;return t}function My(e,t,n){if(t>e.LN10.sd())throw nt=!0,n&&(e.precision=n),Error(tr+"LN10 precision limit exceeded");return Xe(new e(e.LN10),t)}function Gi(e){for(var t="";e--;)t+="0";return t}function hu(e,t){var n,r,s,o,u,f,d,h,m,p=1,v=10,x=e,w=x.d,_=x.constructor,S=_.precision;if(x.s<1)throw Error(tr+(x.s?"NaN":"-Infinity"));if(x.eq(Nn))return new _(0);if(t==null?(nt=!1,h=S):h=t,x.eq(10))return t==null&&(nt=!0),My(_,h);if(h+=v,_.precision=h,n=Tr(w),r=n.charAt(0),o=bt(x),Math.abs(o)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)x=x.times(e),n=Tr(x.d),r=n.charAt(0),p++;o=bt(x),r>1?(x=new _("0."+n),o++):x=new _(r+"."+n.slice(1))}else return d=My(_,h+2,S).times(o+""),x=hu(new _(r+"."+n.slice(1)),h-v).plus(d),_.precision=S,t==null?(nt=!0,Xe(x,S)):x;for(f=u=x=ri(x.minus(Nn),x.plus(Nn),h),m=Xe(x.times(x),h),s=3;;){if(u=Xe(u.times(m),h),d=f.plus(ri(u,new _(s),h)),Tr(d.d).slice(0,h)===Tr(f.d).slice(0,h))return f=f.times(2),o!==0&&(f=f.plus(My(_,h+2,S).times(o+""))),f=ri(f,new _(p),h),_.precision=S,t==null?(nt=!0,Xe(f,S)):f;f=d,s+=2}}function UO(e,t){var n,r,s;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(s=t.length;t.charCodeAt(s-1)===48;)--s;if(t=t.slice(r,s),t){if(s-=r,n=n-r-1,e.e=Ao(n/Je),e.d=[],r=(n+1)%Je,n<0&&(r+=Je),r_d||e.e<-_d))throw Error(bb+n)}else e.s=0,e.e=0,e.d=[0];return e}function Xe(e,t,n){var r,s,o,u,f,d,h,m,p=e.d;for(u=1,o=p[0];o>=10;o/=10)u++;if(r=t-u,r<0)r+=Je,s=t,h=p[m=0];else{if(m=Math.ceil((r+1)/Je),o=p.length,m>=o)return e;for(h=o=p[m],u=1;o>=10;o/=10)u++;r%=Je,s=r-Je+u}if(n!==void 0&&(o=za(10,u-s-1),f=h/o%10|0,d=t<0||p[m+1]!==void 0||h%o,d=n<4?(f||d)&&(n==0||n==(e.s<0?3:2)):f>5||f==5&&(n==4||d||n==6&&(r>0?s>0?h/za(10,u-s):0:p[m-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return d?(o=bt(e),p.length=1,t=t-o-1,p[0]=za(10,(Je-t%Je)%Je),e.e=Ao(-t/Je)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(r==0?(p.length=m,o=1,m--):(p.length=m+1,o=za(10,Je-r),p[m]=s>0?(h/za(10,u-s)%za(10,s)|0)*o:0),d)for(;;)if(m==0){(p[0]+=o)==Nt&&(p[0]=1,++e.e);break}else{if(p[m]+=o,p[m]!=Nt)break;p[m--]=0,o=1}for(r=p.length;p[--r]===0;)p.pop();if(nt&&(e.e>_d||e.e<-_d))throw Error(bb+bt(e));return e}function XC(e,t){var n,r,s,o,u,f,d,h,m,p,v=e.constructor,x=v.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new v(e),nt?Xe(t,x):t;if(d=e.d,p=t.d,r=t.e,h=e.e,d=d.slice(),u=h-r,u){for(m=u<0,m?(n=d,u=-u,f=p.length):(n=p,r=h,f=d.length),s=Math.max(Math.ceil(x/Je),f)+2,u>s&&(u=s,n.length=1),n.reverse(),s=u;s--;)n.push(0);n.reverse()}else{for(s=d.length,f=p.length,m=s0;--s)d[f++]=0;for(s=p.length;s>u;){if(d[--s]0?o=o.charAt(0)+"."+o.slice(1)+Gi(r):u>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(s<0?"e":"e+")+s):s<0?(o="0."+Gi(-s-1)+o,n&&(r=n-u)>0&&(o+=Gi(r))):s>=u?(o+=Gi(s+1-u),n&&(r=n-s-1)>0&&(o=o+"."+Gi(r))):((r=s+1)0&&(s+1===u&&(o+="."),o+=Gi(r))),e.s<0?"-"+o:o}function VO(e,t){if(e.length>t)return e.length=t,!0}function YC(e){var t,n,r;function s(o){var u=this;if(!(u instanceof s))return new s(o);if(u.constructor=s,o instanceof s){u.s=o.s,u.e=o.e,u.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Ka+o);if(o>0)u.s=1;else if(o<0)o=-o,u.s=-1;else{u.s=0,u.e=0,u.d=[0];return}if(o===~~o&&o<1e7){u.e=0,u.d=[o];return}return UO(u,o.toString())}else if(typeof o!="string")throw Error(Ka+o);if(o.charCodeAt(0)===45?(o=o.slice(1),u.s=-1):u.s=1,K$.test(o))UO(u,o);else throw Error(Ka+o)}if(s.prototype=ce,s.ROUND_UP=0,s.ROUND_DOWN=1,s.ROUND_CEIL=2,s.ROUND_FLOOR=3,s.ROUND_HALF_UP=4,s.ROUND_HALF_DOWN=5,s.ROUND_HALF_EVEN=6,s.ROUND_HALF_CEIL=7,s.ROUND_HALF_FLOOR=8,s.clone=YC,s.config=s.set=X$,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=s[t+1]&&r<=s[t+2])this[n]=r;else throw Error(Ka+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ka+n+": "+r);return this}var xb=YC(H$);Nn=new xb(1);const Ce=xb;function GC(e){var t;return e===0?t=1:t=Math.floor(new Ce(e).abs().log(10).toNumber())+1,t}function WC(e,t,n){for(var r=new Ce(e),s=0,o=[];r.lt(t)&&s<1e5;)o.push(r.toNumber()),r=r.add(n),s++;return o}var ZC=e=>{var[t,n]=e,[r,s]=[t,n];return t>n&&([r,s]=[n,t]),[r,s]},wb=(e,t,n)=>{if(e.lte(0))return new Ce(0);var r=GC(e.toNumber()),s=new Ce(10).pow(r),o=e.div(s),u=r!==1?.05:.1,f=new Ce(Math.ceil(o.div(u).toNumber())).add(n).mul(u),d=f.mul(s);return t?new Ce(d.toNumber()):new Ce(Math.ceil(d.toNumber()))},QC=(e,t,n)=>{var r;if(e.lte(0))return new Ce(0);var s=[1,2,2.5,5],o=e.toNumber(),u=Math.floor(new Ce(o).abs().log(10).toNumber()),f=new Ce(10).pow(u),d=e.div(f).toNumber(),h=s.findIndex(x=>x>=d-1e-10);if(h===-1&&(f=f.mul(10),h=0),h+=n,h>=s.length){var m=Math.floor(h/s.length);h%=s.length,f=f.mul(new Ce(10).pow(m))}var p=(r=s[h])!==null&&r!==void 0?r:1,v=new Ce(p).mul(f);return t?v:new Ce(Math.ceil(v.toNumber()))},Y$=(e,t,n)=>{var r=new Ce(1),s=new Ce(e);if(!s.isint()&&n){var o=Math.abs(e);o<1?(r=new Ce(10).pow(GC(e)-1),s=new Ce(Math.floor(s.div(r).toNumber())).mul(r)):o>1&&(s=new Ce(Math.floor(e)))}else e===0?s=new Ce(Math.floor((t-1)/2)):n||(s=new Ce(Math.floor(e)));for(var u=Math.floor((t-1)/2),f=[],d=0;d4&&arguments[4]!==void 0?arguments[4]:0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:wb;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ce(0),tickMin:new Ce(0),tickMax:new Ce(0)};var f=u(new Ce(n).sub(t).div(r-1),s,o),d;t<=0&&n>=0?d=new Ce(0):(d=new Ce(t).add(n).div(2),d=d.sub(new Ce(d).mod(f)));var h=Math.ceil(d.sub(t).div(f).toNumber()),m=Math.ceil(new Ce(n).sub(d).div(f).toNumber()),p=h+m+1;return p>r?JC(t,n,r,s,o+1,u):(p0?m+(r-p):m,h=n>0?h:h+(r-p)),{step:f,tickMin:d.sub(new Ce(h).mul(f)),tickMax:d.add(new Ce(m).mul(f))})},qO=function(t){var[n,r]=t,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",f=Math.max(s,2),[d,h]=ZC([n,r]);if(d===-1/0||h===1/0){var m=h===1/0?[d,...Array(s-1).fill(1/0)]:[...Array(s-1).fill(-1/0),h];return n>r?m.reverse():m}if(d===h)return Y$(d,s,o);var p=u==="snap125"?QC:wb,{step:v,tickMin:x,tickMax:w}=JC(d,h,f,o,0,p),_=WC(x,w.add(new Ce(.1).mul(v)),v);return n>r?_.reverse():_},$O=function(t,n){var[r,s]=t,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",[f,d]=ZC([r,s]);if(f===-1/0||d===1/0)return[r,s];if(f===d)return[f];var h=u==="snap125"?QC:wb,m=Math.max(n,2),p=h(new Ce(d).sub(f).div(m-1),o,0),v=[...WC(new Ce(f),new Ce(d),p),d];return o===!1&&(v=v.map(x=>Math.round(x))),r>s?v.reverse():v},G$=e=>e.rootProps.barCategoryGap,ph=e=>e.rootProps.stackOffset,e3=e=>e.rootProps.reverseStackOrder,_b=e=>e.options.chartName,Sb=e=>e.rootProps.syncId,t3=e=>e.rootProps.syncMethod,Ab=e=>e.options.eventEmitter,pn={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},ka={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},wr={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},gh=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function yh(e,t,n){if(n!=="auto")return n;if(e!=null)return sa(e,t)?"category":"number"}function FO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sd(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},Tb=$([J$,AC],(e,t)=>{var n;if(e!=null)return e;var r=(n=yh(t,"angleAxis",HO.type))!==null&&n!==void 0?n:"category";return Sd(Sd({},HO),{},{type:r})}),eF=(e,t)=>e.polarAxis.radiusAxis[t],Ob=$([eF,AC],(e,t)=>{var n;if(e!=null)return e;var r=(n=yh(t,"radiusAxis",KO.type))!==null&&n!==void 0?n:"category";return Sd(Sd({},KO),{},{type:r})}),vh=e=>e.polarOptions,Eb=$([hi,mi,Xt],j$),n3=$([vh,Eb],(e,t)=>{if(e!=null)return ra(e.innerRadius,t,0)}),r3=$([vh,Eb],(e,t)=>{if(e!=null)return ra(e.outerRadius,t,t*.8)}),tF=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},i3=$([vh],tF);$([Tb,i3],gh);var a3=$([Eb,n3,r3],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});$([Ob,a3],gh);var s3=$([ht,vh,n3,r3,hi,mi],(e,t,n,r,s,o)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:u,cy:f,startAngle:d,endAngle:h}=t;return{cx:ra(u,s,s/2),cy:ra(f,o,o/2),innerRadius:n,outerRadius:r,startAngle:d,endAngle:h,clockWise:!1}}}),Ct=(e,t)=>t,bh=(e,t,n)=>n;function o3(e){return e?.id}function l3(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:s,dataKey:o}=n,u=new Map;return e.forEach(f=>{var d,h=(d=f.data)!==null&&d!==void 0?d:r;if(!(h==null||h.length===0)){var m=o3(f);h.forEach((p,v)=>{var x=o==null||s?v:String(Ot(p,o,null)),w=Ot(p,f.dataKey,0),_;u.has(x)?_=u.get(x):_={},Object.assign(_,{[m]:w}),u.set(x,_)})}}),Array.from(u.values())}function jb(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var xh=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function wh(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function nF(e,t){if(e.length===t.length){for(var n=0;n{var t=ht(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},To=e=>e.tooltip.settings.axisId;function Mb(e){if(e!=null){var t=e.ticks,n=e.bandwidth,r=e.range(),s=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(o){function u(){return o.apply(this,arguments)}return u.toString=function(){return o.toString()},u})(()=>s),rangeMin:()=>s[0],rangeMax:()=>s[1],isInRange(o){var u=s[0],f=s[1];return u<=f?o>=u&&o<=f:o>=f&&o<=u},bandwidth:n?()=>n.call(e):void 0,ticks:t?o=>t.call(e,o):void 0,map:(o,u)=>{var f=e(o);if(f!=null){if(e.bandwidth&&u!==null&&u!==void 0&&u.position){var d=e.bandwidth();switch(u.position){case"middle":f+=d/2;break;case"end":f+=d;break}}return f}}}}}var rF=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Er(t)){for(var n,r,s=0;sr)&&(r=o))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function ea(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function iF(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function kb(e){let t,n,r;e.length!==2?(t=ea,n=(f,d)=>ea(e(f),d),r=(f,d)=>e(f)-d):(t=e===ea||e===iF?e:aF,n=e,r=e);function s(f,d,h=0,m=f.length){if(h>>1;n(f[p],d)<0?h=p+1:m=p}while(h>>1;n(f[p],d)<=0?h=p+1:m=p}while(hh&&r(f[p-1],d)>-r(f[p],d)?p-1:p}return{left:s,center:u,right:o}}function aF(){return 0}function u3(e){return e===null?NaN:+e}function*sF(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const oF=kb(ea),Ru=oF.right;kb(u3).center;class XO extends Map{constructor(t,n=cF){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,s]of t)this.set(r,s)}get(t){return super.get(YO(this,t))}has(t){return super.has(YO(this,t))}set(t,n){return super.set(lF(this,t),n)}delete(t){return super.delete(uF(this,t))}}function YO({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function lF({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function uF({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function cF(e){return e!==null&&typeof e=="object"?e.valueOf():e}function fF(e=ea){if(e===ea)return c3;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function c3(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const dF=Math.sqrt(50),hF=Math.sqrt(10),mF=Math.sqrt(2);function Ad(e,t,n){const r=(t-e)/Math.max(0,n),s=Math.floor(Math.log10(r)),o=r/Math.pow(10,s),u=o>=dF?10:o>=hF?5:o>=mF?2:1;let f,d,h;return s<0?(h=Math.pow(10,-s)/u,f=Math.round(e*h),d=Math.round(t*h),f/ht&&--d,h=-h):(h=Math.pow(10,s)*u,f=Math.round(e/h),d=Math.round(t/h),f*ht&&--d),d0))return[];if(e===t)return[e];const r=t=s))return[];const f=o-s+1,d=new Array(f);if(r)if(u<0)for(let h=0;h=r)&&(n=r);return n}function WO(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function f3(e,t,n=0,r=1/0,s){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(s=s===void 0?c3:fF(s);r>n;){if(r-n>600){const d=r-n+1,h=t-n+1,m=Math.log(d),p=.5*Math.exp(2*m/3),v=.5*Math.sqrt(m*p*(d-p)/d)*(h-d/2<0?-1:1),x=Math.max(n,Math.floor(t-h*p/d+v)),w=Math.min(r,Math.floor(t+(d-h)*p/d+v));f3(e,t,x,w,s)}const o=e[t];let u=n,f=r;for(Dl(e,n,t),s(e[r],o)>0&&Dl(e,n,r);u0;)--f}s(e[n],o)===0?Dl(e,n,f):(++f,Dl(e,f,r)),f<=t&&(n=f+1),t<=f&&(r=f-1)}return e}function Dl(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function pF(e,t,n){if(e=Float64Array.from(sF(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return WO(e);if(t>=1)return GO(e);var r,s=(r-1)*t,o=Math.floor(s),u=GO(f3(e,o).subarray(0,o+1)),f=WO(e.subarray(o+1));return u+(f-u)*(s-o)}}function gF(e,t,n=u3){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,s=(r-1)*t,o=Math.floor(s),u=+n(e[o],o,e),f=+n(e[o+1],o+1,e);return u+(f-u)*(s-o)}}function yF(e,t,n){e=+e,t=+t,n=(s=arguments.length)<2?(t=e,e=0,1):s<3?1:+n;for(var r=-1,s=Math.max(0,Math.ceil((t-e)/n))|0,o=new Array(s);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Af(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Af(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=xF.exec(e))?new gn(t[1],t[2],t[3],1):(t=wF.exec(e))?new gn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=_F.exec(e))?Af(t[1],t[2],t[3],t[4]):(t=SF.exec(e))?Af(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=AF.exec(e))?rE(t[1],t[2]/100,t[3]/100,1):(t=TF.exec(e))?rE(t[1],t[2]/100,t[3]/100,t[4]):ZO.hasOwnProperty(e)?eE(ZO[e]):e==="transparent"?new gn(NaN,NaN,NaN,0):null}function eE(e){return new gn(e>>16&255,e>>8&255,e&255,1)}function Af(e,t,n,r){return r<=0&&(e=t=n=NaN),new gn(e,t,n,r)}function jF(e){return e instanceof Lu||(e=gu(e)),e?(e=e.rgb(),new gn(e.r,e.g,e.b,e.opacity)):new gn}function Jv(e,t,n,r){return arguments.length===1?jF(e):new gn(e,t,n,r??1)}function gn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Db(gn,Jv,h3(Lu,{brighter(e){return e=e==null?Td:Math.pow(Td,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?mu:Math.pow(mu,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new gn(Xa(this.r),Xa(this.g),Xa(this.b),Od(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:tE,formatHex:tE,formatHex8:MF,formatRgb:nE,toString:nE}));function tE(){return`#${Va(this.r)}${Va(this.g)}${Va(this.b)}`}function MF(){return`#${Va(this.r)}${Va(this.g)}${Va(this.b)}${Va((isNaN(this.opacity)?1:this.opacity)*255)}`}function nE(){const e=Od(this.opacity);return`${e===1?"rgb(":"rgba("}${Xa(this.r)}, ${Xa(this.g)}, ${Xa(this.b)}${e===1?")":`, ${e})`}`}function Od(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Xa(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Va(e){return e=Xa(e),(e<16?"0":"")+e.toString(16)}function rE(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new cr(e,t,n,r)}function m3(e){if(e instanceof cr)return new cr(e.h,e.s,e.l,e.opacity);if(e instanceof Lu||(e=gu(e)),!e)return new cr;if(e instanceof cr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,s=Math.min(t,n,r),o=Math.max(t,n,r),u=NaN,f=o-s,d=(o+s)/2;return f?(t===o?u=(n-r)/f+(n0&&d<1?0:u,new cr(u,f,d,e.opacity)}function kF(e,t,n,r){return arguments.length===1?m3(e):new cr(e,t,n,r??1)}function cr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Db(cr,kF,h3(Lu,{brighter(e){return e=e==null?Td:Math.pow(Td,e),new cr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?mu:Math.pow(mu,e),new cr(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,s=2*n-r;return new gn(ky(e>=240?e-240:e+120,s,r),ky(e,s,r),ky(e<120?e+240:e-120,s,r),this.opacity)},clamp(){return new cr(iE(this.h),Tf(this.s),Tf(this.l),Od(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(){const e=Od(this.opacity);return`${e===1?"hsl(":"hsla("}${iE(this.h)}, ${Tf(this.s)*100}%, ${Tf(this.l)*100}%${e===1?")":`, ${e})`}`}}));function iE(e){return e=(e||0)%360,e<0?e+360:e}function Tf(e){return Math.max(0,Math.min(1,e||0))}function ky(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Pb=e=>()=>e;function NF(e,t){return function(n){return e+n*t}}function CF(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function DF(e){return(e=+e)==1?p3:function(t,n){return n-t?CF(t,n,e):Pb(isNaN(t)?n:t)}}function p3(e,t){var n=t-e;return n?NF(e,n):Pb(isNaN(e)?t:e)}const aE=(function e(t){var n=DF(t);function r(s,o){var u=n((s=Jv(s)).r,(o=Jv(o)).r),f=n(s.g,o.g),d=n(s.b,o.b),h=p3(s.opacity,o.opacity);return function(m){return s.r=u(m),s.g=f(m),s.b=d(m),s.opacity=h(m),s+""}}return r.gamma=e,r})(1);function PF(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),s;return function(o){for(s=0;sn&&(o=t.slice(n,o),f[u]?f[u]+=o:f[++u]=o),(r=r[0])===(s=s[0])?f[u]?f[u]+=s:f[++u]=s:(f[++u]=null,d.push({i:u,x:Ed(r,s)})),n=Ny.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function HF(e,t,n){var r=e[0],s=e[1],o=t[0],u=t[1];return s2?KF:HF,d=h=null,p}function p(v){return v==null||isNaN(v=+v)?o:(d||(d=f(e.map(r),t,n)))(r(u(v)))}return p.invert=function(v){return u(s((h||(h=f(t,e.map(r),Ed)))(v)))},p.domain=function(v){return arguments.length?(e=Array.from(v,jd),m()):e.slice()},p.range=function(v){return arguments.length?(t=Array.from(v),m()):t.slice()},p.rangeRound=function(v){return t=Array.from(v),n=Rb,m()},p.clamp=function(v){return arguments.length?(u=v?!0:rn,m()):u!==rn},p.interpolate=function(v){return arguments.length?(n=v,m()):n},p.unknown=function(v){return arguments.length?(o=v,p):o},function(v,x){return r=v,s=x,m()}}function Lb(){return _h()(rn,rn)}function XF(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function Md(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 mo(e){return e=Md(Math.abs(e)),e?e[1]:NaN}function YF(e,t){return function(n,r){for(var s=n.length,o=[],u=0,f=e[0],d=0;s>0&&f>0&&(d+f+1>r&&(f=Math.max(1,r-d)),o.push(n.substring(s-=f,s+f)),!((d+=f+1)>r));)f=e[u=(u+1)%e.length];return o.reverse().join(t)}}function GF(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var WF=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function yu(e){if(!(t=WF.exec(e)))throw new Error("invalid format: "+e);var t;return new zb({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]})}yu.prototype=zb.prototype;function zb(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+""}zb.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 ZF(e){e:for(var t=e.length,n=1,r=-1,s;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(s+1):e}var kd;function QF(e,t){var n=Md(e,t);if(!n)return kd=void 0,e.toPrecision(t);var r=n[0],s=n[1],o=s-(kd=Math.max(-8,Math.min(8,Math.floor(s/3)))*3)+1,u=r.length;return o===u?r:o>u?r+new Array(o-u+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+Md(e,Math.max(0,t+o-1))[0]}function oE(e,t){var n=Md(e,t);if(!n)return e+"";var r=n[0],s=n[1];return s<0?"0."+new Array(-s).join("0")+r:r.length>s+1?r.slice(0,s+1)+"."+r.slice(s+1):r+new Array(s-r.length+2).join("0")}const lE={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:XF,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)=>oE(e*100,t),r:oE,s:QF,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function uE(e){return e}var cE=Array.prototype.map,fE=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function JF(e){var t=e.grouping===void 0||e.thousands===void 0?uE:YF(cE.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",s=e.decimal===void 0?".":e.decimal+"",o=e.numerals===void 0?uE:GF(cE.call(e.numerals,String)),u=e.percent===void 0?"%":e.percent+"",f=e.minus===void 0?"−":e.minus+"",d=e.nan===void 0?"NaN":e.nan+"";function h(p,v){p=yu(p);var x=p.fill,w=p.align,_=p.sign,S=p.symbol,O=p.zero,M=p.width,j=p.comma,k=p.precision,N=p.trim,C=p.type;C==="n"?(j=!0,C="g"):lE[C]||(k===void 0&&(k=12),N=!0,C="g"),(O||x==="0"&&w==="=")&&(O=!0,x="0",w="=");var L=(v&&v.prefix!==void 0?v.prefix:"")+(S==="$"?n:S==="#"&&/[boxX]/.test(C)?"0"+C.toLowerCase():""),I=(S==="$"?r:/[%p]/.test(C)?u:"")+(v&&v.suffix!==void 0?v.suffix:""),Y=lE[C],te=/[defgprs%]/.test(C);k=k===void 0?6:/[gprs]/.test(C)?Math.max(1,Math.min(21,k)):Math.max(0,Math.min(20,k));function ie(K){var be=L,pe=I,xe,V,Q;if(C==="c")pe=Y(K)+pe,K="";else{K=+K;var ne=K<0||1/K<0;if(K=isNaN(K)?d:Y(Math.abs(K),k),N&&(K=ZF(K)),ne&&+K==0&&_!=="+"&&(ne=!1),be=(ne?_==="("?_:f:_==="-"||_==="("?"":_)+be,pe=(C==="s"&&!isNaN(K)&&kd!==void 0?fE[8+kd/3]:"")+pe+(ne&&_==="("?")":""),te){for(xe=-1,V=K.length;++xeQ||Q>57){pe=(Q===46?s+K.slice(xe+1):K.slice(xe))+pe,K=K.slice(0,xe);break}}}j&&!O&&(K=t(K,1/0));var le=be.length+K.length+pe.length,ue=le>1)+be+K+pe+ue.slice(le);break;default:K=ue+be+K+pe;break}return o(K)}return ie.toString=function(){return p+""},ie}function m(p,v){var x=Math.max(-8,Math.min(8,Math.floor(mo(v)/3)))*3,w=Math.pow(10,-x),_=h((p=yu(p),p.type="f",p),{suffix:fE[8+x/3]});return function(S){return _(w*S)}}return{format:h,formatPrefix:m}}var Of,Ib,g3;eH({thousands:",",grouping:[3],currency:["$",""]});function eH(e){return Of=JF(e),Ib=Of.format,g3=Of.formatPrefix,Of}function tH(e){return Math.max(0,-mo(Math.abs(e)))}function nH(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(mo(t)/3)))*3-mo(Math.abs(e)))}function rH(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,mo(t)-mo(e))+1}function y3(e,t,n,r){var s=Zv(e,t,n),o;switch(r=yu(r??",f"),r.type){case"s":{var u=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(o=nH(s,u))&&(r.precision=o),g3(r,u)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(o=rH(s,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=o-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(o=tH(s))&&(r.precision=o-(r.type==="%")*2);break}}return Ib(r)}function la(e){var t=e.domain;return e.ticks=function(n){var r=t();return Gv(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var s=t();return y3(s[0],s[s.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),s=0,o=r.length-1,u=r[s],f=r[o],d,h,m=10;for(f0;){if(h=Wv(u,f,n),h===d)return r[s]=u,r[o]=f,t(r);if(h>0)u=Math.floor(u/h)*h,f=Math.ceil(f/h)*h;else if(h<0)u=Math.ceil(u*h)/h,f=Math.floor(f*h)/h;else break;d=h}return e},e}function v3(){var e=Lb();return e.copy=function(){return zu(e,v3())},nr.apply(e,arguments),la(e)}function b3(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,jd),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return b3(e).unknown(t)},e=arguments.length?Array.from(e,jd):[0,1],la(n)}function x3(e,t){e=e.slice();var n=0,r=e.length-1,s=e[n],o=e[r],u;return oMath.pow(e,t)}function lH(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 mE(e){return(t,n)=>-e(-t,n)}function Bb(e){const t=e(dE,hE),n=t.domain;let r=10,s,o;function u(){return s=lH(r),o=oH(r),n()[0]<0?(s=mE(s),o=mE(o),e(iH,aH)):e(dE,hE),t}return t.base=function(f){return arguments.length?(r=+f,u()):r},t.domain=function(f){return arguments.length?(n(f),u()):n()},t.ticks=f=>{const d=n();let h=d[0],m=d[d.length-1];const p=m0){for(;v<=x;++v)for(w=1;wm)break;O.push(_)}}else for(;v<=x;++v)for(w=r-1;w>=1;--w)if(_=v>0?w/o(-v):w*o(v),!(_m)break;O.push(_)}O.length*2{if(f==null&&(f=10),d==null&&(d=r===10?"s":","),typeof d!="function"&&(!(r%1)&&(d=yu(d)).precision==null&&(d.trim=!0),d=Ib(d)),f===1/0)return d;const h=Math.max(1,r*f/t.ticks().length);return m=>{let p=m/o(Math.round(s(m)));return p*rn(x3(n(),{floor:f=>o(Math.floor(s(f))),ceil:f=>o(Math.ceil(s(f)))})),t}function w3(){const e=Bb(_h()).domain([1,10]);return e.copy=()=>zu(e,w3()).base(e.base()),nr.apply(e,arguments),e}function pE(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function gE(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Ub(e){var t=1,n=e(pE(t),gE(t));return n.constant=function(r){return arguments.length?e(pE(t=+r),gE(t)):t},la(n)}function _3(){var e=Ub(_h());return e.copy=function(){return zu(e,_3()).constant(e.constant())},nr.apply(e,arguments)}function yE(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function uH(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function cH(e){return e<0?-e*e:e*e}function Vb(e){var t=e(rn,rn),n=1;function r(){return n===1?e(rn,rn):n===.5?e(uH,cH):e(yE(n),yE(1/n))}return t.exponent=function(s){return arguments.length?(n=+s,r()):n},la(t)}function qb(){var e=Vb(_h());return e.copy=function(){return zu(e,qb()).exponent(e.exponent())},nr.apply(e,arguments),e}function fH(){return qb.apply(null,arguments).exponent(.5)}function vE(e){return Math.sign(e)*e*e}function dH(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function S3(){var e=Lb(),t=[0,1],n=!1,r;function s(o){var u=dH(e(o));return isNaN(u)?r:n?Math.round(u):u}return s.invert=function(o){return e.invert(vE(o))},s.domain=function(o){return arguments.length?(e.domain(o),s):e.domain()},s.range=function(o){return arguments.length?(e.range((t=Array.from(o,jd)).map(vE)),s):t.slice()},s.rangeRound=function(o){return s.range(o).round(!0)},s.round=function(o){return arguments.length?(n=!!o,s):n},s.clamp=function(o){return arguments.length?(e.clamp(o),s):e.clamp()},s.unknown=function(o){return arguments.length?(r=o,s):r},s.copy=function(){return S3(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},nr.apply(s,arguments),la(s)}function A3(){var e=[],t=[],n=[],r;function s(){var u=0,f=Math.max(1,t.length);for(n=new Array(f-1);++u0?n[f-1]:e[0],f=n?[r[n-1],t]:[r[h-1],r[h]]},u.unknown=function(d){return arguments.length&&(o=d),u},u.thresholds=function(){return r.slice()},u.copy=function(){return T3().domain([e,t]).range(s).unknown(o)},nr.apply(la(u),arguments)}function O3(){var e=[.5],t=[0,1],n,r=1;function s(o){return o!=null&&o<=o?t[Ru(e,o,0,r)]:n}return s.domain=function(o){return arguments.length?(e=Array.from(o),r=Math.min(e.length,t.length-1),s):e.slice()},s.range=function(o){return arguments.length?(t=Array.from(o),r=Math.min(e.length,t.length-1),s):t.slice()},s.invertExtent=function(o){var u=t.indexOf(o);return[e[u-1],e[u]]},s.unknown=function(o){return arguments.length?(n=o,s):n},s.copy=function(){return O3().domain(e).range(t).unknown(n)},nr.apply(s,arguments)}const Cy=new Date,Dy=new Date;function Et(e,t,n,r){function s(o){return e(o=arguments.length===0?new Date:new Date(+o)),o}return s.floor=o=>(e(o=new Date(+o)),o),s.ceil=o=>(e(o=new Date(o-1)),t(o,1),e(o),o),s.round=o=>{const u=s(o),f=s.ceil(o);return o-u(t(o=new Date(+o),u==null?1:Math.floor(u)),o),s.range=(o,u,f)=>{const d=[];if(o=s.ceil(o),f=f==null?1:Math.floor(f),!(o0))return d;let h;do d.push(h=new Date(+o)),t(o,f),e(o);while(hEt(u=>{if(u>=u)for(;e(u),!o(u);)u.setTime(u-1)},(u,f)=>{if(u>=u)if(f<0)for(;++f<=0;)for(;t(u,-1),!o(u););else for(;--f>=0;)for(;t(u,1),!o(u););}),n&&(s.count=(o,u)=>(Cy.setTime(+o),Dy.setTime(+u),e(Cy),e(Dy),Math.floor(n(Cy,Dy))),s.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?s.filter(r?u=>r(u)%o===0:u=>s.count(0,u)%o===0):s)),s}const Nd=Et(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);Nd.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Et(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):Nd);Nd.range;const ti=1e3,Qn=ti*60,ni=Qn*60,ui=ni*24,$b=ui*7,bE=ui*30,Py=ui*365,qa=Et(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getUTCSeconds());qa.range;const Fb=Et(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ti)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getMinutes());Fb.range;const Hb=Et(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getUTCMinutes());Hb.range;const Kb=Et(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ti-e.getMinutes()*Qn)},(e,t)=>{e.setTime(+e+t*ni)},(e,t)=>(t-e)/ni,e=>e.getHours());Kb.range;const Xb=Et(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ni)},(e,t)=>(t-e)/ni,e=>e.getUTCHours());Xb.range;const Iu=Et(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Qn)/ui,e=>e.getDate()-1);Iu.range;const Sh=Et(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ui,e=>e.getUTCDate()-1);Sh.range;const E3=Et(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ui,e=>Math.floor(e/ui));E3.range;function ns(e){return Et(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Qn)/$b)}const Ah=ns(0),Cd=ns(1),hH=ns(2),mH=ns(3),po=ns(4),pH=ns(5),gH=ns(6);Ah.range;Cd.range;hH.range;mH.range;po.range;pH.range;gH.range;function rs(e){return Et(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/$b)}const Th=rs(0),Dd=rs(1),yH=rs(2),vH=rs(3),go=rs(4),bH=rs(5),xH=rs(6);Th.range;Dd.range;yH.range;vH.range;go.range;bH.range;xH.range;const Yb=Et(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());Yb.range;const Gb=Et(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());Gb.range;const ci=Et(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());ci.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Et(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)});ci.range;const fi=Et(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());fi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Et(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)});fi.range;function j3(e,t,n,r,s,o){const u=[[qa,1,ti],[qa,5,5*ti],[qa,15,15*ti],[qa,30,30*ti],[o,1,Qn],[o,5,5*Qn],[o,15,15*Qn],[o,30,30*Qn],[s,1,ni],[s,3,3*ni],[s,6,6*ni],[s,12,12*ni],[r,1,ui],[r,2,2*ui],[n,1,$b],[t,1,bE],[t,3,3*bE],[e,1,Py]];function f(h,m,p){const v=mS).right(u,v);if(x===u.length)return e.every(Zv(h/Py,m/Py,p));if(x===0)return Nd.every(Math.max(Zv(h,m,p),1));const[w,_]=u[v/u[x-1][2]53)return null;"w"in ee||(ee.w=1),"Z"in ee?(De=Ly(Pl(ee.y,0,1)),Lt=De.getUTCDay(),De=Lt>4||Lt===0?Dd.ceil(De):Dd(De),De=Sh.offset(De,(ee.V-1)*7),ee.y=De.getUTCFullYear(),ee.m=De.getUTCMonth(),ee.d=De.getUTCDate()+(ee.w+6)%7):(De=Ry(Pl(ee.y,0,1)),Lt=De.getDay(),De=Lt>4||Lt===0?Cd.ceil(De):Cd(De),De=Iu.offset(De,(ee.V-1)*7),ee.y=De.getFullYear(),ee.m=De.getMonth(),ee.d=De.getDate()+(ee.w+6)%7)}else("W"in ee||"U"in ee)&&("w"in ee||(ee.w="u"in ee?ee.u%7:"W"in ee?1:0),Lt="Z"in ee?Ly(Pl(ee.y,0,1)).getUTCDay():Ry(Pl(ee.y,0,1)).getDay(),ee.m=0,ee.d="W"in ee?(ee.w+6)%7+ee.W*7-(Lt+5)%7:ee.w+ee.U*7-(Lt+6)%7);return"Z"in ee?(ee.H+=ee.Z/100|0,ee.M+=ee.Z%100,Ly(ee)):Ry(ee)}}function I(J,re,Se,ee){for(var Rt=0,De=re.length,Lt=Se.length,zt,Pr;Rt=Lt)return-1;if(zt=re.charCodeAt(Rt++),zt===37){if(zt=re.charAt(Rt++),Pr=N[zt in xE?re.charAt(Rt++):zt],!Pr||(ee=Pr(J,Se,ee))<0)return-1}else if(zt!=Se.charCodeAt(ee++))return-1}return ee}function Y(J,re,Se){var ee=h.exec(re.slice(Se));return ee?(J.p=m.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function te(J,re,Se){var ee=x.exec(re.slice(Se));return ee?(J.w=w.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function ie(J,re,Se){var ee=p.exec(re.slice(Se));return ee?(J.w=v.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function K(J,re,Se){var ee=O.exec(re.slice(Se));return ee?(J.m=M.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function be(J,re,Se){var ee=_.exec(re.slice(Se));return ee?(J.m=S.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function pe(J,re,Se){return I(J,t,re,Se)}function xe(J,re,Se){return I(J,n,re,Se)}function V(J,re,Se){return I(J,r,re,Se)}function Q(J){return u[J.getDay()]}function ne(J){return o[J.getDay()]}function le(J){return d[J.getMonth()]}function ue(J){return f[J.getMonth()]}function P(J){return s[+(J.getHours()>=12)]}function H(J){return 1+~~(J.getMonth()/3)}function ae(J){return u[J.getUTCDay()]}function se(J){return o[J.getUTCDay()]}function Z(J){return d[J.getUTCMonth()]}function oe(J){return f[J.getUTCMonth()]}function he(J){return s[+(J.getUTCHours()>=12)]}function _e(J){return 1+~~(J.getUTCMonth()/3)}return{format:function(J){var re=C(J+="",j);return re.toString=function(){return J},re},parse:function(J){var re=L(J+="",!1);return re.toString=function(){return J},re},utcFormat:function(J){var re=C(J+="",k);return re.toString=function(){return J},re},utcParse:function(J){var re=L(J+="",!0);return re.toString=function(){return J},re}}}var xE={"-":"",_:" ",0:"0"},Pt=/^\s*\d+/,OH=/^%/,EH=/[\\^$*+?|[\]().{}]/g;function ze(e,t,n){var r=e<0?"-":"",s=(r?-e:e)+"",o=s.length;return r+(o[t.toLowerCase(),n]))}function MH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function kH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function NH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function CH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function DH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function wE(e,t,n){var r=Pt.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function _E(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function PH(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 RH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function LH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function SE(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function zH(e,t,n){var r=Pt.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function AE(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function IH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function BH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function UH(e,t,n){var r=Pt.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function VH(e,t,n){var r=Pt.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function qH(e,t,n){var r=OH.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function $H(e,t,n){var r=Pt.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function FH(e,t,n){var r=Pt.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function TE(e,t){return ze(e.getDate(),t,2)}function HH(e,t){return ze(e.getHours(),t,2)}function KH(e,t){return ze(e.getHours()%12||12,t,2)}function XH(e,t){return ze(1+Iu.count(ci(e),e),t,3)}function M3(e,t){return ze(e.getMilliseconds(),t,3)}function YH(e,t){return M3(e,t)+"000"}function GH(e,t){return ze(e.getMonth()+1,t,2)}function WH(e,t){return ze(e.getMinutes(),t,2)}function ZH(e,t){return ze(e.getSeconds(),t,2)}function QH(e){var t=e.getDay();return t===0?7:t}function JH(e,t){return ze(Ah.count(ci(e)-1,e),t,2)}function k3(e){var t=e.getDay();return t>=4||t===0?po(e):po.ceil(e)}function eK(e,t){return e=k3(e),ze(po.count(ci(e),e)+(ci(e).getDay()===4),t,2)}function tK(e){return e.getDay()}function nK(e,t){return ze(Cd.count(ci(e)-1,e),t,2)}function rK(e,t){return ze(e.getFullYear()%100,t,2)}function iK(e,t){return e=k3(e),ze(e.getFullYear()%100,t,2)}function aK(e,t){return ze(e.getFullYear()%1e4,t,4)}function sK(e,t){var n=e.getDay();return e=n>=4||n===0?po(e):po.ceil(e),ze(e.getFullYear()%1e4,t,4)}function oK(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+ze(t/60|0,"0",2)+ze(t%60,"0",2)}function OE(e,t){return ze(e.getUTCDate(),t,2)}function lK(e,t){return ze(e.getUTCHours(),t,2)}function uK(e,t){return ze(e.getUTCHours()%12||12,t,2)}function cK(e,t){return ze(1+Sh.count(fi(e),e),t,3)}function N3(e,t){return ze(e.getUTCMilliseconds(),t,3)}function fK(e,t){return N3(e,t)+"000"}function dK(e,t){return ze(e.getUTCMonth()+1,t,2)}function hK(e,t){return ze(e.getUTCMinutes(),t,2)}function mK(e,t){return ze(e.getUTCSeconds(),t,2)}function pK(e){var t=e.getUTCDay();return t===0?7:t}function gK(e,t){return ze(Th.count(fi(e)-1,e),t,2)}function C3(e){var t=e.getUTCDay();return t>=4||t===0?go(e):go.ceil(e)}function yK(e,t){return e=C3(e),ze(go.count(fi(e),e)+(fi(e).getUTCDay()===4),t,2)}function vK(e){return e.getUTCDay()}function bK(e,t){return ze(Dd.count(fi(e)-1,e),t,2)}function xK(e,t){return ze(e.getUTCFullYear()%100,t,2)}function wK(e,t){return e=C3(e),ze(e.getUTCFullYear()%100,t,2)}function _K(e,t){return ze(e.getUTCFullYear()%1e4,t,4)}function SK(e,t){var n=e.getUTCDay();return e=n>=4||n===0?go(e):go.ceil(e),ze(e.getUTCFullYear()%1e4,t,4)}function AK(){return"+0000"}function EE(){return"%"}function jE(e){return+e}function ME(e){return Math.floor(+e/1e3)}var Fs,D3,P3;TK({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 TK(e){return Fs=TH(e),D3=Fs.format,Fs.parse,P3=Fs.utcFormat,Fs.utcParse,Fs}function OK(e){return new Date(e)}function EK(e){return e instanceof Date?+e:+new Date(+e)}function Wb(e,t,n,r,s,o,u,f,d,h){var m=Lb(),p=m.invert,v=m.domain,x=h(".%L"),w=h(":%S"),_=h("%I:%M"),S=h("%I %p"),O=h("%a %d"),M=h("%b %d"),j=h("%B"),k=h("%Y");function N(C){return(d(C)t(s/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(s,o)=>pF(e,o/r))},n.copy=function(){return I3(t).domain(e)},pi.apply(n,arguments)}function Eh(){var e=0,t=.5,n=1,r=1,s,o,u,f,d,h=rn,m,p=!1,v;function x(_){return isNaN(_=+_)?v:(_=.5+((_=+m(_))-o)*(r*_{if(e!=null){var{scale:r,type:s}=e;if(r==="auto")return s==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":s==="category"?"band":"linear";if(typeof r=="string")return PK(r)?r:"point"}};function RK(e,t){for(var n=0,r=e.length,s=e[0]t)?n=o+1:r=o}return n}function $3(e,t){if(e){var n=t??e.domain(),r=n.map(o=>{var u;return(u=e(o))!==null&&u!==void 0?u:0}),s=e.range();if(!(n.length===0||s.length<2))return o=>{var u,f,d=RK(r,o);if(d<=0)return n[0];if(d>=n.length)return n[n.length-1];var h=(u=r[d-1])!==null&&u!==void 0?u:0,m=(f=r[d])!==null&&f!==void 0?f:0;return Math.abs(o-h)<=Math.abs(o-m)?n[d-1]:n[d]}}}function LK(e){if(e!=null)return"invert"in e&&typeof e.invert=="function"?e.invert.bind(e):$3(e,void 0)}function NE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Pd(e){for(var t=1;te.cartesianAxis.xAxis[t],gi=(e,t)=>{var n=F3(e,t);return n??wt},_t={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:n0,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:Mu},H3=(e,t)=>e.cartesianAxis.yAxis[t],yi=(e,t)=>{var n=H3(e,t);return n??_t},K3={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:""},ex=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??K3},sn=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);case"zAxis":return ex(e,n);case"angleAxis":return Tb(e,n);case"radiusAxis":return Ob(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},UK=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Bu=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);case"angleAxis":return Tb(e,n);case"radiusAxis":return Ob(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},X3=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function Y3(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 G3=e=>e.graphicalItems.cartesianItems,VK=$([Ct,bh],Y3),W3=(e,t,n)=>e.filter(n).filter(r=>t?.includeHidden===!0?!0:!r.hide),Uu=$([G3,sn,VK],W3,{memoizeOptions:{resultEqualityCheck:wh}}),Z3=$([Uu],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(jb)),Q3=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),qK=$([Uu],Q3),J3=e=>e.map(t=>t.data).filter(Boolean).flat(1),$K=$([Uu],J3,{memoizeOptions:{resultEqualityCheck:wh}}),eD=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:s}=t;return e.length>0?e:n.slice(r,s+1)},tx=$([$K,vb],eD),tD=(e,t,n)=>t?.dataKey!=null?e.map(r=>({value:Ot(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(s=>({value:Ot(s,r)}))):e.map(r=>({value:r})),Vu=$([tx,sn,Uu],tD);function lo(e){if(Nr(e)||e instanceof Date){var t=Number(e);if(Le(t))return t}}function CE(e){if(Array.isArray(e)){var t=[lo(e[0]),lo(e[1])];return Er(t)?t:void 0}var n=lo(e);if(n!=null)return[n,n]}function di(e){return e.map(lo).filter(mn)}function FK(e,t){var n=lo(e),r=lo(t);return n==null&&r==null?0:n==null?-1:r==null?1:n-r}var HK=$([Vu],e=>e?.map(t=>t.value).sort(FK));function nD(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function KK(e,t,n){return!n||typeof t!="number"||oi(t)?[]:n.length?di(n.flatMap(r=>{var s=Ot(e,r.dataKey),o,u;if(Array.isArray(s)?[o,u]=s:o=u=s,!(!Le(o)||!Le(u)))return[t-o,t+u]})):[]}var jt=e=>{var t=Dt(e),n=To(e);return Bu(e,t,n)},qu=$([jt],e=>e?.dataKey),XK=$([Z3,vb,jt],l3),rD=(e,t,n,r)=>{var s={},o=t.reduce((u,f)=>{if(f.stackId==null)return u;var d=u[f.stackId];return d==null&&(d=[]),d.push(f),u[f.stackId]=d,u},s);return Object.fromEntries(Object.entries(o).map(u=>{var[f,d]=u,h=r?[...d].reverse():d,m=h.map(o3);return[f,{stackedData:ZU(e,m,n),graphicalItems:h}]}))},YK=$([XK,Z3,ph,e3],rD),iD=(e,t,n,r)=>{var{dataStartIndex:s,dataEndIndex:o}=t;if(r==null&&n!=="zAxis"){var u=eV(e,s,o);if(!(u!=null&&u[0]===0&&u[1]===0))return u}},GK=$([sn],e=>e.allowDataOverflow),nx=e=>{var t;if(e==null||!("domain"in e))return n0;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=di(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e?.domain)!==null&&t!==void 0?t:n0},aD=$([sn],nx),sD=$([aD,GK],$C),WK=$([YK,oa,Ct,sD],iD,{memoizeOptions:{resultEqualityCheck:xh}}),rx=e=>e.errorBars,ZK=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>nD(n,r)),Rd=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var o,u;if(n.length>0&&e.forEach(f=>{n.forEach(d=>{var h,m,p=(h=r[d.id])===null||h===void 0?void 0:h.filter(O=>nD(s,O)),v=Ot(f,(m=t.dataKey)!==null&&m!==void 0?m:d.dataKey),x=KK(f,v,p);if(x.length>=2){var w=Math.min(...x),_=Math.max(...x);(o==null||wu)&&(u=_)}var S=CE(v);S!=null&&(o=o==null?S[0]:Math.min(o,S[0]),u=u==null?S[1]:Math.max(u,S[1]))})}),t?.dataKey!=null&&e.forEach(f=>{var d=CE(Ot(f,t.dataKey));d!=null&&(o=o==null?d[0]:Math.min(o,d[0]),u=u==null?d[1]:Math.max(u,d[1]))}),Le(o)&&Le(u))return[o,u]},QK=$([tx,sn,qK,rx,Ct],oD,{memoizeOptions:{resultEqualityCheck:xh}});function JK(e){var{value:t}=e;if(Nr(t)||t instanceof Date)return t}var eX=(e,t,n)=>{var r=e.map(JK).filter(s=>s!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&yN(r))?qC(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},lD=e=>e.referenceElements.dots,Eo=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),tX=$([lD,Ct,bh],Eo),uD=e=>e.referenceElements.areas,nX=$([uD,Ct,bh],Eo),cD=e=>e.referenceElements.lines,rX=$([cD,Ct,bh],Eo),fD=(e,t)=>{if(e!=null){var n=di(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},iX=$(tX,Ct,fD),dD=(e,t)=>{if(e!=null){var n=di(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},aX=$([nX,Ct],dD);function sX(e){var t;if(e.x!=null)return di([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:di(n)}function oX(e){var t;if(e.y!=null)return di([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:di(n)}var hD=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?sX(r):oX(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},lX=$([rX,Ct],hD),uX=$(iX,lX,aX,(e,t,n)=>Rd(e,n,t)),mD=(e,t,n,r,s,o,u,f)=>{if(n!=null)return n;var d=u==="vertical"&&f==="xAxis"||u==="horizontal"&&f==="yAxis",h=d?Rd(r,o,s):Rd(o,s);return F$(t,h,e.allowDataOverflow)},cX=$([sn,aD,sD,WK,QK,uX,ht,Ct],mD,{memoizeOptions:{resultEqualityCheck:xh}}),fX=[0,1],pD=(e,t,n,r,s,o,u)=>{if(!((e==null||n==null||n.length===0)&&u===void 0)){var{dataKey:f,type:d}=e,h=sa(t,o);if(h&&f==null){var m;return qC(0,(m=n?.length)!==null&&m!==void 0?m:0)}return d==="category"?eX(r,e,h):s==="expand"?fX:u}},ix=$([sn,ht,tx,Vu,ph,Ct,cX],pD),jo=$([sn,X3,_b],q3),gD=(e,t,n)=>{var{niceTicks:r}=t;if(r!=="none"){var s=nx(t),o=Array.isArray(s)&&(s[0]==="auto"||s[1]==="auto");if((r==="snap125"||r==="adaptive")&&t!=null&&t.tickCount&&Er(e)){if(o)return qO(e,t.tickCount,t.allowDecimals,r);if(t.type==="number")return $O(e,t.tickCount,t.allowDecimals,r)}if(r==="auto"&&n==="linear"&&t!=null&&t.tickCount){if(o&&Er(e))return qO(e,t.tickCount,t.allowDecimals,"adaptive");if(t.type==="number"&&Er(e))return $O(e,t.tickCount,t.allowDecimals,"adaptive")}}},ax=$([ix,Bu,jo],gD),yD=(e,t,n,r)=>{if(r!=="angleAxis"&&e?.type==="number"&&Er(t)&&Array.isArray(n)&&n.length>0){var s,o,u=t[0],f=(s=n[0])!==null&&s!==void 0?s:0,d=t[1],h=(o=n[n.length-1])!==null&&o!==void 0?o:0;return[Math.min(u,f),Math.max(d,h)]}return t},dX=$([sn,ix,ax,Ct],yD),hX=$(Vu,sn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(di(e.map(p=>p.value))).sort((p,v)=>p-v),s=r[0],o=r[r.length-1];if(s==null||o==null)return 1/0;var u=o-s;if(u===0)return 1/0;for(var f=0;fs,(e,t,n,r,s)=>{if(!Le(e))return 0;var o=t==="vertical"?r.height:r.width;if(s==="gap")return e*o/2;if(s==="no-gap"){var u=ra(n,e*o),f=e*o/2;return f-u-(f-u)/o*u}return 0}),mX=(e,t,n)=>{var r=gi(e,t);return r==null||typeof r.padding!="string"?0:vD(e,"xAxis",t,n,r.padding)},pX=(e,t,n)=>{var r=yi(e,t);return r==null||typeof r.padding!="string"?0:vD(e,"yAxis",t,n,r.padding)},gX=$(gi,mX,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:s}=e;return typeof s=="string"?{left:t,right:t}:{left:((n=s.left)!==null&&n!==void 0?n:0)+t,right:((r=s.right)!==null&&r!==void 0?r:0)+t}}),yX=$(yi,pX,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:s}=e;return typeof s=="string"?{top:t,bottom:t}:{top:((n=s.top)!==null&&n!==void 0?n:0)+t,bottom:((r=s.bottom)!==null&&r!==void 0?r:0)+t}}),vX=$([Xt,gX,ch,uh,(e,t,n)=>n],(e,t,n,r,s)=>{var{padding:o}=r;return s?[o.left,n.width-o.right]:[e.left+t.left,e.left+e.width-t.right]}),bX=$([Xt,ht,yX,ch,uh,(e,t,n)=>n],(e,t,n,r,s,o)=>{var{padding:u}=s;return o?[r.height-u.bottom,u.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),$u=(e,t,n,r)=>{var s;switch(t){case"xAxis":return vX(e,n,r);case"yAxis":return bX(e,n,r);case"zAxis":return(s=ex(e,n))===null||s===void 0?void 0:s.range;case"angleAxis":return i3(e);case"radiusAxis":return a3(e,n);default:return}},bD=$([sn,$u],gh),xX=$([jo,dX],rF),sx=$([sn,jo,xX,bD],Jb),xD=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:s,scale:o}=n,u=sa(e,r);if(u&&(s==="number"||o!=="auto"))return t.map(f=>f.value)}},ox=$([ht,Vu,Bu,Ct],xD),Mo=$([sx],Mb);$([sx],LK);$([sx,HK],$3);$([Uu,rx,Ct],ZK);function wD(e,t){return e.idt.id?1:0}var jh=(e,t)=>t,Mh=(e,t,n)=>n,wX=$(oh,jh,Mh,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(wD)),_X=$(lh,jh,Mh,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(wD)),_D=(e,t)=>({width:e.width,height:t.height}),SX=(e,t)=>{var n=typeof t.width=="number"?t.width:Mu;return{width:n,height:e.height}},AX=$(Xt,gi,_D),TX=(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}},EX=$(mi,Xt,wX,jh,Mh,(e,t,n,r,s)=>{var o={},u;return n.forEach(f=>{var d=_D(t,f);u==null&&(u=TX(t,r,e));var h=r==="top"&&!s||r==="bottom"&&s;o[f.id]=u-Number(h)*d.height,u+=(h?-1:1)*d.height}),o}),jX=$(hi,Xt,_X,jh,Mh,(e,t,n,r,s)=>{var o={},u;return n.forEach(f=>{var d=SX(t,f);u==null&&(u=OX(t,r,e));var h=r==="left"&&!s||r==="right"&&s;o[f.id]=u-Number(h)*d.width,u+=(h?-1:1)*d.width}),o}),MX=(e,t)=>{var n=gi(e,t);if(n!=null)return EX(e,n.orientation,n.mirror)},kX=$([Xt,gi,MX,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var s=n?.[r];return s==null?{x:e.left,y:0}:{x:e.left,y:s}}}),NX=(e,t)=>{var n=yi(e,t);if(n!=null)return jX(e,n.orientation,n.mirror)},CX=$([Xt,yi,NX,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var s=n?.[r];return s==null?{x:0,y:e.top}:{x:s,y:e.top}}}),DX=$(Xt,yi,(e,t)=>{var n=typeof t.width=="number"?t.width:Mu;return{width:n,height:e.height}}),SD=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:s,type:o,dataKey:u}=n,f=sa(e,r),d=t.map(h=>h.value);if(u&&f&&o==="category"&&s&&yN(d))return d}},lx=$([ht,Vu,sn,Ct],SD),DE=$([ht,UK,jo,Mo,lx,ox,$u,ax,Ct],(e,t,n,r,s,o,u,f,d)=>{if(t!=null){var h=sa(e,d);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:d,categoricalDomain:o,duplicateDomain:s,isCategorical:h,niceTicks:f,range:u,realScaleType:n,scale:r}}}),PX=(e,t,n,r,s,o,u,f,d)=>{if(!(t==null||r==null)){var h=sa(e,d),{type:m,ticks:p,tickCount:v}=t,x=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,w=m==="category"&&r.bandwidth?r.bandwidth()/x:0;w=d==="angleAxis"&&o!=null&&o.length>=2?Wn(o[0]-o[1])*2*w:w;var _=p||s;return _?_.map((S,O)=>{var M=u?u.indexOf(S):S,j=r.map(M);return Le(j)?{index:O,coordinate:j+w,value:S,offset:w}:null}).filter(mn):h&&f?f.map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:S,index:O,offset:w}:null}).filter(mn):r.ticks?r.ticks(v).map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:S,index:O,offset:w}:null}).filter(mn):r.domain().map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:u?u[S]:S,index:O,offset:w}:null}).filter(mn)}},AD=$([ht,Bu,jo,Mo,ax,$u,lx,ox,Ct],PX),RX=(e,t,n,r,s,o,u)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var f=sa(e,u),{tickCount:d}=t,h=0;return h=u==="angleAxis"&&r?.length>=2?Wn(r[0]-r[1])*2*h:h,f&&o?o.map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:m,index:p,offset:h}:null}).filter(mn):n.ticks?n.ticks(d).map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:m,index:p,offset:h}:null}).filter(mn):n.domain().map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:s?s[m]:m,index:p,offset:h}:null}).filter(mn)}},TD=$([ht,Bu,Mo,$u,lx,ox,Ct],RX),OD=$(sn,Mo,(e,t)=>{if(!(e==null||t==null))return Pd(Pd({},e),{},{scale:t})}),LX=$([sn,jo,ix,bD],Jb),zX=$([LX],Mb),IX=$((e,t,n)=>ex(e,n),zX,(e,t)=>{if(!(e==null||t==null))return Pd(Pd({},e),{},{scale:t})}),BX=$([ht,oh,lh],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),UX=(e,t,n)=>{var r;return(r=e.renderedTicks[t])===null||r===void 0?void 0:r[n]};$([UX],e=>{if(!(!e||e.length===0))return t=>{var n,r=1/0,s=e[0];for(var o of e){var u=Math.abs(o.coordinate-t);ue.options.defaultTooltipEventType,jD=e=>e.options.validateTooltipEventTypes;function MD(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function ux(e,t){var n=ED(e),r=jD(e);return MD(t,n,r)}function VX(e){return ve(t=>ux(t,e))}var kD=(e,t)=>{var n,r=Number(t);if(!(oi(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},qX=e=>e.tooltip.settings,Zi={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},$X={itemInteraction:{click:Zi,hover:Zi},axisInteraction:{click:Zi,hover:Zi},keyboardInteraction:Zi,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}},ND=Qt({name:"tooltip",initialState:$X,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:Qe()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).tooltipItemPayloads.indexOf(n);s>-1&&(e.tooltipItemPayloads[s]=r)},prepare:Qe()},removeTooltipEntrySettings:{reducer(e,t){var n=Zn(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:Qe()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,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.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.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.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}}}),{addTooltipEntrySettings:FX,replaceTooltipEntrySettings:HX,removeTooltipEntrySettings:KX,setTooltipSettingsState:XX,setActiveMouseOverItemIndex:CD,mouseLeaveItem:YX,mouseLeaveChart:DD,setActiveClickItemIndex:GX,setMouseOverAxisIndex:PD,setMouseClickAxisIndex:WX,setSyncInteraction:r0,setKeyboardInteraction:Ld}=ND.actions,ZX=ND.reducer;function PE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Ef(e){for(var t=1;t{if(t==null)return Zi;var s=tY(e,t,n);if(s==null)return Zi;if(s.active)return s;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var o=e.settings.active===!0;if(nY(s)){if(o)return Ef(Ef({},s),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Ef(Ef({},Zi),{},{coordinate:s.coordinate})};function rY(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 iY(e,t){var n=rY(e),r=t[0],s=t[1];if(n===void 0)return!1;var o=Math.min(r,s),u=Math.max(r,s);return n>=o&&n<=u}function aY(e,t,n){if(n==null||t==null)return!0;var r=Ot(e,t);return r==null||!Er(n)?!0:iY(r,n)}var cx=(e,t,n,r)=>{var s=e?.index;if(s==null)return null;var o=Number(s);if(!Le(o))return s;var u=0,f=1/0;t.length>0&&(f=t.length-1);var d=Math.max(u,Math.min(o,f)),h=t[d];return h==null||aY(h,n,r)?String(d):null},LD=(e,t,n,r,s,o,u)=>{if(o!=null){var f=u[0],d=f?.getPosition(o);if(d!=null)return d;var h=s?.[Number(o)];if(h)return n==="horizontal"?{x:h.coordinate,y:(r.top+t)/2}:{x:(r.left+e)/2,y:h.coordinate}}},zD=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var s;if(n==="hover"?s=e.itemInteraction.hover.graphicalItemId:s=e.itemInteraction.click.graphicalItemId,e.syncInteraction.active&&s==null)return e.tooltipItemPayloads;if(s==null&&r!=null){var o=e.tooltipItemPayloads[0];return o!=null?[o]:[]}return e.tooltipItemPayloads.filter(u=>{var f;return((f=u.settings)===null||f===void 0?void 0:f.graphicalItemId)===s})},ID=e=>e.options.tooltipPayloadSearcher,ko=e=>e.tooltip;function RE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function LE(e){for(var t=1;te(t)}function zE(e){if(typeof e=="string")return e}function dY(e){if(!(e==null||typeof e!="object")){var t="name"in e?uY(e.name):void 0,n="unit"in e?cY(e.unit):void 0,r="dataKey"in e?fY(e.dataKey):void 0,s="payload"in e?e.payload:void 0,o="color"in e?zE(e.color):void 0,u="fill"in e?zE(e.fill):void 0;return{name:t,unit:n,dataKey:r,payload:s,color:o,fill:u}}}function hY(e,t){return e??t}var BD=(e,t,n,r,s,o,u)=>{if(!(t==null||o==null)){var{chartData:f,computedData:d,dataStartIndex:h,dataEndIndex:m}=n,p=[];return e.reduce((v,x)=>{var w,{dataDefinedOnItem:_,settings:S}=x,O=hY(_,f),M=Array.isArray(O)?cC(O,h,m):O,j=(w=S?.dataKey)!==null&&w!==void 0?w:r,k=S?.nameKey,N;if(r&&Array.isArray(M)&&!Array.isArray(M[0])&&u==="axis"?N=vN(M,r,s):N=o(M,t,d,k),Array.isArray(N))N.forEach(L=>{var I,Y,te=dY(L),ie=te?.name,K=te?.dataKey,be=te?.payload,pe=LE(LE({},S),{},{name:ie,unit:te?.unit,color:(I=te?.color)!==null&&I!==void 0?I:S?.color,fill:(Y=te?.fill)!==null&&Y!==void 0?Y:S?.fill});v.push(C2({tooltipEntrySettings:pe,dataKey:K,payload:be,value:Ot(be,K),name:ie==null?void 0:String(ie)}))});else{var C;v.push(C2({tooltipEntrySettings:S,dataKey:j,payload:N,value:Ot(N,j),name:(C=Ot(N,k))!==null&&C!==void 0?C:S?.name}))}return v},p)}},fx=$([jt,X3,_b],q3),mY=$([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),pY=$([Dt,To],Y3),No=$([mY,jt,pY],W3,{memoizeOptions:{resultEqualityCheck:wh}}),gY=$([No],e=>e.filter(jb)),yY=$([No],J3,{memoizeOptions:{resultEqualityCheck:wh}}),Co=$([yY,oa],eD),vY=$([gY,oa,jt],l3),dx=$([Co,jt,No],tD),UD=$([jt],nx),bY=$([jt],e=>e.allowDataOverflow),VD=$([UD,bY],$C),xY=$([No],e=>e.filter(jb)),wY=$([vY,xY,ph,e3],rD),_Y=$([wY,oa,Dt,VD],iD),SY=$([No],Q3),AY=$([Co,jt,SY,rx,Dt],oD,{memoizeOptions:{resultEqualityCheck:xh}}),TY=$([lD,Dt,To],Eo),OY=$([TY,Dt],fD),EY=$([uD,Dt,To],Eo),jY=$([EY,Dt],dD),MY=$([cD,Dt,To],Eo),kY=$([MY,Dt],hD),NY=$([OY,kY,jY],Rd),CY=$([jt,UD,VD,_Y,AY,NY,ht,Dt],mD),Fu=$([jt,ht,Co,dx,ph,Dt,CY],pD),DY=$([Fu,jt,fx],gD),PY=$([jt,Fu,DY,Dt],yD),qD=e=>{var t=Dt(e),n=To(e),r=!1;return $u(e,t,n,r)},$D=$([jt,qD],gh),RY=$([jt,fx,PY,$D],Jb),FD=$([RY],Mb),LY=$([ht,dx,jt,Dt],SD),zY=$([ht,dx,jt,Dt],xD),IY=(e,t,n,r,s,o,u,f)=>{if(t){var{type:d}=t,h=sa(e,f);if(r){var m=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,p=d==="category"&&r.bandwidth?r.bandwidth()/m:0;return p=f==="angleAxis"&&s!=null&&s?.length>=2?Wn(s[0]-s[1])*2*p:p,h&&u?u.map((v,x)=>{var w=r.map(v);return Le(w)?{coordinate:w+p,value:v,index:x,offset:p}:null}).filter(mn):r.domain().map((v,x)=>{var w=r.map(v);return Le(w)?{coordinate:w+p,value:o?o[v]:v,index:x,offset:p}:null}).filter(mn)}}},vi=$([ht,jt,fx,FD,qD,LY,zY,Dt],IY),hx=$([ED,jD,qX],(e,t,n)=>MD(n.shared,e,t)),HD=e=>e.tooltip.settings.trigger,mx=e=>e.tooltip.settings.defaultIndex,Hu=$([ko,hx,HD,mx],RD),vu=$([Hu,Co,qu,Fu],cx),KD=$([vi,vu],kD),BY=$([Hu],e=>{if(e)return e.dataKey}),UY=$([Hu],e=>{if(e)return e.graphicalItemId}),XD=$([ko,hx,HD,mx],zD),VY=$([hi,mi,ht,Xt,vi,mx,XD],LD),qY=$([Hu,VY],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),$Y=$([Hu],e=>{var t;return(t=e?.active)!==null&&t!==void 0?t:!1}),FY=$([XD,vu,oa,qu,KD,ID,hx],BD);$([FY],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function IE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function BE(e){for(var t=1;tve(jt),GY=()=>{var e=YY(),t=ve(vi),n=ve(FD);return N2(!e||!n?void 0:BE(BE({},e),{},{scale:n}),t)};function UE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Hs(e){for(var t=1;t{var s=t.find(o=>o&&o.index===n);if(s){if(e==="horizontal")return{x:s.coordinate,y:r.relativeY};if(e==="vertical")return{x:r.relativeX,y:s.coordinate}}return{x:0,y:0}},eG=(e,t,n,r)=>{var s=t.find(h=>h&&h.index===n);if(s){if(e==="centric"){var o=s.coordinate,{radius:u}=r;return Hs(Hs(Hs({},r),Kt(r.cx,r.cy,u,o)),{},{angle:o,radius:u})}var f=s.coordinate,{angle:d}=r;return Hs(Hs(Hs({},r),Kt(r.cx,r.cy,f,d)),{},{angle:d,radius:f})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function tG(e,t){var{relativeX:n,relativeY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var YD=(e,t,n,r,s)=>{var o,u=(o=t?.length)!==null&&o!==void 0?o:0;if(u<=1||e==null)return 0;if(r==="angleAxis"&&s!=null&&Math.abs(Math.abs(s[1]-s[0])-360)<=1e-6)for(var f=0;f0?(d=n[f-1])===null||d===void 0?void 0:d.coordinate:(h=n[u-1])===null||h===void 0?void 0:h.coordinate,w=(m=n[f])===null||m===void 0?void 0:m.coordinate,_=f>=u-1?(p=n[0])===null||p===void 0?void 0:p.coordinate:(v=n[f+1])===null||v===void 0?void 0:v.coordinate,S=void 0;if(!(x==null||w==null||_==null))if(Wn(w-x)!==Wn(_-w)){var O=[];if(Wn(_-w)===Wn(s[1]-s[0])){S=_;var M=w+s[1]-s[0];O[0]=Math.min(M,(M+x)/2),O[1]=Math.max(M,(M+x)/2)}else{S=x;var j=_+s[1]-s[0];O[0]=Math.min(w,(j+w)/2),O[1]=Math.max(w,(j+w)/2)}var k=[Math.min(w,(S+w)/2),Math.max(w,(S+w)/2)];if(e>k[0]&&e<=k[1]||e>=O[0]&&e<=O[1]){var N;return(N=n[f])===null||N===void 0?void 0:N.index}}else{var C=Math.min(x,_),L=Math.max(x,_);if(e>(C+w)/2&&e<=(L+w)/2){var I;return(I=n[f])===null||I===void 0?void 0:I.index}}}else if(t)for(var Y=0;Y(te.coordinate+K.coordinate)/2||Y>0&&Y(te.coordinate+K.coordinate)/2&&e<=(te.coordinate+ie.coordinate)/2)return te.index}}return-1},nG=()=>ve(_b),px=(e,t)=>t,GD=(e,t,n)=>n,gx=(e,t,n,r)=>r,rG=$(vi,e=>Zd(e,t=>t.coordinate)),yx=$([ko,px,GD,gx],RD),vx=$([yx,Co,qu,Fu],cx),iG=(e,t,n)=>{if(t!=null){var r=ko(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},WD=$([ko,px,GD,gx],zD),zd=$([hi,mi,ht,Xt,vi,gx,WD],LD),aG=$([yx,zd],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),ZD=$([vi,vx],kD),sG=$([WD,vx,oa,qu,ZD,ID,px],BD),oG=$([yx,vx],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),lG=(e,t,n,r,s,o,u)=>{if(!(!e||!n||!r||!s)&&tG(e,u)){var f=tV(e,t),d=YD(f,o,s,n,r),h=JY(t,s,d,e);return{activeIndex:String(d),activeCoordinate:h}}},uG=(e,t,n,r,s,o,u)=>{if(!(!e||!r||!s||!o||!n)){var f=D$(e,n);if(f){var d=nV(f,t),h=YD(d,u,o,r,s),m=eG(t,o,h,f);return{activeIndex:String(h),activeCoordinate:m}}}},cG=(e,t,n,r,s,o,u,f)=>{if(!(!e||!t||!r||!s||!o))return t==="horizontal"||t==="vertical"?lG(e,t,r,s,o,u,f):uG(e,t,n,r,s,o,u)},fG=$(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}}),dG=$(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(pn)),n=Array.from(new Set(t));return n.sort((r,s)=>r-s)},{memoizeOptions:{resultEqualityCheck:nF}});function VE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function qE(e){for(var t=1;tqE(qE({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),gG)},vG=new Set(Object.values(pn));function bG(e){return vG.has(e)}var QD=Qt({name:"zIndex",initialState:yG,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:Qe()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!bG(n)&&delete e.zIndexMap[n])},prepare:Qe()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:s}=t.payload;e.zIndexMap[n]?s?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:s?void 0:r,panoramaElement:s?r:void 0}},prepare:Qe()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:Qe()}}}),{registerZIndexPortal:xG,unregisterZIndexPortal:wG,registerZIndexPortalElement:_G,unregisterZIndexPortalElement:SG}=QD.actions,AG=QD.reducer;function ca(e){var{zIndex:t,children:n}=e,r=PV(),s=r&&t!==void 0&&t!==0,o=Jt(),u=it();A.useLayoutEffect(()=>s?(u(xG({zIndex:t})),()=>{u(wG({zIndex:t}))}):_o,[u,t,s]);var f=ve(d=>fG(d,t,o));return s?f?G0.createPortal(n,f):null:n}function i0(){return i0=Object.assign?Object.assign.bind():function(e){for(var t=1;tA.useContext(JD),zy={exports:{}},FE;function CG(){return FE||(FE=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function s(d,h,m){this.fn=d,this.context=h,this.once=m||!1}function o(d,h,m,p,v){if(typeof m!="function")throw new TypeError("The listener must be a function");var x=new s(m,p||d,v),w=n?n+h:h;return d._events[w]?d._events[w].fn?d._events[w]=[d._events[w],x]:d._events[w].push(x):(d._events[w]=x,d._eventsCount++),d}function u(d,h){--d._eventsCount===0?d._events=new r:delete d._events[h]}function f(){this._events=new r,this._eventsCount=0}f.prototype.eventNames=function(){var h=[],m,p;if(this._eventsCount===0)return h;for(p in m=this._events)t.call(m,p)&&h.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?h.concat(Object.getOwnPropertySymbols(m)):h},f.prototype.listeners=function(h){var m=n?n+h:h,p=this._events[m];if(!p)return[];if(p.fn)return[p.fn];for(var v=0,x=p.length,w=new Array(x);v{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!oi(n))return e[n]}},LG={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},e5=Qt({name:"options",initialState:LG,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),zG=e5.reducer,{createEventEmitter:IG}=e5.actions;function BG(e){return e.tooltip.syncInteraction}var UG={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},t5=Qt({name:"chartData",initialState:UG,reducers:{setChartData(e,t){if(e.chartData=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{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:KE,setDataStartEndIndexes:VG,setComputedData:Mne}=t5.actions,qG=t5.reducer,$G=["x","y"];function XE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Ks(e){for(var t=1;td.rootProps.className);A.useEffect(()=>{if(e==null)return _o;var d=(h,m,p)=>{if(t!==p&&e===h){if(r==="index"){var v;if(u&&m!==null&&m!==void 0&&(v=m.payload)!==null&&v!==void 0&&v.coordinate&&m.payload.sourceViewBox){var x=m.payload.coordinate,{x:w,y:_}=x,S=XG(x,$G),{x:O,y:M,width:j,height:k}=m.payload.sourceViewBox,N=Ks(Ks({},S),{},{x:u.x+(j?(w-O)/j:0)*u.width,y:u.y+(k?(_-M)/k:0)*u.height});n(Ks(Ks({},m),{},{payload:Ks(Ks({},m.payload),{},{coordinate:N})}))}else n(m);return}if(s!=null){var C;if(typeof r=="function"){var L={activeTooltipIndex:m.payload.index==null?void 0:Number(m.payload.index),isTooltipActive:m.payload.active,activeIndex:m.payload.index==null?void 0:Number(m.payload.index),activeLabel:m.payload.label,activeDataKey:m.payload.dataKey,activeCoordinate:m.payload.coordinate},I=r(s,L);C=s[I]}else r==="value"&&(C=s.find(V=>String(V.value)===m.payload.label));var{coordinate:Y}=m.payload;if(C==null||m.payload.active===!1||Y==null||u==null){n(r0({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:te,y:ie}=Y,K=Math.min(te,u.x+u.width),be=Math.min(ie,u.y+u.height),pe={x:o==="horizontal"?C.coordinate:K,y:o==="horizontal"?be:C.coordinate},xe=r0({active:m.payload.active,coordinate:pe,dataKey:m.payload.dataKey,index:String(C.index),label:m.payload.label,sourceViewBox:m.payload.sourceViewBox,graphicalItemId:m.payload.graphicalItemId});n(xe)}}};return bu.on(a0,d),()=>{bu.off(a0,d)}},[f,n,t,e,r,s,o,u])}function WG(){var e=ve(Sb),t=ve(Ab),n=it();A.useEffect(()=>{if(e==null)return _o;var r=(s,o,u)=>{t!==u&&e===s&&n(VG(o))};return bu.on(HE,r),()=>{bu.off(HE,r)}},[n,t,e])}function ZG(){var e=it();A.useEffect(()=>{e(IG())},[e]),GG(),WG()}function QG(e,t,n,r,s,o){var u=ve(w=>iG(w,e,t)),f=ve(UY),d=ve(Ab),h=ve(Sb),m=ve(t3),p=ve(BG),v=p?.active,x=ku();A.useEffect(()=>{if(!v&&h!=null&&d!=null){var w=r0({active:o,coordinate:n,dataKey:u,index:s,label:typeof r=="number"?String(r):r,sourceViewBox:x,graphicalItemId:f});bu.emit(a0,h,w,d)}},[v,n,u,f,s,r,d,h,m,o,x])}function YE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function GE(e){for(var t=1;t{L(XX({shared:M,trigger:j,axisId:C,active:s,defaultIndex:I}))},[L,M,j,C,s,I]);var Y=ku(),te=DC(),ie=VX(M),{activeIndex:K,isActive:be}=(t=ve(_e=>oG(_e,ie,j,I)))!==null&&t!==void 0?t:{},pe=ve(_e=>sG(_e,ie,j,I)),xe=ve(_e=>ZD(_e,ie,j,I)),V=ve(_e=>aG(_e,ie,j,I)),Q=pe,ne=NG(),le=(n=s??be)!==null&&n!==void 0?n:!1,[ue,P]=$7([Q,le]),H=ie==="axis"?xe:void 0;QG(ie,j,V,H,K,le);var ae=N??ne;if(ae==null||Y==null||ie==null)return null;var se=Q??WE;le||(se=WE),h&&se.length&&(se=p7(se.filter(_e=>_e.value!=null&&(_e.hide!==!0||r.includeHidden)),v,nW));var Z=se.length>0,oe=GE(GE({},r),{},{payload:se,label:H,active:le,activeIndex:K,coordinate:V,accessibilityLayer:te}),he=A.createElement(Dq,{allowEscapeViewBox:o,animationDuration:u,animationEasing:f,isAnimationActive:m,active:le,coordinate:V,hasPayload:Z,offset:p,position:x,reverseDirection:w,useTranslate3d:_,viewBox:Y,wrapperStyle:S,lastBoundingBox:ue,innerRef:P,hasPortalFromProps:!!N},rW(d,oe));return A.createElement(A.Fragment,null,G0.createPortal(he,ae),le&&A.createElement(kG,{cursor:O,tooltipEventType:ie,coordinate:V,payload:se,index:K}))}var bx=e=>null;bx.displayName="Cell";function sW(e,t,n){return(t=oW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oW(e){var t=lW(e,"string");return typeof t=="symbol"?t:t+""}function lW(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class uW{constructor(t){sW(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function ZE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function cW(e){for(var t=1;t{try{var n=document.getElementById(JE);n||(n=document.createElement("span"),n.setAttribute("id",JE),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,pW,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},Zl=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Pu.isSsr)return{width:0,height:0};if(!n5.enableCache)return ej(t,n);var r=gW(t,n),s=QE.get(r);if(s)return s;var o=ej(t,n);return QE.set(r,o),o},r5;function yW(e,t,n){return(t=vW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vW(e){var t=bW(e,"string");return typeof t=="symbol"?t:t+""}function bW(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var tj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,nj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,xW=/^(px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q)$/,wW=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,_W={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},SW=["cm","mm","pt","pc","in","Q","px"];function AW(e){return SW.includes(e)}var io="NaN";function TW(e,t){return e*_W[t]}class Ht{static parse(t){var n,[,r,s]=(n=wW.exec(t))!==null&&n!==void 0?n:[];return r==null?Ht.NaN:new Ht(parseFloat(r),s??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,oi(t)&&(this.unit=""),n!==""&&!xW.test(n)&&(this.num=NaN,this.unit=""),AW(n)&&(this.num=TW(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return oi(this.num)}}r5=Ht;yW(Ht,"NaN",new r5(NaN,""));function i5(e){if(e==null||e.includes(io))return io;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,s,o]=(n=tj.exec(t))!==null&&n!==void 0?n:[],u=Ht.parse(r??""),f=Ht.parse(o??""),d=s==="*"?u.multiply(f):u.divide(f);if(d.isNaN())return io;t=t.replace(tj,d.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var h,[,m,p,v]=(h=nj.exec(t))!==null&&h!==void 0?h:[],x=Ht.parse(m??""),w=Ht.parse(v??""),_=p==="+"?x.add(w):x.subtract(w);if(_.isNaN())return io;t=t.replace(nj,_.toString())}return t}var rj=/\(([^()]*)\)/;function OW(e){for(var t=e,n;(n=rj.exec(t))!=null;){var[,r]=n;t=t.replace(rj,i5(r))}return t}function EW(e){var t=e.replace(/\s+/g,"");return t=OW(t),t=i5(t),t}function jW(e){try{return EW(e)}catch{return io}}function Iy(e){var t=jW(e.slice(5,-1));return t===io?"":t}var MW=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],kW=["dx","dy","angle","className","breakAll"];function s0(){return s0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var s=[];dt(t)||(n?s=t.toString().split(""):s=t.toString().split(a5));var o=s.map(f=>({word:f,width:Zl(f,r).width})),u=n?0:Zl(" ",r).width;return{wordsWithComputedWidth:o,spaceWidth:u}}catch{return null}};function o5(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}function CW(e){return dt(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}var l5=(e,t,n,r)=>e.reduce((s,o)=>{var{word:u,width:f}=o,d=s[s.length-1];if(d&&f!=null&&(t==null||r||d.width+f+ne.reduce((t,n)=>t.width>n.width?t:n),DW="…",aj=(e,t,n,r,s,o,u,f)=>{var d=e.slice(0,t),h=s5({breakAll:n,style:r,children:d+DW});if(!h)return[!1,[]];var m=l5(h.wordsWithComputedWidth,o,u,f),p=m.length>s||u5(m).width>Number(o);return[p,m]},PW=(e,t,n,r,s)=>{var{maxLines:o,children:u,style:f,breakAll:d}=e,h=ye(o),m=String(u),p=l5(t,r,n,s);if(!h||s)return p;var v=p.length>o||u5(p).width>Number(r);if(!v)return p;for(var x=0,w=m.length-1,_=0,S;x<=w&&_<=m.length-1;){var O=Math.floor((x+w)/2),M=O-1,[j,k]=aj(m,M,d,f,o,r,n,s),[N]=aj(m,O,d,f,o,r,n,s);if(!j&&!N&&(x=O+1),j&&N&&(w=O-1),!j&&N){S=k;break}_++}return S||p},sj=e=>{var t=dt(e)?[]:e.toString().split(a5);return[{words:t,width:void 0}]},RW=e=>{var{width:t,scaleToFit:n,children:r,style:s,breakAll:o,maxLines:u}=e;if((t||n)&&!Pu.isSsr){var f,d,h=s5({breakAll:o,children:r,style:s});if(h){var{wordsWithComputedWidth:m,spaceWidth:p}=h;f=m,d=p}else return sj(r);return PW({breakAll:o,children:r,maxLines:u,style:s},f,d,t,!!n)}return sj(r)},c5="#808080",LW={angle:0,breakAll:!1,capHeight:"0.71em",fill:c5,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},xx=A.forwardRef((e,t)=>{var n=vn(e,LW),{x:r,y:s,lineHeight:o,capHeight:u,fill:f,scaleToFit:d,textAnchor:h,verticalAnchor:m}=n,p=ij(n,MW),v=A.useMemo(()=>RW({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:d,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,d,p.style,p.width]),{dx:x,dy:w,angle:_,className:S,breakAll:O}=p,M=ij(p,kW);if(!Nr(r)||!Nr(s)||v.length===0)return null;var j=Number(r)+(ye(x)?x:0),k=Number(s)+(ye(w)?w:0);if(!Le(j)||!Le(k))return null;var N;switch(m){case"start":N=Iy("calc(".concat(u,")"));break;case"middle":N=Iy("calc(".concat((v.length-1)/2," * -").concat(o," + (").concat(u," / 2))"));break;default:N=Iy("calc(".concat(v.length-1," * -").concat(o,")"));break}var C=[],L=v[0];if(d&&L!=null){var I=L.width,{width:Y}=p;C.push("scale(".concat(ye(Y)&&ye(I)?Y/I:1,")"))}return _&&C.push("rotate(".concat(_,", ").concat(j,", ").concat(k,")")),C.length&&(M.transform=C.join(" ")),A.createElement("text",s0({},er(M),{ref:t,x:j,y:k,className:et("recharts-text",S),textAnchor:h,fill:f.includes("url")?c5:f}),v.map((te,ie)=>{var K=te.words.join(O?"":" ");return A.createElement("tspan",{x:j,dy:ie===0?N:o,key:"".concat(K,"-").concat(ie)},K)}))});xx.displayName="Text";function oj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function _r(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:s}=e,{x:o,y:u,height:f,upperWidth:d,lowerWidth:h}=db(t),m=o,p=o+(d-h)/2,v=(m+p)/2,x=(d+h)/2,w=m+d/2,_=f>=0?1:-1,S=_*r,O=_>0?"end":"start",M=_>0?"start":"end",j=d>=0?1:-1,k=j*r,N=j>0?"end":"start",C=j>0?"start":"end",L=s;if(n==="top"){var I={x:m+d/2,y:u-S,horizontalAnchor:"middle",verticalAnchor:O};return L&&(I.height=Math.max(u-L.y,0),I.width=d),I}if(n==="bottom"){var Y={x:p+h/2,y:u+f+S,horizontalAnchor:"middle",verticalAnchor:M};return L&&(Y.height=Math.max(L.y+L.height-(u+f),0),Y.width=h),Y}if(n==="left"){var te={x:v-k,y:u+f/2,horizontalAnchor:N,verticalAnchor:"middle"};return L&&(te.width=Math.max(te.x-L.x,0),te.height=f),te}if(n==="right"){var ie={x:v+x+k,y:u+f/2,horizontalAnchor:C,verticalAnchor:"middle"};return L&&(ie.width=Math.max(L.x+L.width-ie.x,0),ie.height=f),ie}var K=L?{width:x,height:f}:{};return n==="insideLeft"?_r({x:v+k,y:u+f/2,horizontalAnchor:C,verticalAnchor:"middle"},K):n==="insideRight"?_r({x:v+x-k,y:u+f/2,horizontalAnchor:N,verticalAnchor:"middle"},K):n==="insideTop"?_r({x:m+d/2,y:u+S,horizontalAnchor:"middle",verticalAnchor:M},K):n==="insideBottom"?_r({x:p+h/2,y:u+f-S,horizontalAnchor:"middle",verticalAnchor:O},K):n==="insideTopLeft"?_r({x:m+k,y:u+S,horizontalAnchor:C,verticalAnchor:M},K):n==="insideTopRight"?_r({x:m+d-k,y:u+S,horizontalAnchor:N,verticalAnchor:M},K):n==="insideBottomLeft"?_r({x:p+k,y:u+f-S,horizontalAnchor:C,verticalAnchor:O},K):n==="insideBottomRight"?_r({x:p+h-k,y:u+f-S,horizontalAnchor:N,verticalAnchor:O},K):n&&typeof n=="object"&&(ye(n.x)||Ga(n.x))&&(ye(n.y)||Ga(n.y))?_r({x:o+ra(n.x,x),y:u+ra(n.y,f),horizontalAnchor:"end",verticalAnchor:"end"},K):_r({x:w,y:u+f/2,horizontalAnchor:"middle",verticalAnchor:"middle"},K)},VW=["labelRef"],qW=["content"];function lj(e,t){if(e==null)return{};var n,r,s=$W(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:s,width:o,height:u,children:f}=e,d=A.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:s,width:o,height:u}),[t,n,r,s,o,u]);return A.createElement(f5.Provider,{value:d},f)},d5=()=>{var e=A.useContext(f5),t=ku();return e||(t?db(t):void 0)},YW=A.createContext(null),GW=()=>{var e=A.useContext(YW),t=ve(s3);return e||t},WW=e=>{var{value:t,formatter:n}=e,r=dt(e.children)?t:e.children;return typeof n=="function"?n(r):r},wx=e=>e!=null&&typeof e=="function",ZW=(e,t)=>{var n=Wn(t-e),r=Math.min(Math.abs(t-e),360);return n*r},QW=(e,t,n,r,s)=>{var{offset:o,className:u}=e,{cx:f,cy:d,innerRadius:h,outerRadius:m,startAngle:p,endAngle:v,clockWise:x}=s,w=(h+m)/2,_=ZW(p,v),S=_>=0?1:-1,O,M;switch(t){case"insideStart":O=p+S*o,M=x;break;case"insideEnd":O=v-S*o,M=!x;break;case"end":O=v+S*o,M=x;break;default:throw new Error("Unsupported position ".concat(t))}M=_<=0?M:!M;var j=Kt(f,d,w,O),k=Kt(f,d,w,O+(M?1:-1)*359),N="M".concat(j.x,",").concat(j.y,` + A`,",",",0,0,",",",",","Z"])),L.x,L.y,o,o,+(m<0),C.x,C.y,r,r,+(Y>180),+(m>0),j.x,j.y,o,o,+(m<0),N.x,N.y)}else M+=ut(PO||(PO=Ua(["L",",","Z"])),t,n);return M},L$={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},qC=e=>{var t=vn(e,L$),{cx:n,cy:r,innerRadius:s,outerRadius:o,cornerRadius:u,forceCornerRadius:f,cornerIsExternal:d,startAngle:h,endAngle:m,className:p}=t;if(o0&&Math.abs(h-m)<360?_=R$({cx:n,cy:r,innerRadius:s,outerRadius:o,cornerRadius:Math.min(w,x/2),forceCornerRadius:f,cornerIsExternal:d,startAngle:h,endAngle:m}):_=VC({cx:n,cy:r,innerRadius:s,outerRadius:o,startAngle:h,endAngle:m}),A.createElement("path",Yv({},er(t),{className:v,d:_}))};function z$(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(wk(t)){if(e==="centric"){var{cx:r,cy:s,innerRadius:o,outerRadius:u,angle:f}=t,d=Kt(r,s,o,f),h=Kt(r,s,u,f);return[{x:d.x,y:d.y},{x:h.x,y:h.y}]}return UC(t)}}var Ty={},Oy={},Ey={},RO;function I$(){return RO||(RO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Dk();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(Ey)),Ey}var LO;function B$(){return LO||(LO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=I$();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(Oy)),Oy}var zO;function U$(){return zO||(zO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Pk(),n=B$();function r(s,o,u){u&&typeof u!="number"&&t.isIterateeCall(s,o,u)&&(o=u=void 0),s=n.toFinite(s),o===void 0?(o=s,s=0):o=n.toFinite(o),u=u===void 0?se.chartData,$$=$([oa],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),vb=(e,t,n,r)=>r?$$(e):oa(e);function Er(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(Le(t)&&Le(n))return!0}return!1}function BO(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function FC(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,s,o;if(Le(n))s=n;else if(typeof n=="function")return;if(Le(r))o=r;else if(typeof r=="function")return;var u=[s,o];if(Er(u))return u}}function F$(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(Er(r))return BO(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[s,o]=e,u,f;if(s==="auto")t!=null&&(u=Math.min(...t));else if(ye(s))u=s;else if(typeof s=="function")try{t!=null&&(u=s(t?.[0]))}catch{}else if(typeof s=="string"&&MT.test(s)){var d=MT.exec(s);if(d==null||d[1]==null||t==null)u=void 0;else{var h=+d[1];u=t[0]-h}}else u=t?.[0];if(o==="auto")t!=null&&(f=Math.max(...t));else if(ye(o))f=o;else if(typeof o=="function")try{t!=null&&(f=o(t?.[1]))}catch{}else if(typeof o=="string"&&NT.test(o)){var m=NT.exec(o);if(m==null||m[1]==null||t==null)f=void 0;else{var p=+m[1];f=t[1]+p}}else f=t?.[1];var v=[u,f];if(Er(v))return t==null?v:BO(v,t,n)}}}var So=1e9,H$={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},xb,nt=!0,tr="[DecimalError] ",Ka=tr+"Invalid argument: ",bb=tr+"Exponent out of range: ",Ao=Math.floor,za=Math.pow,K$=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,kn,kt=1e7,Je=7,HC=9007199254740991,_d=Ao(HC/Je),ce={};ce.absoluteValue=ce.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ce.comparedTo=ce.cmp=function(e){var t,n,r,s,o=this;if(e=new o.constructor(e),o.s!==e.s)return o.s||-e.s;if(o.e!==e.e)return o.e>e.e^o.s<0?1:-1;for(r=o.d.length,s=e.d.length,t=0,n=re.d[t]^o.s<0?1:-1;return r===s?0:r>s^o.s<0?1:-1};ce.decimalPlaces=ce.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*Je;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ce.dividedBy=ce.div=function(e){return ri(this,new this.constructor(e))};ce.dividedToIntegerBy=ce.idiv=function(e){var t=this,n=t.constructor;return Xe(ri(t,new n(e),0,1),n.precision)};ce.equals=ce.eq=function(e){return!this.cmp(e)};ce.exponent=function(){return bt(this)};ce.greaterThan=ce.gt=function(e){return this.cmp(e)>0};ce.greaterThanOrEqualTo=ce.gte=function(e){return this.cmp(e)>=0};ce.isInteger=ce.isint=function(){return this.e>this.d.length-2};ce.isNegative=ce.isneg=function(){return this.s<0};ce.isPositive=ce.ispos=function(){return this.s>0};ce.isZero=function(){return this.s===0};ce.lessThan=ce.lt=function(e){return this.cmp(e)<0};ce.lessThanOrEqualTo=ce.lte=function(e){return this.cmp(e)<1};ce.logarithm=ce.log=function(e){var t,n=this,r=n.constructor,s=r.precision,o=s+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(kn))throw Error(tr+"NaN");if(n.s<1)throw Error(tr+(n.s?"NaN":"-Infinity"));return n.eq(kn)?new r(0):(nt=!1,t=ri(hu(n,o),hu(e,o),o),nt=!0,Xe(t,s))};ce.minus=ce.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?YC(t,e):KC(t,(e.s=-e.s,e))};ce.modulo=ce.mod=function(e){var t,n=this,r=n.constructor,s=r.precision;if(e=new r(e),!e.s)throw Error(tr+"NaN");return n.s?(nt=!1,t=ri(n,e,0,1).times(e),nt=!0,n.minus(t)):Xe(new r(n),s)};ce.naturalExponential=ce.exp=function(){return XC(this)};ce.naturalLogarithm=ce.ln=function(){return hu(this)};ce.negated=ce.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ce.plus=ce.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?KC(t,e):YC(t,(e.s=-e.s,e))};ce.precision=ce.sd=function(e){var t,n,r,s=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ka+e);if(t=bt(s)+1,r=s.d.length-1,n=r*Je+1,r=s.d[r],r){for(;r%10==0;r/=10)n--;for(r=s.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ce.squareRoot=ce.sqrt=function(){var e,t,n,r,s,o,u,f=this,d=f.constructor;if(f.s<1){if(!f.s)return new d(0);throw Error(tr+"NaN")}for(e=bt(f),nt=!1,s=Math.sqrt(+f),s==0||s==1/0?(t=Tr(f.d),(t.length+e)%2==0&&(t+="0"),s=Math.sqrt(t),e=Ao((e+1)/2)-(e<0||e%2),s==1/0?t="5e"+e:(t=s.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new d(t)):r=new d(s.toString()),n=d.precision,s=u=n+3;;)if(o=r,r=o.plus(ri(f,o,u+2)).times(.5),Tr(o.d).slice(0,u)===(t=Tr(r.d)).slice(0,u)){if(t=t.slice(u-3,u+1),s==u&&t=="4999"){if(Xe(o,n+1,0),o.times(o).eq(f)){r=o;break}}else if(t!="9999")break;u+=4}return nt=!0,Xe(r,n)};ce.times=ce.mul=function(e){var t,n,r,s,o,u,f,d,h,m=this,p=m.constructor,v=m.d,x=(e=new p(e)).d;if(!m.s||!e.s)return new p(0);for(e.s*=m.s,n=m.e+e.e,d=v.length,h=x.length,d=0;){for(t=0,s=d+r;s>r;)f=o[s]+x[r]*v[s-r-1]+t,o[s--]=f%kt|0,t=f/kt|0;o[s]=(o[s]+t)%kt|0}for(;!o[--u];)o.pop();return t?++n:o.shift(),e.d=o,e.e=n,nt?Xe(e,p.precision):e};ce.toDecimalPlaces=ce.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Dr(e,0,So),t===void 0?t=r.rounding:Dr(t,0,8),Xe(n,e+bt(n)+1,t))};ce.toExponential=function(e,t){var n,r=this,s=r.constructor;return e===void 0?n=Ja(r,!0):(Dr(e,0,So),t===void 0?t=s.rounding:Dr(t,0,8),r=Xe(new s(r),e+1,t),n=Ja(r,!0,e+1)),n};ce.toFixed=function(e,t){var n,r,s=this,o=s.constructor;return e===void 0?Ja(s):(Dr(e,0,So),t===void 0?t=o.rounding:Dr(t,0,8),r=Xe(new o(s),e+bt(s)+1,t),n=Ja(r.abs(),!1,e+bt(r)+1),s.isneg()&&!s.isZero()?"-"+n:n)};ce.toInteger=ce.toint=function(){var e=this,t=e.constructor;return Xe(new t(e),bt(e)+1,t.rounding)};ce.toNumber=function(){return+this};ce.toPower=ce.pow=function(e){var t,n,r,s,o,u,f=this,d=f.constructor,h=12,m=+(e=new d(e));if(!e.s)return new d(kn);if(f=new d(f),!f.s){if(e.s<1)throw Error(tr+"Infinity");return f}if(f.eq(kn))return f;if(r=d.precision,e.eq(kn))return Xe(f,r);if(t=e.e,n=e.d.length-1,u=t>=n,o=f.s,u){if((n=m<0?-m:m)<=HC){for(s=new d(kn),t=Math.ceil(r/Je+4),nt=!1;n%2&&(s=s.times(f),VO(s.d,t)),n=Ao(n/2),n!==0;)f=f.times(f),VO(f.d,t);return nt=!0,e.s<0?new d(kn).div(s):Xe(s,r)}}else if(o<0)throw Error(tr+"NaN");return o=o<0&&e.d[Math.max(t,n)]&1?-1:1,f.s=1,nt=!1,s=e.times(hu(f,r+h)),nt=!0,s=XC(s),s.s=o,s};ce.toPrecision=function(e,t){var n,r,s=this,o=s.constructor;return e===void 0?(n=bt(s),r=Ja(s,n<=o.toExpNeg||n>=o.toExpPos)):(Dr(e,1,So),t===void 0?t=o.rounding:Dr(t,0,8),s=Xe(new o(s),e,t),n=bt(s),r=Ja(s,e<=n||n<=o.toExpNeg,e)),r};ce.toSignificantDigits=ce.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Dr(e,1,So),t===void 0?t=r.rounding:Dr(t,0,8)),Xe(new r(n),e,t)};ce.toString=ce.valueOf=ce.val=ce.toJSON=ce[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=bt(e),n=e.constructor;return Ja(e,t<=n.toExpNeg||t>=n.toExpPos)};function KC(e,t){var n,r,s,o,u,f,d,h,m=e.constructor,p=m.precision;if(!e.s||!t.s)return t.s||(t=new m(e)),nt?Xe(t,p):t;if(d=e.d,h=t.d,u=e.e,s=t.e,d=d.slice(),o=u-s,o){for(o<0?(r=d,o=-o,f=h.length):(r=h,s=u,f=d.length),u=Math.ceil(p/Je),f=u>f?u+1:f+1,o>f&&(o=f,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for(f=d.length,o=h.length,f-o<0&&(o=f,r=h,h=d,d=r),n=0;o;)n=(d[--o]=d[o]+h[o]+n)/kt|0,d[o]%=kt;for(n&&(d.unshift(n),++s),f=d.length;d[--f]==0;)d.pop();return t.d=d,t.e=s,nt?Xe(t,p):t}function Dr(e,t,n){if(e!==~~e||en)throw Error(Ka+e)}function Tr(e){var t,n,r,s=e.length-1,o="",u=e[0];if(s>0){for(o+=u,t=1;tu?1:-1;else for(f=d=0;fs[f]?1:-1;break}return d}function n(r,s,o){for(var u=0;o--;)r[o]-=u,u=r[o]1;)r.shift()}return function(r,s,o,u){var f,d,h,m,p,v,x,w,_,S,O,M,j,N,k,C,L,I,Y=r.constructor,te=r.s==s.s?1:-1,ie=r.d,K=s.d;if(!r.s)return new Y(r);if(!s.s)throw Error(tr+"Division by zero");for(d=r.e-s.e,L=K.length,k=ie.length,x=new Y(te),w=x.d=[],h=0;K[h]==(ie[h]||0);)++h;if(K[h]>(ie[h]||0)&&--d,o==null?M=o=Y.precision:u?M=o+(bt(r)-bt(s))+1:M=o,M<0)return new Y(0);if(M=M/Je+2|0,h=0,L==1)for(m=0,K=K[0],M++;(h1&&(K=e(K,m),ie=e(ie,m),L=K.length,k=ie.length),N=L,_=ie.slice(0,L),S=_.length;S=kt/2&&++C;do m=0,f=t(K,_,L,S),f<0?(O=_[0],L!=S&&(O=O*kt+(_[1]||0)),m=O/C|0,m>1?(m>=kt&&(m=kt-1),p=e(K,m),v=p.length,S=_.length,f=t(p,_,v,S),f==1&&(m--,n(p,L16)throw Error(bb+bt(e));if(!e.s)return new m(kn);for(nt=!1,f=p,u=new m(.03125);e.abs().gte(.1);)e=e.times(u),h+=5;for(r=Math.log(za(2,h))/Math.LN10*2+5|0,f+=r,n=s=o=new m(kn),m.precision=f;;){if(s=Xe(s.times(e),f),n=n.times(++d),u=o.plus(ri(s,n,f)),Tr(u.d).slice(0,f)===Tr(o.d).slice(0,f)){for(;h--;)o=Xe(o.times(o),f);return m.precision=p,t==null?(nt=!0,Xe(o,p)):o}o=u}}function bt(e){for(var t=e.e*Je,n=e.d[0];n>=10;n/=10)t++;return t}function My(e,t,n){if(t>e.LN10.sd())throw nt=!0,n&&(e.precision=n),Error(tr+"LN10 precision limit exceeded");return Xe(new e(e.LN10),t)}function Gi(e){for(var t="";e--;)t+="0";return t}function hu(e,t){var n,r,s,o,u,f,d,h,m,p=1,v=10,x=e,w=x.d,_=x.constructor,S=_.precision;if(x.s<1)throw Error(tr+(x.s?"NaN":"-Infinity"));if(x.eq(kn))return new _(0);if(t==null?(nt=!1,h=S):h=t,x.eq(10))return t==null&&(nt=!0),My(_,h);if(h+=v,_.precision=h,n=Tr(w),r=n.charAt(0),o=bt(x),Math.abs(o)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)x=x.times(e),n=Tr(x.d),r=n.charAt(0),p++;o=bt(x),r>1?(x=new _("0."+n),o++):x=new _(r+"."+n.slice(1))}else return d=My(_,h+2,S).times(o+""),x=hu(new _(r+"."+n.slice(1)),h-v).plus(d),_.precision=S,t==null?(nt=!0,Xe(x,S)):x;for(f=u=x=ri(x.minus(kn),x.plus(kn),h),m=Xe(x.times(x),h),s=3;;){if(u=Xe(u.times(m),h),d=f.plus(ri(u,new _(s),h)),Tr(d.d).slice(0,h)===Tr(f.d).slice(0,h))return f=f.times(2),o!==0&&(f=f.plus(My(_,h+2,S).times(o+""))),f=ri(f,new _(p),h),_.precision=S,t==null?(nt=!0,Xe(f,S)):f;f=d,s+=2}}function UO(e,t){var n,r,s;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(s=t.length;t.charCodeAt(s-1)===48;)--s;if(t=t.slice(r,s),t){if(s-=r,n=n-r-1,e.e=Ao(n/Je),e.d=[],r=(n+1)%Je,n<0&&(r+=Je),r_d||e.e<-_d))throw Error(bb+n)}else e.s=0,e.e=0,e.d=[0];return e}function Xe(e,t,n){var r,s,o,u,f,d,h,m,p=e.d;for(u=1,o=p[0];o>=10;o/=10)u++;if(r=t-u,r<0)r+=Je,s=t,h=p[m=0];else{if(m=Math.ceil((r+1)/Je),o=p.length,m>=o)return e;for(h=o=p[m],u=1;o>=10;o/=10)u++;r%=Je,s=r-Je+u}if(n!==void 0&&(o=za(10,u-s-1),f=h/o%10|0,d=t<0||p[m+1]!==void 0||h%o,d=n<4?(f||d)&&(n==0||n==(e.s<0?3:2)):f>5||f==5&&(n==4||d||n==6&&(r>0?s>0?h/za(10,u-s):0:p[m-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return d?(o=bt(e),p.length=1,t=t-o-1,p[0]=za(10,(Je-t%Je)%Je),e.e=Ao(-t/Je)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(r==0?(p.length=m,o=1,m--):(p.length=m+1,o=za(10,Je-r),p[m]=s>0?(h/za(10,u-s)%za(10,s)|0)*o:0),d)for(;;)if(m==0){(p[0]+=o)==kt&&(p[0]=1,++e.e);break}else{if(p[m]+=o,p[m]!=kt)break;p[m--]=0,o=1}for(r=p.length;p[--r]===0;)p.pop();if(nt&&(e.e>_d||e.e<-_d))throw Error(bb+bt(e));return e}function YC(e,t){var n,r,s,o,u,f,d,h,m,p,v=e.constructor,x=v.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new v(e),nt?Xe(t,x):t;if(d=e.d,p=t.d,r=t.e,h=e.e,d=d.slice(),u=h-r,u){for(m=u<0,m?(n=d,u=-u,f=p.length):(n=p,r=h,f=d.length),s=Math.max(Math.ceil(x/Je),f)+2,u>s&&(u=s,n.length=1),n.reverse(),s=u;s--;)n.push(0);n.reverse()}else{for(s=d.length,f=p.length,m=s0;--s)d[f++]=0;for(s=p.length;s>u;){if(d[--s]0?o=o.charAt(0)+"."+o.slice(1)+Gi(r):u>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(s<0?"e":"e+")+s):s<0?(o="0."+Gi(-s-1)+o,n&&(r=n-u)>0&&(o+=Gi(r))):s>=u?(o+=Gi(s+1-u),n&&(r=n-s-1)>0&&(o=o+"."+Gi(r))):((r=s+1)0&&(s+1===u&&(o+="."),o+=Gi(r))),e.s<0?"-"+o:o}function VO(e,t){if(e.length>t)return e.length=t,!0}function GC(e){var t,n,r;function s(o){var u=this;if(!(u instanceof s))return new s(o);if(u.constructor=s,o instanceof s){u.s=o.s,u.e=o.e,u.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Ka+o);if(o>0)u.s=1;else if(o<0)o=-o,u.s=-1;else{u.s=0,u.e=0,u.d=[0];return}if(o===~~o&&o<1e7){u.e=0,u.d=[o];return}return UO(u,o.toString())}else if(typeof o!="string")throw Error(Ka+o);if(o.charCodeAt(0)===45?(o=o.slice(1),u.s=-1):u.s=1,K$.test(o))UO(u,o);else throw Error(Ka+o)}if(s.prototype=ce,s.ROUND_UP=0,s.ROUND_DOWN=1,s.ROUND_CEIL=2,s.ROUND_FLOOR=3,s.ROUND_HALF_UP=4,s.ROUND_HALF_DOWN=5,s.ROUND_HALF_EVEN=6,s.ROUND_HALF_CEIL=7,s.ROUND_HALF_FLOOR=8,s.clone=GC,s.config=s.set=X$,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=s[t+1]&&r<=s[t+2])this[n]=r;else throw Error(Ka+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ka+n+": "+r);return this}var xb=GC(H$);kn=new xb(1);const Ce=xb;function WC(e){var t;return e===0?t=1:t=Math.floor(new Ce(e).abs().log(10).toNumber())+1,t}function ZC(e,t,n){for(var r=new Ce(e),s=0,o=[];r.lt(t)&&s<1e5;)o.push(r.toNumber()),r=r.add(n),s++;return o}var QC=e=>{var[t,n]=e,[r,s]=[t,n];return t>n&&([r,s]=[n,t]),[r,s]},wb=(e,t,n)=>{if(e.lte(0))return new Ce(0);var r=WC(e.toNumber()),s=new Ce(10).pow(r),o=e.div(s),u=r!==1?.05:.1,f=new Ce(Math.ceil(o.div(u).toNumber())).add(n).mul(u),d=f.mul(s);return t?new Ce(d.toNumber()):new Ce(Math.ceil(d.toNumber()))},JC=(e,t,n)=>{var r;if(e.lte(0))return new Ce(0);var s=[1,2,2.5,5],o=e.toNumber(),u=Math.floor(new Ce(o).abs().log(10).toNumber()),f=new Ce(10).pow(u),d=e.div(f).toNumber(),h=s.findIndex(x=>x>=d-1e-10);if(h===-1&&(f=f.mul(10),h=0),h+=n,h>=s.length){var m=Math.floor(h/s.length);h%=s.length,f=f.mul(new Ce(10).pow(m))}var p=(r=s[h])!==null&&r!==void 0?r:1,v=new Ce(p).mul(f);return t?v:new Ce(Math.ceil(v.toNumber()))},Y$=(e,t,n)=>{var r=new Ce(1),s=new Ce(e);if(!s.isint()&&n){var o=Math.abs(e);o<1?(r=new Ce(10).pow(WC(e)-1),s=new Ce(Math.floor(s.div(r).toNumber())).mul(r)):o>1&&(s=new Ce(Math.floor(e)))}else e===0?s=new Ce(Math.floor((t-1)/2)):n||(s=new Ce(Math.floor(e)));for(var u=Math.floor((t-1)/2),f=[],d=0;d4&&arguments[4]!==void 0?arguments[4]:0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:wb;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ce(0),tickMin:new Ce(0),tickMax:new Ce(0)};var f=u(new Ce(n).sub(t).div(r-1),s,o),d;t<=0&&n>=0?d=new Ce(0):(d=new Ce(t).add(n).div(2),d=d.sub(new Ce(d).mod(f)));var h=Math.ceil(d.sub(t).div(f).toNumber()),m=Math.ceil(new Ce(n).sub(d).div(f).toNumber()),p=h+m+1;return p>r?e3(t,n,r,s,o+1,u):(p0?m+(r-p):m,h=n>0?h:h+(r-p)),{step:f,tickMin:d.sub(new Ce(h).mul(f)),tickMax:d.add(new Ce(m).mul(f))})},qO=function(t){var[n,r]=t,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",f=Math.max(s,2),[d,h]=QC([n,r]);if(d===-1/0||h===1/0){var m=h===1/0?[d,...Array(s-1).fill(1/0)]:[...Array(s-1).fill(-1/0),h];return n>r?m.reverse():m}if(d===h)return Y$(d,s,o);var p=u==="snap125"?JC:wb,{step:v,tickMin:x,tickMax:w}=e3(d,h,f,o,0,p),_=ZC(x,w.add(new Ce(.1).mul(v)),v);return n>r?_.reverse():_},$O=function(t,n){var[r,s]=t,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",[f,d]=QC([r,s]);if(f===-1/0||d===1/0)return[r,s];if(f===d)return[f];var h=u==="snap125"?JC:wb,m=Math.max(n,2),p=h(new Ce(d).sub(f).div(m-1),o,0),v=[...ZC(new Ce(f),new Ce(d),p),d];return o===!1&&(v=v.map(x=>Math.round(x))),r>s?v.reverse():v},G$=e=>e.rootProps.barCategoryGap,ph=e=>e.rootProps.stackOffset,t3=e=>e.rootProps.reverseStackOrder,_b=e=>e.options.chartName,Sb=e=>e.rootProps.syncId,n3=e=>e.rootProps.syncMethod,Ab=e=>e.options.eventEmitter,pn={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},Na={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},wr={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},gh=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function yh(e,t,n){if(n!=="auto")return n;if(e!=null)return sa(e,t)?"category":"number"}function FO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sd(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},Tb=$([J$,TC],(e,t)=>{var n;if(e!=null)return e;var r=(n=yh(t,"angleAxis",HO.type))!==null&&n!==void 0?n:"category";return Sd(Sd({},HO),{},{type:r})}),eF=(e,t)=>e.polarAxis.radiusAxis[t],Ob=$([eF,TC],(e,t)=>{var n;if(e!=null)return e;var r=(n=yh(t,"radiusAxis",KO.type))!==null&&n!==void 0?n:"category";return Sd(Sd({},KO),{},{type:r})}),vh=e=>e.polarOptions,Eb=$([hi,mi,Xt],j$),r3=$([vh,Eb],(e,t)=>{if(e!=null)return ra(e.innerRadius,t,0)}),i3=$([vh,Eb],(e,t)=>{if(e!=null)return ra(e.outerRadius,t,t*.8)}),tF=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},a3=$([vh],tF);$([Tb,a3],gh);var s3=$([Eb,r3,i3],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});$([Ob,s3],gh);var o3=$([ht,vh,r3,i3,hi,mi],(e,t,n,r,s,o)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:u,cy:f,startAngle:d,endAngle:h}=t;return{cx:ra(u,s,s/2),cy:ra(f,o,o/2),innerRadius:n,outerRadius:r,startAngle:d,endAngle:h,clockWise:!1}}}),Ct=(e,t)=>t,bh=(e,t,n)=>n;function l3(e){return e?.id}function u3(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:s,dataKey:o}=n,u=new Map;return e.forEach(f=>{var d,h=(d=f.data)!==null&&d!==void 0?d:r;if(!(h==null||h.length===0)){var m=l3(f);h.forEach((p,v)=>{var x=o==null||s?v:String(Ot(p,o,null)),w=Ot(p,f.dataKey,0),_;u.has(x)?_=u.get(x):_={},Object.assign(_,{[m]:w}),u.set(x,_)})}}),Array.from(u.values())}function jb(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var xh=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function wh(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function nF(e,t){if(e.length===t.length){for(var n=0;n{var t=ht(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},To=e=>e.tooltip.settings.axisId;function Mb(e){if(e!=null){var t=e.ticks,n=e.bandwidth,r=e.range(),s=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(o){function u(){return o.apply(this,arguments)}return u.toString=function(){return o.toString()},u})(()=>s),rangeMin:()=>s[0],rangeMax:()=>s[1],isInRange(o){var u=s[0],f=s[1];return u<=f?o>=u&&o<=f:o>=f&&o<=u},bandwidth:n?()=>n.call(e):void 0,ticks:t?o=>t.call(e,o):void 0,map:(o,u)=>{var f=e(o);if(f!=null){if(e.bandwidth&&u!==null&&u!==void 0&&u.position){var d=e.bandwidth();switch(u.position){case"middle":f+=d/2;break;case"end":f+=d;break}}return f}}}}}var rF=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Er(t)){for(var n,r,s=0;sr)&&(r=o))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function ea(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function iF(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function Nb(e){let t,n,r;e.length!==2?(t=ea,n=(f,d)=>ea(e(f),d),r=(f,d)=>e(f)-d):(t=e===ea||e===iF?e:aF,n=e,r=e);function s(f,d,h=0,m=f.length){if(h>>1;n(f[p],d)<0?h=p+1:m=p}while(h>>1;n(f[p],d)<=0?h=p+1:m=p}while(hh&&r(f[p-1],d)>-r(f[p],d)?p-1:p}return{left:s,center:u,right:o}}function aF(){return 0}function c3(e){return e===null?NaN:+e}function*sF(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const oF=Nb(ea),Ru=oF.right;Nb(c3).center;class XO extends Map{constructor(t,n=cF){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,s]of t)this.set(r,s)}get(t){return super.get(YO(this,t))}has(t){return super.has(YO(this,t))}set(t,n){return super.set(lF(this,t),n)}delete(t){return super.delete(uF(this,t))}}function YO({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function lF({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function uF({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function cF(e){return e!==null&&typeof e=="object"?e.valueOf():e}function fF(e=ea){if(e===ea)return f3;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function f3(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const dF=Math.sqrt(50),hF=Math.sqrt(10),mF=Math.sqrt(2);function Ad(e,t,n){const r=(t-e)/Math.max(0,n),s=Math.floor(Math.log10(r)),o=r/Math.pow(10,s),u=o>=dF?10:o>=hF?5:o>=mF?2:1;let f,d,h;return s<0?(h=Math.pow(10,-s)/u,f=Math.round(e*h),d=Math.round(t*h),f/ht&&--d,h=-h):(h=Math.pow(10,s)*u,f=Math.round(e/h),d=Math.round(t/h),f*ht&&--d),d0))return[];if(e===t)return[e];const r=t=s))return[];const f=o-s+1,d=new Array(f);if(r)if(u<0)for(let h=0;h=r)&&(n=r);return n}function WO(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function d3(e,t,n=0,r=1/0,s){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(s=s===void 0?f3:fF(s);r>n;){if(r-n>600){const d=r-n+1,h=t-n+1,m=Math.log(d),p=.5*Math.exp(2*m/3),v=.5*Math.sqrt(m*p*(d-p)/d)*(h-d/2<0?-1:1),x=Math.max(n,Math.floor(t-h*p/d+v)),w=Math.min(r,Math.floor(t+(d-h)*p/d+v));d3(e,t,x,w,s)}const o=e[t];let u=n,f=r;for(Dl(e,n,t),s(e[r],o)>0&&Dl(e,n,r);u0;)--f}s(e[n],o)===0?Dl(e,n,f):(++f,Dl(e,f,r)),f<=t&&(n=f+1),t<=f&&(r=f-1)}return e}function Dl(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function pF(e,t,n){if(e=Float64Array.from(sF(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return WO(e);if(t>=1)return GO(e);var r,s=(r-1)*t,o=Math.floor(s),u=GO(d3(e,o).subarray(0,o+1)),f=WO(e.subarray(o+1));return u+(f-u)*(s-o)}}function gF(e,t,n=c3){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,s=(r-1)*t,o=Math.floor(s),u=+n(e[o],o,e),f=+n(e[o+1],o+1,e);return u+(f-u)*(s-o)}}function yF(e,t,n){e=+e,t=+t,n=(s=arguments.length)<2?(t=e,e=0,1):s<3?1:+n;for(var r=-1,s=Math.max(0,Math.ceil((t-e)/n))|0,o=new Array(s);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Af(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Af(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=xF.exec(e))?new gn(t[1],t[2],t[3],1):(t=wF.exec(e))?new gn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=_F.exec(e))?Af(t[1],t[2],t[3],t[4]):(t=SF.exec(e))?Af(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=AF.exec(e))?rE(t[1],t[2]/100,t[3]/100,1):(t=TF.exec(e))?rE(t[1],t[2]/100,t[3]/100,t[4]):ZO.hasOwnProperty(e)?eE(ZO[e]):e==="transparent"?new gn(NaN,NaN,NaN,0):null}function eE(e){return new gn(e>>16&255,e>>8&255,e&255,1)}function Af(e,t,n,r){return r<=0&&(e=t=n=NaN),new gn(e,t,n,r)}function jF(e){return e instanceof Lu||(e=gu(e)),e?(e=e.rgb(),new gn(e.r,e.g,e.b,e.opacity)):new gn}function Jv(e,t,n,r){return arguments.length===1?jF(e):new gn(e,t,n,r??1)}function gn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Db(gn,Jv,m3(Lu,{brighter(e){return e=e==null?Td:Math.pow(Td,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?mu:Math.pow(mu,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new gn(Xa(this.r),Xa(this.g),Xa(this.b),Od(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:tE,formatHex:tE,formatHex8:MF,formatRgb:nE,toString:nE}));function tE(){return`#${Va(this.r)}${Va(this.g)}${Va(this.b)}`}function MF(){return`#${Va(this.r)}${Va(this.g)}${Va(this.b)}${Va((isNaN(this.opacity)?1:this.opacity)*255)}`}function nE(){const e=Od(this.opacity);return`${e===1?"rgb(":"rgba("}${Xa(this.r)}, ${Xa(this.g)}, ${Xa(this.b)}${e===1?")":`, ${e})`}`}function Od(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Xa(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Va(e){return e=Xa(e),(e<16?"0":"")+e.toString(16)}function rE(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new cr(e,t,n,r)}function p3(e){if(e instanceof cr)return new cr(e.h,e.s,e.l,e.opacity);if(e instanceof Lu||(e=gu(e)),!e)return new cr;if(e instanceof cr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,s=Math.min(t,n,r),o=Math.max(t,n,r),u=NaN,f=o-s,d=(o+s)/2;return f?(t===o?u=(n-r)/f+(n0&&d<1?0:u,new cr(u,f,d,e.opacity)}function NF(e,t,n,r){return arguments.length===1?p3(e):new cr(e,t,n,r??1)}function cr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Db(cr,NF,m3(Lu,{brighter(e){return e=e==null?Td:Math.pow(Td,e),new cr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?mu:Math.pow(mu,e),new cr(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,s=2*n-r;return new gn(Ny(e>=240?e-240:e+120,s,r),Ny(e,s,r),Ny(e<120?e+240:e-120,s,r),this.opacity)},clamp(){return new cr(iE(this.h),Tf(this.s),Tf(this.l),Od(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(){const e=Od(this.opacity);return`${e===1?"hsl(":"hsla("}${iE(this.h)}, ${Tf(this.s)*100}%, ${Tf(this.l)*100}%${e===1?")":`, ${e})`}`}}));function iE(e){return e=(e||0)%360,e<0?e+360:e}function Tf(e){return Math.max(0,Math.min(1,e||0))}function Ny(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Pb=e=>()=>e;function kF(e,t){return function(n){return e+n*t}}function CF(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function DF(e){return(e=+e)==1?g3:function(t,n){return n-t?CF(t,n,e):Pb(isNaN(t)?n:t)}}function g3(e,t){var n=t-e;return n?kF(e,n):Pb(isNaN(e)?t:e)}const aE=(function e(t){var n=DF(t);function r(s,o){var u=n((s=Jv(s)).r,(o=Jv(o)).r),f=n(s.g,o.g),d=n(s.b,o.b),h=g3(s.opacity,o.opacity);return function(m){return s.r=u(m),s.g=f(m),s.b=d(m),s.opacity=h(m),s+""}}return r.gamma=e,r})(1);function PF(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),s;return function(o){for(s=0;sn&&(o=t.slice(n,o),f[u]?f[u]+=o:f[++u]=o),(r=r[0])===(s=s[0])?f[u]?f[u]+=s:f[++u]=s:(f[++u]=null,d.push({i:u,x:Ed(r,s)})),n=ky.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function HF(e,t,n){var r=e[0],s=e[1],o=t[0],u=t[1];return s2?KF:HF,d=h=null,p}function p(v){return v==null||isNaN(v=+v)?o:(d||(d=f(e.map(r),t,n)))(r(u(v)))}return p.invert=function(v){return u(s((h||(h=f(t,e.map(r),Ed)))(v)))},p.domain=function(v){return arguments.length?(e=Array.from(v,jd),m()):e.slice()},p.range=function(v){return arguments.length?(t=Array.from(v),m()):t.slice()},p.rangeRound=function(v){return t=Array.from(v),n=Rb,m()},p.clamp=function(v){return arguments.length?(u=v?!0:rn,m()):u!==rn},p.interpolate=function(v){return arguments.length?(n=v,m()):n},p.unknown=function(v){return arguments.length?(o=v,p):o},function(v,x){return r=v,s=x,m()}}function Lb(){return _h()(rn,rn)}function XF(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function Md(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 mo(e){return e=Md(Math.abs(e)),e?e[1]:NaN}function YF(e,t){return function(n,r){for(var s=n.length,o=[],u=0,f=e[0],d=0;s>0&&f>0&&(d+f+1>r&&(f=Math.max(1,r-d)),o.push(n.substring(s-=f,s+f)),!((d+=f+1)>r));)f=e[u=(u+1)%e.length];return o.reverse().join(t)}}function GF(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var WF=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function yu(e){if(!(t=WF.exec(e)))throw new Error("invalid format: "+e);var t;return new zb({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]})}yu.prototype=zb.prototype;function zb(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+""}zb.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 ZF(e){e:for(var t=e.length,n=1,r=-1,s;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(s+1):e}var Nd;function QF(e,t){var n=Md(e,t);if(!n)return Nd=void 0,e.toPrecision(t);var r=n[0],s=n[1],o=s-(Nd=Math.max(-8,Math.min(8,Math.floor(s/3)))*3)+1,u=r.length;return o===u?r:o>u?r+new Array(o-u+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+Md(e,Math.max(0,t+o-1))[0]}function oE(e,t){var n=Md(e,t);if(!n)return e+"";var r=n[0],s=n[1];return s<0?"0."+new Array(-s).join("0")+r:r.length>s+1?r.slice(0,s+1)+"."+r.slice(s+1):r+new Array(s-r.length+2).join("0")}const lE={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:XF,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)=>oE(e*100,t),r:oE,s:QF,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function uE(e){return e}var cE=Array.prototype.map,fE=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function JF(e){var t=e.grouping===void 0||e.thousands===void 0?uE:YF(cE.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",s=e.decimal===void 0?".":e.decimal+"",o=e.numerals===void 0?uE:GF(cE.call(e.numerals,String)),u=e.percent===void 0?"%":e.percent+"",f=e.minus===void 0?"−":e.minus+"",d=e.nan===void 0?"NaN":e.nan+"";function h(p,v){p=yu(p);var x=p.fill,w=p.align,_=p.sign,S=p.symbol,O=p.zero,M=p.width,j=p.comma,N=p.precision,k=p.trim,C=p.type;C==="n"?(j=!0,C="g"):lE[C]||(N===void 0&&(N=12),k=!0,C="g"),(O||x==="0"&&w==="=")&&(O=!0,x="0",w="=");var L=(v&&v.prefix!==void 0?v.prefix:"")+(S==="$"?n:S==="#"&&/[boxX]/.test(C)?"0"+C.toLowerCase():""),I=(S==="$"?r:/[%p]/.test(C)?u:"")+(v&&v.suffix!==void 0?v.suffix:""),Y=lE[C],te=/[defgprs%]/.test(C);N=N===void 0?6:/[gprs]/.test(C)?Math.max(1,Math.min(21,N)):Math.max(0,Math.min(20,N));function ie(K){var be=L,pe=I,xe,V,Q;if(C==="c")pe=Y(K)+pe,K="";else{K=+K;var ne=K<0||1/K<0;if(K=isNaN(K)?d:Y(Math.abs(K),N),k&&(K=ZF(K)),ne&&+K==0&&_!=="+"&&(ne=!1),be=(ne?_==="("?_:f:_==="-"||_==="("?"":_)+be,pe=(C==="s"&&!isNaN(K)&&Nd!==void 0?fE[8+Nd/3]:"")+pe+(ne&&_==="("?")":""),te){for(xe=-1,V=K.length;++xeQ||Q>57){pe=(Q===46?s+K.slice(xe+1):K.slice(xe))+pe,K=K.slice(0,xe);break}}}j&&!O&&(K=t(K,1/0));var le=be.length+K.length+pe.length,ue=le>1)+be+K+pe+ue.slice(le);break;default:K=ue+be+K+pe;break}return o(K)}return ie.toString=function(){return p+""},ie}function m(p,v){var x=Math.max(-8,Math.min(8,Math.floor(mo(v)/3)))*3,w=Math.pow(10,-x),_=h((p=yu(p),p.type="f",p),{suffix:fE[8+x/3]});return function(S){return _(w*S)}}return{format:h,formatPrefix:m}}var Of,Ib,y3;eH({thousands:",",grouping:[3],currency:["$",""]});function eH(e){return Of=JF(e),Ib=Of.format,y3=Of.formatPrefix,Of}function tH(e){return Math.max(0,-mo(Math.abs(e)))}function nH(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(mo(t)/3)))*3-mo(Math.abs(e)))}function rH(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,mo(t)-mo(e))+1}function v3(e,t,n,r){var s=Zv(e,t,n),o;switch(r=yu(r??",f"),r.type){case"s":{var u=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(o=nH(s,u))&&(r.precision=o),y3(r,u)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(o=rH(s,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=o-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(o=tH(s))&&(r.precision=o-(r.type==="%")*2);break}}return Ib(r)}function la(e){var t=e.domain;return e.ticks=function(n){var r=t();return Gv(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var s=t();return v3(s[0],s[s.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),s=0,o=r.length-1,u=r[s],f=r[o],d,h,m=10;for(f0;){if(h=Wv(u,f,n),h===d)return r[s]=u,r[o]=f,t(r);if(h>0)u=Math.floor(u/h)*h,f=Math.ceil(f/h)*h;else if(h<0)u=Math.ceil(u*h)/h,f=Math.floor(f*h)/h;else break;d=h}return e},e}function b3(){var e=Lb();return e.copy=function(){return zu(e,b3())},nr.apply(e,arguments),la(e)}function x3(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,jd),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return x3(e).unknown(t)},e=arguments.length?Array.from(e,jd):[0,1],la(n)}function w3(e,t){e=e.slice();var n=0,r=e.length-1,s=e[n],o=e[r],u;return oMath.pow(e,t)}function lH(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 mE(e){return(t,n)=>-e(-t,n)}function Bb(e){const t=e(dE,hE),n=t.domain;let r=10,s,o;function u(){return s=lH(r),o=oH(r),n()[0]<0?(s=mE(s),o=mE(o),e(iH,aH)):e(dE,hE),t}return t.base=function(f){return arguments.length?(r=+f,u()):r},t.domain=function(f){return arguments.length?(n(f),u()):n()},t.ticks=f=>{const d=n();let h=d[0],m=d[d.length-1];const p=m0){for(;v<=x;++v)for(w=1;wm)break;O.push(_)}}else for(;v<=x;++v)for(w=r-1;w>=1;--w)if(_=v>0?w/o(-v):w*o(v),!(_m)break;O.push(_)}O.length*2{if(f==null&&(f=10),d==null&&(d=r===10?"s":","),typeof d!="function"&&(!(r%1)&&(d=yu(d)).precision==null&&(d.trim=!0),d=Ib(d)),f===1/0)return d;const h=Math.max(1,r*f/t.ticks().length);return m=>{let p=m/o(Math.round(s(m)));return p*rn(w3(n(),{floor:f=>o(Math.floor(s(f))),ceil:f=>o(Math.ceil(s(f)))})),t}function _3(){const e=Bb(_h()).domain([1,10]);return e.copy=()=>zu(e,_3()).base(e.base()),nr.apply(e,arguments),e}function pE(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function gE(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Ub(e){var t=1,n=e(pE(t),gE(t));return n.constant=function(r){return arguments.length?e(pE(t=+r),gE(t)):t},la(n)}function S3(){var e=Ub(_h());return e.copy=function(){return zu(e,S3()).constant(e.constant())},nr.apply(e,arguments)}function yE(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function uH(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function cH(e){return e<0?-e*e:e*e}function Vb(e){var t=e(rn,rn),n=1;function r(){return n===1?e(rn,rn):n===.5?e(uH,cH):e(yE(n),yE(1/n))}return t.exponent=function(s){return arguments.length?(n=+s,r()):n},la(t)}function qb(){var e=Vb(_h());return e.copy=function(){return zu(e,qb()).exponent(e.exponent())},nr.apply(e,arguments),e}function fH(){return qb.apply(null,arguments).exponent(.5)}function vE(e){return Math.sign(e)*e*e}function dH(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function A3(){var e=Lb(),t=[0,1],n=!1,r;function s(o){var u=dH(e(o));return isNaN(u)?r:n?Math.round(u):u}return s.invert=function(o){return e.invert(vE(o))},s.domain=function(o){return arguments.length?(e.domain(o),s):e.domain()},s.range=function(o){return arguments.length?(e.range((t=Array.from(o,jd)).map(vE)),s):t.slice()},s.rangeRound=function(o){return s.range(o).round(!0)},s.round=function(o){return arguments.length?(n=!!o,s):n},s.clamp=function(o){return arguments.length?(e.clamp(o),s):e.clamp()},s.unknown=function(o){return arguments.length?(r=o,s):r},s.copy=function(){return A3(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},nr.apply(s,arguments),la(s)}function T3(){var e=[],t=[],n=[],r;function s(){var u=0,f=Math.max(1,t.length);for(n=new Array(f-1);++u0?n[f-1]:e[0],f=n?[r[n-1],t]:[r[h-1],r[h]]},u.unknown=function(d){return arguments.length&&(o=d),u},u.thresholds=function(){return r.slice()},u.copy=function(){return O3().domain([e,t]).range(s).unknown(o)},nr.apply(la(u),arguments)}function E3(){var e=[.5],t=[0,1],n,r=1;function s(o){return o!=null&&o<=o?t[Ru(e,o,0,r)]:n}return s.domain=function(o){return arguments.length?(e=Array.from(o),r=Math.min(e.length,t.length-1),s):e.slice()},s.range=function(o){return arguments.length?(t=Array.from(o),r=Math.min(e.length,t.length-1),s):t.slice()},s.invertExtent=function(o){var u=t.indexOf(o);return[e[u-1],e[u]]},s.unknown=function(o){return arguments.length?(n=o,s):n},s.copy=function(){return E3().domain(e).range(t).unknown(n)},nr.apply(s,arguments)}const Cy=new Date,Dy=new Date;function Et(e,t,n,r){function s(o){return e(o=arguments.length===0?new Date:new Date(+o)),o}return s.floor=o=>(e(o=new Date(+o)),o),s.ceil=o=>(e(o=new Date(o-1)),t(o,1),e(o),o),s.round=o=>{const u=s(o),f=s.ceil(o);return o-u(t(o=new Date(+o),u==null?1:Math.floor(u)),o),s.range=(o,u,f)=>{const d=[];if(o=s.ceil(o),f=f==null?1:Math.floor(f),!(o0))return d;let h;do d.push(h=new Date(+o)),t(o,f),e(o);while(hEt(u=>{if(u>=u)for(;e(u),!o(u);)u.setTime(u-1)},(u,f)=>{if(u>=u)if(f<0)for(;++f<=0;)for(;t(u,-1),!o(u););else for(;--f>=0;)for(;t(u,1),!o(u););}),n&&(s.count=(o,u)=>(Cy.setTime(+o),Dy.setTime(+u),e(Cy),e(Dy),Math.floor(n(Cy,Dy))),s.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?s.filter(r?u=>r(u)%o===0:u=>s.count(0,u)%o===0):s)),s}const kd=Et(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);kd.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Et(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):kd);kd.range;const ti=1e3,Qn=ti*60,ni=Qn*60,ui=ni*24,$b=ui*7,bE=ui*30,Py=ui*365,qa=Et(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getUTCSeconds());qa.range;const Fb=Et(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ti)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getMinutes());Fb.range;const Hb=Et(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getUTCMinutes());Hb.range;const Kb=Et(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ti-e.getMinutes()*Qn)},(e,t)=>{e.setTime(+e+t*ni)},(e,t)=>(t-e)/ni,e=>e.getHours());Kb.range;const Xb=Et(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ni)},(e,t)=>(t-e)/ni,e=>e.getUTCHours());Xb.range;const Iu=Et(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Qn)/ui,e=>e.getDate()-1);Iu.range;const Sh=Et(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ui,e=>e.getUTCDate()-1);Sh.range;const j3=Et(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ui,e=>Math.floor(e/ui));j3.range;function ns(e){return Et(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Qn)/$b)}const Ah=ns(0),Cd=ns(1),hH=ns(2),mH=ns(3),po=ns(4),pH=ns(5),gH=ns(6);Ah.range;Cd.range;hH.range;mH.range;po.range;pH.range;gH.range;function rs(e){return Et(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/$b)}const Th=rs(0),Dd=rs(1),yH=rs(2),vH=rs(3),go=rs(4),bH=rs(5),xH=rs(6);Th.range;Dd.range;yH.range;vH.range;go.range;bH.range;xH.range;const Yb=Et(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());Yb.range;const Gb=Et(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());Gb.range;const ci=Et(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());ci.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Et(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)});ci.range;const fi=Et(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());fi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Et(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)});fi.range;function M3(e,t,n,r,s,o){const u=[[qa,1,ti],[qa,5,5*ti],[qa,15,15*ti],[qa,30,30*ti],[o,1,Qn],[o,5,5*Qn],[o,15,15*Qn],[o,30,30*Qn],[s,1,ni],[s,3,3*ni],[s,6,6*ni],[s,12,12*ni],[r,1,ui],[r,2,2*ui],[n,1,$b],[t,1,bE],[t,3,3*bE],[e,1,Py]];function f(h,m,p){const v=mS).right(u,v);if(x===u.length)return e.every(Zv(h/Py,m/Py,p));if(x===0)return kd.every(Math.max(Zv(h,m,p),1));const[w,_]=u[v/u[x-1][2]53)return null;"w"in ee||(ee.w=1),"Z"in ee?(De=Ly(Pl(ee.y,0,1)),Lt=De.getUTCDay(),De=Lt>4||Lt===0?Dd.ceil(De):Dd(De),De=Sh.offset(De,(ee.V-1)*7),ee.y=De.getUTCFullYear(),ee.m=De.getUTCMonth(),ee.d=De.getUTCDate()+(ee.w+6)%7):(De=Ry(Pl(ee.y,0,1)),Lt=De.getDay(),De=Lt>4||Lt===0?Cd.ceil(De):Cd(De),De=Iu.offset(De,(ee.V-1)*7),ee.y=De.getFullYear(),ee.m=De.getMonth(),ee.d=De.getDate()+(ee.w+6)%7)}else("W"in ee||"U"in ee)&&("w"in ee||(ee.w="u"in ee?ee.u%7:"W"in ee?1:0),Lt="Z"in ee?Ly(Pl(ee.y,0,1)).getUTCDay():Ry(Pl(ee.y,0,1)).getDay(),ee.m=0,ee.d="W"in ee?(ee.w+6)%7+ee.W*7-(Lt+5)%7:ee.w+ee.U*7-(Lt+6)%7);return"Z"in ee?(ee.H+=ee.Z/100|0,ee.M+=ee.Z%100,Ly(ee)):Ry(ee)}}function I(J,re,Se,ee){for(var Rt=0,De=re.length,Lt=Se.length,zt,Pr;Rt=Lt)return-1;if(zt=re.charCodeAt(Rt++),zt===37){if(zt=re.charAt(Rt++),Pr=k[zt in xE?re.charAt(Rt++):zt],!Pr||(ee=Pr(J,Se,ee))<0)return-1}else if(zt!=Se.charCodeAt(ee++))return-1}return ee}function Y(J,re,Se){var ee=h.exec(re.slice(Se));return ee?(J.p=m.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function te(J,re,Se){var ee=x.exec(re.slice(Se));return ee?(J.w=w.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function ie(J,re,Se){var ee=p.exec(re.slice(Se));return ee?(J.w=v.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function K(J,re,Se){var ee=O.exec(re.slice(Se));return ee?(J.m=M.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function be(J,re,Se){var ee=_.exec(re.slice(Se));return ee?(J.m=S.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function pe(J,re,Se){return I(J,t,re,Se)}function xe(J,re,Se){return I(J,n,re,Se)}function V(J,re,Se){return I(J,r,re,Se)}function Q(J){return u[J.getDay()]}function ne(J){return o[J.getDay()]}function le(J){return d[J.getMonth()]}function ue(J){return f[J.getMonth()]}function P(J){return s[+(J.getHours()>=12)]}function H(J){return 1+~~(J.getMonth()/3)}function ae(J){return u[J.getUTCDay()]}function se(J){return o[J.getUTCDay()]}function Z(J){return d[J.getUTCMonth()]}function oe(J){return f[J.getUTCMonth()]}function he(J){return s[+(J.getUTCHours()>=12)]}function _e(J){return 1+~~(J.getUTCMonth()/3)}return{format:function(J){var re=C(J+="",j);return re.toString=function(){return J},re},parse:function(J){var re=L(J+="",!1);return re.toString=function(){return J},re},utcFormat:function(J){var re=C(J+="",N);return re.toString=function(){return J},re},utcParse:function(J){var re=L(J+="",!0);return re.toString=function(){return J},re}}}var xE={"-":"",_:" ",0:"0"},Pt=/^\s*\d+/,OH=/^%/,EH=/[\\^$*+?|[\]().{}]/g;function ze(e,t,n){var r=e<0?"-":"",s=(r?-e:e)+"",o=s.length;return r+(o[t.toLowerCase(),n]))}function MH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function NH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function kH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function CH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function DH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function wE(e,t,n){var r=Pt.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function _E(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function PH(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 RH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function LH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function SE(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function zH(e,t,n){var r=Pt.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function AE(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function IH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function BH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function UH(e,t,n){var r=Pt.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function VH(e,t,n){var r=Pt.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function qH(e,t,n){var r=OH.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function $H(e,t,n){var r=Pt.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function FH(e,t,n){var r=Pt.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function TE(e,t){return ze(e.getDate(),t,2)}function HH(e,t){return ze(e.getHours(),t,2)}function KH(e,t){return ze(e.getHours()%12||12,t,2)}function XH(e,t){return ze(1+Iu.count(ci(e),e),t,3)}function N3(e,t){return ze(e.getMilliseconds(),t,3)}function YH(e,t){return N3(e,t)+"000"}function GH(e,t){return ze(e.getMonth()+1,t,2)}function WH(e,t){return ze(e.getMinutes(),t,2)}function ZH(e,t){return ze(e.getSeconds(),t,2)}function QH(e){var t=e.getDay();return t===0?7:t}function JH(e,t){return ze(Ah.count(ci(e)-1,e),t,2)}function k3(e){var t=e.getDay();return t>=4||t===0?po(e):po.ceil(e)}function eK(e,t){return e=k3(e),ze(po.count(ci(e),e)+(ci(e).getDay()===4),t,2)}function tK(e){return e.getDay()}function nK(e,t){return ze(Cd.count(ci(e)-1,e),t,2)}function rK(e,t){return ze(e.getFullYear()%100,t,2)}function iK(e,t){return e=k3(e),ze(e.getFullYear()%100,t,2)}function aK(e,t){return ze(e.getFullYear()%1e4,t,4)}function sK(e,t){var n=e.getDay();return e=n>=4||n===0?po(e):po.ceil(e),ze(e.getFullYear()%1e4,t,4)}function oK(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+ze(t/60|0,"0",2)+ze(t%60,"0",2)}function OE(e,t){return ze(e.getUTCDate(),t,2)}function lK(e,t){return ze(e.getUTCHours(),t,2)}function uK(e,t){return ze(e.getUTCHours()%12||12,t,2)}function cK(e,t){return ze(1+Sh.count(fi(e),e),t,3)}function C3(e,t){return ze(e.getUTCMilliseconds(),t,3)}function fK(e,t){return C3(e,t)+"000"}function dK(e,t){return ze(e.getUTCMonth()+1,t,2)}function hK(e,t){return ze(e.getUTCMinutes(),t,2)}function mK(e,t){return ze(e.getUTCSeconds(),t,2)}function pK(e){var t=e.getUTCDay();return t===0?7:t}function gK(e,t){return ze(Th.count(fi(e)-1,e),t,2)}function D3(e){var t=e.getUTCDay();return t>=4||t===0?go(e):go.ceil(e)}function yK(e,t){return e=D3(e),ze(go.count(fi(e),e)+(fi(e).getUTCDay()===4),t,2)}function vK(e){return e.getUTCDay()}function bK(e,t){return ze(Dd.count(fi(e)-1,e),t,2)}function xK(e,t){return ze(e.getUTCFullYear()%100,t,2)}function wK(e,t){return e=D3(e),ze(e.getUTCFullYear()%100,t,2)}function _K(e,t){return ze(e.getUTCFullYear()%1e4,t,4)}function SK(e,t){var n=e.getUTCDay();return e=n>=4||n===0?go(e):go.ceil(e),ze(e.getUTCFullYear()%1e4,t,4)}function AK(){return"+0000"}function EE(){return"%"}function jE(e){return+e}function ME(e){return Math.floor(+e/1e3)}var Fs,P3,R3;TK({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 TK(e){return Fs=TH(e),P3=Fs.format,Fs.parse,R3=Fs.utcFormat,Fs.utcParse,Fs}function OK(e){return new Date(e)}function EK(e){return e instanceof Date?+e:+new Date(+e)}function Wb(e,t,n,r,s,o,u,f,d,h){var m=Lb(),p=m.invert,v=m.domain,x=h(".%L"),w=h(":%S"),_=h("%I:%M"),S=h("%I %p"),O=h("%a %d"),M=h("%b %d"),j=h("%B"),N=h("%Y");function k(C){return(d(C)t(s/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(s,o)=>pF(e,o/r))},n.copy=function(){return B3(t).domain(e)},pi.apply(n,arguments)}function Eh(){var e=0,t=.5,n=1,r=1,s,o,u,f,d,h=rn,m,p=!1,v;function x(_){return isNaN(_=+_)?v:(_=.5+((_=+m(_))-o)*(r*_{if(e!=null){var{scale:r,type:s}=e;if(r==="auto")return s==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":s==="category"?"band":"linear";if(typeof r=="string")return PK(r)?r:"point"}};function RK(e,t){for(var n=0,r=e.length,s=e[0]t)?n=o+1:r=o}return n}function F3(e,t){if(e){var n=t??e.domain(),r=n.map(o=>{var u;return(u=e(o))!==null&&u!==void 0?u:0}),s=e.range();if(!(n.length===0||s.length<2))return o=>{var u,f,d=RK(r,o);if(d<=0)return n[0];if(d>=n.length)return n[n.length-1];var h=(u=r[d-1])!==null&&u!==void 0?u:0,m=(f=r[d])!==null&&f!==void 0?f:0;return Math.abs(o-h)<=Math.abs(o-m)?n[d-1]:n[d]}}}function LK(e){if(e!=null)return"invert"in e&&typeof e.invert=="function"?e.invert.bind(e):F3(e,void 0)}function kE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Pd(e){for(var t=1;te.cartesianAxis.xAxis[t],gi=(e,t)=>{var n=H3(e,t);return n??wt},_t={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:n0,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:Mu},K3=(e,t)=>e.cartesianAxis.yAxis[t],yi=(e,t)=>{var n=K3(e,t);return n??_t},X3={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:""},ex=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??X3},sn=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);case"zAxis":return ex(e,n);case"angleAxis":return Tb(e,n);case"radiusAxis":return Ob(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},UK=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Bu=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);case"angleAxis":return Tb(e,n);case"radiusAxis":return Ob(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Y3=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function G3(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 W3=e=>e.graphicalItems.cartesianItems,VK=$([Ct,bh],G3),Z3=(e,t,n)=>e.filter(n).filter(r=>t?.includeHidden===!0?!0:!r.hide),Uu=$([W3,sn,VK],Z3,{memoizeOptions:{resultEqualityCheck:wh}}),Q3=$([Uu],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(jb)),J3=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),qK=$([Uu],J3),eD=e=>e.map(t=>t.data).filter(Boolean).flat(1),$K=$([Uu],eD,{memoizeOptions:{resultEqualityCheck:wh}}),tD=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:s}=t;return e.length>0?e:n.slice(r,s+1)},tx=$([$K,vb],tD),nD=(e,t,n)=>t?.dataKey!=null?e.map(r=>({value:Ot(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(s=>({value:Ot(s,r)}))):e.map(r=>({value:r})),Vu=$([tx,sn,Uu],nD);function lo(e){if(kr(e)||e instanceof Date){var t=Number(e);if(Le(t))return t}}function CE(e){if(Array.isArray(e)){var t=[lo(e[0]),lo(e[1])];return Er(t)?t:void 0}var n=lo(e);if(n!=null)return[n,n]}function di(e){return e.map(lo).filter(mn)}function FK(e,t){var n=lo(e),r=lo(t);return n==null&&r==null?0:n==null?-1:r==null?1:n-r}var HK=$([Vu],e=>e?.map(t=>t.value).sort(FK));function rD(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function KK(e,t,n){return!n||typeof t!="number"||oi(t)?[]:n.length?di(n.flatMap(r=>{var s=Ot(e,r.dataKey),o,u;if(Array.isArray(s)?[o,u]=s:o=u=s,!(!Le(o)||!Le(u)))return[t-o,t+u]})):[]}var jt=e=>{var t=Dt(e),n=To(e);return Bu(e,t,n)},qu=$([jt],e=>e?.dataKey),XK=$([Q3,vb,jt],u3),iD=(e,t,n,r)=>{var s={},o=t.reduce((u,f)=>{if(f.stackId==null)return u;var d=u[f.stackId];return d==null&&(d=[]),d.push(f),u[f.stackId]=d,u},s);return Object.fromEntries(Object.entries(o).map(u=>{var[f,d]=u,h=r?[...d].reverse():d,m=h.map(l3);return[f,{stackedData:ZU(e,m,n),graphicalItems:h}]}))},YK=$([XK,Q3,ph,t3],iD),aD=(e,t,n,r)=>{var{dataStartIndex:s,dataEndIndex:o}=t;if(r==null&&n!=="zAxis"){var u=eV(e,s,o);if(!(u!=null&&u[0]===0&&u[1]===0))return u}},GK=$([sn],e=>e.allowDataOverflow),nx=e=>{var t;if(e==null||!("domain"in e))return n0;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=di(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e?.domain)!==null&&t!==void 0?t:n0},sD=$([sn],nx),oD=$([sD,GK],FC),WK=$([YK,oa,Ct,oD],aD,{memoizeOptions:{resultEqualityCheck:xh}}),rx=e=>e.errorBars,ZK=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>rD(n,r)),Rd=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var o,u;if(n.length>0&&e.forEach(f=>{n.forEach(d=>{var h,m,p=(h=r[d.id])===null||h===void 0?void 0:h.filter(O=>rD(s,O)),v=Ot(f,(m=t.dataKey)!==null&&m!==void 0?m:d.dataKey),x=KK(f,v,p);if(x.length>=2){var w=Math.min(...x),_=Math.max(...x);(o==null||wu)&&(u=_)}var S=CE(v);S!=null&&(o=o==null?S[0]:Math.min(o,S[0]),u=u==null?S[1]:Math.max(u,S[1]))})}),t?.dataKey!=null&&e.forEach(f=>{var d=CE(Ot(f,t.dataKey));d!=null&&(o=o==null?d[0]:Math.min(o,d[0]),u=u==null?d[1]:Math.max(u,d[1]))}),Le(o)&&Le(u))return[o,u]},QK=$([tx,sn,qK,rx,Ct],lD,{memoizeOptions:{resultEqualityCheck:xh}});function JK(e){var{value:t}=e;if(kr(t)||t instanceof Date)return t}var eX=(e,t,n)=>{var r=e.map(JK).filter(s=>s!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&vk(r))?$C(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},uD=e=>e.referenceElements.dots,Eo=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),tX=$([uD,Ct,bh],Eo),cD=e=>e.referenceElements.areas,nX=$([cD,Ct,bh],Eo),fD=e=>e.referenceElements.lines,rX=$([fD,Ct,bh],Eo),dD=(e,t)=>{if(e!=null){var n=di(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},iX=$(tX,Ct,dD),hD=(e,t)=>{if(e!=null){var n=di(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},aX=$([nX,Ct],hD);function sX(e){var t;if(e.x!=null)return di([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:di(n)}function oX(e){var t;if(e.y!=null)return di([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:di(n)}var mD=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?sX(r):oX(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},lX=$([rX,Ct],mD),uX=$(iX,lX,aX,(e,t,n)=>Rd(e,n,t)),pD=(e,t,n,r,s,o,u,f)=>{if(n!=null)return n;var d=u==="vertical"&&f==="xAxis"||u==="horizontal"&&f==="yAxis",h=d?Rd(r,o,s):Rd(o,s);return F$(t,h,e.allowDataOverflow)},cX=$([sn,sD,oD,WK,QK,uX,ht,Ct],pD,{memoizeOptions:{resultEqualityCheck:xh}}),fX=[0,1],gD=(e,t,n,r,s,o,u)=>{if(!((e==null||n==null||n.length===0)&&u===void 0)){var{dataKey:f,type:d}=e,h=sa(t,o);if(h&&f==null){var m;return $C(0,(m=n?.length)!==null&&m!==void 0?m:0)}return d==="category"?eX(r,e,h):s==="expand"?fX:u}},ix=$([sn,ht,tx,Vu,ph,Ct,cX],gD),jo=$([sn,Y3,_b],$3),yD=(e,t,n)=>{var{niceTicks:r}=t;if(r!=="none"){var s=nx(t),o=Array.isArray(s)&&(s[0]==="auto"||s[1]==="auto");if((r==="snap125"||r==="adaptive")&&t!=null&&t.tickCount&&Er(e)){if(o)return qO(e,t.tickCount,t.allowDecimals,r);if(t.type==="number")return $O(e,t.tickCount,t.allowDecimals,r)}if(r==="auto"&&n==="linear"&&t!=null&&t.tickCount){if(o&&Er(e))return qO(e,t.tickCount,t.allowDecimals,"adaptive");if(t.type==="number"&&Er(e))return $O(e,t.tickCount,t.allowDecimals,"adaptive")}}},ax=$([ix,Bu,jo],yD),vD=(e,t,n,r)=>{if(r!=="angleAxis"&&e?.type==="number"&&Er(t)&&Array.isArray(n)&&n.length>0){var s,o,u=t[0],f=(s=n[0])!==null&&s!==void 0?s:0,d=t[1],h=(o=n[n.length-1])!==null&&o!==void 0?o:0;return[Math.min(u,f),Math.max(d,h)]}return t},dX=$([sn,ix,ax,Ct],vD),hX=$(Vu,sn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(di(e.map(p=>p.value))).sort((p,v)=>p-v),s=r[0],o=r[r.length-1];if(s==null||o==null)return 1/0;var u=o-s;if(u===0)return 1/0;for(var f=0;fs,(e,t,n,r,s)=>{if(!Le(e))return 0;var o=t==="vertical"?r.height:r.width;if(s==="gap")return e*o/2;if(s==="no-gap"){var u=ra(n,e*o),f=e*o/2;return f-u-(f-u)/o*u}return 0}),mX=(e,t,n)=>{var r=gi(e,t);return r==null||typeof r.padding!="string"?0:bD(e,"xAxis",t,n,r.padding)},pX=(e,t,n)=>{var r=yi(e,t);return r==null||typeof r.padding!="string"?0:bD(e,"yAxis",t,n,r.padding)},gX=$(gi,mX,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:s}=e;return typeof s=="string"?{left:t,right:t}:{left:((n=s.left)!==null&&n!==void 0?n:0)+t,right:((r=s.right)!==null&&r!==void 0?r:0)+t}}),yX=$(yi,pX,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:s}=e;return typeof s=="string"?{top:t,bottom:t}:{top:((n=s.top)!==null&&n!==void 0?n:0)+t,bottom:((r=s.bottom)!==null&&r!==void 0?r:0)+t}}),vX=$([Xt,gX,ch,uh,(e,t,n)=>n],(e,t,n,r,s)=>{var{padding:o}=r;return s?[o.left,n.width-o.right]:[e.left+t.left,e.left+e.width-t.right]}),bX=$([Xt,ht,yX,ch,uh,(e,t,n)=>n],(e,t,n,r,s,o)=>{var{padding:u}=s;return o?[r.height-u.bottom,u.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),$u=(e,t,n,r)=>{var s;switch(t){case"xAxis":return vX(e,n,r);case"yAxis":return bX(e,n,r);case"zAxis":return(s=ex(e,n))===null||s===void 0?void 0:s.range;case"angleAxis":return a3(e);case"radiusAxis":return s3(e,n);default:return}},xD=$([sn,$u],gh),xX=$([jo,dX],rF),sx=$([sn,jo,xX,xD],Jb),wD=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:s,scale:o}=n,u=sa(e,r);if(u&&(s==="number"||o!=="auto"))return t.map(f=>f.value)}},ox=$([ht,Vu,Bu,Ct],wD),Mo=$([sx],Mb);$([sx],LK);$([sx,HK],F3);$([Uu,rx,Ct],ZK);function _D(e,t){return e.idt.id?1:0}var jh=(e,t)=>t,Mh=(e,t,n)=>n,wX=$(oh,jh,Mh,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(_D)),_X=$(lh,jh,Mh,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(_D)),SD=(e,t)=>({width:e.width,height:t.height}),SX=(e,t)=>{var n=typeof t.width=="number"?t.width:Mu;return{width:n,height:e.height}},AX=$(Xt,gi,SD),TX=(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}},EX=$(mi,Xt,wX,jh,Mh,(e,t,n,r,s)=>{var o={},u;return n.forEach(f=>{var d=SD(t,f);u==null&&(u=TX(t,r,e));var h=r==="top"&&!s||r==="bottom"&&s;o[f.id]=u-Number(h)*d.height,u+=(h?-1:1)*d.height}),o}),jX=$(hi,Xt,_X,jh,Mh,(e,t,n,r,s)=>{var o={},u;return n.forEach(f=>{var d=SX(t,f);u==null&&(u=OX(t,r,e));var h=r==="left"&&!s||r==="right"&&s;o[f.id]=u-Number(h)*d.width,u+=(h?-1:1)*d.width}),o}),MX=(e,t)=>{var n=gi(e,t);if(n!=null)return EX(e,n.orientation,n.mirror)},NX=$([Xt,gi,MX,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var s=n?.[r];return s==null?{x:e.left,y:0}:{x:e.left,y:s}}}),kX=(e,t)=>{var n=yi(e,t);if(n!=null)return jX(e,n.orientation,n.mirror)},CX=$([Xt,yi,kX,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var s=n?.[r];return s==null?{x:0,y:e.top}:{x:s,y:e.top}}}),DX=$(Xt,yi,(e,t)=>{var n=typeof t.width=="number"?t.width:Mu;return{width:n,height:e.height}}),AD=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:s,type:o,dataKey:u}=n,f=sa(e,r),d=t.map(h=>h.value);if(u&&f&&o==="category"&&s&&vk(d))return d}},lx=$([ht,Vu,sn,Ct],AD),DE=$([ht,UK,jo,Mo,lx,ox,$u,ax,Ct],(e,t,n,r,s,o,u,f,d)=>{if(t!=null){var h=sa(e,d);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:d,categoricalDomain:o,duplicateDomain:s,isCategorical:h,niceTicks:f,range:u,realScaleType:n,scale:r}}}),PX=(e,t,n,r,s,o,u,f,d)=>{if(!(t==null||r==null)){var h=sa(e,d),{type:m,ticks:p,tickCount:v}=t,x=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,w=m==="category"&&r.bandwidth?r.bandwidth()/x:0;w=d==="angleAxis"&&o!=null&&o.length>=2?Wn(o[0]-o[1])*2*w:w;var _=p||s;return _?_.map((S,O)=>{var M=u?u.indexOf(S):S,j=r.map(M);return Le(j)?{index:O,coordinate:j+w,value:S,offset:w}:null}).filter(mn):h&&f?f.map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:S,index:O,offset:w}:null}).filter(mn):r.ticks?r.ticks(v).map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:S,index:O,offset:w}:null}).filter(mn):r.domain().map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:u?u[S]:S,index:O,offset:w}:null}).filter(mn)}},TD=$([ht,Bu,jo,Mo,ax,$u,lx,ox,Ct],PX),RX=(e,t,n,r,s,o,u)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var f=sa(e,u),{tickCount:d}=t,h=0;return h=u==="angleAxis"&&r?.length>=2?Wn(r[0]-r[1])*2*h:h,f&&o?o.map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:m,index:p,offset:h}:null}).filter(mn):n.ticks?n.ticks(d).map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:m,index:p,offset:h}:null}).filter(mn):n.domain().map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:s?s[m]:m,index:p,offset:h}:null}).filter(mn)}},OD=$([ht,Bu,Mo,$u,lx,ox,Ct],RX),ED=$(sn,Mo,(e,t)=>{if(!(e==null||t==null))return Pd(Pd({},e),{},{scale:t})}),LX=$([sn,jo,ix,xD],Jb),zX=$([LX],Mb),IX=$((e,t,n)=>ex(e,n),zX,(e,t)=>{if(!(e==null||t==null))return Pd(Pd({},e),{},{scale:t})}),BX=$([ht,oh,lh],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),UX=(e,t,n)=>{var r;return(r=e.renderedTicks[t])===null||r===void 0?void 0:r[n]};$([UX],e=>{if(!(!e||e.length===0))return t=>{var n,r=1/0,s=e[0];for(var o of e){var u=Math.abs(o.coordinate-t);ue.options.defaultTooltipEventType,MD=e=>e.options.validateTooltipEventTypes;function ND(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function ux(e,t){var n=jD(e),r=MD(e);return ND(t,n,r)}function VX(e){return ve(t=>ux(t,e))}var kD=(e,t)=>{var n,r=Number(t);if(!(oi(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},qX=e=>e.tooltip.settings,Zi={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},$X={itemInteraction:{click:Zi,hover:Zi},axisInteraction:{click:Zi,hover:Zi},keyboardInteraction:Zi,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}},CD=Qt({name:"tooltip",initialState:$X,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:Qe()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).tooltipItemPayloads.indexOf(n);s>-1&&(e.tooltipItemPayloads[s]=r)},prepare:Qe()},removeTooltipEntrySettings:{reducer(e,t){var n=Zn(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:Qe()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,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.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.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.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}}}),{addTooltipEntrySettings:FX,replaceTooltipEntrySettings:HX,removeTooltipEntrySettings:KX,setTooltipSettingsState:XX,setActiveMouseOverItemIndex:DD,mouseLeaveItem:YX,mouseLeaveChart:PD,setActiveClickItemIndex:GX,setMouseOverAxisIndex:RD,setMouseClickAxisIndex:WX,setSyncInteraction:r0,setKeyboardInteraction:Ld}=CD.actions,ZX=CD.reducer;function PE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Ef(e){for(var t=1;t{if(t==null)return Zi;var s=tY(e,t,n);if(s==null)return Zi;if(s.active)return s;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var o=e.settings.active===!0;if(nY(s)){if(o)return Ef(Ef({},s),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Ef(Ef({},Zi),{},{coordinate:s.coordinate})};function rY(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 iY(e,t){var n=rY(e),r=t[0],s=t[1];if(n===void 0)return!1;var o=Math.min(r,s),u=Math.max(r,s);return n>=o&&n<=u}function aY(e,t,n){if(n==null||t==null)return!0;var r=Ot(e,t);return r==null||!Er(n)?!0:iY(r,n)}var cx=(e,t,n,r)=>{var s=e?.index;if(s==null)return null;var o=Number(s);if(!Le(o))return s;var u=0,f=1/0;t.length>0&&(f=t.length-1);var d=Math.max(u,Math.min(o,f)),h=t[d];return h==null||aY(h,n,r)?String(d):null},zD=(e,t,n,r,s,o,u)=>{if(o!=null){var f=u[0],d=f?.getPosition(o);if(d!=null)return d;var h=s?.[Number(o)];if(h)return n==="horizontal"?{x:h.coordinate,y:(r.top+t)/2}:{x:(r.left+e)/2,y:h.coordinate}}},ID=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var s;if(n==="hover"?s=e.itemInteraction.hover.graphicalItemId:s=e.itemInteraction.click.graphicalItemId,e.syncInteraction.active&&s==null)return e.tooltipItemPayloads;if(s==null&&r!=null){var o=e.tooltipItemPayloads[0];return o!=null?[o]:[]}return e.tooltipItemPayloads.filter(u=>{var f;return((f=u.settings)===null||f===void 0?void 0:f.graphicalItemId)===s})},BD=e=>e.options.tooltipPayloadSearcher,No=e=>e.tooltip;function RE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function LE(e){for(var t=1;te(t)}function zE(e){if(typeof e=="string")return e}function dY(e){if(!(e==null||typeof e!="object")){var t="name"in e?uY(e.name):void 0,n="unit"in e?cY(e.unit):void 0,r="dataKey"in e?fY(e.dataKey):void 0,s="payload"in e?e.payload:void 0,o="color"in e?zE(e.color):void 0,u="fill"in e?zE(e.fill):void 0;return{name:t,unit:n,dataKey:r,payload:s,color:o,fill:u}}}function hY(e,t){return e??t}var UD=(e,t,n,r,s,o,u)=>{if(!(t==null||o==null)){var{chartData:f,computedData:d,dataStartIndex:h,dataEndIndex:m}=n,p=[];return e.reduce((v,x)=>{var w,{dataDefinedOnItem:_,settings:S}=x,O=hY(_,f),M=Array.isArray(O)?fC(O,h,m):O,j=(w=S?.dataKey)!==null&&w!==void 0?w:r,N=S?.nameKey,k;if(r&&Array.isArray(M)&&!Array.isArray(M[0])&&u==="axis"?k=bk(M,r,s):k=o(M,t,d,N),Array.isArray(k))k.forEach(L=>{var I,Y,te=dY(L),ie=te?.name,K=te?.dataKey,be=te?.payload,pe=LE(LE({},S),{},{name:ie,unit:te?.unit,color:(I=te?.color)!==null&&I!==void 0?I:S?.color,fill:(Y=te?.fill)!==null&&Y!==void 0?Y:S?.fill});v.push(CT({tooltipEntrySettings:pe,dataKey:K,payload:be,value:Ot(be,K),name:ie==null?void 0:String(ie)}))});else{var C;v.push(CT({tooltipEntrySettings:S,dataKey:j,payload:k,value:Ot(k,j),name:(C=Ot(k,N))!==null&&C!==void 0?C:S?.name}))}return v},p)}},fx=$([jt,Y3,_b],$3),mY=$([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),pY=$([Dt,To],G3),ko=$([mY,jt,pY],Z3,{memoizeOptions:{resultEqualityCheck:wh}}),gY=$([ko],e=>e.filter(jb)),yY=$([ko],eD,{memoizeOptions:{resultEqualityCheck:wh}}),Co=$([yY,oa],tD),vY=$([gY,oa,jt],u3),dx=$([Co,jt,ko],nD),VD=$([jt],nx),bY=$([jt],e=>e.allowDataOverflow),qD=$([VD,bY],FC),xY=$([ko],e=>e.filter(jb)),wY=$([vY,xY,ph,t3],iD),_Y=$([wY,oa,Dt,qD],aD),SY=$([ko],J3),AY=$([Co,jt,SY,rx,Dt],lD,{memoizeOptions:{resultEqualityCheck:xh}}),TY=$([uD,Dt,To],Eo),OY=$([TY,Dt],dD),EY=$([cD,Dt,To],Eo),jY=$([EY,Dt],hD),MY=$([fD,Dt,To],Eo),NY=$([MY,Dt],mD),kY=$([OY,NY,jY],Rd),CY=$([jt,VD,qD,_Y,AY,kY,ht,Dt],pD),Fu=$([jt,ht,Co,dx,ph,Dt,CY],gD),DY=$([Fu,jt,fx],yD),PY=$([jt,Fu,DY,Dt],vD),$D=e=>{var t=Dt(e),n=To(e),r=!1;return $u(e,t,n,r)},FD=$([jt,$D],gh),RY=$([jt,fx,PY,FD],Jb),HD=$([RY],Mb),LY=$([ht,dx,jt,Dt],AD),zY=$([ht,dx,jt,Dt],wD),IY=(e,t,n,r,s,o,u,f)=>{if(t){var{type:d}=t,h=sa(e,f);if(r){var m=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,p=d==="category"&&r.bandwidth?r.bandwidth()/m:0;return p=f==="angleAxis"&&s!=null&&s?.length>=2?Wn(s[0]-s[1])*2*p:p,h&&u?u.map((v,x)=>{var w=r.map(v);return Le(w)?{coordinate:w+p,value:v,index:x,offset:p}:null}).filter(mn):r.domain().map((v,x)=>{var w=r.map(v);return Le(w)?{coordinate:w+p,value:o?o[v]:v,index:x,offset:p}:null}).filter(mn)}}},vi=$([ht,jt,fx,HD,$D,LY,zY,Dt],IY),hx=$([jD,MD,qX],(e,t,n)=>ND(n.shared,e,t)),KD=e=>e.tooltip.settings.trigger,mx=e=>e.tooltip.settings.defaultIndex,Hu=$([No,hx,KD,mx],LD),vu=$([Hu,Co,qu,Fu],cx),XD=$([vi,vu],kD),BY=$([Hu],e=>{if(e)return e.dataKey}),UY=$([Hu],e=>{if(e)return e.graphicalItemId}),YD=$([No,hx,KD,mx],ID),VY=$([hi,mi,ht,Xt,vi,mx,YD],zD),qY=$([Hu,VY],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),$Y=$([Hu],e=>{var t;return(t=e?.active)!==null&&t!==void 0?t:!1}),FY=$([YD,vu,oa,qu,XD,BD,hx],UD);$([FY],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function IE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function BE(e){for(var t=1;tve(jt),GY=()=>{var e=YY(),t=ve(vi),n=ve(HD);return kT(!e||!n?void 0:BE(BE({},e),{},{scale:n}),t)};function UE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Hs(e){for(var t=1;t{var s=t.find(o=>o&&o.index===n);if(s){if(e==="horizontal")return{x:s.coordinate,y:r.relativeY};if(e==="vertical")return{x:r.relativeX,y:s.coordinate}}return{x:0,y:0}},eG=(e,t,n,r)=>{var s=t.find(h=>h&&h.index===n);if(s){if(e==="centric"){var o=s.coordinate,{radius:u}=r;return Hs(Hs(Hs({},r),Kt(r.cx,r.cy,u,o)),{},{angle:o,radius:u})}var f=s.coordinate,{angle:d}=r;return Hs(Hs(Hs({},r),Kt(r.cx,r.cy,f,d)),{},{angle:d,radius:f})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function tG(e,t){var{relativeX:n,relativeY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var GD=(e,t,n,r,s)=>{var o,u=(o=t?.length)!==null&&o!==void 0?o:0;if(u<=1||e==null)return 0;if(r==="angleAxis"&&s!=null&&Math.abs(Math.abs(s[1]-s[0])-360)<=1e-6)for(var f=0;f0?(d=n[f-1])===null||d===void 0?void 0:d.coordinate:(h=n[u-1])===null||h===void 0?void 0:h.coordinate,w=(m=n[f])===null||m===void 0?void 0:m.coordinate,_=f>=u-1?(p=n[0])===null||p===void 0?void 0:p.coordinate:(v=n[f+1])===null||v===void 0?void 0:v.coordinate,S=void 0;if(!(x==null||w==null||_==null))if(Wn(w-x)!==Wn(_-w)){var O=[];if(Wn(_-w)===Wn(s[1]-s[0])){S=_;var M=w+s[1]-s[0];O[0]=Math.min(M,(M+x)/2),O[1]=Math.max(M,(M+x)/2)}else{S=x;var j=_+s[1]-s[0];O[0]=Math.min(w,(j+w)/2),O[1]=Math.max(w,(j+w)/2)}var N=[Math.min(w,(S+w)/2),Math.max(w,(S+w)/2)];if(e>N[0]&&e<=N[1]||e>=O[0]&&e<=O[1]){var k;return(k=n[f])===null||k===void 0?void 0:k.index}}else{var C=Math.min(x,_),L=Math.max(x,_);if(e>(C+w)/2&&e<=(L+w)/2){var I;return(I=n[f])===null||I===void 0?void 0:I.index}}}else if(t)for(var Y=0;Y(te.coordinate+K.coordinate)/2||Y>0&&Y(te.coordinate+K.coordinate)/2&&e<=(te.coordinate+ie.coordinate)/2)return te.index}}return-1},nG=()=>ve(_b),px=(e,t)=>t,WD=(e,t,n)=>n,gx=(e,t,n,r)=>r,rG=$(vi,e=>Zd(e,t=>t.coordinate)),yx=$([No,px,WD,gx],LD),vx=$([yx,Co,qu,Fu],cx),iG=(e,t,n)=>{if(t!=null){var r=No(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},ZD=$([No,px,WD,gx],ID),zd=$([hi,mi,ht,Xt,vi,gx,ZD],zD),aG=$([yx,zd],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),QD=$([vi,vx],kD),sG=$([ZD,vx,oa,qu,QD,BD,px],UD),oG=$([yx,vx],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),lG=(e,t,n,r,s,o,u)=>{if(!(!e||!n||!r||!s)&&tG(e,u)){var f=tV(e,t),d=GD(f,o,s,n,r),h=JY(t,s,d,e);return{activeIndex:String(d),activeCoordinate:h}}},uG=(e,t,n,r,s,o,u)=>{if(!(!e||!r||!s||!o||!n)){var f=D$(e,n);if(f){var d=nV(f,t),h=GD(d,u,o,r,s),m=eG(t,o,h,f);return{activeIndex:String(h),activeCoordinate:m}}}},cG=(e,t,n,r,s,o,u,f)=>{if(!(!e||!t||!r||!s||!o))return t==="horizontal"||t==="vertical"?lG(e,t,r,s,o,u,f):uG(e,t,n,r,s,o,u)},fG=$(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}}),dG=$(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(pn)),n=Array.from(new Set(t));return n.sort((r,s)=>r-s)},{memoizeOptions:{resultEqualityCheck:nF}});function VE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function qE(e){for(var t=1;tqE(qE({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),gG)},vG=new Set(Object.values(pn));function bG(e){return vG.has(e)}var JD=Qt({name:"zIndex",initialState:yG,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:Qe()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!bG(n)&&delete e.zIndexMap[n])},prepare:Qe()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:s}=t.payload;e.zIndexMap[n]?s?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:s?void 0:r,panoramaElement:s?r:void 0}},prepare:Qe()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:Qe()}}}),{registerZIndexPortal:xG,unregisterZIndexPortal:wG,registerZIndexPortalElement:_G,unregisterZIndexPortalElement:SG}=JD.actions,AG=JD.reducer;function ca(e){var{zIndex:t,children:n}=e,r=PV(),s=r&&t!==void 0&&t!==0,o=Jt(),u=it();A.useLayoutEffect(()=>s?(u(xG({zIndex:t})),()=>{u(wG({zIndex:t}))}):_o,[u,t,s]);var f=ve(d=>fG(d,t,o));return s?f?G0.createPortal(n,f):null:n}function i0(){return i0=Object.assign?Object.assign.bind():function(e){for(var t=1;tA.useContext(e5),zy={exports:{}},FE;function CG(){return FE||(FE=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function s(d,h,m){this.fn=d,this.context=h,this.once=m||!1}function o(d,h,m,p,v){if(typeof m!="function")throw new TypeError("The listener must be a function");var x=new s(m,p||d,v),w=n?n+h:h;return d._events[w]?d._events[w].fn?d._events[w]=[d._events[w],x]:d._events[w].push(x):(d._events[w]=x,d._eventsCount++),d}function u(d,h){--d._eventsCount===0?d._events=new r:delete d._events[h]}function f(){this._events=new r,this._eventsCount=0}f.prototype.eventNames=function(){var h=[],m,p;if(this._eventsCount===0)return h;for(p in m=this._events)t.call(m,p)&&h.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?h.concat(Object.getOwnPropertySymbols(m)):h},f.prototype.listeners=function(h){var m=n?n+h:h,p=this._events[m];if(!p)return[];if(p.fn)return[p.fn];for(var v=0,x=p.length,w=new Array(x);v{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!oi(n))return e[n]}},LG={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},t5=Qt({name:"options",initialState:LG,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),zG=t5.reducer,{createEventEmitter:IG}=t5.actions;function BG(e){return e.tooltip.syncInteraction}var UG={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},n5=Qt({name:"chartData",initialState:UG,reducers:{setChartData(e,t){if(e.chartData=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{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:KE,setDataStartEndIndexes:VG,setComputedData:Mne}=n5.actions,qG=n5.reducer,$G=["x","y"];function XE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Ks(e){for(var t=1;td.rootProps.className);A.useEffect(()=>{if(e==null)return _o;var d=(h,m,p)=>{if(t!==p&&e===h){if(r==="index"){var v;if(u&&m!==null&&m!==void 0&&(v=m.payload)!==null&&v!==void 0&&v.coordinate&&m.payload.sourceViewBox){var x=m.payload.coordinate,{x:w,y:_}=x,S=XG(x,$G),{x:O,y:M,width:j,height:N}=m.payload.sourceViewBox,k=Ks(Ks({},S),{},{x:u.x+(j?(w-O)/j:0)*u.width,y:u.y+(N?(_-M)/N:0)*u.height});n(Ks(Ks({},m),{},{payload:Ks(Ks({},m.payload),{},{coordinate:k})}))}else n(m);return}if(s!=null){var C;if(typeof r=="function"){var L={activeTooltipIndex:m.payload.index==null?void 0:Number(m.payload.index),isTooltipActive:m.payload.active,activeIndex:m.payload.index==null?void 0:Number(m.payload.index),activeLabel:m.payload.label,activeDataKey:m.payload.dataKey,activeCoordinate:m.payload.coordinate},I=r(s,L);C=s[I]}else r==="value"&&(C=s.find(V=>String(V.value)===m.payload.label));var{coordinate:Y}=m.payload;if(C==null||m.payload.active===!1||Y==null||u==null){n(r0({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:te,y:ie}=Y,K=Math.min(te,u.x+u.width),be=Math.min(ie,u.y+u.height),pe={x:o==="horizontal"?C.coordinate:K,y:o==="horizontal"?be:C.coordinate},xe=r0({active:m.payload.active,coordinate:pe,dataKey:m.payload.dataKey,index:String(C.index),label:m.payload.label,sourceViewBox:m.payload.sourceViewBox,graphicalItemId:m.payload.graphicalItemId});n(xe)}}};return bu.on(a0,d),()=>{bu.off(a0,d)}},[f,n,t,e,r,s,o,u])}function WG(){var e=ve(Sb),t=ve(Ab),n=it();A.useEffect(()=>{if(e==null)return _o;var r=(s,o,u)=>{t!==u&&e===s&&n(VG(o))};return bu.on(HE,r),()=>{bu.off(HE,r)}},[n,t,e])}function ZG(){var e=it();A.useEffect(()=>{e(IG())},[e]),GG(),WG()}function QG(e,t,n,r,s,o){var u=ve(w=>iG(w,e,t)),f=ve(UY),d=ve(Ab),h=ve(Sb),m=ve(n3),p=ve(BG),v=p?.active,x=Nu();A.useEffect(()=>{if(!v&&h!=null&&d!=null){var w=r0({active:o,coordinate:n,dataKey:u,index:s,label:typeof r=="number"?String(r):r,sourceViewBox:x,graphicalItemId:f});bu.emit(a0,h,w,d)}},[v,n,u,f,s,r,d,h,m,o,x])}function YE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function GE(e){for(var t=1;t{L(XX({shared:M,trigger:j,axisId:C,active:s,defaultIndex:I}))},[L,M,j,C,s,I]);var Y=Nu(),te=PC(),ie=VX(M),{activeIndex:K,isActive:be}=(t=ve(_e=>oG(_e,ie,j,I)))!==null&&t!==void 0?t:{},pe=ve(_e=>sG(_e,ie,j,I)),xe=ve(_e=>QD(_e,ie,j,I)),V=ve(_e=>aG(_e,ie,j,I)),Q=pe,ne=kG(),le=(n=s??be)!==null&&n!==void 0?n:!1,[ue,P]=$7([Q,le]),H=ie==="axis"?xe:void 0;QG(ie,j,V,H,K,le);var ae=k??ne;if(ae==null||Y==null||ie==null)return null;var se=Q??WE;le||(se=WE),h&&se.length&&(se=p7(se.filter(_e=>_e.value!=null&&(_e.hide!==!0||r.includeHidden)),v,nW));var Z=se.length>0,oe=GE(GE({},r),{},{payload:se,label:H,active:le,activeIndex:K,coordinate:V,accessibilityLayer:te}),he=A.createElement(Dq,{allowEscapeViewBox:o,animationDuration:u,animationEasing:f,isAnimationActive:m,active:le,coordinate:V,hasPayload:Z,offset:p,position:x,reverseDirection:w,useTranslate3d:_,viewBox:Y,wrapperStyle:S,lastBoundingBox:ue,innerRef:P,hasPortalFromProps:!!k},rW(d,oe));return A.createElement(A.Fragment,null,G0.createPortal(he,ae),le&&A.createElement(NG,{cursor:O,tooltipEventType:ie,coordinate:V,payload:se,index:K}))}var bx=e=>null;bx.displayName="Cell";function sW(e,t,n){return(t=oW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oW(e){var t=lW(e,"string");return typeof t=="symbol"?t:t+""}function lW(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class uW{constructor(t){sW(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function ZE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function cW(e){for(var t=1;t{try{var n=document.getElementById(JE);n||(n=document.createElement("span"),n.setAttribute("id",JE),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,pW,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},Zl=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Pu.isSsr)return{width:0,height:0};if(!r5.enableCache)return ej(t,n);var r=gW(t,n),s=QE.get(r);if(s)return s;var o=ej(t,n);return QE.set(r,o),o},i5;function yW(e,t,n){return(t=vW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vW(e){var t=bW(e,"string");return typeof t=="symbol"?t:t+""}function bW(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var tj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,nj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,xW=/^(px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q)$/,wW=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,_W={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},SW=["cm","mm","pt","pc","in","Q","px"];function AW(e){return SW.includes(e)}var io="NaN";function TW(e,t){return e*_W[t]}class Ht{static parse(t){var n,[,r,s]=(n=wW.exec(t))!==null&&n!==void 0?n:[];return r==null?Ht.NaN:new Ht(parseFloat(r),s??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,oi(t)&&(this.unit=""),n!==""&&!xW.test(n)&&(this.num=NaN,this.unit=""),AW(n)&&(this.num=TW(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return oi(this.num)}}i5=Ht;yW(Ht,"NaN",new i5(NaN,""));function a5(e){if(e==null||e.includes(io))return io;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,s,o]=(n=tj.exec(t))!==null&&n!==void 0?n:[],u=Ht.parse(r??""),f=Ht.parse(o??""),d=s==="*"?u.multiply(f):u.divide(f);if(d.isNaN())return io;t=t.replace(tj,d.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var h,[,m,p,v]=(h=nj.exec(t))!==null&&h!==void 0?h:[],x=Ht.parse(m??""),w=Ht.parse(v??""),_=p==="+"?x.add(w):x.subtract(w);if(_.isNaN())return io;t=t.replace(nj,_.toString())}return t}var rj=/\(([^()]*)\)/;function OW(e){for(var t=e,n;(n=rj.exec(t))!=null;){var[,r]=n;t=t.replace(rj,a5(r))}return t}function EW(e){var t=e.replace(/\s+/g,"");return t=OW(t),t=a5(t),t}function jW(e){try{return EW(e)}catch{return io}}function Iy(e){var t=jW(e.slice(5,-1));return t===io?"":t}var MW=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],NW=["dx","dy","angle","className","breakAll"];function s0(){return s0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var s=[];dt(t)||(n?s=t.toString().split(""):s=t.toString().split(s5));var o=s.map(f=>({word:f,width:Zl(f,r).width})),u=n?0:Zl(" ",r).width;return{wordsWithComputedWidth:o,spaceWidth:u}}catch{return null}};function l5(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}function CW(e){return dt(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}var u5=(e,t,n,r)=>e.reduce((s,o)=>{var{word:u,width:f}=o,d=s[s.length-1];if(d&&f!=null&&(t==null||r||d.width+f+ne.reduce((t,n)=>t.width>n.width?t:n),DW="…",aj=(e,t,n,r,s,o,u,f)=>{var d=e.slice(0,t),h=o5({breakAll:n,style:r,children:d+DW});if(!h)return[!1,[]];var m=u5(h.wordsWithComputedWidth,o,u,f),p=m.length>s||c5(m).width>Number(o);return[p,m]},PW=(e,t,n,r,s)=>{var{maxLines:o,children:u,style:f,breakAll:d}=e,h=ye(o),m=String(u),p=u5(t,r,n,s);if(!h||s)return p;var v=p.length>o||c5(p).width>Number(r);if(!v)return p;for(var x=0,w=m.length-1,_=0,S;x<=w&&_<=m.length-1;){var O=Math.floor((x+w)/2),M=O-1,[j,N]=aj(m,M,d,f,o,r,n,s),[k]=aj(m,O,d,f,o,r,n,s);if(!j&&!k&&(x=O+1),j&&k&&(w=O-1),!j&&k){S=N;break}_++}return S||p},sj=e=>{var t=dt(e)?[]:e.toString().split(s5);return[{words:t,width:void 0}]},RW=e=>{var{width:t,scaleToFit:n,children:r,style:s,breakAll:o,maxLines:u}=e;if((t||n)&&!Pu.isSsr){var f,d,h=o5({breakAll:o,children:r,style:s});if(h){var{wordsWithComputedWidth:m,spaceWidth:p}=h;f=m,d=p}else return sj(r);return PW({breakAll:o,children:r,maxLines:u,style:s},f,d,t,!!n)}return sj(r)},f5="#808080",LW={angle:0,breakAll:!1,capHeight:"0.71em",fill:f5,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},xx=A.forwardRef((e,t)=>{var n=vn(e,LW),{x:r,y:s,lineHeight:o,capHeight:u,fill:f,scaleToFit:d,textAnchor:h,verticalAnchor:m}=n,p=ij(n,MW),v=A.useMemo(()=>RW({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:d,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,d,p.style,p.width]),{dx:x,dy:w,angle:_,className:S,breakAll:O}=p,M=ij(p,NW);if(!kr(r)||!kr(s)||v.length===0)return null;var j=Number(r)+(ye(x)?x:0),N=Number(s)+(ye(w)?w:0);if(!Le(j)||!Le(N))return null;var k;switch(m){case"start":k=Iy("calc(".concat(u,")"));break;case"middle":k=Iy("calc(".concat((v.length-1)/2," * -").concat(o," + (").concat(u," / 2))"));break;default:k=Iy("calc(".concat(v.length-1," * -").concat(o,")"));break}var C=[],L=v[0];if(d&&L!=null){var I=L.width,{width:Y}=p;C.push("scale(".concat(ye(Y)&&ye(I)?Y/I:1,")"))}return _&&C.push("rotate(".concat(_,", ").concat(j,", ").concat(N,")")),C.length&&(M.transform=C.join(" ")),A.createElement("text",s0({},er(M),{ref:t,x:j,y:N,className:et("recharts-text",S),textAnchor:h,fill:f.includes("url")?f5:f}),v.map((te,ie)=>{var K=te.words.join(O?"":" ");return A.createElement("tspan",{x:j,dy:ie===0?k:o,key:"".concat(K,"-").concat(ie)},K)}))});xx.displayName="Text";function oj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function _r(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:s}=e,{x:o,y:u,height:f,upperWidth:d,lowerWidth:h}=db(t),m=o,p=o+(d-h)/2,v=(m+p)/2,x=(d+h)/2,w=m+d/2,_=f>=0?1:-1,S=_*r,O=_>0?"end":"start",M=_>0?"start":"end",j=d>=0?1:-1,N=j*r,k=j>0?"end":"start",C=j>0?"start":"end",L=s;if(n==="top"){var I={x:m+d/2,y:u-S,horizontalAnchor:"middle",verticalAnchor:O};return L&&(I.height=Math.max(u-L.y,0),I.width=d),I}if(n==="bottom"){var Y={x:p+h/2,y:u+f+S,horizontalAnchor:"middle",verticalAnchor:M};return L&&(Y.height=Math.max(L.y+L.height-(u+f),0),Y.width=h),Y}if(n==="left"){var te={x:v-N,y:u+f/2,horizontalAnchor:k,verticalAnchor:"middle"};return L&&(te.width=Math.max(te.x-L.x,0),te.height=f),te}if(n==="right"){var ie={x:v+x+N,y:u+f/2,horizontalAnchor:C,verticalAnchor:"middle"};return L&&(ie.width=Math.max(L.x+L.width-ie.x,0),ie.height=f),ie}var K=L?{width:x,height:f}:{};return n==="insideLeft"?_r({x:v+N,y:u+f/2,horizontalAnchor:C,verticalAnchor:"middle"},K):n==="insideRight"?_r({x:v+x-N,y:u+f/2,horizontalAnchor:k,verticalAnchor:"middle"},K):n==="insideTop"?_r({x:m+d/2,y:u+S,horizontalAnchor:"middle",verticalAnchor:M},K):n==="insideBottom"?_r({x:p+h/2,y:u+f-S,horizontalAnchor:"middle",verticalAnchor:O},K):n==="insideTopLeft"?_r({x:m+N,y:u+S,horizontalAnchor:C,verticalAnchor:M},K):n==="insideTopRight"?_r({x:m+d-N,y:u+S,horizontalAnchor:k,verticalAnchor:M},K):n==="insideBottomLeft"?_r({x:p+N,y:u+f-S,horizontalAnchor:C,verticalAnchor:O},K):n==="insideBottomRight"?_r({x:p+h-N,y:u+f-S,horizontalAnchor:k,verticalAnchor:O},K):n&&typeof n=="object"&&(ye(n.x)||Ga(n.x))&&(ye(n.y)||Ga(n.y))?_r({x:o+ra(n.x,x),y:u+ra(n.y,f),horizontalAnchor:"end",verticalAnchor:"end"},K):_r({x:w,y:u+f/2,horizontalAnchor:"middle",verticalAnchor:"middle"},K)},VW=["labelRef"],qW=["content"];function lj(e,t){if(e==null)return{};var n,r,s=$W(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:s,width:o,height:u,children:f}=e,d=A.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:s,width:o,height:u}),[t,n,r,s,o,u]);return A.createElement(d5.Provider,{value:d},f)},h5=()=>{var e=A.useContext(d5),t=Nu();return e||(t?db(t):void 0)},YW=A.createContext(null),GW=()=>{var e=A.useContext(YW),t=ve(o3);return e||t},WW=e=>{var{value:t,formatter:n}=e,r=dt(e.children)?t:e.children;return typeof n=="function"?n(r):r},wx=e=>e!=null&&typeof e=="function",ZW=(e,t)=>{var n=Wn(t-e),r=Math.min(Math.abs(t-e),360);return n*r},QW=(e,t,n,r,s)=>{var{offset:o,className:u}=e,{cx:f,cy:d,innerRadius:h,outerRadius:m,startAngle:p,endAngle:v,clockWise:x}=s,w=(h+m)/2,_=ZW(p,v),S=_>=0?1:-1,O,M;switch(t){case"insideStart":O=p+S*o,M=x;break;case"insideEnd":O=v-S*o,M=!x;break;case"end":O=v+S*o,M=x;break;default:throw new Error("Unsupported position ".concat(t))}M=_<=0?M:!M;var j=Kt(f,d,w,O),N=Kt(f,d,w,O+(M?1:-1)*359),k="M".concat(j.x,",").concat(j.y,` A`).concat(w,",").concat(w,",0,1,").concat(M?0:1,`, - `).concat(k.x,",").concat(k.y),C=dt(e.id)?au("recharts-radial-line-"):e.id;return A.createElement("text",ei({},r,{dominantBaseline:"central",className:et("recharts-radial-bar-label",u)}),A.createElement("defs",null,A.createElement("path",{id:C,d:N})),A.createElement("textPath",{xlinkHref:"#".concat(C)},n))},JW=(e,t,n)=>{var{cx:r,cy:s,innerRadius:o,outerRadius:u,startAngle:f,endAngle:d}=e,h=(f+d)/2;if(n==="outside"){var{x:m,y:p}=Kt(r,s,u+t,h);return{x:m,y:p,textAnchor:m>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"end"};var v=(o+u)/2,{x,y:w}=Kt(r,s,v,h);return{x,y:w,textAnchor:"middle",verticalAnchor:"middle"}},qf=e=>e!=null&&"cx"in e&&ye(e.cx),eZ={angle:0,offset:5,zIndex:pn.label,position:"middle",textBreakAll:!1};function tZ(e){if(!qf(e))return e;var{cx:t,cy:n,outerRadius:r}=e,s=r*2;return{x:t-r,y:n-r,width:s,upperWidth:s,lowerWidth:s,height:s}}function Wi(e){var t=vn(e,eZ),{viewBox:n,parentViewBox:r,position:s,value:o,children:u,content:f,className:d="",textBreakAll:h,labelRef:m}=t,p=GW(),v=d5(),x=s==="center"?v:p??v,w,_,S;n==null?w=x:qf(n)?w=n:w=db(n);var O=tZ(w);if(!w||dt(o)&&dt(u)&&!A.isValidElement(f)&&typeof f!="function")return null;var M=Kl(Kl({},t),{},{viewBox:w});if(A.isValidElement(f)){var{labelRef:j}=M,k=lj(M,VW);return A.cloneElement(f,k)}if(typeof f=="function"){var{content:N}=M,C=lj(M,qW);if(_=A.createElement(f,C),A.isValidElement(_))return _}else _=WW(t);var L=er(t);if(qf(w)){if(s==="insideStart"||s==="insideEnd"||s==="end")return QW(t,s,_,L,w);S=JW(w,t.offset,t.position)}else{if(!O)return null;var I=UW({viewBox:O,position:s,offset:t.offset,parentViewBox:qf(r)?void 0:r});S=Kl(Kl({x:I.x,y:I.y,textAnchor:I.horizontalAnchor,verticalAnchor:I.verticalAnchor},I.width!==void 0?{width:I.width}:{}),I.height!==void 0?{height:I.height}:{})}return A.createElement(ca,{zIndex:t.zIndex},A.createElement(xx,ei({ref:m,className:et("recharts-label",d)},L,S,{textAnchor:o5(L.textAnchor)?L.textAnchor:S.textAnchor,breakAll:h}),_))}Wi.displayName="Label";var nZ=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?A.createElement(Wi,ei({key:"label-implicit"},r)):Nr(e)?A.createElement(Wi,ei({key:"label-implicit",value:e},r)):A.isValidElement(e)?e.type===Wi?A.cloneElement(e,Kl({key:"label-implicit"},r)):A.createElement(Wi,ei({key:"label-implicit",content:e},r)):wx(e)?A.createElement(Wi,ei({key:"label-implicit",content:e},r)):e&&typeof e=="object"?A.createElement(Wi,ei({},e,{key:"label-implicit"},r)):null};function rZ(e){var{label:t,labelRef:n}=e,r=d5();return nZ(t,r,n)||null}var iZ=["valueAccessor"],aZ=["dataKey","clockWise","id","textBreakAll","zIndex"];function Id(){return Id=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(CW(t))return t},h5=A.createContext(void 0),lZ=h5.Provider,m5=A.createContext(void 0);m5.Provider;function uZ(){return A.useContext(h5)}function cZ(){return A.useContext(m5)}function $f(e){var{valueAccessor:t=oZ}=e,n=cj(e,iZ),{dataKey:r,clockWise:s,id:o,textBreakAll:u,zIndex:f}=n,d=cj(n,aZ),h=uZ(),m=cZ(),p=h||m;return!p||!p.length?null:A.createElement(ca,{zIndex:f??pn.label},A.createElement(hr,{className:"recharts-label-list"},p.map((v,x)=>{var w,_=dt(r)?t(v,x):Ot(v.payload,r),S=dt(o)?{}:{id:"".concat(o,"-").concat(x)};return A.createElement(Wi,Id({key:"label-".concat(x)},er(v),d,S,{fill:(w=n.fill)!==null&&w!==void 0?w:v.fill,parentViewBox:v.parentViewBox,value:_,textBreakAll:u,viewBox:v.viewBox,index:x,zIndex:0}))})))}$f.displayName="LabelList";function fZ(e){var{label:t}=e;return t?t===!0?A.createElement($f,{key:"labelList-implicit"}):A.isValidElement(t)||wx(t)?A.createElement($f,{key:"labelList-implicit",content:t}):typeof t=="object"?A.createElement($f,Id({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}var dZ={radiusAxis:{},angleAxis:{}},p5=Qt({name:"polarAxis",initialState:dZ,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:kne,removeRadiusAxis:Nne,addAngleAxis:Cne,removeAngleAxis:Dne}=p5.actions,hZ=p5.reducer;function mZ(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var By={exports:{}},He={};var fj;function pZ(){if(fj)return He;fj=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),v=Symbol.for("react.view_transition"),x=Symbol.for("react.client.reference");function w(_){if(typeof _=="object"&&_!==null){var S=_.$$typeof;switch(S){case e:switch(_=_.type,_){case n:case s:case r:case d:case h:case v:return _;default:switch(_=_&&_.$$typeof,_){case u:case f:case p:case m:return _;case o:return _;default:return S}}case t:return S}}}return He.ContextConsumer=o,He.ContextProvider=u,He.Element=e,He.ForwardRef=f,He.Fragment=n,He.Lazy=p,He.Memo=m,He.Portal=t,He.Profiler=s,He.StrictMode=r,He.Suspense=d,He.SuspenseList=h,He.isContextConsumer=function(_){return w(_)===o},He.isContextProvider=function(_){return w(_)===u},He.isElement=function(_){return typeof _=="object"&&_!==null&&_.$$typeof===e},He.isForwardRef=function(_){return w(_)===f},He.isFragment=function(_){return w(_)===n},He.isLazy=function(_){return w(_)===p},He.isMemo=function(_){return w(_)===m},He.isPortal=function(_){return w(_)===t},He.isProfiler=function(_){return w(_)===s},He.isStrictMode=function(_){return w(_)===r},He.isSuspense=function(_){return w(_)===d},He.isSuspenseList=function(_){return w(_)===h},He.isValidElementType=function(_){return typeof _=="string"||typeof _=="function"||_===n||_===s||_===r||_===d||_===h||typeof _=="object"&&_!==null&&(_.$$typeof===p||_.$$typeof===m||_.$$typeof===u||_.$$typeof===o||_.$$typeof===f||_.$$typeof===x||_.getModuleId!==void 0)},He.typeOf=w,He}var dj;function gZ(){return dj||(dj=1,By.exports=pZ()),By.exports}var yZ=gZ(),hj=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",mj=null,Uy=null,g5=e=>{if(e===mj&&Array.isArray(Uy))return Uy;var t=[];return A.Children.forEach(e,n=>{dt(n)||(yZ.isFragment(n)?t=t.concat(g5(n.props.children)):t.push(n))}),Uy=t,mj=e,t};function vZ(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(s=>hj(s)):r=[hj(t)],g5(e).forEach(s=>{var o=co(s,"type.displayName")||co(s,"type.name");o&&r.indexOf(o)!==-1&&n.push(s)}),n}var Vy={},pj;function bZ(){return pj||(pj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const s=n[Symbol.toStringTag];return s==null||!Object.getOwnPropertyDescriptor(n,Symbol.toStringTag)?.writable?!1:n.toString()===`[object ${s}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(Vy)),Vy}var qy,gj;function xZ(){return gj||(gj=1,qy=bZ().isPlainObject),qy}var wZ=xZ();const _Z=ia(wZ);var yj,vj,bj,xj,wj;function _j(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sj(e){for(var t=1;t{var o=n-r,u;return u=ut(yj||(yj=zl(["M ",",",""])),e,t),u+=ut(vj||(vj=zl(["L ",",",""])),e+n,t),u+=ut(bj||(bj=zl(["L ",",",""])),e+n-o/2,t+s),u+=ut(xj||(xj=zl(["L ",",",""])),e+n-o/2-r,t+s),u+=ut(wj||(wj=zl(["L ",","," Z"])),e,t),u},OZ={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},EZ=e=>{var t=vn(e,OZ),{x:n,y:r,upperWidth:s,lowerWidth:o,height:u,className:f}=t,{animationEasing:d,animationDuration:h,animationBegin:m,isUpdateAnimationActive:p}=t,v=A.useRef(null),[x,w]=A.useState(-1),_=A.useRef(s),S=A.useRef(o),O=A.useRef(u),M=A.useRef(n),j=A.useRef(r),k=yb(e,"trapezoid-");if(A.useEffect(()=>{if(v.current&&v.current.getTotalLength)try{var pe=v.current.getTotalLength();pe&&w(pe)}catch{}},[]),n!==+n||r!==+r||s!==+s||o!==+o||u!==+u||s===0&&o===0||u===0)return null;var N=et("recharts-trapezoid",f);if(!p)return A.createElement("g",null,A.createElement("path",Bd({},er(t),{className:N,d:Aj(n,r,s,o,u)})));var C=_.current,L=S.current,I=O.current,Y=M.current,te=j.current,ie="0px ".concat(x===-1?1:x,"px"),K="".concat(x,"px ").concat(x,"px"),be=PC(["strokeDasharray"],h,d);return A.createElement(gb,{animationId:k,key:k,canBegin:x>0,duration:h,easing:d,isActive:p,begin:m},pe=>{var xe=kn(C,s,pe),V=kn(L,o,pe),Q=kn(I,u,pe),ne=kn(Y,n,pe),le=kn(te,r,pe);v.current&&(_.current=xe,S.current=V,O.current=Q,M.current=ne,j.current=le);var ue=pe>0?{transition:be,strokeDasharray:K}:{strokeDasharray:ie};return A.createElement("path",Bd({},er(t),{className:N,d:Aj(ne,le,xe,V,Q),ref:v,style:Sj(Sj({},ue),t.style)}))})},jZ=["option","shapeType","activeClassName","inActiveClassName"];function MZ(e,t){if(e==null)return{};var n,r,s=kZ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var r=it();return(s,o)=>u=>{e?.(s,o,u),r(CD({activeIndex:String(o),activeDataKey:t,activeCoordinate:s.tooltipPosition,activeGraphicalItemId:n}))}},IZ=e=>{var t=it();return(n,r)=>s=>{e?.(n,r,s),t(YX())}},BZ=(e,t,n)=>{var r=it();return(s,o)=>u=>{e?.(s,o,u),r(GX({activeIndex:String(o),activeDataKey:t,activeCoordinate:s.tooltipPosition,activeGraphicalItemId:n}))}};function UZ(e){var{tooltipEntrySettings:t}=e,n=it(),r=Jt(),s=A.useRef(null);return A.useLayoutEffect(()=>{r||(s.current===null?n(FX(t)):s.current!==t&&n(HX({prev:s.current,next:t})),s.current=t)},[t,n,r]),A.useLayoutEffect(()=>()=>{s.current&&(n(KX(s.current)),s.current=null)},[n]),null}function VZ(e){var{legendPayload:t}=e,n=it(),r=Jt(),s=A.useRef(null);return A.useLayoutEffect(()=>{r||(s.current===null?n(XV(t)):s.current!==t&&n(YV({prev:s.current,next:t})),s.current=t)},[n,r,t]),A.useLayoutEffect(()=>()=>{s.current&&(n(GV(s.current)),s.current=null)},[n]),null}var $y,qZ=()=>{var[e]=A.useState(()=>au("uid-"));return e},$Z=($y=TR.useId)!==null&&$y!==void 0?$y:qZ;function FZ(e,t){var n=$Z();return t||(e?"".concat(e,"-").concat(n):n)}var HZ=A.createContext(void 0),KZ=e=>{var{id:t,type:n,children:r}=e,s=FZ("recharts-".concat(n),t);return A.createElement(HZ.Provider,{value:s},r(s))},XZ={cartesianItems:[],polarItems:[]},y5=Qt({name:"graphicalItems",initialState:XZ,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:Qe()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).cartesianItems.indexOf(n);s>-1&&(e.cartesianItems[s]=r)},prepare:Qe()},removeCartesianGraphicalItem:{reducer(e,t){var n=Zn(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:Qe()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:Qe()},removePolarGraphicalItem:{reducer(e,t){var n=Zn(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:Qe()},replacePolarGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).polarItems.indexOf(n);s>-1&&(e.polarItems[s]=r)},prepare:Qe()}}}),{addCartesianGraphicalItem:YZ,replaceCartesianGraphicalItem:GZ,removeCartesianGraphicalItem:WZ,addPolarGraphicalItem:Pne,removePolarGraphicalItem:Rne,replacePolarGraphicalItem:Lne}=y5.actions,ZZ=y5.reducer,QZ=e=>{var t=it(),n=A.useRef(null);return A.useLayoutEffect(()=>{n.current===null?t(YZ(e)):n.current!==e&&t(GZ({prev:n.current,next:e})),n.current=e},[t,e]),A.useLayoutEffect(()=>()=>{n.current&&(t(WZ(n.current)),n.current=null)},[t]),null},JZ=A.memo(QZ);function jj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Mj(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),hQ=$([dQ,hi,mi],(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)}}),mQ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:v5,n=Jt(),r=ve(s=>Mo(s,"xAxis",t,n));return r?.map},pQ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:v5,n=Jt(),r=ve(s=>Mo(s,"yAxis",t,n));return r?.map},x5=()=>ve(hQ),gQ=e=>{var{chartData:t}=e,n=it(),r=Jt();return A.useEffect(()=>r?()=>{}:(n(KE(t)),()=>{n(KE(void 0))}),[t,n,r]),null},kj={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},w5=Qt({name:"brush",initialState:kj,reducers:{setBrushSettings(e,t){return t.payload==null?kj:t.payload}}}),{setBrushSettings:Une}=w5.actions,yQ=w5.reducer;function vQ(e){return(e%180+180)%180}var bQ=function(t){var{width:n,height:r}=t,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=vQ(s),u=o*Math.PI/180,f=Math.atan(r/n),d=u>f&&u{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=Zn(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=Zn(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=Zn(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:Vne,removeDot:qne,addArea:$ne,removeArea:Fne,addLine:Hne,removeLine:Kne}=_5.actions,wQ=_5.reducer,_Q=A.createContext(void 0),SQ=e=>{var{children:t}=e,[n]=A.useState("".concat(au("recharts"),"-clip")),r=x5();if(r==null)return null;var{x:s,y:o,width:u,height:f}=r;return A.createElement(_Q.Provider,{value:n},A.createElement("defs",null,A.createElement("clipPath",{id:n},A.createElement("rect",{x:s,y:o,height:f,width:u}))),t)};function S5(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*s)return!1;var o=n();return e*(t-e*o/2-r)>=0&&e*(t+e*o/2-s)<=0}function OQ(e,t){return S5(e,t+1)}function EQ(e,t,n,r,s){for(var o=(r||[]).slice(),{start:u,end:f}=t,d=0,h=1,m=u,p=function(){var w=r?.[d];if(w===void 0)return{v:S5(r,h)};var _=d,S,O=()=>(S===void 0&&(S=n(w,_)),S),M=w.coordinate,j=d===0||xu(e,M,O,m,f);j||(d=0,m=u,h+=1),j&&(m=M+e*(O()/2+s),d+=h)},v;h<=o.length;)if(v=p(),v)return v.v;return[]}function jQ(e,t,n,r,s){var o=(r||[]).slice(),u=o.length;if(u===0)return[];for(var{start:f,end:d}=t,h=1;h<=u;h++){for(var m=(u-1)%h,p=f,v=!0,x=function(){var k=r[_];if(k==null)return 0;var N=_,C,L=()=>(C===void 0&&(C=n(k,N)),C),I=k.coordinate,Y=_===m||xu(e,I,L,p,d);if(!Y)return v=!1,1;Y&&(p=I+e*(L()/2+s))},w,_=m;_(_===void 0&&(_=n(x,v)),_);if(v===u-1){var O=e*(w.coordinate+e*S()/2-d);o[v]=w=Gt(Gt({},w),{},{tickCoord:O>0?w.coordinate-O*e:w.coordinate})}else o[v]=w=Gt(Gt({},w),{},{tickCoord:w.coordinate});if(w.tickCoord!=null){var M=xu(e,w.tickCoord,S,f,d);M&&(d=w.tickCoord-e*(S()/2+s),o[v]=Gt(Gt({},w),{},{isShow:!0}))}},m=u-1;m>=0;m--)h(m);return o}function DQ(e,t,n,r,s,o){var u=(r||[]).slice(),f=u.length,{start:d,end:h}=t;if(o){var m=r[f-1];if(m!=null){var p=n(m,f-1),v=e*(m.coordinate+e*p/2-h);if(u[f-1]=m=Gt(Gt({},m),{},{tickCoord:v>0?m.coordinate-v*e:m.coordinate}),m.tickCoord!=null){var x=xu(e,m.tickCoord,()=>p,d,h);x&&(h=m.tickCoord-e*(p/2+s),u[f-1]=Gt(Gt({},m),{},{isShow:!0}))}}}for(var w=o?f-1:f,_=function(M){var j=u[M];if(j==null)return 1;var k=j,N,C=()=>(N===void 0&&(N=n(j,M)),N);if(M===0){var L=e*(k.coordinate-e*C()/2-d);u[M]=k=Gt(Gt({},k),{},{tickCoord:L<0?k.coordinate-L*e:k.coordinate})}else u[M]=k=Gt(Gt({},k),{},{tickCoord:k.coordinate});if(k.tickCoord!=null){var I=xu(e,k.tickCoord,C,d,h);I&&(d=k.tickCoord+e*(C()/2+s),u[M]=Gt(Gt({},k),{},{isShow:!0}))}},S=0;S{var L=typeof h=="function"?h(N.value,C):N.value;return w==="width"?AQ(Zl(L,{fontSize:t,letterSpacing:n}),_,p):Zl(L,{fontSize:t,letterSpacing:n})[w]},O=s[0],M=s[1],j=s.length>=2&&O!=null&&M!=null?Wn(M.coordinate-O.coordinate):1,k=TQ(o,j,w);return d==="equidistantPreserveStart"?EQ(j,k,S,s,u):d==="equidistantPreserveEnd"?jQ(j,k,S,s,u):(d==="preserveStart"||d==="preserveStartEnd"?x=DQ(j,k,S,s,u,d==="preserveStartEnd"):x=CQ(j,k,S,s,u),x.filter(N=>N.isShow))}var PQ=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:s=0,tickMargin:o=0}=e,u=0;if(t){Array.from(t).forEach(m=>{if(m){var p=m.getBoundingClientRect();p.width>u&&(u=p.width)}});var f=n?n.getBoundingClientRect().width:0,d=s+o,h=u+d+f+(n?r:0);return Math.round(h)}return 0},RQ={xAxis:{},yAxis:{}},A5=Qt({name:"renderedTicks",initialState:RQ,reducers:{setRenderedTicks:(e,t)=>{var{axisType:n,axisId:r,ticks:s}=t.payload;e[n][r]=s},removeRenderedTicks:(e,t)=>{var{axisType:n,axisId:r}=t.payload;delete e[n][r]}}}),{setRenderedTicks:LQ,removeRenderedTicks:zQ}=A5.actions,IQ=A5.reducer,BQ=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function UQ(e,t){if(e==null)return{};var n,r,s=VQ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(r==null||n==null)return _o;var o=t.map(u=>({value:u.value,coordinate:u.coordinate,offset:u.offset,index:u.index}));return s(LQ({ticks:o,axisId:r,axisType:n})),()=>{s(zQ({axisId:r,axisType:n}))}},[s,t,r,n]),null}var ZQ=A.forwardRef((e,t)=>{var{ticks:n=[],tick:r,tickLine:s,stroke:o,tickFormatter:u,unit:f,padding:d,tickTextProps:h,orientation:m,mirror:p,x:v,y:x,width:w,height:_,tickSize:S,tickMargin:O,fontSize:M,letterSpacing:j,getTicksConfig:k,events:N,axisType:C,axisId:L}=e,I=_x(ot(ot({},k),{},{ticks:n}),M,j),Y=kr(k),te=Y0(r),ie=o5(Y.textAnchor)?Y.textAnchor:XQ(m,p),K=YQ(m,p),be={};typeof s=="object"&&(be=s);var pe=ot(ot({},Y),{},{fill:"none"},be),xe=I.map(ne=>ot({entry:ne},KQ(ne,v,x,w,_,m,S,p,O))),V=xe.map(ne=>{var{entry:le,line:ue}=ne;return A.createElement(hr,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(le.value,"-").concat(le.coordinate,"-").concat(le.tickCoord)},s&&A.createElement("line",es({},pe,ue,{className:et("recharts-cartesian-axis-tick-line",co(s,"className"))})))}),Q=xe.map((ne,le)=>{var ue,P,{entry:H,tick:ae}=ne,se=ot(ot(ot(ot({verticalAnchor:K},Y),{},{textAnchor:ie,stroke:"none",fill:o},ae),{},{index:le,payload:H,visibleTicksCount:I.length,tickFormatter:u,padding:d},h),{},{angle:(ue=(P=h?.angle)!==null&&P!==void 0?P:Y.angle)!==null&&ue!==void 0?ue:0}),Z=ot(ot({},se),te);return A.createElement(hr,es({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(H.value,"-").concat(H.coordinate,"-").concat(H.tickCoord)},wN(N,H,le)),r&&A.createElement(GQ,{option:r,tickProps:Z,value:"".concat(typeof u=="function"?u(H.value,le):H.value).concat(f||"")}))});return A.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(C,"-ticks")},A.createElement(WQ,{ticks:I,axisId:L,axisType:C}),Q.length>0&&A.createElement(ca,{zIndex:pn.label},A.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(C,"-tick-labels"),ref:t},Q)),V.length>0&&A.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(C,"-tick-lines")},V))}),QQ=A.forwardRef((e,t)=>{var{axisLine:n,width:r,height:s,className:o,hide:u,ticks:f,axisType:d,axisId:h}=e,m=UQ(e,BQ),[p,v]=A.useState(""),[x,w]=A.useState(""),_=A.useRef(null);A.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var O;return PQ({ticks:_.current,label:(O=e.labelRef)===null||O===void 0?void 0:O.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=A.useCallback(O=>{if(O){var M=O.getElementsByClassName("recharts-cartesian-axis-tick-value");_.current=M;var j=M[0];if(j){var k=window.getComputedStyle(j),N=k.fontSize,C=k.letterSpacing;(N!==p||C!==x)&&(v(N),w(C))}}},[p,x]);return u||r!=null&&r<=0||s!=null&&s<=0?null:A.createElement(ca,{zIndex:e.zIndex},A.createElement(hr,{className:et("recharts-cartesian-axis",o)},A.createElement(HQ,{x:e.x,y:e.y,width:r,height:s,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:kr(e)}),A.createElement(ZQ,{ref:S,axisType:d,events:m,fontSize:p,getTicksConfig:e,height:e.height,letterSpacing:x,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:f,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:h}),A.createElement(XW,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},A.createElement(rZ,{label:e.label,labelRef:e.labelRef}),e.children)))}),Sx=A.forwardRef((e,t)=>{var n=vn(e,ii);return A.createElement(QQ,es({},n,{ref:t}))});Sx.displayName="CartesianAxis";var JQ=["x1","y1","x2","y2","key"],eJ=["offset"],tJ=["xAxisId","yAxisId"],nJ=["xAxisId","yAxisId"];function Dj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Wt(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:s,width:o,height:u,ry:f}=e;return A.createElement("rect",{x:r,y:s,ry:f,width:o,height:u,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function T5(e){var{option:t,lineItemProps:n}=e,r;if(A.isValidElement(t))r=A.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var s,{x1:o,y1:u,x2:f,y2:d,key:h}=n,m=Vd(n,JQ),p=(s=kr(m))!==null&&s!==void 0?s:{},{offset:v}=p,x=Vd(p,eJ);r=A.createElement("line",$a({},x,{x1:o,y1:u,x2:f,y2:d,fill:"none",key:h}))}return r}function lJ(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:s}=e;if(!r||!s||!s.length)return null;var{xAxisId:o,yAxisId:u}=e,f=Vd(e,tJ),d=s.map((h,m)=>{var p=Wt(Wt({},f),{},{x1:t,y1:h,x2:t+n,y2:h,key:"line-".concat(m),index:m});return A.createElement(T5,{key:"line-".concat(m),option:r,lineItemProps:p})});return A.createElement("g",{className:"recharts-cartesian-grid-horizontal"},d)}function uJ(e){var{y:t,height:n,vertical:r=!0,verticalPoints:s}=e;if(!r||!s||!s.length)return null;var{xAxisId:o,yAxisId:u}=e,f=Vd(e,nJ),d=s.map((h,m)=>{var p=Wt(Wt({},f),{},{x1:h,y1:t,x2:h,y2:t+n,key:"line-".concat(m),index:m});return A.createElement(T5,{option:r,lineItemProps:p,key:"line-".concat(m)})});return A.createElement("g",{className:"recharts-cartesian-grid-vertical"},d)}function cJ(e){var{horizontalFill:t,fillOpacity:n,x:r,y:s,width:o,height:u,horizontalPoints:f,horizontal:d=!0}=e;if(!d||!t||!t.length||f==null)return null;var h=f.map(p=>Math.round(p+s-s)).sort((p,v)=>p-v);s!==h[0]&&h.unshift(0);var m=h.map((p,v)=>{var x=h[v+1],w=x==null,_=w?s+u-p:x-p;if(_<=0)return null;var S=v%t.length;return A.createElement("rect",{key:"react-".concat(v),y:p,x:r,height:_,width:o,stroke:"none",fill:t[S],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return A.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},m)}function fJ(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:s,y:o,width:u,height:f,verticalPoints:d}=e;if(!t||!n||!n.length)return null;var h=d.map(p=>Math.round(p+s-s)).sort((p,v)=>p-v);s!==h[0]&&h.unshift(0);var m=h.map((p,v)=>{var x=h[v+1],w=x==null,_=w?s+u-p:x-p;if(_<=0)return null;var S=v%n.length;return A.createElement("rect",{key:"react-".concat(v),x:p,y:o,width:_,height:f,stroke:"none",fill:n[S],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return A.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},m)}var dJ=(e,t)=>{var{xAxis:n,width:r,height:s,offset:o}=e;return fC(_x(Wt(Wt(Wt({},ii),n),{},{ticks:dC(n),viewBox:{x:0,y:0,width:r,height:s}})),o.left,o.left+o.width,t)},hJ=(e,t)=>{var{yAxis:n,width:r,height:s,offset:o}=e;return fC(_x(Wt(Wt(Wt({},ii),n),{},{ticks:dC(n),viewBox:{x:0,y:0,width:r,height:s}})),o.top,o.top+o.height,t)},mJ={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:pn.grid};function O5(e){var t=wC(),n=_C(),r=xC(),s=Wt(Wt({},vn(e,mJ)),{},{x:ye(e.x)?e.x:r.left,y:ye(e.y)?e.y:r.top,width:ye(e.width)?e.width:r.width,height:ye(e.height)?e.height:r.height}),{xAxisId:o,yAxisId:u,x:f,y:d,width:h,height:m,syncWithTicks:p,horizontalValues:v,verticalValues:x}=s,w=Jt(),_=ve(Y=>DE(Y,"xAxis",o,w)),S=ve(Y=>DE(Y,"yAxis",u,w));if(!Cr(h)||!Cr(m)||!ye(f)||!ye(d))return null;var O=s.verticalCoordinatesGenerator||dJ,M=s.horizontalCoordinatesGenerator||hJ,{horizontalPoints:j,verticalPoints:k}=s;if((!j||!j.length)&&typeof M=="function"){var N=v&&v.length,C=M({yAxis:S?Wt(Wt({},S),{},{ticks:N?v:S.ticks}):void 0,width:t??h,height:n??m,offset:r},N?!0:p);hd(Array.isArray(C),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof C,"]")),Array.isArray(C)&&(j=C)}if((!k||!k.length)&&typeof O=="function"){var L=x&&x.length,I=O({xAxis:_?Wt(Wt({},_),{},{ticks:L?x:_.ticks}):void 0,width:t??h,height:n??m,offset:r},L?!0:p);hd(Array.isArray(I),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof I,"]")),Array.isArray(I)&&(k=I)}return A.createElement(ca,{zIndex:s.zIndex},A.createElement("g",{className:"recharts-cartesian-grid"},A.createElement(oJ,{fill:s.fill,fillOpacity:s.fillOpacity,x:s.x,y:s.y,width:s.width,height:s.height,ry:s.ry}),A.createElement(cJ,$a({},s,{horizontalPoints:j})),A.createElement(fJ,$a({},s,{verticalPoints:k})),A.createElement(lJ,$a({},s,{offset:r,horizontalPoints:j,xAxis:_,yAxis:S})),A.createElement(uJ,$a({},s,{offset:r,verticalPoints:k,xAxis:_,yAxis:S}))))}O5.displayName="CartesianGrid";var pJ={},E5=Qt({name:"errorBars",initialState:pJ,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:s}=t.payload;e[n]&&(e[n]=e[n].map(o=>o.dataKey===r.dataKey&&o.direction===r.direction?s:o))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(s=>s.dataKey!==r.dataKey||s.direction!==r.direction))}}}),{addErrorBar:Xne,replaceErrorBar:Yne,removeErrorBar:Gne}=E5.actions,gJ=E5.reducer,yJ=["children"];function vJ(e,t){if(e==null)return{};var n,r,s=bJ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},wJ=A.createContext(xJ);function _J(e){var{children:t}=e,n=vJ(e,yJ);return A.createElement(wJ.Provider,{value:n},t)}function j5(e,t){var n,r,s=ve(h=>gi(h,e)),o=ve(h=>yi(h,t)),u=(n=s?.allowDataOverflow)!==null&&n!==void 0?n:wt.allowDataOverflow,f=(r=o?.allowDataOverflow)!==null&&r!==void 0?r:_t.allowDataOverflow,d=u||f;return{needClip:d,needClipX:u,needClipY:f}}function SJ(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,s=x5(),{needClipX:o,needClipY:u,needClip:f}=j5(t,n);if(!f||!s)return null;var{x:d,y:h,width:m,height:p}=s;return A.createElement("clipPath",{id:"clipPath-".concat(r)},A.createElement("rect",{x:o?d:d-m/2,y:u?h:h-p/2,width:o?m:m*2,height:u?p:p*2}))}var AJ=["option","isActive"];function Ql(){return Ql=Object.assign?Object.assign.bind():function(e){for(var t=1;tOD(e,"xAxis",t,u),MJ=(e,t,n,r,s,o,u)=>TD(e,"xAxis",t,u),kJ=(e,t,n,r,s,o,u)=>OD(e,"yAxis",n,u),NJ=(e,t,n,r,s,o,u)=>TD(e,"yAxis",n,u),CJ=(e,t,n,r)=>IX(e,"zAxis",r,!1),DJ=(e,t,n,r,s)=>s,PJ=(e,t,n,r,s,o)=>o,RJ=(e,t,n,r,s,o,u)=>vb(e,void 0,void 0,u),LJ=$([G3,DJ],(e,t)=>e.filter(n=>n.type==="scatter").find(n=>n.id===t)),zJ=$([RJ,jJ,MJ,kJ,NJ,CJ,LJ,PJ],(e,t,n,r,s,o,u,f)=>{var{chartData:d,dataStartIndex:h,dataEndIndex:m}=e;if(u!=null){var p;if(u?.data!=null&&u.data.length>0?p=u.data:p=d?.slice(h,m+1),!(p==null||t==null||r==null||n==null||s==null||n?.length===0||s?.length===0))return ZJ({displayedData:p,xAxis:t,yAxis:r,zAxis:o,scatterSettings:u,xAxisTicks:n,yAxisTicks:s,cells:f})}}),IJ=["id"],BJ=["onMouseEnter","onClick","onMouseLeave"],UJ=["animationBegin","animationDuration","animationEasing","hide","isAnimationActive","legendType","lineJointType","lineType","shape","xAxisId","yAxisId","zAxisId"];function o0(e,t){if(e==null)return{};var n,r,s=VJ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{dataKey:t,name:n,fill:r,legendType:s,hide:o}=e;return[{inactive:o,dataKey:t,type:s,color:r,value:hC(n,t),payload:e}]},KJ=A.memo(e=>{var{dataKey:t,points:n,stroke:r,strokeWidth:s,fill:o,name:u,hide:f,tooltipType:d,id:h}=e,m={dataDefinedOnItem:n?.map(p=>p.tooltipPayload),getPosition:p=>{var v;return n==null||(v=n[Number(p)])===null||v===void 0?void 0:v.tooltipPosition},settings:{stroke:r,strokeWidth:s,fill:o,nameKey:void 0,dataKey:t,name:hC(u,t),hide:f,type:d,color:o,unit:"",graphicalItemId:h}};return A.createElement(UZ,{tooltipEntrySettings:m})});function XJ(e){var{points:t,props:n}=e,{line:r,lineType:s,lineJointType:o}=n;if(!r)return null;var u=kr(n),f=Y0(r),d,h;if(s==="joint")d=t.map(S=>{var O,M;return{x:(O=S.cx)!==null&&O!==void 0?O:null,y:(M=S.cy)!==null&&M!==void 0?M:null}});else if(s==="fitting"){var{xmin:m,xmax:p,a:v,b:x}=N9(t),w=S=>v*S+x;d=[{x:m,y:w(m)},{x:p,y:w(p)}]}var _=yn(yn(yn({},u),{},{fill:"none",stroke:u&&u.fill},f),{},{points:d});return A.isValidElement(r)?h=A.cloneElement(r,_):typeof r=="function"?h=r(_):h=A.createElement(pb,ts({},_,{type:o})),A.createElement(hr,{className:"recharts-scatter-line",key:"recharts-scatter-line"},h)}function YJ(e){var{showLabels:t,points:n,children:r}=e,s=ku(),o=A.useMemo(()=>n?.map(u=>{var f,d,h={x:(f=u.x)!==null&&f!==void 0?f:0,y:(d=u.y)!==null&&d!==void 0?d:0,width:u.width,height:u.height,lowerWidth:u.width,upperWidth:u.width};return yn(yn({},h),{},{value:void 0,payload:u.payload,viewBox:h,parentViewBox:s,fill:void 0})}),[s,n]);return A.createElement(lZ,{value:t?o:void 0},r)}function GJ(e){var{points:t,allOtherScatterProps:n}=e,{shape:r,activeShape:s,dataKey:o}=n,{id:u}=n,f=o0(n,IJ),d=ve(vu),{onMouseEnter:h,onClick:m,onMouseLeave:p}=n,v=o0(n,BJ),x=zZ(h,o,u),w=IZ(p),_=BZ(m,o,u);if(!F9(t))return null;var S=kr(f);return A.createElement(A.Fragment,null,A.createElement(XJ,{points:t,props:f}),t.map((O,M)=>{var j=s!=null&&s!==!1,k=j&&d===String(M),N=j&&k?s:r,C=yn(yn(yn({},S),O),{},{index:M,[pC]:String(u)});return A.createElement(ca,{key:"symbol-".concat(O?.cx,"-").concat(O?.cy,"-").concat(O?.size,"-").concat(M),zIndex:k?pn.activeDot:void 0},A.createElement(hr,ts({className:"recharts-scatter-symbol"},wN(v,O,M),{onMouseEnter:x(O,M),onMouseLeave:w(O,M),onClick:_(O,M)}),A.createElement(EJ,ts({option:N,isActive:k},C))))}))}function WJ(e){var{previousPointsRef:t,props:n}=e,{points:r,isAnimationActive:s,animationBegin:o,animationDuration:u,animationEasing:f}=n,d=t.current,h=yb(n,"recharts-scatter-"),[m,p]=A.useState(!1),v=A.useCallback(()=>{p(!1)},[]),x=A.useCallback(()=>{p(!0)},[]),w=!m;return A.createElement(YJ,{showLabels:w,points:r},n.children,A.createElement(gb,{animationId:h,begin:o,duration:u,isActive:s,easing:f,onAnimationEnd:v,onAnimationStart:x,key:h},_=>{var S=_===1?r:r?.map((O,M)=>{var j=d&&d[M];return j?yn(yn({},O),{},{cx:O.cx==null?void 0:kn(j.cx,O.cx,_),cy:O.cy==null?void 0:kn(j.cy,O.cy,_),size:kn(j.size,O.size,_)}):yn(yn({},O),{},{size:kn(0,O.size,_)})});return _>0&&(t.current=S),A.createElement(hr,null,A.createElement(GJ,{points:S,allOtherScatterProps:n,showLabels:w}))}),A.createElement(fZ,{label:n.label}))}function ZJ(e){var{displayedData:t,xAxis:n,yAxis:r,zAxis:s,scatterSettings:o,xAxisTicks:u,yAxisTicks:f,cells:d}=e,h=dt(n.dataKey)?o.dataKey:n.dataKey,m=dt(r.dataKey)?o.dataKey:r.dataKey,p=s&&s.dataKey,v=s?s.range:K3.range,x=v&&v[0],w=n.scale.bandwidth?n.scale.bandwidth():0,_=r.scale.bandwidth?r.scale.bandwidth():0;return t.map((S,O)=>{var M=Ot(S,h),j=Ot(S,m),k=!dt(p)&&Ot(S,p)||"-",N=[{name:dt(n.dataKey)?o.name:n.name||String(n.dataKey),unit:n.unit||"",value:M,payload:S,dataKey:h,type:o.tooltipType,graphicalItemId:o.id},{name:dt(r.dataKey)?o.name:r.name||String(r.dataKey),unit:r.unit||"",value:j,payload:S,dataKey:m,type:o.tooltipType,graphicalItemId:o.id}];k!=="-"&&s!=null&&N.push({name:s.name||s.dataKey,unit:s.unit||"",value:k,payload:S,dataKey:p,type:o.tooltipType,graphicalItemId:o.id});var C=j2({axis:n,ticks:u,bandSize:w,entry:S,index:O,dataKey:h}),L=j2({axis:r,ticks:f,bandSize:_,entry:S,index:O,dataKey:m}),I=k!=="-"&&s!=null?s.scale.map(k):x,Y=I==null?0:Math.sqrt(Math.max(I,0)/Math.PI);return yn(yn({},S),{},{cx:C,cy:L,x:C==null?void 0:C-Y,y:L==null?void 0:L-Y,width:2*Y,height:2*Y,size:I,node:{x:M,y:j,z:k},tooltipPayload:N,tooltipPosition:{x:C,y:L},payload:S},d&&d[O]&&d[O].props)})}var QJ=(e,t,n)=>({x:e.cx,y:e.cy,value:Number(n==="x"?e.node.x:e.node.y),errorVal:Ot(e,t)});function JJ(e){var{hide:t,points:n,className:r,needClip:s,xAxisId:o,yAxisId:u,id:f}=e,d=A.useRef(null);if(t)return null;var h=et("recharts-scatter",r),m=f;return A.createElement(ca,{zIndex:e.zIndex},A.createElement(hr,{className:h,clipPath:s?"url(#clipPath-".concat(m,")"):void 0,id:f},s&&A.createElement("defs",null,A.createElement(SJ,{clipPathId:m,xAxisId:o,yAxisId:u})),A.createElement(_J,{xAxisId:o,yAxisId:u,data:n,dataPointFormatter:QJ,errorBarOffset:0},A.createElement(hr,{key:"recharts-scatter-symbols"},A.createElement(WJ,{props:e,previousPointsRef:d})))))}var M5={xAxisId:0,yAxisId:0,zAxisId:0,label:!1,line:!1,legendType:"circle",lineType:"joint",lineJointType:"linear",shape:"circle",hide:!1,isAnimationActive:"auto",animationBegin:0,animationDuration:400,animationEasing:"linear",zIndex:pn.scatter};function eee(e){var t=vn(e,M5),{animationBegin:n,animationDuration:r,animationEasing:s,hide:o,isAnimationActive:u,legendType:f,lineJointType:d,lineType:h,shape:m,xAxisId:p,yAxisId:v,zAxisId:x}=t,w=o0(t,UJ),{needClip:_}=j5(p,v),S=A.useMemo(()=>vZ(e.children,bx),[e.children]),O=Jt(),M=ve(j=>zJ(j,p,v,x,e.id,S,O));return _==null||M==null?null:A.createElement(A.Fragment,null,A.createElement(KJ,{dataKey:e.dataKey,points:M,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:e.id}),A.createElement(JJ,ts({},w,{xAxisId:p,yAxisId:v,zAxisId:x,lineType:h,lineJointType:d,legendType:f,shape:m,hide:o,isAnimationActive:u,animationBegin:n,animationDuration:r,animationEasing:s,points:M,needClip:_})))}function tee(e){var t=vn(e,M5),n=Jt();return A.createElement(KZ,{id:t.id,type:"scatter"},r=>A.createElement(A.Fragment,null,A.createElement(VZ,{legendPayload:HJ(t)}),A.createElement(JZ,{type:"scatter",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:t.zAxisId,dataKey:t.dataKey,hide:t.hide,name:t.name,tooltipType:t.tooltipType,isPanorama:n}),A.createElement(eee,ts({},t,{id:r}))))}var k5=A.memo(tee,mh);k5.displayName="Scatter";var nee=["domain","range"],ree=["domain","range"];function Rj(e,t){if(e==null)return{};var n,r,s=iee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(u!=null)return Ij(Ij({},o),{},{type:u})},[o,u]);return A.useLayoutEffect(()=>{f!=null&&(n.current===null?t(iQ(f)):n.current!==f&&t(aQ({prev:n.current,next:f})),n.current=f)},[f,t]),A.useLayoutEffect(()=>()=>{n.current&&(t(sQ(n.current)),n.current=null)},[t]),null}var hee=e=>{var{xAxisId:t,className:n}=e,r=ve(gC),s=Jt(),o="xAxis",u=ve(O=>AD(O,o,t,s)),f=ve(O=>AX(O,t)),d=ve(O=>kX(O,t)),h=ve(O=>F3(O,t));if(f==null||d==null||h==null)return null;var{dangerouslySetInnerHTML:m,ticks:p,scale:v}=e,x=u0(e,see),{id:w,scale:_}=h,S=u0(h,oee);return A.createElement(Sx,l0({},x,S,{x:d.x,y:d.y,width:f.width,height:f.height,className:et("recharts-".concat(o," ").concat(o),n),viewBox:r,ticks:u,axisType:o,axisId:t}))},mee={allowDataOverflow:wt.allowDataOverflow,allowDecimals:wt.allowDecimals,allowDuplicatedCategory:wt.allowDuplicatedCategory,angle:wt.angle,axisLine:ii.axisLine,height:wt.height,hide:!1,includeHidden:wt.includeHidden,interval:wt.interval,label:!1,minTickGap:wt.minTickGap,mirror:wt.mirror,orientation:wt.orientation,padding:wt.padding,reversed:wt.reversed,scale:wt.scale,tick:wt.tick,tickCount:wt.tickCount,tickLine:ii.tickLine,tickSize:ii.tickSize,type:wt.type,niceTicks:wt.niceTicks,xAxisId:0},pee=e=>{var t=vn(e,mee);return A.createElement(A.Fragment,null,A.createElement(dee,{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}),A.createElement(hee,t))},C5=A.memo(pee,N5);C5.displayName="XAxis";var gee=["type"],yee=["dangerouslySetInnerHTML","ticks","scale"],vee=["id","scale"];function c0(){return c0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(u!=null)return Uj(Uj({},o),{},{type:u})},[u,o]);return A.useLayoutEffect(()=>{f!=null&&(n.current===null?t(oQ(f)):n.current!==f&&t(lQ({prev:n.current,next:f})),n.current=f)},[f,t]),A.useLayoutEffect(()=>()=>{n.current&&(t(uQ(n.current)),n.current=null)},[t]),null}function Aee(e){var{yAxisId:t,className:n,width:r,label:s}=e,o=A.useRef(null),u=A.useRef(null),f=ve(gC),d=Jt(),h=it(),m="yAxis",p=ve(C=>DX(C,t)),v=ve(C=>CX(C,t)),x=ve(C=>AD(C,m,t,d)),w=ve(C=>H3(C,t));if(A.useLayoutEffect(()=>{if(!(r!=="auto"||!p||wx(s)||A.isValidElement(s)||w==null)){var C=o.current;if(C){var L=C.getCalculatedWidth();Math.round(p.width)!==Math.round(L)&&h(cQ({id:t,width:L}))}}},[x,p,h,s,t,r,w]),p==null||v==null||w==null)return null;var{dangerouslySetInnerHTML:_,ticks:S,scale:O}=e,M=f0(e,yee),{id:j,scale:k}=w,N=f0(w,vee);return A.createElement(Sx,c0({},M,N,{ref:o,labelRef:u,x:v.x,y:v.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:p.width,height:p.height,className:et("recharts-".concat(m," ").concat(m),n),viewBox:f,ticks:x,axisType:m,axisId:t}))}var Tee={allowDataOverflow:_t.allowDataOverflow,allowDecimals:_t.allowDecimals,allowDuplicatedCategory:_t.allowDuplicatedCategory,angle:_t.angle,axisLine:ii.axisLine,hide:!1,includeHidden:_t.includeHidden,interval:_t.interval,label:!1,minTickGap:_t.minTickGap,mirror:_t.mirror,orientation:_t.orientation,padding:_t.padding,reversed:_t.reversed,scale:_t.scale,tick:_t.tick,tickCount:_t.tickCount,tickLine:ii.tickLine,tickSize:ii.tickSize,type:_t.type,niceTicks:_t.niceTicks,width:_t.width,yAxisId:0},Oee=e=>{var t=vn(e,Tee);return A.createElement(A.Fragment,null,A.createElement(See,{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}),A.createElement(Aee,t))},D5=A.memo(Oee,N5);D5.displayName="YAxis";var Eee=(e,t)=>t,Ax=$([Eee,ht,s3,Dt,$D,vi,rG,Xt],cG);function jee(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function Tx(e){var t=e.currentTarget.getBoundingClientRect(),n,r;if(jee(e)){var s=e.currentTarget.getBBox();n=s.width>0?t.width/s.width:1,r=s.height>0?t.height/s.height:1}else{var o=e.currentTarget;n=o.offsetWidth>0?t.width/o.offsetWidth:1,r=o.offsetHeight>0?t.height/o.offsetHeight:1}var u=(f,d)=>({relativeX:Math.round((f-t.left)/n),relativeY:Math.round((d-t.top)/r)});return"touches"in e?Array.from(e.touches).map(f=>u(f.clientX,f.clientY)):u(e.clientX,e.clientY)}var P5=Pn("mouseClick"),R5=ju();R5.startListening({actionCreator:P5,effect:(e,t)=>{var n=e.payload,r=Ax(t.getState(),Tx(n));r?.activeIndex!=null&&t.dispatch(WX({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var d0=Pn("mouseMove"),L5=ju(),Xs=null,Na=null,Fy=null;L5.startListening({actionCreator:d0,effect:(e,t)=>{var n=e.payload,r=t.getState(),{throttleDelay:s,throttledEvents:o}=r.eventSettings,u=o==="all"||o?.includes("mousemove");Xs!==null&&(cancelAnimationFrame(Xs),Xs=null),Na!==null&&(typeof s!="number"||!u)&&(clearTimeout(Na),Na=null),Fy=Tx(n);var f=()=>{var d=t.getState(),h=ux(d,d.tooltip.settings.shared);if(!Fy){Xs=null,Na=null;return}if(h==="axis"){var m=Ax(d,Fy);m?.activeIndex!=null?t.dispatch(PD({activeIndex:m.activeIndex,activeDataKey:void 0,activeCoordinate:m.activeCoordinate})):t.dispatch(DD())}Xs=null,Na=null};if(!u){f();return}s==="raf"?Xs=requestAnimationFrame(f):typeof s=="number"&&Na===null&&(Na=setTimeout(f,s))}});function Mee(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var Vj={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},z5=Qt({name:"rootProps",initialState:Vj,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:Vj.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}}}),kee=z5.reducer,{updateOptions:Nee}=z5.actions,Cee=null,Dee={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)},I5=Qt({name:"polarOptions",initialState:Cee,reducers:Dee}),{updatePolarOptions:Wne}=I5.actions,Pee=I5.reducer,B5=Pn("keyDown"),U5=Pn("focus"),V5=Pn("blur"),kh=ju(),Ys=null,Ca=null,Mf=null;kh.startListening({actionCreator:B5,effect:(e,t)=>{Mf=e.payload,Ys!==null&&(cancelAnimationFrame(Ys),Ys=null);var n=t.getState(),{throttleDelay:r,throttledEvents:s}=n.eventSettings,o=s==="all"||s.includes("keydown");Ca!==null&&(typeof r!="number"||!o)&&(clearTimeout(Ca),Ca=null);var u=()=>{try{var f=t.getState(),d=f.rootProps.accessibilityLayer!==!1;if(!d)return;var{keyboardInteraction:h}=f.tooltip,m=Mf;if(m!=="ArrowRight"&&m!=="ArrowLeft"&&m!=="Enter")return;var p=cx(h,Co(f),qu(f),Fu(f)),v=p==null?-1:Number(p);if(!Number.isFinite(v)||v<0)return;var x=vi(f);if(m==="Enter"){var w=zd(f,"axis","hover",String(h.index));t.dispatch(Ld({active:!h.active,activeIndex:h.index,activeCoordinate:w}));return}var _=BX(f),S=_==="left-to-right"?1:-1,O=m==="ArrowRight"?1:-1,M=v+O*S;if(x==null||M>=x.length||M<0)return;var j=zd(f,"axis","hover",String(M));t.dispatch(Ld({active:!0,activeIndex:M.toString(),activeCoordinate:j}))}finally{Ys=null,Ca=null}};if(!o){u();return}r==="raf"?Ys=requestAnimationFrame(u):typeof r=="number"&&Ca===null&&(u(),Mf=null,Ca=setTimeout(()=>{Mf?u():(Ca=null,Ys=null)},r))}});kh.startListening({actionCreator:U5,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:s}=n.tooltip;if(!s.active&&s.index==null){var o="0",u=zd(n,"axis","hover",String(o));t.dispatch(Ld({active:!0,activeIndex:o,activeCoordinate:u}))}}}});kh.startListening({actionCreator:V5,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:s}=n.tooltip;s.active&&t.dispatch(Ld({active:!1,activeIndex:s.index,activeCoordinate:s.coordinate}))}}});function q5(e){e.persist();var{currentTarget:t}=e;return new Proxy(e,{get:(n,r)=>{if(r==="currentTarget")return t;var s=Reflect.get(n,r);return typeof s=="function"?s.bind(n):s}})}var Yn=Pn("externalEvent"),$5=ju(),kf=new Map,Il=new Map,Hy=new Map;$5.startListening({actionCreator:Yn,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){var s=r.type,o=q5(r);Hy.set(s,{handler:n,reactEvent:o});var u=kf.get(s);u!==void 0&&(cancelAnimationFrame(u),kf.delete(s));var f=t.getState(),{throttleDelay:d,throttledEvents:h}=f.eventSettings,m=h,p=m==="all"||m?.includes(s),v=Il.get(s);v!==void 0&&(typeof d!="number"||!p)&&(clearTimeout(v),Il.delete(s));var x=()=>{var S=Hy.get(s);try{if(!S)return;var{handler:O,reactEvent:M}=S,j=t.getState(),k={activeCoordinate:qY(j),activeDataKey:BY(j),activeIndex:vu(j),activeLabel:KD(j),activeTooltipIndex:vu(j),isTooltipActive:$Y(j)};O&&O(k,M)}finally{kf.delete(s),Il.delete(s),Hy.delete(s)}};if(!p){x();return}if(d==="raf"){var w=requestAnimationFrame(x);kf.set(s,w)}else if(typeof d=="number"){if(!Il.has(s)){x();var _=setTimeout(x,d);Il.set(s,_)}}else x()}}});var Ree=$([ko],e=>e.tooltipItemPayloads),Lee=$([Ree,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(o=>o.settings.graphicalItemId===n);if(r!=null){var{getPosition:s}=r;if(s!=null)return s(t)}}}),F5=Pn("touchMove"),H5=ju(),Da=null,Hi=null,qj=null,Bl=null;H5.startListening({actionCreator:F5,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){Bl=q5(n);var r=t.getState(),{throttleDelay:s,throttledEvents:o}=r.eventSettings,u=o==="all"||o.includes("touchmove");Da!==null&&(cancelAnimationFrame(Da),Da=null),Hi!==null&&(typeof s!="number"||!u)&&(clearTimeout(Hi),Hi=null),qj=Array.from(n.touches).map(d=>Tx({clientX:d.clientX,clientY:d.clientY,currentTarget:n.currentTarget}));var f=()=>{if(Bl!=null){var d=t.getState(),h=ux(d,d.tooltip.settings.shared);if(h==="axis"){var m,p=(m=qj)===null||m===void 0?void 0:m[0];if(p==null){Da=null,Hi=null;return}var v=Ax(d,p);v?.activeIndex!=null&&t.dispatch(PD({activeIndex:v.activeIndex,activeDataKey:void 0,activeCoordinate:v.activeCoordinate}))}else if(h==="item"){var x,w=Bl.touches[0];if(document.elementFromPoint==null||w==null)return;var _=document.elementFromPoint(w.clientX,w.clientY);if(!_||!_.getAttribute)return;var S=_.getAttribute(iV),O=(x=_.getAttribute(pC))!==null&&x!==void 0?x:void 0,M=No(d).find(N=>N.id===O);if(S==null||M==null||O==null)return;var{dataKey:j}=M,k=Lee(d,S,O);t.dispatch(CD({activeDataKey:j,activeIndex:S,activeCoordinate:k,activeGraphicalItemId:O}))}Da=null,Hi=null}};if(!u){f();return}s==="raf"?Da=requestAnimationFrame(f):typeof s=="number"&&Hi===null&&(f(),Bl=null,Hi=setTimeout(()=>{Bl?f():(Hi=null,Da=null)},s))}}});var K5={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},X5=Qt({name:"eventSettings",initialState:K5,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=t.payload.throttledEvents)}}}),{setEventSettings:zee}=X5.actions,Iee=X5.reducer,Bee=LN({brush:yQ,cartesianAxis:fQ,chartData:qG,errorBars:gJ,eventSettings:Iee,graphicalItems:ZZ,layout:$U,legend:WV,options:zG,polarAxis:hZ,polarOptions:Pee,referenceElements:wQ,renderedTicks:IQ,rootProps:kee,tooltip:ZX,zIndex:AG}),Uee=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return mU({reducer:Bee,preloadedState:t,middleware:r=>{var s;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((s="es6")!==null&&s!==void 0?s:"")}).concat([R5.middleware,L5.middleware,kh.middleware,$5.middleware,H5.middleware])},enhancers:r=>{var s=r;return typeof r=="function"&&(s=r()),s.concat(ZN({type:"raf"}))},devTools:{serialize:{replacer:Mee},name:"recharts-".concat(n)}})};function Vee(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,s=Jt(),o=A.useRef(null);if(s)return n;o.current==null&&(o.current=Uee(t,r));var u=ib;return A.createElement(mq,{context:u,store:o.current},n)}function qee(e){var{layout:t,margin:n}=e,r=it(),s=Jt();return A.useEffect(()=>{s||(r(UU(t)),r(BU(n)))},[r,s,t,n]),null}var $ee=A.memo(qee,mh);function Fee(e){var t=it();return A.useEffect(()=>{t(Nee(e))},[t,e]),null}var Hee=e=>{var t=it();return A.useEffect(()=>{t(zee(e))},[t,e]),null},Kee=A.memo(Hee,mh);function $j(e){var{zIndex:t,isPanorama:n}=e,r=A.useRef(null),s=it();return A.useLayoutEffect(()=>(r.current&&s(_G({zIndex:t,element:r.current,isPanorama:n})),()=>{s(SG({zIndex:t,isPanorama:n}))}),[s,t,n]),A.createElement("g",{tabIndex:-1,ref:r,className:"recharts-zIndex-layer_".concat(t)})}function Fj(e){var{children:t,isPanorama:n}=e,r=ve(dG);if(!r||r.length===0)return t;var s=r.filter(u=>u<0),o=r.filter(u=>u>0);return A.createElement(A.Fragment,null,s.map(u=>A.createElement($j,{key:u,zIndex:u,isPanorama:n})),t,o.map(u=>A.createElement($j,{key:u,zIndex:u,isPanorama:n})))}var Xee=["children"];function Yee(e,t){if(e==null)return{};var n,r,s=Gee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var n=wC(),r=_C(),s=DC();if(!Cr(n)||!Cr(r))return null;var{children:o,otherAttributes:u,title:f,desc:d}=e,h,m;return u!=null&&(typeof u.tabIndex=="number"?h=u.tabIndex:h=s?0:void 0,typeof u.role=="string"?m=u.role:m=s?"application":void 0),A.createElement(Jk,qd({},u,{title:f,desc:d,role:m,tabIndex:h,width:n,height:r,style:Wee,ref:t}),o)}),Qee=e=>{var{children:t}=e,n=ve(ch);if(!n)return null;var{width:r,height:s,y:o,x:u}=n;return A.createElement(Jk,{width:r,height:s,x:u,y:o},t)},Hj=A.forwardRef((e,t)=>{var{children:n}=e,r=Yee(e,Xee),s=Jt();return s?A.createElement(Qee,null,A.createElement(Fj,{isPanorama:!0},n)):A.createElement(Zee,qd({ref:t},r),A.createElement(Fj,{isPanorama:!1},n))});function Jee(){var e=it(),[t,n]=A.useState(null),r=ve(rV);return A.useEffect(()=>{if(t!=null){var s=t.getBoundingClientRect(),o=s.width/t.offsetWidth;Le(o)&&o!==r&&e(qU(o))}},[t,e,r]),n}function Kj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ete(e){for(var t=1;t(ZG(),null);function $d(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var ate=A.forwardRef((e,t)=>{var n,r,s=A.useRef(null),[o,u]=A.useState({containerWidth:$d((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:$d((r=e.style)===null||r===void 0?void 0:r.height)}),f=A.useCallback((h,m)=>{u(p=>{var v=Math.round(h),x=Math.round(m);return p.containerWidth===v&&p.containerHeight===x?p:{containerWidth:v,containerHeight:x}})},[]),d=A.useCallback(h=>{if(typeof t=="function"&&t(h),h!=null&&typeof ResizeObserver<"u"){var{width:m,height:p}=h.getBoundingClientRect();f(m,p);var v=w=>{var _=w[0];if(_!=null){var{width:S,height:O}=_.contentRect;f(S,O)}},x=new ResizeObserver(v);x.observe(h),s.current=x}},[t,f]);return A.useEffect(()=>()=>{var h=s.current;h?.disconnect()},[f]),A.createElement(A.Fragment,null,A.createElement(Cu,{width:o.containerWidth,height:o.containerHeight}),A.createElement("div",ta({ref:d},e)))}),ste=A.forwardRef((e,t)=>{var{width:n,height:r}=e,[s,o]=A.useState({containerWidth:$d(n),containerHeight:$d(r)}),u=A.useCallback((d,h)=>{o(m=>{var p=Math.round(d),v=Math.round(h);return m.containerWidth===p&&m.containerHeight===v?m:{containerWidth:p,containerHeight:v}})},[]),f=A.useCallback(d=>{if(typeof t=="function"&&t(d),d!=null){var{width:h,height:m}=d.getBoundingClientRect();u(h,m)}},[t,u]);return A.createElement(A.Fragment,null,A.createElement(Cu,{width:s.containerWidth,height:s.containerHeight}),A.createElement("div",ta({ref:f},e)))}),ote=A.forwardRef((e,t)=>{var{width:n,height:r}=e;return A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement("div",ta({ref:t},e)))}),lte=A.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?A.createElement(ste,ta({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?A.createElement(ote,ta({},e,{width:n,height:r,ref:t})):A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement("div",ta({ref:t},e)))});function ute(e){return e?ate:lte}var cte=A.forwardRef((e,t)=>{var{children:n,className:r,height:s,onClick:o,onContextMenu:u,onDoubleClick:f,onMouseDown:d,onMouseEnter:h,onMouseLeave:m,onMouseMove:p,onMouseUp:v,onTouchEnd:x,onTouchMove:w,onTouchStart:_,style:S,width:O,responsive:M,dispatchTouchEvents:j=!0}=e,k=A.useRef(null),N=it(),[C,L]=A.useState(null),[I,Y]=A.useState(null),te=Jee(),ie=fb(),K=ie?.width>0?ie.width:O,be=ie?.height>0?ie.height:s,pe=A.useCallback(re=>{te(re),typeof t=="function"&&t(re),L(re),Y(re),re!=null&&(k.current=re)},[te,t,L,Y]),xe=A.useCallback(re=>{N(P5(re)),N(Yn({handler:o,reactEvent:re}))},[N,o]),V=A.useCallback(re=>{N(d0(re)),N(Yn({handler:h,reactEvent:re}))},[N,h]),Q=A.useCallback(re=>{N(DD()),N(Yn({handler:m,reactEvent:re}))},[N,m]),ne=A.useCallback(re=>{N(d0(re)),N(Yn({handler:p,reactEvent:re}))},[N,p]),le=A.useCallback(()=>{N(U5())},[N]),ue=A.useCallback(()=>{N(V5())},[N]),P=A.useCallback(re=>{N(B5(re.key))},[N]),H=A.useCallback(re=>{N(Yn({handler:u,reactEvent:re}))},[N,u]),ae=A.useCallback(re=>{N(Yn({handler:f,reactEvent:re}))},[N,f]),se=A.useCallback(re=>{N(Yn({handler:d,reactEvent:re}))},[N,d]),Z=A.useCallback(re=>{N(Yn({handler:v,reactEvent:re}))},[N,v]),oe=A.useCallback(re=>{N(Yn({handler:_,reactEvent:re}))},[N,_]),he=A.useCallback(re=>{j&&N(F5(re)),N(Yn({handler:w,reactEvent:re}))},[N,j,w]),_e=A.useCallback(re=>{N(Yn({handler:x,reactEvent:re}))},[N,x]),J=ute(M);return A.createElement(JD.Provider,{value:C},A.createElement(HB.Provider,{value:I},A.createElement(J,{width:K??S?.width,height:be??S?.height,className:et("recharts-wrapper",r),style:ete({position:"relative",cursor:"default",width:K,height:be},S),onClick:xe,onContextMenu:H,onDoubleClick:ae,onFocus:le,onBlur:ue,onKeyDown:P,onMouseDown:se,onMouseEnter:V,onMouseLeave:Q,onMouseMove:ne,onMouseUp:Z,onTouchEnd:_e,onTouchMove:he,onTouchStart:oe,ref:pe},A.createElement(ite,null),n)))}),fte=["width","height","responsive","children","className","style","compact","title","desc"];function dte(e,t){if(e==null)return{};var n,r,s=hte(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:s,children:o,className:u,style:f,compact:d,title:h,desc:m}=e,p=dte(e,fte),v=kr(p);return d?A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement(Hj,{otherAttributes:v,title:h,desc:m},o)):A.createElement(cte,{className:u,style:f,width:n,height:r,responsive:s??!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},A.createElement(Hj,{otherAttributes:v,title:h,desc:m,ref:t},A.createElement(SQ,null,o)))});function h0(){return h0=Object.assign?Object.assign.bind():function(e){for(var t=1;tA.createElement(wte,{chartName:"ScatterChart",defaultTooltipEventType:"item",validateTooltipEventTypes:_te,tooltipPayloadSearcher:RG,categoricalChartProps:e,ref:t}));const Ox={bg:{primary:"#0B0D17",secondary:"#12152A",tertiary:"#1A1F3D",hover:"#222850"},accent:{purple:"#8B5CF6",purpleLight:"#A78BFA",purpleDim:"#6D28D9",blue:"#38BDF8",blueLight:"#7DD3FC",blueDim:"#0284C7",cyan:"#06B6D4",amber:"#F59E0B"},text:{primary:"#F1F5F9",secondary:"#94A3B8",muted:"#64748B"},heatmap:{bad:"#EF4444",badBg:"#7F1D1D",mid:"#EAB308",midBg:"#713F12",good:"#22C55E",goodBg:"#14532D"}},Ate={bg:{primary:"#FFFFFF",secondary:"#F8FAFC",tertiary:"#F1F5F9",hover:"#E2E8F0"},accent:{purple:"#7C3AED",purpleLight:"#6D28D9",purpleDim:"#5B21B6",blue:"#0284C7",blueLight:"#0369A1",blueDim:"#075985",cyan:"#0891B2",amber:"#D97706"},text:{primary:"#0F172A",secondary:"#334155",muted:"#64748B"},heatmap:{bad:"#DC2626",badBg:"#FEE2E2",mid:"#CA8A04",midBg:"#FEF9C3",good:"#16A34A",goodBg:"#DCFCE7"}},Tte={dark:Ox,light:Ate},Ex=A.createContext({mode:"dark",colors:Ox});function jx(){return A.useContext(Ex).colors}function Ote(){return A.useContext(Ex).mode}function Nf(e,t,n,r,s=!1,o){const u=o??Ox,f=n-t;let d=f===0?.5:(e-t)/f;s&&(d=1-d);const h=.1+d*.55;return{bg:Ete(r,h),text:u.text.primary}}function Ete(e,t){const n=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),s=parseInt(e.slice(5,7),16);return`rgba(${n}, ${r}, ${s}, ${t.toFixed(2)})`}function jte(e=640){const[t,n]=A.useState(!1);return A.useEffect(()=>{const r=()=>n(window.innerWidthwindow.removeEventListener("resize",r)},[e]),t}function Yj({base:e,sub:t}){return b.jsxs(b.Fragment,{children:[e,b.jsx("sub",{className:"text-[0.7em]",children:t})]})}function Mte({active:e,payload:t,xSub:n,ySub:r}){if(!e||!t?.length)return null;const s=t[0].payload,o=s.type==="cascade"?"Cascade":s.type==="2-part"?"2-Part":"Speech-to-Speech",u=s.type==="cascade"?"bg-purple/20 text-purple-light":s.type==="2-part"?"bg-emerald-500/20 text-emerald-400":"bg-blue/20 text-blue-light";return b.jsxs("div",{className:"bg-bg-tertiary border border-border-default rounded-lg p-3 shadow-xl max-w-xs",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1",children:s.name}),b.jsxs("div",{className:"flex gap-4 text-xs",children:[b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[b.jsx(Yj,{base:"EVA-A",sub:n}),":"]})," ",b.jsx("span",{className:"text-purple-light font-mono",children:s.plotX.toFixed(2)})]}),b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[b.jsx(Yj,{base:"EVA-X",sub:r}),":"]})," ",b.jsx("span",{className:"text-blue-light font-mono",children:s.plotY.toFixed(2)})]})]}),s.type==="cascade"&&b.jsxs("div",{className:"text-[10px] text-text-muted mt-1.5 space-y-0.5",children:[b.jsxs("div",{children:["STT: ",s.stt]}),b.jsxs("div",{children:["LLM: ",s.llm]}),b.jsxs("div",{children:["TTS: ",s.tts]})]}),b.jsx("div",{className:"mt-1.5",children:b.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium ${u}`,children:o})})]})}function Gj({x:e,y:t,base:n,sub:r,suffix:s,fill:o,angle:u,small:f}){const d=f?12:20,h=f?9:14,m=f?3:5;return b.jsxs("text",{x:e,y:t,fill:o,fontSize:d,fontWeight:600,textAnchor:"middle",transform:u?`rotate(${u}, ${e}, ${t})`:void 0,children:[n,b.jsx("tspan",{fontSize:h,dy:m,children:r}),s&&b.jsx("tspan",{fontSize:d,dy:-m,children:s})]})}const Wj=[0,.2,.4,.6,.8,1],m0="#A78BFA",kte="#C4B5FD",Y5="#F59E0B",Nte="#FBBF24",G5="#34D399",Cte="#6EE7B7",W5="#06B6D4";function Dte(e){const t=[];for(const n of e)e.some(s=>s.plotY>=n.plotY&&s.plotX>=n.plotX&&(s.plotY>n.plotY||s.plotX>n.plotX))||t.push(n);return t.sort((n,r)=>n.plotX-r.plotX).map(n=>({plotX:n.plotX,plotY:n.plotY}))}function Pte({frontier:e}){const t=mQ(),n=pQ();if(!t||!n||e.length<2)return null;const r=e.map(s=>`${t(s.plotX)},${n(s.plotY)}`).join(" ");return b.jsx("polyline",{points:r,fill:"none",stroke:W5,strokeWidth:2,strokeDasharray:"6 3",pointerEvents:"none"})}const Ul=[{title:"pass@1",description:b.jsx(b.Fragment,{children:"Average of per-sample scores, where each sample scores 1 if all metrics in category surpass metric-specific threshold, else 0."}),subscript:"pass@1",getX:e=>e.successRates.accuracy.pass_threshold,getY:e=>e.successRates.experience.pass_threshold,domain:[0,1]},{title:"pass@k (k=3)",description:b.jsx(b.Fragment,{children:"Percent of scenarios where at least 1 of k=3 trials surpasses metric-specific thresholds in all metrics in the category. ."}),subscript:"pass@k",getX:e=>e.successRates.accuracy.pass_at_k,getY:e=>e.successRates.experience.pass_at_k,domain:[0,1]},{title:"pass^k (k=3)",description:b.jsx(b.Fragment,{children:"Per-scenario probability of all k=3 trials succeeding (scenario pass rate raised to the k-th power) for that category, averaged across scenarios."}),subscript:"pass^k",getX:e=>e.successRates.accuracy.pass_k,getY:e=>e.successRates.experience.pass_k,domain:[0,1]},{title:"Mean",description:b.jsx(b.Fragment,{children:"Average of per-sample scores, where each sample's score is the mean of the submetrics in that category."}),subscript:"mean",getX:e=>e.successRates.accuracy.mean,getY:e=>e.successRates.experience.mean,domain:[0,1]}];function Rte(e){return e==="2-part"?{fill:G5,stroke:Cte}:e==="s2s"?{fill:Y5,stroke:Nte}:{fill:m0,stroke:kte}}function Lte({systems:e}){const t=jx(),[n,r]=A.useState(0),s=jte(),o=Ul[n],u=e.map(m=>({...m,plotX:o.getX(m),plotY:o.getY(m)})),f=Dte(u),d=()=>r(m=>(m-1+Ul.length)%Ul.length),h=()=>r(m=>(m+1)%Ul.length);return b.jsxs("div",{className:"bg-bg-secondary rounded-xl border border-border-default p-6",children:[b.jsx("div",{className:"flex flex-wrap justify-center gap-2 mb-6",children:Ul.map((m,p)=>b.jsx("button",{onClick:()=>r(p),className:`px-3 py-1 rounded-full text-xs font-medium transition-colors ${p===n?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:m.title},p))}),b.jsxs("div",{className:"flex items-center justify-between mb-6",children:[b.jsx("button",{onClick:d,className:"p-2 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(XR,{className:"w-6 h-6"})}),b.jsxs("div",{className:"text-center flex-1 px-4",children:[b.jsx("h3",{className:"text-xl font-semibold text-text-primary mb-2",children:o.title}),b.jsx("p",{className:"text-sm text-text-muted leading-loose max-w-xl mx-auto",children:o.description})]}),b.jsx("button",{onClick:h,className:"p-2 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(sM,{className:"w-6 h-6"})})]}),b.jsxs("div",{className:"flex flex-col lg:flex-row lg:items-center gap-6 max-w-4xl mx-auto",children:[b.jsx("div",{className:"flex-1 min-w-0",children:b.jsx("div",{style:{width:"100%",aspectRatio:"1"},className:"[&_.recharts-surface]:overflow-visible min-h-[300px] sm:min-h-[400px]",children:b.jsx(CV,{width:"100%",height:"100%",children:b.jsxs(Ste,{margin:{top:15,right:15,bottom:s?45:60,left:s?25:40},style:{overflow:"visible"},children:[b.jsx(O5,{strokeDasharray:"3 3",stroke:t.bg.tertiary}),b.jsx(C5,{type:"number",dataKey:"plotX",domain:o.domain,ticks:Wj,allowDataOverflow:!0,tickFormatter:m=>m.toFixed(1),stroke:t.text.muted,tick:{fill:t.text.secondary,fontSize:11},label:({viewBox:m})=>{const{x:p,y:v,width:x}=m;return b.jsx(Gj,{x:p+x/2,y:v+(s?35:50),base:"Accuracy (EVA-A",sub:o.subscript,suffix:")",fill:t.accent.purpleLight,small:s})}}),b.jsx(D5,{type:"number",dataKey:"plotY",domain:o.domain,ticks:Wj,allowDataOverflow:!0,tickFormatter:m=>m.toFixed(1),stroke:t.text.muted,tick:{fill:t.text.secondary,fontSize:11},label:({viewBox:m})=>{const{x:p,y:v,height:x}=m;return b.jsx(Gj,{x:p-(s?2:8),y:v+x/2,base:"Experience (EVA-X",sub:o.subscript,suffix:")",fill:t.accent.blueLight,angle:-90,small:s})}}),b.jsx(aW,{content:b.jsx(Mte,{xSub:o.subscript,ySub:o.subscript}),cursor:!1}),b.jsx(Pte,{frontier:f}),b.jsx(k5,{data:u,fill:m0,children:u.map(m=>{const{fill:p,stroke:v}=Rte(m.type);return b.jsx(bx,{fill:p,stroke:v,strokeWidth:1.5,r:8},m.id)})})]})})})}),b.jsxs("div",{className:"flex flex-wrap justify-center gap-x-4 gap-y-2 lg:flex-col lg:gap-3 lg:flex-shrink-0 lg:pr-2",children:[b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:m0}}),b.jsx("span",{className:"whitespace-nowrap",children:"Cascade"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:G5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Audio Native"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:Y5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Speech-to-Speech"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-5 sm:w-6 h-0 border-t-2 border-dashed flex-shrink-0",style:{borderColor:W5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Pareto Frontier"})]})]})]})]})}const zte=["task_completion","agent_tts_fidelity","faithfulness"],Ite=["turn_taking","conciseness","conversation_progression"],Bte={task_completion:"Task Completion",agent_tts_fidelity:"Agent Speech Fidelity",faithfulness:"Faithfulness"},Ute={turn_taking:"Turn Taking",conciseness:"Conciseness",conversation_progression:"Conversation Progression"},Zj=new Set(["response_speed"]),Vte=[{id:"ultravox-v0-7-kokoro",name:"ultravox v0.7 + kokoro",shortName:"ultravox v0.7 + kokoro",stt:"-",llm:"ultravox v0.7",tts:"kokoro",type:"2-part",evaA:.3933,evaX:.3067,accuracyMetrics:{task_completion:.58,agent_tts_fidelity:.9662,faithfulness:.45},experienceMetrics:{turn_taking:.3782,conciseness:.7532,conversation_progression:.64},diagnosticMetrics:{key_entity_transcription:.784,response_speed:5.9224},successRates:{accuracy:{pass_threshold:.3933,mean:.6654,pass_at_k:.56,pass_k:.2793},experience:{pass_threshold:.3067,mean:.5905,pass_at_k:.54,pass_k:.1807}}},{id:"gpt-realtime-mini",name:"gpt-realtime-mini",shortName:"gpt-realtime-mini",stt:"-",llm:"gpt-realtime-mini",tts:"-",type:"s2s",evaA:.18,evaX:.4267,accuracyMetrics:{task_completion:.2667,agent_tts_fidelity:.9833,faithfulness:.1733},experienceMetrics:{turn_taking:.7801,conciseness:.7477,conversation_progression:.3533},diagnosticMetrics:{key_entity_transcription:.8925,response_speed:3.6711},successRates:{accuracy:{pass_threshold:.18,mean:.4744,pass_at_k:.32,pass_k:.1044},experience:{pass_threshold:.4267,mean:.627,pass_at_k:.72,pass_k:.2163}}},{id:"ultravox-realtime",name:"ultravox-realtime",shortName:"ultravox-realtime",stt:"-",llm:"ultravox-realtime",tts:"-",type:"2-part",evaA:.28,evaX:.44,accuracyMetrics:{task_completion:.4867,agent_tts_fidelity:.9426,faithfulness:.3167},experienceMetrics:{turn_taking:.519,conciseness:.6948,conversation_progression:.5933},diagnosticMetrics:{key_entity_transcription:.8484,response_speed:4.847},successRates:{accuracy:{pass_threshold:.28,mean:.582,pass_at_k:.46,pass_k:.1511},experience:{pass_threshold:.44,mean:.6024,pass_at_k:.76,pass_k:.2356}}},{id:"gpt-4o-mini-transcribe-gpt-5-mini-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-5-mini + gpt-4o-mini-tts",shortName:"gpt-5-mini (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-5-mini",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.2095,evaX:.1267,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9707,faithfulness:.3},experienceMetrics:{turn_taking:.2703,conciseness:.7162,conversation_progression:.4533},diagnosticMetrics:{key_entity_transcription:.6801,response_speed:5.9619},successRates:{accuracy:{pass_threshold:.2095,mean:.5398,pass_at_k:.5,pass_k:.0694},experience:{pass_threshold:.1267,mean:.4799,pass_at_k:.32,pass_k:.0274}}},{id:"gpt-4o-mini-transcribe-sonnet-4-6-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + sonnet-4.6 + gpt-4o-mini-tts",shortName:"sonnet-4.6 (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"sonnet-4.6",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.36,evaX:.02,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.9605,faithfulness:.6433},experienceMetrics:{turn_taking:.1043,conciseness:.8298,conversation_progression:.7767},diagnosticMetrics:{key_entity_transcription:.6167,response_speed:8.2609},successRates:{accuracy:{pass_threshold:.36,mean:.7146,pass_at_k:.62,pass_k:.1867},experience:{pass_threshold:.02,mean:.5703,pass_at_k:.06,pass_k:.0022}}},{id:"gpt-4o-mini-transcribe-gpt-oss-20b-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-oss-20b + gpt-4o-mini-tts",shortName:"gpt-oss-20b (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-oss-20b",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.1267,evaX:.3,accuracyMetrics:{task_completion:.3,agent_tts_fidelity:.9516,faithfulness:.1767},experienceMetrics:{turn_taking:.5225,conciseness:.6871,conversation_progression:.3567},diagnosticMetrics:{key_entity_transcription:.617,response_speed:4.8793},successRates:{accuracy:{pass_threshold:.1267,mean:.4761,pass_at_k:.24,pass_k:.0541},experience:{pass_threshold:.3,mean:.5221,pass_at_k:.6,pass_k:.1356}}},{id:"gpt-4o-mini-transcribe-gpt-oss-120b-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-oss-120b + gpt-4o-mini-tts",shortName:"gpt-oss-120b (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-oss-120b",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.1733,evaX:.54,accuracyMetrics:{task_completion:.2867,agent_tts_fidelity:.9668,faithfulness:.3433},experienceMetrics:{turn_taking:.6251,conciseness:.7655,conversation_progression:.5367},diagnosticMetrics:{key_entity_transcription:.5824,response_speed:4.2443},successRates:{accuracy:{pass_threshold:.1733,mean:.5323,pass_at_k:.34,pass_k:.077},experience:{pass_threshold:.54,mean:.6424,pass_at_k:.94,pass_k:.2467}}},{id:"parakeet-ctc-1-1b-gpt-oss-20b-magpie",name:"parakeet-ctc-1.1b + gpt-oss-20b + magpie",shortName:"gpt-oss-20b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-20b",tts:"magpie",type:"cascade",evaA:.16,evaX:.34,accuracyMetrics:{task_completion:.4,agent_tts_fidelity:.935,faithfulness:.14},experienceMetrics:{turn_taking:.418,conciseness:.7205,conversation_progression:.4933},diagnosticMetrics:{key_entity_transcription:.8148,response_speed:5.9816},successRates:{accuracy:{pass_threshold:.16,mean:.4917,pass_at_k:.32,pass_k:.0711},experience:{pass_threshold:.34,mean:.5439,pass_at_k:.7,pass_k:.1444}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-magpie",name:"parakeet-ctc-1.1b + gpt-oss-120b + magpie",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"magpie",type:"cascade",evaA:.1678,evaX:.42,accuracyMetrics:{task_completion:.3667,agent_tts_fidelity:.9065,faithfulness:.36},experienceMetrics:{turn_taking:.4663,conciseness:.7522,conversation_progression:.63},diagnosticMetrics:{key_entity_transcription:.8415,response_speed:5.2856},successRates:{accuracy:{pass_threshold:.1678,mean:.544,pass_at_k:.3061,pass_k:.0718},experience:{pass_threshold:.42,mean:.6162,pass_at_k:.72,pass_k:.2022}}},{id:"parakeet-ctc-1-1b-qwen3-5-27b-kokoro",name:"parakeet-ctc-1.1b + qwen3.5-27b + kokoro",shortName:"qwen3.5-27b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"qwen3.5-27b",tts:"kokoro",type:"cascade",evaA:.4133,evaX:.06,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.9896,faithfulness:.47},experienceMetrics:{turn_taking:.2249,conciseness:.6823,conversation_progression:.6167},diagnosticMetrics:{key_entity_transcription:.8093,response_speed:7.4968},successRates:{accuracy:{pass_threshold:.4133,mean:.6665,pass_at_k:.7,pass_k:.2104},experience:{pass_threshold:.06,mean:.508,pass_at_k:.14,pass_k:.0156}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-kokoro",name:"parakeet-ctc-1.1b + gpt-oss-120b + kokoro",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"kokoro",type:"cascade",evaA:.2333,evaX:.24,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9601,faithfulness:.3267},experienceMetrics:{turn_taking:.3569,conciseness:.7582,conversation_progression:.6167},diagnosticMetrics:{key_entity_transcription:.7951,response_speed:6.0521},successRates:{accuracy:{pass_threshold:.2333,mean:.5489,pass_at_k:.46,pass_k:.1059},experience:{pass_threshold:.24,mean:.5772,pass_at_k:.5,pass_k:.0844}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-chatterbox-turbo",name:"parakeet-ctc-1.1b + gpt-oss-120b + chatterbox-turbo",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"chatterbox-turbo",type:"cascade",evaA:.1533,evaX:.0267,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.8883,faithfulness:.32},experienceMetrics:{turn_taking:.0645,conciseness:.7841,conversation_progression:.49},diagnosticMetrics:{key_entity_transcription:.8053,response_speed:9.8321},successRates:{accuracy:{pass_threshold:.1533,mean:.5228,pass_at_k:.32,pass_k:.057},experience:{pass_threshold:.0267,mean:.4462,pass_at_k:.06,pass_k:.0074}}},{id:"parakeet-ctc-1-1b-qwen3-5-27b-chatterbox-turbo",name:"parakeet-ctc-1.1b + qwen3.5-27b + chatterbox-turbo",shortName:"qwen3.5-27b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"qwen3.5-27b",tts:"chatterbox-turbo",type:"cascade",evaA:.2533,evaX:0,accuracyMetrics:{task_completion:.5333,agent_tts_fidelity:.8513,faithfulness:.42},experienceMetrics:{turn_taking:.0225,conciseness:.6914,conversation_progression:.56},diagnosticMetrics:{key_entity_transcription:.8268,response_speed:12.0952},successRates:{accuracy:{pass_threshold:.2533,mean:.6015,pass_at_k:.56,pass_k:.0815},experience:{pass_threshold:0,mean:.4246,pass_at_k:0,pass_k:0}}},{id:"voxtral-mini-3b-gpt-oss-20b-magpie",name:"voxtral-mini-3b + gpt-oss-20b + magpie",shortName:"gpt-oss-20b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-20b",tts:"magpie",type:"cascade",evaA:.1133,evaX:.3867,accuracyMetrics:{task_completion:.3733,agent_tts_fidelity:.9349,faithfulness:.1367},experienceMetrics:{turn_taking:.5951,conciseness:.6917,conversation_progression:.3667},diagnosticMetrics:{key_entity_transcription:.6618,response_speed:4.4834},successRates:{accuracy:{pass_threshold:.1133,mean:.4816,pass_at_k:.24,pass_k:.0526},experience:{pass_threshold:.3867,mean:.5512,pass_at_k:.78,pass_k:.1541}}},{id:"voxtral-mini-3b-gpt-oss-120b-magpie",name:"voxtral-mini-3b + gpt-oss-120b + magpie",shortName:"gpt-oss-120b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-120b",tts:"magpie",type:"cascade",evaA:.1477,evaX:.5667,accuracyMetrics:{task_completion:.3467,agent_tts_fidelity:.9467,faithfulness:.2967},experienceMetrics:{turn_taking:.6659,conciseness:.7494,conversation_progression:.4767},diagnosticMetrics:{key_entity_transcription:.6906,response_speed:3.3998},successRates:{accuracy:{pass_threshold:.1477,mean:.5279,pass_at_k:.3265,pass_k:.062},experience:{pass_threshold:.5667,mean:.6307,pass_at_k:.92,pass_k:.3341}}},{id:"voxtral-mini-3b-gpt-oss-120b-chatterbox-turbo",name:"voxtral-mini-3b + gpt-oss-120b + chatterbox-turbo",shortName:"gpt-oss-120b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-120b",tts:"chatterbox-turbo",type:"cascade",evaA:.16,evaX:.0933,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9049,faithfulness:.3467},experienceMetrics:{turn_taking:.204,conciseness:.7701,conversation_progression:.5233},diagnosticMetrics:{key_entity_transcription:.6376,response_speed:7.2744},successRates:{accuracy:{pass_threshold:.16,mean:.5372,pass_at_k:.28,pass_k:.08},experience:{pass_threshold:.0933,mean:.4991,pass_at_k:.28,pass_k:.0104}}},{id:"voxtral-mini-3b-qwen3-5-27b-chatterbox-turbo",name:"voxtral-mini-3b + qwen3.5-27b + chatterbox-turbo",shortName:"qwen3.5-27b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"qwen3.5-27b",tts:"chatterbox-turbo",type:"cascade",evaA:.2067,evaX:0,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.796,faithfulness:.3967},experienceMetrics:{turn_taking:.0296,conciseness:.7165,conversation_progression:.5167},diagnosticMetrics:{key_entity_transcription:.7408,response_speed:14.4124},successRates:{accuracy:{pass_threshold:.2067,mean:.5775,pass_at_k:.52,pass_k:.0452},experience:{pass_threshold:0,mean:.4209,pass_at_k:0,pass_k:0}}},{id:"voxtral-mini-3b-qwen3-5-27b-kokoro",name:"voxtral-mini-3b + qwen3.5-27b + kokoro",shortName:"qwen3.5-27b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"qwen3.5-27b",tts:"kokoro",type:"cascade",evaA:.4933,evaX:.2467,accuracyMetrics:{task_completion:.5933,agent_tts_fidelity:.9949,faithfulness:.5067},experienceMetrics:{turn_taking:.374,conciseness:.6838,conversation_progression:.5433},diagnosticMetrics:{key_entity_transcription:.7518,response_speed:5.8276},successRates:{accuracy:{pass_threshold:.4933,mean:.6983,pass_at_k:.74,pass_k:.3348},experience:{pass_threshold:.2467,mean:.5337,pass_at_k:.5,pass_k:.0985}}},{id:"whisper-large-v3-gpt-oss-20b-chatterbox-turbo",name:"whisper-large-v3 + gpt-oss-20b + chatterbox-turbo",shortName:"gpt-oss-20b (whisper-large-v3)",stt:"whisper-large-v3",llm:"gpt-oss-20b",tts:"chatterbox-turbo",type:"cascade",evaA:.0733,evaX:.04,accuracyMetrics:{task_completion:.38,agent_tts_fidelity:.8849,faithfulness:.1533},experienceMetrics:{turn_taking:.1816,conciseness:.7343,conversation_progression:.44},diagnosticMetrics:{key_entity_transcription:.6696,response_speed:7.5545},successRates:{accuracy:{pass_threshold:.0733,mean:.4728,pass_at_k:.18,pass_k:.017},experience:{pass_threshold:.04,mean:.4519,pass_at_k:.12,pass_k:.0044}}},{id:"whisper-large-v3-gpt-oss-120b-kokoro",name:"whisper-large-v3 + gpt-oss-120b + kokoro",shortName:"gpt-oss-120b (whisper-large-v3)",stt:"whisper-large-v3",llm:"gpt-oss-120b",tts:"kokoro",type:"cascade",evaA:.1667,evaX:.52,accuracyMetrics:{task_completion:.28,agent_tts_fidelity:.9645,faithfulness:.2967},experienceMetrics:{turn_taking:.6148,conciseness:.7536,conversation_progression:.5433},diagnosticMetrics:{key_entity_transcription:.6573,response_speed:4.1026},successRates:{accuracy:{pass_threshold:.1667,mean:.5137,pass_at_k:.32,pass_k:.0763},experience:{pass_threshold:.52,mean:.6372,pass_at_k:.84,pass_k:.3244}}}],qte=["#F59E0B","#38BDF8","#34D399","#A78BFA","#F87171","#22D3EE","#FB923C","#818CF8","#F472B6","#4ADE80","#FACC15","#2DD4BF","#C084FC","#FB7185","#67E8F9","#A3E635"],$te=["#B45309","#0369A1","#047857","#6D28D9","#B91C1C","#0E7490","#C2410C","#4338CA","#BE185D","#15803D","#A16207","#0D9488","#7C3AED","#E11D48","#0891B2","#65A30D"];function Fte(e,t){const n=new Set;for(const o of e)o.stt!=="-"&&n.add(o.stt),n.add(o.llm),o.tts!=="-"&&n.add(o.tts);const r=new Map;let s=0;for(const o of n)r.set(o,t[s%t.length]),s++;return r}function Qj({system:e,componentColors:t}){if(e.type==="s2s"||e.type==="2-part"){if(e.tts!=="-")return b.jsxs("span",{className:"text-sm leading-relaxed inline-flex flex-wrap items-baseline",children:[b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.llm)},children:e.llm}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.tts)},children:e.tts})]});const n=t.get(e.llm)||"#F1F5F9";return b.jsx("span",{style:{color:n},children:e.llm})}return b.jsxs("span",{className:"text-sm leading-relaxed inline-flex flex-wrap items-baseline",children:[b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.stt)},children:e.stt}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.llm)},children:e.llm}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.tts)},children:e.tts})]})}const Hte=[{key:null,label:"Default"},{key:"system_stt",label:"STT"},{key:"system_llm",label:"LLM"},{key:"system_tts",label:"TTS"}];function Vl({active:e,dir:t}){return e?t==="desc"?b.jsx(UR,{className:"w-3 h-3 inline ml-0.5"}):b.jsx(qR,{className:"w-3 h-3 inline ml-0.5"}):null}function Jj({title:e,description:t,metricKeys:n,metricLabels:r,dataKey:s,baseColor:o,aggregateColumns:u,aggregateColor:f="#F59E0B",systems:d}){const h=jx(),m=Ote(),p=u??[],v=m==="light"?$te:qte,x=A.useMemo(()=>Fte(d,v),[d,v]),[w,_]=A.useState(null),[S,O]=A.useState("desc"),[M,j]=A.useState(!1),[k,N]=A.useState({top:0,left:0}),C=A.useRef(null),L=A.useRef(null),[I,Y]=A.useState("scores"),te=A.useCallback(()=>{if(C.current){const Z=C.current.getBoundingClientRect();N({top:Z.bottom+4,left:Z.left})}j(Z=>!Z)},[]);A.useEffect(()=>{function Z(oe){L.current&&!L.current.contains(oe.target)&&C.current&&!C.current.contains(oe.target)&&j(!1)}if(M)return document.addEventListener("mousedown",Z),()=>document.removeEventListener("mousedown",Z)},[M]);function ie(Z){w===Z?O(oe=>oe==="desc"?"asc":"desc"):(_(Z),O("desc"))}function K(Z){Z===null?_(null):w===Z?O(oe=>oe==="desc"?"asc":"desc"):(_(Z),O("asc")),j(!1)}const be=A.useMemo(()=>{if(!w)return[...d].sort((he,_e)=>{const J=he.type==="s2s"||he.type==="2-part",re=_e.type==="s2s"||_e.type==="2-part";return J&&!re?-1:!J&&re?1:he.stt.localeCompare(_e.stt)});const Z=he=>{if(w==="system_stt")return he.stt;if(w==="system_llm")return he.llm;if(w==="system_tts")return he.tts;const _e=p.find(J=>J.key===w);return _e?_e.getValue(he):he[s][w]??0},oe=(he,_e)=>{const J=Z(he),re=Z(_e);if(typeof J=="string"&&typeof re=="string")return S==="asc"?J.localeCompare(re):re.localeCompare(J);const Se=J,ee=re;return S==="desc"?ee-Se:Se-ee};return[...d].sort(oe)},[w,S,p,s]),pe={};for(const Z of n){const oe=d.map(he=>he[s][Z]??0);pe[Z]={min:Math.min(...oe),max:Math.max(...oe)}}const xe={};for(const Z of p){const oe=d.map(he=>Z.getValue(he));xe[Z.key]={min:Math.min(...oe),max:Math.max(...oe)}}const V=p.length+n.length,Q=35,ne=`${(100-Q)/V}%`,le=`${Q}%`,ue="text-center py-3 px-1 font-bold text-xs leading-snug cursor-pointer select-none hover:bg-bg-hover/50 transition-colors",P=I==="scores"?p:[],H=I==="metrics"?n:[],ae=I==="scores"?p.length:n.length,se=`${(100-Q)/ae}%`;return b.jsxs("div",{className:"bg-bg-secondary rounded-xl border border-border-default p-4 sm:p-6",children:[b.jsx("h3",{className:"text-lg font-semibold text-text-primary mb-1",children:e}),b.jsx("p",{className:"text-sm text-text-secondary mb-4",children:t}),p.length>0&&n.length>0&&b.jsxs("div",{className:"flex gap-2 mb-4 md:hidden",children:[b.jsx("button",{onClick:()=>Y("scores"),className:`flex-1 px-3 py-2 rounded-lg text-xs font-medium transition-colors ${I==="scores"?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:"Aggregate Scores"}),b.jsx("button",{onClick:()=>Y("metrics"),className:`flex-1 px-3 py-2 rounded-lg text-xs font-medium transition-colors ${I==="metrics"?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:"Individual Metrics"})]}),b.jsx("div",{className:"hidden md:block overflow-x-auto",children:b.jsxs("table",{className:"w-full text-sm",style:{tableLayout:"fixed"},children:[b.jsx("thead",{children:b.jsxs("tr",{className:"border-b border-border-default",children:[b.jsxs("th",{className:"text-left py-3 px-3 text-text-muted font-medium text-sm sticky left-0 bg-bg-secondary z-10",style:{width:le},children:[b.jsxs("button",{ref:C,onClick:te,className:"flex items-center gap-1 hover:text-text-primary transition-colors",children:["System",b.jsx(ai,{className:"w-3.5 h-3.5"}),w?.startsWith("system_")&&b.jsx(Vl,{active:!0,dir:S})]}),M&&G0.createPortal(b.jsx("div",{ref:L,className:"bg-bg-tertiary border border-border-default rounded-lg shadow-xl py-1 min-w-[100px]",style:{position:"fixed",top:k.top,left:k.left,zIndex:9999},children:Hte.map(Z=>b.jsx("button",{onClick:()=>K(Z.key),className:`block w-full text-left px-3 py-1.5 text-xs hover:bg-bg-hover transition-colors ${w===Z.key||Z.key===null&&w===null?"text-purple-light font-medium":"text-text-secondary"}`,children:Z.label},Z.key??"default"))}),document.body)]}),p.map((Z,oe)=>b.jsxs("th",{className:`${ue} ${oe===p.length-1?"border-r-2 border-border-default":""}`,style:{color:f,width:ne},onClick:()=>ie(Z.key),children:[Z.label,b.jsx(Vl,{active:w===Z.key,dir:S})]},Z.key)),n.map(Z=>b.jsxs("th",{className:`${ue} text-text-primary`,style:{width:ne},onClick:()=>ie(Z),children:[r[Z]||Z,b.jsx(Vl,{active:w===Z,dir:S})]},Z))]})}),b.jsx("tbody",{children:be.map(Z=>b.jsxs("tr",{className:"border-b border-border-default/30",children:[b.jsx("td",{className:"py-2.5 px-3 sticky left-0 bg-bg-secondary z-10 whitespace-nowrap",children:b.jsx(Qj,{system:Z,componentColors:x})}),p.map((oe,he)=>{const _e=oe.getValue(Z),{min:J,max:re}=xe[oe.key],{bg:Se,text:ee}=Nf(_e,J,re,f,!1,h);return b.jsx("td",{className:`py-1.5 px-1 text-center ${he===p.length-1?"border-r-2 border-border-default":""}`,children:b.jsx("div",{className:"rounded-md px-0.5 py-1.5 font-mono text-xs font-medium",style:{backgroundColor:Se,color:ee},children:_e.toFixed(2)})},oe.key)}),n.map(oe=>{const he=Z[s][oe]??0,{min:_e,max:J}=pe[oe],re=Zj.has(oe),{bg:Se,text:ee}=Nf(he,_e,J,o,re,h);return b.jsx("td",{className:"py-1.5 px-1 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1.5 font-mono text-xs font-medium",style:{backgroundColor:Se,color:ee},children:he.toFixed(2)})},oe)})]},Z.id))})]})}),b.jsx("div",{className:"md:hidden overflow-x-auto",children:b.jsxs("table",{className:"w-full text-sm",style:{tableLayout:"fixed"},children:[b.jsx("thead",{children:b.jsxs("tr",{className:"border-b border-border-default",children:[b.jsx("th",{className:"text-left py-3 px-2 text-text-muted font-medium text-xs sticky left-0 bg-bg-secondary z-10",style:{width:le},children:"System"}),P.map(Z=>b.jsxs("th",{className:`${ue} text-[10px] sm:text-xs`,style:{color:f,width:se},onClick:()=>ie(Z.key),children:[Z.label.replace("EVA-A ",""),b.jsx(Vl,{active:w===Z.key,dir:S})]},Z.key)),H.map(Z=>b.jsxs("th",{className:`${ue} text-text-primary text-[10px] sm:text-xs`,style:{width:se},onClick:()=>ie(Z),children:[r[Z]||Z,b.jsx(Vl,{active:w===Z,dir:S})]},Z))]})}),b.jsx("tbody",{children:be.map(Z=>b.jsxs("tr",{className:"border-b border-border-default/30",children:[b.jsx("td",{className:"py-2 px-2 sticky left-0 bg-bg-secondary z-10 text-xs",children:b.jsx(Qj,{system:Z,componentColors:x})}),P.map(oe=>{const he=oe.getValue(Z),{min:_e,max:J}=xe[oe.key],{bg:re,text:Se}=Nf(he,_e,J,f,!1,h);return b.jsx("td",{className:"py-1 px-0.5 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1 font-mono text-[10px] sm:text-xs font-medium",style:{backgroundColor:re,color:Se},children:he.toFixed(2)})},oe.key)}),H.map(oe=>{const he=Z[s][oe]??0,{min:_e,max:J}=pe[oe],re=Zj.has(oe),{bg:Se,text:ee}=Nf(he,_e,J,o,re,h);return b.jsx("td",{className:"py-1 px-0.5 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1 font-mono text-[10px] sm:text-xs font-medium",style:{backgroundColor:Se,color:ee},children:he.toFixed(2)})},oe)})]},Z.id))})]})})]})}const Kte=[{title:"Transcription failures cascade into low task completion",description:"Transcription failures around last names and confirmation codes cascade into low task completion as the agent is unable to pull up the user's booking and proceed with the request."},{title:"Turn taking remains a key challenge",description:"Effective turn taking remains a key challenge for cascade systems — most turns are late (>4 seconds)."},{title:"Speech synthesis struggles with alphanumeric codes",description:"Speech synthesis systems generally produce the intended speech but struggle the most with alphanumeric codes, often dropping or switching characters and letters."},{title:"LLMs produce verbose, non-voice-appropriate content",description:"LLMs struggle to produce concise, voice-appropriate content, particularly when trying to list flight options for the user."},{title:"Transcription failures reduce conversation efficiency",description:"Transcription failures also lead to inefficient conversation progression, as the agent cannot move the conversation forward when it's stuck trying to retrieve the user's reservation."},{title:"Audio-native systems show promise",description:"Both audio-native systems sit on the Pareto frontier, while the single speech-to-speech system does not — we aim to benchmark more audio-native and s2s systems to see if this holds across the architectural classes."}],Xte=[{title:"Accuracy–experience trade-off",description:"The Pareto frontier reveals a clear accuracy-experience tradeoff across systems, systems that push harder on accuracy are doing so at the cost of conversational experience, and vice versa."},{title:"Low Pass Rates",description:"Performance remains far from saturated — no system clears 0.5 pass@1 on accuracy, and only a few systems exceed 0.50 EVA-X pass@1, suggesting ample opportunities for improvement."},{title:"Sparse Frontier",description:"Only a few systems sit on the Pareto frontier, meaning most systems are strictly dominated. This concentrates the real decision space: only a small subset of system choices actually matter for navigating the accuracy–experience tradeoff."}],Yte=[{key:"eva_a_pass",label:"EVA-A pass@1",getValue:e=>e.successRates.accuracy.pass_threshold},{key:"eva_a_mean",label:"EVA-A Mean",getValue:e=>e.successRates.accuracy.mean}],Gte=[{key:"eva_x_pass",label:"EVA-X pass@1",getValue:e=>e.successRates.experience.pass_threshold},{key:"eva_x_mean",label:"EVA-X Mean",getValue:e=>e.successRates.experience.mean}];function Wte(){const e=jx(),t=Vte;return b.jsx(wo,{id:"leaderboard",title:"Early Results",subtitle:"Early results on the airline domain (50 scenarios, 3 trials each).",children:b.jsxs("div",{className:"space-y-8",children:[b.jsx(Lte,{systems:t}),b.jsxs("div",{className:"rounded-xl border border-purple/20 bg-purple/5 p-6",children:[b.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[b.jsx("div",{className:"w-9 h-9 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(US,{className:"w-5 h-5 text-purple-light"})}),b.jsx("h3",{className:"text-lg font-bold text-text-primary",children:"Pareto Analysis"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:Xte.map((n,r)=>b.jsxs("div",{className:"rounded-lg bg-bg-secondary border border-border-default p-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-2",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:n.description})]},r))})]}),b.jsx(Jj,{title:"Accuracy Metrics (EVA-A)",description:"Per-metric scores for accuracy. All values normalized to 0-1 (higher is better).",metricKeys:zte,metricLabels:Bte,dataKey:"accuracyMetrics",baseColor:e.accent.purple,aggregateColumns:Yte,aggregateColor:"#F59E0B",systems:t}),b.jsx(Jj,{title:"Experience Metrics (EVA-X)",description:"Per-metric scores for conversational experience. All values normalized to 0-1 (higher is better).",metricKeys:Ite,metricLabels:Ute,dataKey:"experienceMetrics",baseColor:e.accent.blue,aggregateColumns:Gte,aggregateColor:"#F59E0B",systems:t}),b.jsxs("div",{className:"rounded-xl border border-purple/20 bg-purple/5 p-6",children:[b.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[b.jsx("div",{className:"w-9 h-9 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(US,{className:"w-5 h-5 text-purple-light"})}),b.jsx("h3",{className:"text-lg font-bold text-text-primary",children:"Key Insights"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:Kte.map((n,r)=>b.jsxs("div",{className:"rounded-lg bg-bg-secondary border border-border-default p-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-2",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:n.description})]},r))})]})]})})}const Zte={high_level_user_goal:"You want to move your LAX to SFO flight today from the late afternoon to an earlier direct flight that leaves before 2:00 PM, as long as the same-day change fee stays under $80.",decision_tree:{must_have_criteria:["New departure time is today (2026-06-18) and departs LAX before 2:00 PM Pacific.","Same-day change fee is under $80 total (acceptable: $0 to $79.99).","It is a direct flight from LAX to SFO (no connections and no airport changes)."],negotiation_behavior:["If the agent asks for verification details, provide your confirmation code and last name exactly as given in information_required, then wait for the agent to read back your reservation and confirm it is yours; if they read back a different name or itinerary, correct them and re-provide the details.","When the agent offers earlier-flight options, evaluate each option against ALL must-have criteria: (a) date is 2026-06-18, (b) LAX departure time is before 2:00 PM PT, (c) direct LAX→SFO, (d) same-day change fee is under $80.","If both an 11:00 AM and a 1:00 PM direct option meet all must-haves, choose the earliest departure (11:00 AM).","If only one option meets all must-haves, accept that option.",'Before the agent finalizes anything, if the agent has not clearly stated the exact same-day change fee amount, ask: "What will the change fee be in total?" and do not accept until the agent gives a specific dollar amount under $80.','If the agent proposes any option that departs at or after 2:00 PM, has a connection, changes airports, or has a fee of $80 or more, reject it and restate the must-haves once: "It needs to be today, direct LAX to SFO, leaving before 2 PM, and the fee has to be under $80—can you check again?"',"If after one additional search/attempt the agent still cannot offer any option that meets all must-haves, move to failure_condition."],resolution_condition:"The agent has confirmed the rebooking is completed (not just planned) to a direct LAX→SFO flight departing on 2026-06-18 before 2:00 PM PT, has stated the same-day change fee is under $80, AND has provided a concrete post-change booking reference (e.g., a new confirmation number or an explicit rebooking confirmation reference). End the call.",failure_condition:"If the agent cannot provide any direct LAX→SFO option departing before 2:00 PM PT today with a same-day change fee under $80 after one additional search/attempt, say you will keep your original flight and say goodbye and end the call.",escalation_behavior:"Do not ask to speak to a supervisor or live agent. If the agent offers to transfer you to a live agent, you must decline. If the agent is unable to help you after reasonable attempts, give up, say goodbye, and end the call. Never speak to a live agent. If the agent attempts to transfer you anyways, hang up using end_call.",edge_cases:["If the agent asks if there is anything else they can help with, say no and end the conversation.","Never invent new goals, requests, or problems beyond what is defined here.","Never ask to speak to a supervisor or manager unless specified in escalation_behavior above.","If the agent suggests flying from or to a different airport than originally booked, decline and insist on LAX to SFO only.","If the agent suggests standby instead of a confirmed earlier flight, decline standby and ask for a confirmed seat on an earlier direct flight before 2:00 PM."]},information_required:{confirmation_number:"6VORJU",first_name:"Kenji",last_name:"Thompson",travel_date:"2026-06-18",origin_airport:"LAX",destination_airport:"SFO",seat_preference:{first_choice:"window",second_choice:"aisle",third_choice:"middle"},original_travel_details:[{origin:"LAX",destination:"SFO",flight_date:"2026-06-18",departure_time:"17:30",status:"confirmed"}]}},Qte="You're direct and to the point—you don't have time for lengthy explanations or unnecessary back-and-forth. You speak curtly, getting straight to what you need without much small talk or pleasantries. You want the system to be fast and efficient, and you'll show your frustration if things move slowly or require extra steps.",Jte=JSON.parse(`[{"role":"assistant","content":"Hello! How can I help you today?","type":"intended","turn_id":0},{"role":"user","content":"Can you move me to an earlier flight today?","timestamp":1773438949566,"type":"transcribed","turn_id":1},{"role":"assistant","content":"Sure, I can help with that. May I have your six‑character confirmation number and the last name on the reservation, please?","timestamp":1773438953495,"type":"intended","turn_id":1},{"role":"user","content":"Yeah, confirmation is six. Victor Oscar Romeo Juliet Uniform. And the last name is Tom. Thompson.","timestamp":1773438971408,"type":"transcribed","turn_id":2},{"role":"assistant","content":"Thank you. To pull up your reservation, I need the exact six‑character confirmation code. I heard “V O R J U”. Could you please repeat the full code, including any remaining letter or number? Also, just to confirm, the last name is Thompson, correct?","timestamp":1773438978057,"type":"intended","turn_id":2},{"role":"user","content":"Yes. Last name is Thompson. The code is 6-8-1-1. Victor. Oscar Romeo Juliet Uniform.","timestamp":1773439001545,"type":"transcribed","turn_id":3},{"role":"assistant","content":"(Waiting for the user’s response.)","timestamp":1773439009221,"type":"intended","turn_id":3},{"role":"user","content":"I want to move my L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A- p.m. you you Thank you. Thank you. Same day change fee is under $80.","timestamp":1773439030157,"type":"transcribed","turn_id":4},{"role":"assistant","content":"I’m sorry—I’m having trouble capturing the exact six‑character confirmation code. Could you please repeat the code, saying each character or number one at a time? For example, you might say “six, eight, one, one, V, O.” Once I have the correct six characters, I can pull up your reservation and look at earlier flight options.","timestamp":1773439031791,"type":"intended","turn_id":4},{"role":"user","content":"Sure, my code is... Six. Victor. Oscar, Romeo, Juliet uniform.","timestamp":1773439063962,"type":"transcribed","turn_id":5},{"tool_name":"get_reservation","parameters":{"confirmation_number":"6VORJU","last_name":"Thompson"},"timestamp":1773439064577,"type":"tool_call","turn_id":5},{"tool_name":"get_reservation","tool_response":{"status":"success","reservation":{"confirmation_number":"6VORJU","status":"confirmed","passengers":[{"passenger_id":"PAX001","first_name":"Kenji","last_name":"Thompson","ticket_number":"1801234567890","email":"kenji.thompson@example.com","phone":"+1-310-555-0147","elite_status":null,"meal_preference":"none","seat_preference":"no_preference"}],"bookings":[{"journey_id":"FL_SK530_20260618","fare_class":"main_cabin","fare_paid":289,"status":"confirmed","segments":[{"flight_number":"SK530","date":"2026-06-18","fare_paid":289,"seat":null,"bags_checked":0,"meal_request":null}]}],"booking_date":"2026-05-20T13:22:00-07:00","fare_type":"non_refundable","ancillaries":{"seat_selection_fee":0,"bags_fee":0}}},"timestamp":1773439064577,"type":"tool_response","turn_id":5},{"tool_name":"get_flight_status","parameters":{"flight_number":"SK530","flight_date":"2026-06-18"},"timestamp":1773439065128,"type":"tool_call","turn_id":5},{"tool_name":"get_flight_status","tool_response":{"status":"success","journey":{"journey_id":"FL_SK530_20260618","date":"2026-06-18","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"status":"scheduled","bookable":true,"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null}}},"timestamp":1773439065128,"type":"tool_response","turn_id":5},{"tool_name":"search_rebooking_options","parameters":{"origin":"LAX","destination":"SFO","date":"2026-06-18","passenger_count":1,"fare_class":"any"},"timestamp":1773439065959,"type":"tool_call","turn_id":5},{"tool_name":"search_rebooking_options","tool_response":{"status":"success","options":[{"journey_id":"FL_SK090_SK410_20260618","origin":"LAX","destination":"SFO","num_stops":1,"total_duration_minutes":170,"segments":[{"segment_number":1,"flight_number":"SK090","origin":"LAX","destination":"SJC","scheduled_departure":"09:20","origin_utc_offset":-8,"scheduled_arrival":"10:30","destination_utc_offset":-8,"duration_minutes":70,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"33A","available_seats":{"basic_economy":8,"main_cabin":14,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":139,"main_cabin":229,"premium_economy":489,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}},{"segment_number":2,"flight_number":"SK410","origin":"SJC","destination":"SFO","scheduled_departure":"11:35","origin_utc_offset":-8,"scheduled_arrival":"12:10","destination_utc_offset":-8,"duration_minutes":35,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"12B","available_seats":{"basic_economy":9,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":89,"main_cabin":129,"premium_economy":239,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}}],"departure_time":"09:20","arrival_time":"12:10","available_seats":{"basic_economy":8,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fare":228},{"journey_id":"FL_SK130_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"13:00","arrival_time":"14:25","available_seats":{"basic_economy":6,"main_cabin":9,"premium_economy":3,"business":2,"first":0},"fare":189},{"journey_id":"FL_SK215_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK215","origin":"LAX","destination":"SFO","scheduled_departure":"14:40","origin_utc_offset":-8,"scheduled_arrival":"16:05","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"737-800","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"47D","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fares":{"basic_economy":169,"main_cabin":259,"premium_economy":529,"business":979,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"14:40","arrival_time":"16:05","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fare":169},{"journey_id":"FL_SK530_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":23,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"17:30","arrival_time":"18:55","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fare":179}],"count":4,"message":"4 flight(s) found"},"timestamp":1773439065959,"type":"tool_response","turn_id":5},{"role":"assistant","content":"I’ve found a few earlier flights from Los Angeles to San Francisco today.\\n\\n1. **One‑stop option** – depart at nine twenty a.m., connect in San Jose and arrive at twelve ten p.m. (fare $228 in main cabin). \\n2. **Direct flight** – depart at one o’clock p.m., arrive at two twenty‑five p.m. (fare $289, same as your current ticket). \\n3. **Direct flight** – depart at two forty p.m., arrive at four oh‑five p.m. (fare $259, a little cheaper).\\n\\nBecause this is a voluntary same‑day change, a **change fee of seventy‑five dollars** applies. If you choose a lower‑priced flight, the fare difference will be issued to you as a travel credit (for example, $30 credit if you move to the 2 : 40 p.m. flight, or $61 credit for the early morning connection).\\n\\nDo any of these options work for you? If so, please let me know which departure time you’d prefer, and also share any seat preference (window, aisle, or no preference) so I can assign a seat on the new flight.","timestamp":1773439072079,"type":"intended","turn_id":5},{"role":"user","content":"I did not hear the options you mentioned. Can you repeat the earlier LAX to SFO flights? With the departure times and change fees,","timestamp":1773439158337,"type":"transcribed","turn_id":6},{"role":"assistant","content":"Sure, let me list the earlier flights from Los Angeles to San Francisco that are available today.\\n\\n**Option 1 – one‑stop connection** \\n- Departure from LAX at nine twenty a.m. \\n- Connect in San Jose and arrive at San Francisco at twelve ten p.m. \\n- Main‑cabin fare is two‑hundred twenty‑eight dollars. \\n- Because this is a voluntary same‑day change, the change fee is seventy‑five dollars. Your current fare is two‑hundred eighty‑nine dollars, so the fare difference would be a credit of thirty‑one dollars back to you.\\n\\n**Option 2 – direct flight** \\n- Departure from LAX at one o’clock p.m. \\n- Arrive at San Francisco at two twenty‑five p.m. \\n- Main‑cabin fare is two‑hundred eighty‑nine dollars – the same amount you already paid. \\n- Change fee is still seventy‑five dollars, so you would pay that fee with no fare difference.\\n\\n**Option 3 – direct flight** \\n- Departure from LAX at two forty p.m. \\n- Arrive at San Francisco at four oh‑five p.m. \\n- Main‑cabin fare is two‑hundred fifty‑nine dollars. \\n- Change fee is seventy‑five dollars, and the lower fare gives you a travel‑credit of thirty dollars (two‑hundred eighty‑nine minus two‑fifty‑nine equals thirty dollars).\\n\\nAll of these flights are still open for booking today. Which departure time would you like to switch to? Also, do you have a seat preference—window, aisle, or no preference?","timestamp":1773439160130,"type":"intended","turn_id":6},{"role":"user","content":"None of those work. It needs to be today. Direct LAX. to SS. F-O. Leaving before 2 p.m. and the fee has to be under $80. Can you check again?","timestamp":1773439255746,"type":"transcribed","turn_id":7},{"tool_name":"search_rebooking_options","parameters":{"origin":"LAX","destination":"SFO","date":"2026-06-18","passenger_count":1,"fare_class":"any"},"timestamp":1773439268671,"type":"tool_call","turn_id":7},{"tool_name":"search_rebooking_options","tool_response":{"status":"success","options":[{"journey_id":"FL_SK090_SK410_20260618","origin":"LAX","destination":"SFO","num_stops":1,"total_duration_minutes":170,"segments":[{"segment_number":1,"flight_number":"SK090","origin":"LAX","destination":"SJC","scheduled_departure":"09:20","origin_utc_offset":-8,"scheduled_arrival":"10:30","destination_utc_offset":-8,"duration_minutes":70,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"33A","available_seats":{"basic_economy":8,"main_cabin":14,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":139,"main_cabin":229,"premium_economy":489,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}},{"segment_number":2,"flight_number":"SK410","origin":"SJC","destination":"SFO","scheduled_departure":"11:35","origin_utc_offset":-8,"scheduled_arrival":"12:10","destination_utc_offset":-8,"duration_minutes":35,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"12B","available_seats":{"basic_economy":9,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":89,"main_cabin":129,"premium_economy":239,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}}],"departure_time":"09:20","arrival_time":"12:10","available_seats":{"basic_economy":8,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fare":228},{"journey_id":"FL_SK130_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"13:00","arrival_time":"14:25","available_seats":{"basic_economy":6,"main_cabin":9,"premium_economy":3,"business":2,"first":0},"fare":189},{"journey_id":"FL_SK215_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK215","origin":"LAX","destination":"SFO","scheduled_departure":"14:40","origin_utc_offset":-8,"scheduled_arrival":"16:05","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"737-800","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"47D","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fares":{"basic_economy":169,"main_cabin":259,"premium_economy":529,"business":979,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"14:40","arrival_time":"16:05","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fare":169},{"journey_id":"FL_SK530_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":23,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"17:30","arrival_time":"18:55","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fare":179}],"count":4,"message":"4 flight(s) found"},"timestamp":1773439268671,"type":"tool_response","turn_id":7},{"role":"assistant","content":"I do have a direct flight that meets those criteria:\\n\\n- **Flight SK 130** – departs Los Angeles at **one o’clock p.m.**, arrives San Francisco at **two twenty‑five p.m.** \\n- It’s a nonstop service, just like your current booking. \\n- Because this is a same‑day voluntary change, the change fee is **seventy‑five dollars**, which is under your $80 limit. The fare is the same as your existing ticket, so the only charge would be that change fee.\\n\\nWould you like to switch to flight SK 130? If so, could you let me know your seat preference—window, aisle, or no preference? Once I have that, I’ll go ahead and rebook you.","timestamp":1773439270267,"type":"intended","turn_id":7},{"role":"user","content":"That one works. I'll take the flight that leaves at 1:00 PM. Seek Preferences window.","timestamp":1773439326852,"type":"transcribed","turn_id":8},{"tool_name":"rebook_flight","parameters":{"confirmation_number":"6VORJU","journey_id":"FL_SK530_20260618","new_journey_id":"FL_SK130_20260618","rebooking_type":"voluntary","waive_change_fee":false,"new_fare_class":null},"timestamp":1773439328182,"type":"tool_call","turn_id":8},{"tool_name":"rebook_flight","tool_response":{"status":"success","confirmation_number":"6VORJU","new_journey":{"journey_id":"FL_SK130_20260618","num_stops":0,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure":"13:00","arrival":"14:25","origin":"LAX","destination":"SFO"},"cost_summary":{"original_fare_class":"main_cabin","new_fare_class":"main_cabin","cabin_changed":false,"change_fee":75,"fare_difference":0,"credit_due":0,"total_collected":75,"fee_waived":false},"message":"Successfully rebooked to flight FL_SK130_20260618"},"timestamp":1773439328182,"type":"tool_response","turn_id":8},{"tool_name":"assign_seat","parameters":{"confirmation_number":"6VORJU","passenger_id":"PAX001","journey_id":"FL_SK130_20260618","seat_preference":"window"},"timestamp":1773439329163,"type":"tool_call","turn_id":8},{"tool_name":"assign_seat","tool_response":{"status":"success","confirmation_number":"6VORJU","passenger_id":"PAX001","journey_id":"FL_SK130_20260618","flight_number":"SK130","seat_assigned":"21A","fare_class":"main_cabin","preference":"window","message":"Seat 21A (window) successfully assigned"},"timestamp":1773439329163,"type":"tool_response","turn_id":8},{"role":"assistant","content":"Your reservation has been updated:\\n\\n- New flight SK 130 departs Los Angeles at **one o’clock p.m.** and arrives in San Francisco at **two twenty‑five p.m.** today. \\n- A **change fee of seventy‑five dollars** has been applied; the fare itself remains the same. \\n- Your seat is a **window seat, 21 A**, on the new flight.\\n\\nEverything else from your original booking—name, ticket number, and any existing preferences—has been transferred.\\n\\nIf you’d like to add checked bags or make any other changes, just let me know. Otherwise, you’re all set. Thank you for flying SkyWay Airlines, and have a pleasant trip!","timestamp":1773439330430,"type":"intended","turn_id":8},{"role":"user","content":"No, that is all. Thanks. Goodbye.","timestamp":1773439384679,"type":"transcribed","turn_id":9},{"role":"assistant","content":"You’re very welcome. Have a great flight, and thank you for choosing SkyWay Airlines. Goodbye. [speaker likely cut itself off]","timestamp":1773439385281,"type":"intended","turn_id":9}]`),ene=JSON.parse(`[{"name":"task_completion","displayName":"Task Completion","category":"eva-a","type":"deterministic","score":1,"normalizedScore":1,"details":{"match":true,"message":"Final database state matches expected state exactly"}},{"name":"agent_speech_fidelity","displayName":"Agent Speech Fidelity","category":"eva-a","type":"lalm_judge","score":1,"normalizedScore":1,"details":{"aggregation":"mean","num_turns":10,"num_evaluated":9,"per_turn_ratings":{"0":1,"1":1,"2":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1},"per_turn_explanations":{"0":"The audio faithfully reproduces the intended text 'Hello! How can I help you today?' without any errors.","1":"The audio faithfully reproduces the intended text 'Sure, I can help with that. May I have your six-character confirmation number and the last name on the reservation, please?' without any errors.","2":"The audio faithfully reproduces the intended text, including the spelled-out confirmation code 'V O R J U' and the last name 'Thompson'.","4":"The audio faithfully reproduces the intended text, including the example spelled-out code 'six, eight, one, one, V, O.' without any errors.","5":"The audio faithfully reproduces the intended text, including all flight times, dollar amounts, and city names.","6":"The audio faithfully reproduces the intended text, including all flight options, times, dollar amounts, and city names.","7":"The audio faithfully reproduces the intended text, including the flight number 'SK 130', times, and dollar amounts.","8":"The audio faithfully reproduces the intended text, including the flight number 'SK 130', times, dollar amounts, and seat number '21 A'.","9":"The audio faithfully reproduces the intended text up to the point where the speaker cuts itself off, as indicated by the tag."}}},{"name":"faithfulness","displayName":"Faithfulness","category":"eva-a","type":"llm_judge","score":1,"normalizedScore":0,"details":{"rating":1,"explanation":{"dimensions":{"fabricating_tool_parameters":{"evidence":"In Turn 8, the rebook_flight call uses \`rebooking_type: 'voluntary'\` instead of \`'same_day'\`. The assistant had been describing this as a 'same-day voluntary change' throughout the conversation and applying the same-day confirmed change fee of $75. However, looking at the tool specification, 'same_day' is a valid rebooking_type option, and since this is indeed a same-day change, using 'voluntary' instead of 'same_day' could be considered a minor categorization issue. That said, the fee outcome ($75) is the same for a main_cabin voluntary change and a same-day confirmed change, so this doesn't materially affect the result. The \`new_fare_class: None\` parameter is passed explicitly as null, which is reasonable since the fare class isn't changing.","flagged":false,"rating":3},"misrepresenting_tool_result":{"evidence":"In Turn 5, the assistant presents Option 1 (the connection) fare as $228 in main cabin. However, the tool result shows the connection's individual segment fares for main_cabin are $229 (SK090) + $129 (SK410), while the journey-level 'fare' field shows $228. The assistant used the journey-level fare of $228. In Turn 5, the assistant states for Option 3 (SK215): 'fare $259, a little cheaper' - the tool shows the main_cabin fare for SK215 is $259, which is correct. However, looking more carefully at the fare difference calculations in Turn 6: for Option 1, the assistant says 'credit of thirty-one dollars' ($289-$228=$61, not $31) - wait, let me recheck. The fare difference is $289-$228=$61, but the assistant says $31. Actually in Turn 5 the assistant says '$61 credit for the early morning connection' which is correct. In Turn 6, the assistant says 'credit of thirty-one dollars' for Option 1. $289-$228=$61, not $31. This is a misrepresentation of a calculated value from tool results. For Option 3 in Turn 6, the assistant says 'credit of thirty dollars' ($289-$259=$30), which is correct.","flagged":true,"rating":1},"violating_policies":{"evidence":"The assistant used rebooking_type 'voluntary' with the standard $75 change fee. For a same-day change, the same-day confirmed change fee is also $75, so the financial outcome is identical. The assistant did explain fees before acting in early turns, and obtained explicit user confirmation in Turn 8 before rebooking. The assistant asked for seat preference before assigning seats. The assistant provided a summary at the end. The assistant did not mention the standby option (same-day standby is free for all fare classes), which could be considered a failure to offer alternatives, but this is minor since the user specifically asked for a confirmed change. One potential issue: the assistant told the user about the $75 change fee and fare implications across Turns 5-7, and the user confirmed in Turn 8, so the 'explain before acting' requirement was met. No significant policy violations detected.","flagged":false,"rating":3},"failing_to_disambiguate":{"evidence":"In Turns 2-4, the user provided the confirmation code in a confusing manner across multiple turns ('six Victor Oscar Romeo Juliet Uniform', then '6-8-1-1 Victor Oscar Romeo Juliet Uniform'). In Turn 3, the user says '6-8-1-1. Victor. Oscar Romeo Juliet Uniform' which could be interpreted as '6811VORJU' (9 characters) or some other combination. The assistant appropriately asked for clarification. In Turn 5, the user said 'Six. Victor. Oscar, Romeo, Juliet uniform' which the assistant interpreted as '6VORJU' (6 characters) and it worked. However, the earlier Turn 3 included '6-8-1-1' which was never reconciled - the assistant could have tried combinations including those digits. Since the final attempt succeeded, this is not a material issue. The user's Turn 4 was garbled (repeated 'L-A' many times and mentioned 'Same day change fee is under $80') which the assistant appropriately handled by re-asking.","flagged":false,"rating":3},"hallucination":{"evidence":"In Turn 5, the assistant mentions issuing a 'travel credit' for fare differences on downgrade scenarios. Per policy, downgrade to lower fare results in travel credit, so this is grounded. In Turn 8's summary, the assistant says 'Everything else from your original booking—name, ticket number, and any existing preferences—has been transferred.' The original booking had no seat assigned, no bags, and no meal request, so saying preferences were 'transferred' slightly embellishes, but this is a conversational courtesy rather than a factual claim. No significant hallucinations detected.","flagged":false,"rating":3}}},"num_turns":31}},{"name":"conciseness","displayName":"Conciseness","category":"eva-x","type":"llm_judge","score":2.2,"normalizedScore":0.6,"details":{"aggregation":"mean","num_turns":10,"num_evaluated":10,"mean_rating":2.2,"per_turn_ratings":{"0":3,"1":3,"2":2,"3":1,"4":3,"5":1,"6":1,"7":3,"8":2,"9":3},"per_turn_explanations":{"0":"Brief, friendly opening question with no extra detail; ideal for voice.","1":"Directly asks for the two required identifiers (confirmation code and last name) in one concise prompt; easy to follow.","2":"Appropriately requests clarification after mishearing the code and confirms the last name. Slightly wordier than necessary (\\"including any remaining letter or number\\") but still very manageable in voice and justified by the identification problem.","3":"The assistant provides no spoken guidance and effectively stalls with “waiting,” which is not helpful in a voice flow and forces the user to carry the conversation without direction.","4":"Clear request to repeat the confirmation code one character at a time, with a helpful example, and explains why (to pull up the reservation). This is appropriate given prior confusion and stays focused.","5":"Presents three alternatives with multiple times, fares, a fee, and multiple example credit calculations in one turn, then adds an additional request for seat preference. For voice, this is a lot to retain and includes extra arithmetic/explanatory detail that could be deferred until the user picks an option.","6":"The user asked for repetition, so listing options again is warranted, but the assistant over-structures it with many bullet points, repeats the same $75 fee three times, and includes detailed fare-difference math and credit explanations for each option. This increases cognitive load for spoken delivery.","7":"Concise: identifies the single flight meeting the constraints, states key times, confirms nonstop, and gives the fee under $80. Ends with a simple confirmation question plus seat preference request—reasonable for the next step.","8":"Clear recap of the successful change with the essential details (new flight/time, change fee, seat assignment). The extra line about transferring everything else and offering bags/other changes adds slight unnecessary length, but it’s still easy to digest and appropriate as a booking-confirmation wrap-up.","9":"Short, polite closing suitable for voice; no overload."},"per_turn_failure_modes":{"0":[],"1":[],"2":["verbosity_or_filler"],"3":["contextually_disproportionate_detail"],"4":[],"5":["excess_information_density","over_enumeration_or_list_exhaustion","contextually_disproportionate_detail"],"6":["over_enumeration_or_list_exhaustion","excess_information_density","verbosity_or_filler"],"7":[],"8":["verbosity_or_filler"],"9":[]}}},{"name":"conversation_progression","displayName":"Conversation Progression","category":"eva-x","type":"llm_judge","score":2,"normalizedScore":0.5,"details":{"rating":2,"explanation":{"dimensions":{"unnecessary_tool_calls":{"evidence":"At Turn 7 the assistant calls \`search_rebooking_options\` again with the same parameters as in Turn 5, despite no new constraints that would change the search results and the prior call already returned the full set of options.","flagged":true,"rating":2},"information_loss":{"evidence":"The assistant generally retains key facts once established (e.g., uses confirmation number 6VORJU and last name Thompson successfully in Turn 5, and then rebooks correctly in Turn 8). Earlier requests to repeat the confirmation code are justified by clearly garbled/partial user input (Turns 2–4).","flagged":false,"rating":3},"redundant_statements":{"evidence":"The assistant repeats the flight options in Turn 6, but this is explicitly requested by the user (“Can you repeat the earlier LAX to SFO flights?”). The final confirmation after rebooking (Turn 8) is a standard helpful recap rather than unnecessary repetition.","flagged":false,"rating":3},"question_quality":{"evidence":"The assistant’s questions are targeted and action-enabling (confirmation code/last name for lookup; then asks which option and seat preference). When the user adds constraints (direct, before 2 p.m., fee under $80), the assistant returns the matching option and asks for confirmation/seat preference.","flagged":false,"rating":3}},"flags_count":""},"num_turns":31}},{"name":"turn_taking","displayName":"Turn Taking","category":"eva-x","type":"llm_judge","score":4.5,"normalizedScore":0.25,"details":{"aggregation":"abs_mean","num_turns":9,"num_evaluated":9,"per_turn_judge_timing_ratings":{"1":"Late","2":"Late","3":"Early / Interrupting","4":"On-Time","5":"Late","6":"On-Time","7":"Late","8":"Late"},"per_turn_judge_timing_explanations":{"1":"The user’s request is complete (“…earlier flight today?”) with no overlap tags. The agent starts 5.507s later, which exceeds the 4s threshold and would feel like an awkward pause.","2":"User finishes providing the confirmation code and last name; the utterance is complete and there are no interruption indicators. The agent begins 4.940s after user end, which is >4s and thus late.","3":"The user’s statement ends at 67.744s, but the agent starts at 67.917s (0.172s later), which is under the 200ms cutoff. Even without explicit interruption tags, this is effectively too early/over-eager turn-taking.","4":"User’s request about changing the LAX→SFO flight is syntactically complete, and no interruption tags indicate overlap. The agent responds after a 2.286s gap, which is within the on-time range.","5":"User finishes spelling the code and stops; no overlap tags are present. The agent waits 9.466s to respond, which is well beyond 4s and clearly late.","6":"The user asks to repeat the options and finishes the question; no interruption tags suggest they were still talking. The agent begins 2.759s later, a normal conversational gap.","7":"User completes the request to check again (direct flight before 2pm, fee under $80) with no overlap markers. The agent starts 4.407s later, slightly over the 4s threshold, so it’s late.","8":"User accepts the 1pm flight and states a window preference, which is complete. The agent waits 5.500s before confirming, exceeding 4s and thus late."},"num_not_applicable":1}},{"name":"transcription_accuracy_key_entities","displayName":"Transcription Accuracy (Key Entities)","category":"diagnostic","type":"llm_judge","score":0.762,"normalizedScore":0.762,"details":{"aggregation":"mean","num_turns":9,"num_evaluated":9,"per_turn_ratings":{"1":-1,"2":1,"3":0.3333333333333333,"4":0.25,"5":1,"6":1,"7":0.75,"8":1,"9":-1},"per_turn_explanations":{"1":"No key entities (names, codes, dates/times, amounts, etc.) present to evaluate.","2":"All 2 key entities transcribed correctly (confirmation code and last name).","3":"1 out of 3 entities correct. Last name correct; confirmation code mis-transcribed (extra digits).","4":"1 out of 4 entities correct. $80 captured, but LAX/SFO and '2 PM' were not correctly transcribed.","5":"Confirmation code transcribed correctly.","6":"Both airport codes (LAX and SFO) transcribed correctly.","7":"3 out of 4 entities correct. SFO was mis-transcribed; LAX, 2 PM, and $80 were correct.","8":"Both entities (1 PM and window seat preference) transcribed correctly.","9":"No key entities present to evaluate."},"per_turn_entity_details":{"1":{"turn_id":1,"entities":[],"summary":"No key entities (names, codes, dates/times, amounts, etc.) present to evaluate."},"2":{"turn_id":2,"entities":[{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"six Victor Oscar Romeo Juliet Uniform","analysis":"Confirmation code phrase matches (minor punctuation/pauses ignored).","correct":true,"skipped":false},{"type":"name","value":"Thompson","transcribed_value":"Tom. Thompson","analysis":"Last name 'Thompson' is present exactly; extra 'Tom' does not change that the entity was captured.","correct":true,"skipped":false}],"summary":"All 2 key entities transcribed correctly (confirmation code and last name)."},"3":{"turn_id":3,"entities":[{"type":"name","value":"Thompson","transcribed_value":"Thompson","analysis":"Matches exactly.","correct":true,"skipped":false},{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"6-8-1-1 Victor Oscar Romeo Juliet Uniform","analysis":"Code corrupted: expected starts with 'six' then letters; transcription inserted extra digits '8-1-1' not in expected.","correct":false,"skipped":false},{"type":"confirmation_code","value":"six","transcribed_value":"6-8-1-1","analysis":"The repeated final 'six' was transcribed as '6-8-1-1', which does not match.","correct":false,"skipped":false}],"summary":"1 out of 3 entities correct. Last name correct; confirmation code mis-transcribed (extra digits)."},"4":{"turn_id":4,"entities":[{"type":"place","value":"L A X","transcribed_value":"L-A (repeated many times)","analysis":"Expected airport code 'LAX' was not captured; transcription devolves into repeated 'L-A' and does not clearly contain 'LAX'.","correct":false,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"missing","analysis":"Expected 'SFO' not present in transcription.","correct":false,"skipped":false},{"type":"time","value":"two p m","transcribed_value":"p.m.","analysis":"Time value missing the 'two/2' component; only 'p.m.' appears.","correct":false,"skipped":false},{"type":"amount","value":"eighty dollars","transcribed_value":"$80","analysis":"Matches semantically ($80).","correct":true,"skipped":false}],"summary":"1 out of 4 entities correct. $80 captured, but LAX/SFO and '2 PM' were not correctly transcribed."},"5":{"turn_id":5,"entities":[{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"Six Victor Oscar Romeo Juliet uniform","analysis":"Matches exactly aside from capitalization/punctuation.","correct":true,"skipped":false}],"summary":"Confirmation code transcribed correctly."},"6":{"turn_id":6,"entities":[{"type":"place","value":"L A X","transcribed_value":"LAX","analysis":"Matches (formatting difference only).","correct":true,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"SFO","analysis":"Matches (formatting difference only).","correct":true,"skipped":false}],"summary":"Both airport codes (LAX and SFO) transcribed correctly."},"7":{"turn_id":7,"entities":[{"type":"place","value":"L A X","transcribed_value":"LAX","analysis":"Matches (formatting difference only).","correct":true,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"SS. F-O","analysis":"Does not match exactly; 'SS F-O' is not 'SFO'.","correct":false,"skipped":false},{"type":"time","value":"two p m","transcribed_value":"2 p.m.","analysis":"Matches semantically.","correct":true,"skipped":false},{"type":"amount","value":"eighty dollars","transcribed_value":"$80","analysis":"Matches semantically ($80).","correct":true,"skipped":false}],"summary":"3 out of 4 entities correct. SFO was mis-transcribed; LAX, 2 PM, and $80 were correct."},"8":{"turn_id":8,"entities":[{"type":"time","value":"one p m","transcribed_value":"1:00 PM","analysis":"Matches semantically.","correct":true,"skipped":false},{"type":"seat_preference","value":"window","transcribed_value":"window","analysis":"Seat preference 'window' present (minor wording error 'Seek Preferences' ignored).","correct":true,"skipped":false}],"summary":"Both entities (1 PM and window seat preference) transcribed correctly."},"9":{"turn_id":9,"entities":[],"summary":"No key entities present to evaluate."}},"per_turn_normalized":{"1":-1,"2":1,"3":0.3333333333333333,"4":0.25,"5":1,"6":1,"7":0.75,"8":1,"9":-1},"num_not_applicable":2}}]`),Nh={userGoal:Zte,userPersona:Qte,conversationTrace:Jte,metrics:ene},Ki=Nh.userGoal,Xi={highLevelGoal:Ki.high_level_user_goal,decisionTree:{mustHaveCriteria:Ki.decision_tree.must_have_criteria,negotiationBehavior:Ki.decision_tree.negotiation_behavior,resolutionCondition:Ki.decision_tree.resolution_condition,failureCondition:Ki.decision_tree.failure_condition,escalationBehavior:Ki.decision_tree.escalation_behavior,edgeCases:Ki.decision_tree.edge_cases},informationRequired:Ki.information_required},tne=Nh.userPersona;function nne(e){const t=[];for(let n=0;n({name:e.name,displayName:e.displayName,category:e.category,type:e.type,score:e.score,normalizedScore:e.normalizedScore,details:e.details})),rne=Mx.filter(e=>e.category==="eva-a"),ine=Mx.filter(e=>e.category==="eva-x"),ane=Mx.filter(e=>e.category==="diagnostic");function eM(e){const t=Math.floor(e/60),n=Math.floor(e%60);return`${t}:${n.toString().padStart(2,"0")}`}function sne({src:e}){const t=A.useRef(null),n=A.useRef(null),[r,s]=A.useState(!1),[o,u]=A.useState(0),[f,d]=A.useState(0),[h,m]=A.useState(!1);A.useEffect(()=>{const _=t.current;if(!_)return;const S=()=>u(_.currentTime),O=()=>d(_.duration),M=()=>s(!1);return _.addEventListener("timeupdate",S),_.addEventListener("loadedmetadata",O),_.addEventListener("ended",M),()=>{_.removeEventListener("timeupdate",S),_.removeEventListener("loadedmetadata",O),_.removeEventListener("ended",M)}},[]);const p=A.useCallback(()=>{const _=t.current;_&&(r?_.pause():_.play(),s(!r))},[r]),v=A.useCallback(()=>{const _=t.current;_&&(_.muted=!h,m(!h))},[h]),x=A.useCallback(_=>{const S=t.current,O=n.current;if(!S||!O)return;const M=O.getBoundingClientRect(),j=Math.max(0,Math.min(1,(_.clientX-M.left)/M.width));S.currentTime=j*f},[f]),w=f>0?o/f*100:0;return b.jsxs("div",{className:"rounded-xl bg-bg-secondary border border-border-default p-4",children:[b.jsx("audio",{ref:t,preload:"metadata",children:b.jsx("source",{src:e,type:"audio/wav"})}),b.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[b.jsx(Gy,{className:"w-5 h-5 text-purple-light"}),b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Conversation Audio"}),b.jsx("span",{className:"text-[10px] px-2 py-0.5 rounded-full bg-bg-tertiary text-text-muted border border-border-default",children:"Recording"})]}),b.jsxs("div",{className:"flex items-center gap-3",children:[b.jsx("button",{onClick:p,className:"w-10 h-10 rounded-full bg-purple/20 hover:bg-purple/30 flex items-center justify-center transition-colors flex-shrink-0",children:r?b.jsx(f6,{className:"w-5 h-5 text-purple-light"}):b.jsx(p6,{className:"w-5 h-5 text-purple-light ml-0.5"})}),b.jsx("span",{className:"text-xs font-mono text-text-muted w-10 text-right flex-shrink-0",children:eM(o)}),b.jsx("div",{ref:n,onClick:x,className:"flex-1 h-2 bg-bg-tertiary rounded-full cursor-pointer group relative",children:b.jsx("div",{className:"h-full bg-purple rounded-full transition-[width] duration-100 relative",style:{width:`${w}%`},children:b.jsx("div",{className:"absolute right-0 top-1/2 -translate-y-1/2 w-3.5 h-3.5 rounded-full bg-purple-light border-2 border-bg-secondary opacity-0 group-hover:opacity-100 transition-opacity"})})}),b.jsx("span",{className:"text-xs font-mono text-text-muted w-10 flex-shrink-0",children:f>0?eM(f):"--:--"}),b.jsx("button",{onClick:v,className:"w-8 h-8 rounded-lg hover:bg-bg-tertiary flex items-center justify-center transition-colors flex-shrink-0",children:h?b.jsx(M6,{className:"w-4 h-4 text-text-muted"}):b.jsx(Gy,{className:"w-4 h-4 text-text-muted"})})]})]})}function one(e){const t=new Map;for(let n=0;nb.jsxs("div",{className:"flex gap-2 text-xs",children:[b.jsxs("span",{className:"text-text-muted font-mono",children:[u,":"]}),b.jsx("span",{className:"text-text-secondary font-mono",children:JSON.stringify(f)})]},u))})]}),t?.toolResponse&&b.jsxs("div",{className:"border-t border-border-default/50",children:[b.jsxs("button",{onClick:()=>o(!s),className:"w-full flex items-center gap-2 px-3 py-2 text-[10px] text-text-muted font-semibold uppercase tracking-wider hover:bg-bg-hover/30 transition-colors",children:[s?b.jsx(ai,{className:"w-3 h-3"}):b.jsx(sM,{className:"w-3 h-3"}),"Response"]}),s&&b.jsx("div",{className:"px-3 pb-3",children:b.jsx("pre",{className:"text-xs text-text-secondary font-mono leading-relaxed max-h-48 overflow-y-auto overflow-x-auto bg-bg-tertiary rounded-lg p-3",children:JSON.stringify(t.toolResponse,null,2)})})]})]})})}function ql({title:e,icon:t,children:n,defaultOpen:r=!1}){const[s,o]=A.useState(r);return b.jsxs("div",{children:[b.jsxs("button",{onClick:()=>o(!s),className:"w-full flex items-center gap-2 rounded-lg border border-border-default bg-bg-primary px-3 py-2 hover:bg-bg-hover/30 transition-colors",children:[b.jsx(t,{className:"w-3.5 h-3.5 text-text-muted"}),b.jsx("span",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider flex-1 text-left",children:e}),b.jsx(ai,{className:`w-3.5 h-3.5 text-text-muted transition-transform ${s?"rotate-180":""}`})]}),s&&b.jsx("div",{className:"mt-2 bg-bg-primary rounded-lg p-3",children:n})]})}function cne(){const[e,t]=A.useState(!0),n=Object.entries(Xi.informationRequired).map(([r,s])=>{const o=r.replace(/_/g," ").replace(/\b\w/g,f=>f.toUpperCase()),u=typeof s=="object"?JSON.stringify(s):String(s);return[o,u]});return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center gap-3 mb-0 hover:opacity-80 transition-opacity",children:[b.jsx("div",{className:"w-10 h-10 rounded-full bg-blue/20 flex items-center justify-center flex-shrink-0",children:b.jsx(Yy,{className:"w-5 h-5 text-blue-light"})}),b.jsxs("div",{className:"flex-1 text-left",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"User Goal"}),b.jsx("div",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:"Scenario Briefing"})]}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${e?"rotate-180":""}`})]}),e&&b.jsxs("div",{className:"mt-4",children:[b.jsx("div",{className:"border-l-2 border-blue/40 pl-4 mb-5",children:b.jsx("p",{className:"text-sm text-text-primary leading-relaxed",children:Xi.highLevelGoal})}),b.jsxs("div",{className:"mb-4 bg-bg-tertiary rounded-lg p-3",children:[b.jsx("div",{className:"text-[10px] font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Persona"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:tne})]}),b.jsxs("div",{className:"mb-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-2.5",children:"Must-Have Criteria"}),b.jsx("div",{className:"space-y-2",children:Xi.decisionTree.mustHaveCriteria.map((r,s)=>b.jsxs("div",{className:"flex gap-2 items-start",children:[b.jsx(Xy,{className:"w-3.5 h-3.5 text-blue-light mt-0.5 flex-shrink-0"}),b.jsx("span",{className:"text-xs text-text-secondary leading-relaxed",children:r})]},s))})]}),b.jsxs("div",{className:"space-y-2",children:[b.jsx(ql,{title:"Negotiation Behavior",icon:oM,children:b.jsx("div",{className:"space-y-2.5",children:Xi.decisionTree.negotiationBehavior.map((r,s)=>b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:r},s))})}),b.jsx(ql,{title:"Resolution & Failure",icon:lM,children:b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-[10px] font-semibold text-emerald-400 uppercase tracking-wider mb-1",children:"Resolution"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.resolutionCondition})]}),b.jsxs("div",{children:[b.jsx("div",{className:"text-[10px] font-semibold text-red-400 uppercase tracking-wider mb-1",children:"Failure"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.failureCondition})]})]})}),b.jsx(ql,{title:"Escalation",icon:w6,children:b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.escalationBehavior})}),b.jsx(ql,{title:"Edge Cases",icon:Jl,children:b.jsx("div",{className:"space-y-2",children:Xi.decisionTree.edgeCases.map((r,s)=>b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:r},s))})}),b.jsx(ql,{title:"Scenario Details",icon:Yy,children:b.jsx("div",{className:"space-y-2",children:n.map(([r,s])=>b.jsxs("div",{className:"flex justify-between gap-3",children:[b.jsx("span",{className:"text-[11px] text-text-muted flex-shrink-0",children:r}),b.jsx("span",{className:"text-[11px] text-text-primary font-medium text-right break-all",children:s})]},r))})})]})]})]})}const Ky=[{name:"get_reservation",description:"Retrieve flight reservation using confirmation number and passenger last name",toolType:"read"},{name:"get_flight_status",description:"Get flight info including status, delays, cancellations, and gate information",toolType:"read"},{name:"get_disruption_info",description:"Get detailed disruption info for IRROPS handling and rebooking entitlements",toolType:"read"},{name:"search_rebooking_options",description:"Search for available flights to rebook a passenger",toolType:"read"},{name:"rebook_flight",description:"Rebook passenger(s) to a new flight (voluntary, IRROPS, or missed flight)",toolType:"write"},{name:"add_to_standby",description:"Add passenger to standby list for a flight",toolType:"write"},{name:"assign_seat",description:"Assign a seat to a passenger based on preference",toolType:"write"},{name:"add_baggage_allowance",description:"Add checked baggage allowance to a flight segment",toolType:"write"},{name:"add_meal_request",description:"Add or update special meal request for a passenger",toolType:"write"},{name:"issue_travel_credit",description:"Issue a travel credit or future flight voucher",toolType:"write"},{name:"issue_hotel_voucher",description:"Issue a hotel voucher for delays or disruptions",toolType:"write"},{name:"issue_meal_voucher",description:"Issue a meal voucher for delays or disruptions",toolType:"write"},{name:"cancel_reservation",description:"Cancel a flight booking",toolType:"write"},{name:"process_refund",description:"Process a refund for a cancelled or eligible reservation",toolType:"write"},{name:"transfer_to_agent",description:"Transfer the call to a live human agent",toolType:"system"}];function fne(e){const t=new Map;for(const n of e)if(n.type==="tool_response"&&n.toolName){const r=t.get(n.toolName)??{calls:0,success:0,error:0};r.calls++,n.toolStatus==="success"?r.success++:r.error++,t.set(n.toolName,r)}return t}function dne({tool:e,isUsed:t,typeColors:n}){const[r,s]=A.useState(!1);return b.jsxs("div",{className:`rounded-lg border ${t?"border-amber/30 bg-amber/5":"border-border-default bg-bg-primary opacity-60"}`,children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center gap-2 px-3 py-2 hover:opacity-80 transition-opacity",children:[b.jsx(p0,{className:`w-3.5 h-3.5 flex-shrink-0 ${t?"text-amber":"text-text-muted"}`}),b.jsx("span",{className:`text-xs font-semibold font-mono flex-1 text-left ${t?"text-text-primary":"text-text-muted"}`,children:e.name}),b.jsx("span",{className:`text-[9px] px-1.5 py-0.5 rounded-full font-medium border ${n[e.toolType]}`,children:e.toolType})]}),r&&b.jsx("div",{className:"px-3 pb-2.5 pt-0",children:b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:e.description})})]})}function hne(){const e=fne(Zs),t=Ky.filter(o=>e.has(o.name)).length,n={read:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20",write:"bg-purple/10 text-purple-light border-purple/20",system:"bg-amber/10 text-amber border-amber/20"},[r,s]=A.useState(!0);return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center gap-3 mb-0 hover:opacity-80 transition-opacity",children:[b.jsx("div",{className:"w-10 h-10 rounded-full bg-amber/20 flex items-center justify-center flex-shrink-0",children:b.jsx(p0,{className:"w-5 h-5 text-amber"})}),b.jsxs("div",{className:"flex-1 text-left",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"Agent Tools"}),b.jsxs("div",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:[t," of ",Ky.length," used in this conversation"]})]}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${r?"rotate-180":""}`})]}),r&&b.jsx("div",{className:"mt-4 space-y-1.5",children:Ky.map(o=>{const u=e.has(o.name);return b.jsx(dne,{tool:o,isUsed:u,typeColors:n},o.name)})})]})}function mne({score:e,size:t="md"}){const n=e>=.8?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":e>=.5?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20",r=t==="sm"?"text-[10px] px-1.5 py-0.5":"text-xs px-2 py-0.5";return b.jsxs("span",{className:`${r} rounded-full font-semibold border ${n}`,children:[(e*100).toFixed(0),"%"]})}function pne({type:e}){const t={deterministic:"Deterministic",llm_judge:"LLM Judge",lalm_judge:"Audio Judge"},n={deterministic:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20",llm_judge:"bg-purple/10 text-purple-light border-purple/20",lalm_judge:"bg-amber/10 text-amber border-amber/20"};return b.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium border ${n[e]??"bg-bg-tertiary text-text-muted border-border-default"}`,children:t[e]??e})}function gne({metric:e}){const[t,n]=A.useState(!1),r=e.details,s=r.per_turn_ratings,o=r.per_turn_explanations,u=r.per_turn_judge_timing_ratings,f=r.per_turn_judge_timing_explanations,d=r.explanation,h=r.per_turn_entity_details,p=(typeof d=="object"&&d!==null?d:void 0)?.dimensions;return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary overflow-hidden",children:[b.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{className:"flex-1 flex items-center gap-3",children:[b.jsx("span",{className:"text-base font-semibold text-text-primary",children:e.displayName}),b.jsx(pne,{type:e.type})]}),b.jsx(mne,{score:e.normalizedScore}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${t?"rotate-180":""}`})]}),t&&b.jsxs("div",{className:"px-5 pb-5 border-t border-border-default/50 pt-4 space-y-5",children:[e.name==="task_completion"&&b.jsxs("div",{className:"flex items-center gap-2",children:[r.match?b.jsx(Xy,{className:"w-5 h-5 text-emerald-400"}):b.jsx(Jl,{className:"w-5 h-5 text-red-400"}),b.jsx("span",{className:"text-base text-text-secondary",children:r.message})]}),p&&b.jsx("div",{className:"space-y-3",children:Object.entries(p).map(([v,x])=>{const w=e.name==="faithfulness";let _,S;return w?x.rating===3?(_="OK",S="bg-emerald-500/10 text-emerald-400 border-emerald-500/20"):x.rating===2?(_="Minor/Ambiguous Issue",S="bg-amber/10 text-amber border-amber/20"):(_="Clear Error",S="bg-red-500/10 text-red-400 border-red-500/20"):e.name==="conversation_progression"?x.rating===3?(_="OK",S="bg-emerald-500/10 text-emerald-400 border-emerald-500/20"):x.rating===2?(_="Minor Issue",S="bg-amber/10 text-amber border-amber/20"):(_="Clear Issue",S="bg-red-500/10 text-red-400 border-red-500/20"):(_=x.flagged?"Flagged":"OK",S=x.flagged?"bg-amber/10 text-amber border-amber/20":"bg-emerald-500/10 text-emerald-400 border-emerald-500/20"),b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:v.replace(/_/g," ").replace(/\b\w/g,O=>O.toUpperCase())}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${S}`,children:_}),b.jsxs("span",{className:"text-xs text-text-muted ml-auto",children:[x.rating,"/3"]})]}),b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:x.evidence})]},v)})}),s&&!p&&!h&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Breakdown"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(s).map(([v,x])=>{const w=o?.[v];return x===-1?null:b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsxs("span",{className:"text-xs font-semibold text-text-muted",children:["Turn ",v]}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${x>=3||x===1&&e.name==="agent_speech_fidelity"?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":x>=2?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20"}`,children:x})]}),w&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:w})]},v)})})]}),u&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Timing"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(u).map(([v,x])=>{const w=f?.[v],_=x==="On-Time"?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":x==="Late"?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20";return b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsxs("span",{className:"text-xs font-semibold text-text-muted",children:["Turn ",v]}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${_}`,children:x})]}),w&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:w})]},v)})})]}),h&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Entity Accuracy"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(h).map(([v,x])=>!x.entities||x.entities.length===0?null:b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"text-xs font-semibold text-text-muted mb-2",children:["Turn ",v]}),b.jsx("div",{className:"space-y-2",children:x.entities.map((w,_)=>b.jsxs("div",{className:"flex items-start gap-2 text-base",children:[w.correct?b.jsx(Xy,{className:"w-4 h-4 text-emerald-400 mt-0.5 flex-shrink-0"}):b.jsx(Jl,{className:"w-4 h-4 text-red-400 mt-0.5 flex-shrink-0"}),b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[w.type,":"]})," ",b.jsx("span",{className:"text-text-secondary",children:w.value}),!w.correct&&b.jsxs("span",{className:"text-red-400",children:[" → ",w.transcribed_value]})]})]},_))}),b.jsx("p",{className:"text-xs text-text-muted mt-2",children:x.summary})]},v))})]}),typeof d=="string"&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:d})]})]})}function yne(){const e=[{label:"Accuracy (EVA-A)",icon:lM,metrics:rne,color:"text-emerald-400"},{label:"Experience (EVA-X)",icon:IR,metrics:ine,color:"text-purple-light"},{label:"Relevant Diagnostic Metric",icon:b6,metrics:ane,color:"text-cyan-400"}];return b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.2},className:"mt-12",children:b.jsx("div",{className:"space-y-8",children:e.map(t=>b.jsxs("div",{children:[b.jsx("div",{className:"flex items-center gap-3 mb-4 pb-3 border-b border-border-default",children:b.jsx("span",{className:"text-lg font-bold text-text-primary",children:t.label})}),b.jsx("div",{className:"space-y-2",children:t.metrics.map(n=>b.jsx(gne,{metric:n},n.name))})]},t.label))})})}function vne(){const e=one(Zs),t=[];let n=0;for(;n{const t=tM[e.category]??nM;return e.items.map((n,r)=>b.jsxs("div",{className:`rounded-xl border ${t.border} ${t.bg} p-5 flex flex-col`,children:[b.jsx("div",{className:"flex items-center gap-2 mb-2",children:b.jsx("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-full ${t.badge} ${t.text} border ${t.badgeBorder}`,children:e.category})}),b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1.5",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed flex-1",children:n.description})]},`${e.category}-${r}`))})})]}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:[b.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(y6,{className:"w-5 h-5 text-purple"})}),b.jsx("h3",{className:"text-xl font-bold text-text-primary",children:"Roadmap"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:xne.flatMap(e=>{const t=tM[e.category]??nM;return e.items.map((n,r)=>b.jsxs("div",{className:`rounded-xl border ${t.border} ${t.bg} p-5 flex flex-col`,children:[b.jsx("div",{className:"flex items-center gap-2 mb-2",children:b.jsx("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-full ${t.badge} ${t.text} border ${t.badgeBorder}`,children:e.category})}),b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1.5",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed flex-1",children:n.description})]},`${e.category}-${r}`))})})]})]})})}const _ne=new Set(["intro","architecture","metrics","early-results","demo","limitations","acknowledgements"]);function rM(){const e=window.location.hash.slice(1);return e&&_ne.has(e)?e:"intro"}function Sne(){if(typeof window<"u"){const e=localStorage.getItem("eva-theme");if(e==="light"||e==="dark")return e}return"dark"}function Ane(){const[e,t]=A.useState(rM),[n,r]=A.useState(Sne);A.useEffect(()=>{const f=()=>t(rM());return window.addEventListener("hashchange",f),()=>window.removeEventListener("hashchange",f)},[]);const s=A.useCallback(f=>{t(f),window.history.pushState(null,"",`#${f}`)},[]);A.useEffect(()=>{document.documentElement.setAttribute("data-theme",n),localStorage.setItem("eva-theme",n)},[n]);const o=A.useCallback(()=>{r(f=>f==="dark"?"light":"dark")},[]),u=A.useMemo(()=>({mode:n,colors:Tte[n]}),[n]);return b.jsx(Ex.Provider,{value:u,children:b.jsxs("div",{className:"min-h-screen bg-bg-primary",children:[b.jsx(C6,{activeTab:e,onTabChange:s,theme:n,onToggleTheme:o}),b.jsxs("main",{children:[e==="intro"&&b.jsx(EB,{}),e==="architecture"&&b.jsx(jB,{}),e==="metrics"&&b.jsx(RB,{}),e==="early-results"&&b.jsx(Wte,{}),e==="demo"&&b.jsx(vne,{}),e==="limitations"&&b.jsx(wne,{}),e==="acknowledgements"&&b.jsx(OB,{})]})]})})}NR.createRoot(document.getElementById("root")).render(b.jsx(A.StrictMode,{children:b.jsx(Ane,{})})); + `).concat(N.x,",").concat(N.y),C=dt(e.id)?au("recharts-radial-line-"):e.id;return A.createElement("text",ei({},r,{dominantBaseline:"central",className:et("recharts-radial-bar-label",u)}),A.createElement("defs",null,A.createElement("path",{id:C,d:k})),A.createElement("textPath",{xlinkHref:"#".concat(C)},n))},JW=(e,t,n)=>{var{cx:r,cy:s,innerRadius:o,outerRadius:u,startAngle:f,endAngle:d}=e,h=(f+d)/2;if(n==="outside"){var{x:m,y:p}=Kt(r,s,u+t,h);return{x:m,y:p,textAnchor:m>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"end"};var v=(o+u)/2,{x,y:w}=Kt(r,s,v,h);return{x,y:w,textAnchor:"middle",verticalAnchor:"middle"}},qf=e=>e!=null&&"cx"in e&&ye(e.cx),eZ={angle:0,offset:5,zIndex:pn.label,position:"middle",textBreakAll:!1};function tZ(e){if(!qf(e))return e;var{cx:t,cy:n,outerRadius:r}=e,s=r*2;return{x:t-r,y:n-r,width:s,upperWidth:s,lowerWidth:s,height:s}}function Wi(e){var t=vn(e,eZ),{viewBox:n,parentViewBox:r,position:s,value:o,children:u,content:f,className:d="",textBreakAll:h,labelRef:m}=t,p=GW(),v=h5(),x=s==="center"?v:p??v,w,_,S;n==null?w=x:qf(n)?w=n:w=db(n);var O=tZ(w);if(!w||dt(o)&&dt(u)&&!A.isValidElement(f)&&typeof f!="function")return null;var M=Kl(Kl({},t),{},{viewBox:w});if(A.isValidElement(f)){var{labelRef:j}=M,N=lj(M,VW);return A.cloneElement(f,N)}if(typeof f=="function"){var{content:k}=M,C=lj(M,qW);if(_=A.createElement(f,C),A.isValidElement(_))return _}else _=WW(t);var L=er(t);if(qf(w)){if(s==="insideStart"||s==="insideEnd"||s==="end")return QW(t,s,_,L,w);S=JW(w,t.offset,t.position)}else{if(!O)return null;var I=UW({viewBox:O,position:s,offset:t.offset,parentViewBox:qf(r)?void 0:r});S=Kl(Kl({x:I.x,y:I.y,textAnchor:I.horizontalAnchor,verticalAnchor:I.verticalAnchor},I.width!==void 0?{width:I.width}:{}),I.height!==void 0?{height:I.height}:{})}return A.createElement(ca,{zIndex:t.zIndex},A.createElement(xx,ei({ref:m,className:et("recharts-label",d)},L,S,{textAnchor:l5(L.textAnchor)?L.textAnchor:S.textAnchor,breakAll:h}),_))}Wi.displayName="Label";var nZ=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?A.createElement(Wi,ei({key:"label-implicit"},r)):kr(e)?A.createElement(Wi,ei({key:"label-implicit",value:e},r)):A.isValidElement(e)?e.type===Wi?A.cloneElement(e,Kl({key:"label-implicit"},r)):A.createElement(Wi,ei({key:"label-implicit",content:e},r)):wx(e)?A.createElement(Wi,ei({key:"label-implicit",content:e},r)):e&&typeof e=="object"?A.createElement(Wi,ei({},e,{key:"label-implicit"},r)):null};function rZ(e){var{label:t,labelRef:n}=e,r=h5();return nZ(t,r,n)||null}var iZ=["valueAccessor"],aZ=["dataKey","clockWise","id","textBreakAll","zIndex"];function Id(){return Id=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(CW(t))return t},m5=A.createContext(void 0),lZ=m5.Provider,p5=A.createContext(void 0);p5.Provider;function uZ(){return A.useContext(m5)}function cZ(){return A.useContext(p5)}function $f(e){var{valueAccessor:t=oZ}=e,n=cj(e,iZ),{dataKey:r,clockWise:s,id:o,textBreakAll:u,zIndex:f}=n,d=cj(n,aZ),h=uZ(),m=cZ(),p=h||m;return!p||!p.length?null:A.createElement(ca,{zIndex:f??pn.label},A.createElement(hr,{className:"recharts-label-list"},p.map((v,x)=>{var w,_=dt(r)?t(v,x):Ot(v.payload,r),S=dt(o)?{}:{id:"".concat(o,"-").concat(x)};return A.createElement(Wi,Id({key:"label-".concat(x)},er(v),d,S,{fill:(w=n.fill)!==null&&w!==void 0?w:v.fill,parentViewBox:v.parentViewBox,value:_,textBreakAll:u,viewBox:v.viewBox,index:x,zIndex:0}))})))}$f.displayName="LabelList";function fZ(e){var{label:t}=e;return t?t===!0?A.createElement($f,{key:"labelList-implicit"}):A.isValidElement(t)||wx(t)?A.createElement($f,{key:"labelList-implicit",content:t}):typeof t=="object"?A.createElement($f,Id({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}var dZ={radiusAxis:{},angleAxis:{}},g5=Qt({name:"polarAxis",initialState:dZ,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:Nne,removeRadiusAxis:kne,addAngleAxis:Cne,removeAngleAxis:Dne}=g5.actions,hZ=g5.reducer;function mZ(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var By={exports:{}},He={};var fj;function pZ(){if(fj)return He;fj=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),v=Symbol.for("react.view_transition"),x=Symbol.for("react.client.reference");function w(_){if(typeof _=="object"&&_!==null){var S=_.$$typeof;switch(S){case e:switch(_=_.type,_){case n:case s:case r:case d:case h:case v:return _;default:switch(_=_&&_.$$typeof,_){case u:case f:case p:case m:return _;case o:return _;default:return S}}case t:return S}}}return He.ContextConsumer=o,He.ContextProvider=u,He.Element=e,He.ForwardRef=f,He.Fragment=n,He.Lazy=p,He.Memo=m,He.Portal=t,He.Profiler=s,He.StrictMode=r,He.Suspense=d,He.SuspenseList=h,He.isContextConsumer=function(_){return w(_)===o},He.isContextProvider=function(_){return w(_)===u},He.isElement=function(_){return typeof _=="object"&&_!==null&&_.$$typeof===e},He.isForwardRef=function(_){return w(_)===f},He.isFragment=function(_){return w(_)===n},He.isLazy=function(_){return w(_)===p},He.isMemo=function(_){return w(_)===m},He.isPortal=function(_){return w(_)===t},He.isProfiler=function(_){return w(_)===s},He.isStrictMode=function(_){return w(_)===r},He.isSuspense=function(_){return w(_)===d},He.isSuspenseList=function(_){return w(_)===h},He.isValidElementType=function(_){return typeof _=="string"||typeof _=="function"||_===n||_===s||_===r||_===d||_===h||typeof _=="object"&&_!==null&&(_.$$typeof===p||_.$$typeof===m||_.$$typeof===u||_.$$typeof===o||_.$$typeof===f||_.$$typeof===x||_.getModuleId!==void 0)},He.typeOf=w,He}var dj;function gZ(){return dj||(dj=1,By.exports=pZ()),By.exports}var yZ=gZ(),hj=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",mj=null,Uy=null,y5=e=>{if(e===mj&&Array.isArray(Uy))return Uy;var t=[];return A.Children.forEach(e,n=>{dt(n)||(yZ.isFragment(n)?t=t.concat(y5(n.props.children)):t.push(n))}),Uy=t,mj=e,t};function vZ(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(s=>hj(s)):r=[hj(t)],y5(e).forEach(s=>{var o=co(s,"type.displayName")||co(s,"type.name");o&&r.indexOf(o)!==-1&&n.push(s)}),n}var Vy={},pj;function bZ(){return pj||(pj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const s=n[Symbol.toStringTag];return s==null||!Object.getOwnPropertyDescriptor(n,Symbol.toStringTag)?.writable?!1:n.toString()===`[object ${s}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(Vy)),Vy}var qy,gj;function xZ(){return gj||(gj=1,qy=bZ().isPlainObject),qy}var wZ=xZ();const _Z=ia(wZ);var yj,vj,bj,xj,wj;function _j(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sj(e){for(var t=1;t{var o=n-r,u;return u=ut(yj||(yj=zl(["M ",",",""])),e,t),u+=ut(vj||(vj=zl(["L ",",",""])),e+n,t),u+=ut(bj||(bj=zl(["L ",",",""])),e+n-o/2,t+s),u+=ut(xj||(xj=zl(["L ",",",""])),e+n-o/2-r,t+s),u+=ut(wj||(wj=zl(["L ",","," Z"])),e,t),u},OZ={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},EZ=e=>{var t=vn(e,OZ),{x:n,y:r,upperWidth:s,lowerWidth:o,height:u,className:f}=t,{animationEasing:d,animationDuration:h,animationBegin:m,isUpdateAnimationActive:p}=t,v=A.useRef(null),[x,w]=A.useState(-1),_=A.useRef(s),S=A.useRef(o),O=A.useRef(u),M=A.useRef(n),j=A.useRef(r),N=yb(e,"trapezoid-");if(A.useEffect(()=>{if(v.current&&v.current.getTotalLength)try{var pe=v.current.getTotalLength();pe&&w(pe)}catch{}},[]),n!==+n||r!==+r||s!==+s||o!==+o||u!==+u||s===0&&o===0||u===0)return null;var k=et("recharts-trapezoid",f);if(!p)return A.createElement("g",null,A.createElement("path",Bd({},er(t),{className:k,d:Aj(n,r,s,o,u)})));var C=_.current,L=S.current,I=O.current,Y=M.current,te=j.current,ie="0px ".concat(x===-1?1:x,"px"),K="".concat(x,"px ").concat(x,"px"),be=RC(["strokeDasharray"],h,d);return A.createElement(gb,{animationId:N,key:N,canBegin:x>0,duration:h,easing:d,isActive:p,begin:m},pe=>{var xe=Nn(C,s,pe),V=Nn(L,o,pe),Q=Nn(I,u,pe),ne=Nn(Y,n,pe),le=Nn(te,r,pe);v.current&&(_.current=xe,S.current=V,O.current=Q,M.current=ne,j.current=le);var ue=pe>0?{transition:be,strokeDasharray:K}:{strokeDasharray:ie};return A.createElement("path",Bd({},er(t),{className:k,d:Aj(ne,le,xe,V,Q),ref:v,style:Sj(Sj({},ue),t.style)}))})},jZ=["option","shapeType","activeClassName","inActiveClassName"];function MZ(e,t){if(e==null)return{};var n,r,s=NZ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var r=it();return(s,o)=>u=>{e?.(s,o,u),r(DD({activeIndex:String(o),activeDataKey:t,activeCoordinate:s.tooltipPosition,activeGraphicalItemId:n}))}},IZ=e=>{var t=it();return(n,r)=>s=>{e?.(n,r,s),t(YX())}},BZ=(e,t,n)=>{var r=it();return(s,o)=>u=>{e?.(s,o,u),r(GX({activeIndex:String(o),activeDataKey:t,activeCoordinate:s.tooltipPosition,activeGraphicalItemId:n}))}};function UZ(e){var{tooltipEntrySettings:t}=e,n=it(),r=Jt(),s=A.useRef(null);return A.useLayoutEffect(()=>{r||(s.current===null?n(FX(t)):s.current!==t&&n(HX({prev:s.current,next:t})),s.current=t)},[t,n,r]),A.useLayoutEffect(()=>()=>{s.current&&(n(KX(s.current)),s.current=null)},[n]),null}function VZ(e){var{legendPayload:t}=e,n=it(),r=Jt(),s=A.useRef(null);return A.useLayoutEffect(()=>{r||(s.current===null?n(XV(t)):s.current!==t&&n(YV({prev:s.current,next:t})),s.current=t)},[n,r,t]),A.useLayoutEffect(()=>()=>{s.current&&(n(GV(s.current)),s.current=null)},[n]),null}var $y,qZ=()=>{var[e]=A.useState(()=>au("uid-"));return e},$Z=($y=OR.useId)!==null&&$y!==void 0?$y:qZ;function FZ(e,t){var n=$Z();return t||(e?"".concat(e,"-").concat(n):n)}var HZ=A.createContext(void 0),KZ=e=>{var{id:t,type:n,children:r}=e,s=FZ("recharts-".concat(n),t);return A.createElement(HZ.Provider,{value:s},r(s))},XZ={cartesianItems:[],polarItems:[]},v5=Qt({name:"graphicalItems",initialState:XZ,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:Qe()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).cartesianItems.indexOf(n);s>-1&&(e.cartesianItems[s]=r)},prepare:Qe()},removeCartesianGraphicalItem:{reducer(e,t){var n=Zn(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:Qe()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:Qe()},removePolarGraphicalItem:{reducer(e,t){var n=Zn(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:Qe()},replacePolarGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).polarItems.indexOf(n);s>-1&&(e.polarItems[s]=r)},prepare:Qe()}}}),{addCartesianGraphicalItem:YZ,replaceCartesianGraphicalItem:GZ,removeCartesianGraphicalItem:WZ,addPolarGraphicalItem:Pne,removePolarGraphicalItem:Rne,replacePolarGraphicalItem:Lne}=v5.actions,ZZ=v5.reducer,QZ=e=>{var t=it(),n=A.useRef(null);return A.useLayoutEffect(()=>{n.current===null?t(YZ(e)):n.current!==e&&t(GZ({prev:n.current,next:e})),n.current=e},[t,e]),A.useLayoutEffect(()=>()=>{n.current&&(t(WZ(n.current)),n.current=null)},[t]),null},JZ=A.memo(QZ);function jj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Mj(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),hQ=$([dQ,hi,mi],(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)}}),mQ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b5,n=Jt(),r=ve(s=>Mo(s,"xAxis",t,n));return r?.map},pQ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b5,n=Jt(),r=ve(s=>Mo(s,"yAxis",t,n));return r?.map},w5=()=>ve(hQ),gQ=e=>{var{chartData:t}=e,n=it(),r=Jt();return A.useEffect(()=>r?()=>{}:(n(KE(t)),()=>{n(KE(void 0))}),[t,n,r]),null},Nj={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},_5=Qt({name:"brush",initialState:Nj,reducers:{setBrushSettings(e,t){return t.payload==null?Nj:t.payload}}}),{setBrushSettings:Une}=_5.actions,yQ=_5.reducer;function vQ(e){return(e%180+180)%180}var bQ=function(t){var{width:n,height:r}=t,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=vQ(s),u=o*Math.PI/180,f=Math.atan(r/n),d=u>f&&u{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=Zn(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=Zn(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=Zn(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:Vne,removeDot:qne,addArea:$ne,removeArea:Fne,addLine:Hne,removeLine:Kne}=S5.actions,wQ=S5.reducer,_Q=A.createContext(void 0),SQ=e=>{var{children:t}=e,[n]=A.useState("".concat(au("recharts"),"-clip")),r=w5();if(r==null)return null;var{x:s,y:o,width:u,height:f}=r;return A.createElement(_Q.Provider,{value:n},A.createElement("defs",null,A.createElement("clipPath",{id:n},A.createElement("rect",{x:s,y:o,height:f,width:u}))),t)};function A5(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*s)return!1;var o=n();return e*(t-e*o/2-r)>=0&&e*(t+e*o/2-s)<=0}function OQ(e,t){return A5(e,t+1)}function EQ(e,t,n,r,s){for(var o=(r||[]).slice(),{start:u,end:f}=t,d=0,h=1,m=u,p=function(){var w=r?.[d];if(w===void 0)return{v:A5(r,h)};var _=d,S,O=()=>(S===void 0&&(S=n(w,_)),S),M=w.coordinate,j=d===0||xu(e,M,O,m,f);j||(d=0,m=u,h+=1),j&&(m=M+e*(O()/2+s),d+=h)},v;h<=o.length;)if(v=p(),v)return v.v;return[]}function jQ(e,t,n,r,s){var o=(r||[]).slice(),u=o.length;if(u===0)return[];for(var{start:f,end:d}=t,h=1;h<=u;h++){for(var m=(u-1)%h,p=f,v=!0,x=function(){var N=r[_];if(N==null)return 0;var k=_,C,L=()=>(C===void 0&&(C=n(N,k)),C),I=N.coordinate,Y=_===m||xu(e,I,L,p,d);if(!Y)return v=!1,1;Y&&(p=I+e*(L()/2+s))},w,_=m;_(_===void 0&&(_=n(x,v)),_);if(v===u-1){var O=e*(w.coordinate+e*S()/2-d);o[v]=w=Gt(Gt({},w),{},{tickCoord:O>0?w.coordinate-O*e:w.coordinate})}else o[v]=w=Gt(Gt({},w),{},{tickCoord:w.coordinate});if(w.tickCoord!=null){var M=xu(e,w.tickCoord,S,f,d);M&&(d=w.tickCoord-e*(S()/2+s),o[v]=Gt(Gt({},w),{},{isShow:!0}))}},m=u-1;m>=0;m--)h(m);return o}function DQ(e,t,n,r,s,o){var u=(r||[]).slice(),f=u.length,{start:d,end:h}=t;if(o){var m=r[f-1];if(m!=null){var p=n(m,f-1),v=e*(m.coordinate+e*p/2-h);if(u[f-1]=m=Gt(Gt({},m),{},{tickCoord:v>0?m.coordinate-v*e:m.coordinate}),m.tickCoord!=null){var x=xu(e,m.tickCoord,()=>p,d,h);x&&(h=m.tickCoord-e*(p/2+s),u[f-1]=Gt(Gt({},m),{},{isShow:!0}))}}}for(var w=o?f-1:f,_=function(M){var j=u[M];if(j==null)return 1;var N=j,k,C=()=>(k===void 0&&(k=n(j,M)),k);if(M===0){var L=e*(N.coordinate-e*C()/2-d);u[M]=N=Gt(Gt({},N),{},{tickCoord:L<0?N.coordinate-L*e:N.coordinate})}else u[M]=N=Gt(Gt({},N),{},{tickCoord:N.coordinate});if(N.tickCoord!=null){var I=xu(e,N.tickCoord,C,d,h);I&&(d=N.tickCoord+e*(C()/2+s),u[M]=Gt(Gt({},N),{},{isShow:!0}))}},S=0;S{var L=typeof h=="function"?h(k.value,C):k.value;return w==="width"?AQ(Zl(L,{fontSize:t,letterSpacing:n}),_,p):Zl(L,{fontSize:t,letterSpacing:n})[w]},O=s[0],M=s[1],j=s.length>=2&&O!=null&&M!=null?Wn(M.coordinate-O.coordinate):1,N=TQ(o,j,w);return d==="equidistantPreserveStart"?EQ(j,N,S,s,u):d==="equidistantPreserveEnd"?jQ(j,N,S,s,u):(d==="preserveStart"||d==="preserveStartEnd"?x=DQ(j,N,S,s,u,d==="preserveStartEnd"):x=CQ(j,N,S,s,u),x.filter(k=>k.isShow))}var PQ=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:s=0,tickMargin:o=0}=e,u=0;if(t){Array.from(t).forEach(m=>{if(m){var p=m.getBoundingClientRect();p.width>u&&(u=p.width)}});var f=n?n.getBoundingClientRect().width:0,d=s+o,h=u+d+f+(n?r:0);return Math.round(h)}return 0},RQ={xAxis:{},yAxis:{}},T5=Qt({name:"renderedTicks",initialState:RQ,reducers:{setRenderedTicks:(e,t)=>{var{axisType:n,axisId:r,ticks:s}=t.payload;e[n][r]=s},removeRenderedTicks:(e,t)=>{var{axisType:n,axisId:r}=t.payload;delete e[n][r]}}}),{setRenderedTicks:LQ,removeRenderedTicks:zQ}=T5.actions,IQ=T5.reducer,BQ=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function UQ(e,t){if(e==null)return{};var n,r,s=VQ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(r==null||n==null)return _o;var o=t.map(u=>({value:u.value,coordinate:u.coordinate,offset:u.offset,index:u.index}));return s(LQ({ticks:o,axisId:r,axisType:n})),()=>{s(zQ({axisId:r,axisType:n}))}},[s,t,r,n]),null}var ZQ=A.forwardRef((e,t)=>{var{ticks:n=[],tick:r,tickLine:s,stroke:o,tickFormatter:u,unit:f,padding:d,tickTextProps:h,orientation:m,mirror:p,x:v,y:x,width:w,height:_,tickSize:S,tickMargin:O,fontSize:M,letterSpacing:j,getTicksConfig:N,events:k,axisType:C,axisId:L}=e,I=_x(ot(ot({},N),{},{ticks:n}),M,j),Y=Nr(N),te=Y0(r),ie=l5(Y.textAnchor)?Y.textAnchor:XQ(m,p),K=YQ(m,p),be={};typeof s=="object"&&(be=s);var pe=ot(ot({},Y),{},{fill:"none"},be),xe=I.map(ne=>ot({entry:ne},KQ(ne,v,x,w,_,m,S,p,O))),V=xe.map(ne=>{var{entry:le,line:ue}=ne;return A.createElement(hr,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(le.value,"-").concat(le.coordinate,"-").concat(le.tickCoord)},s&&A.createElement("line",es({},pe,ue,{className:et("recharts-cartesian-axis-tick-line",co(s,"className"))})))}),Q=xe.map((ne,le)=>{var ue,P,{entry:H,tick:ae}=ne,se=ot(ot(ot(ot({verticalAnchor:K},Y),{},{textAnchor:ie,stroke:"none",fill:o},ae),{},{index:le,payload:H,visibleTicksCount:I.length,tickFormatter:u,padding:d},h),{},{angle:(ue=(P=h?.angle)!==null&&P!==void 0?P:Y.angle)!==null&&ue!==void 0?ue:0}),Z=ot(ot({},se),te);return A.createElement(hr,es({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(H.value,"-").concat(H.coordinate,"-").concat(H.tickCoord)},_k(k,H,le)),r&&A.createElement(GQ,{option:r,tickProps:Z,value:"".concat(typeof u=="function"?u(H.value,le):H.value).concat(f||"")}))});return A.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(C,"-ticks")},A.createElement(WQ,{ticks:I,axisId:L,axisType:C}),Q.length>0&&A.createElement(ca,{zIndex:pn.label},A.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(C,"-tick-labels"),ref:t},Q)),V.length>0&&A.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(C,"-tick-lines")},V))}),QQ=A.forwardRef((e,t)=>{var{axisLine:n,width:r,height:s,className:o,hide:u,ticks:f,axisType:d,axisId:h}=e,m=UQ(e,BQ),[p,v]=A.useState(""),[x,w]=A.useState(""),_=A.useRef(null);A.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var O;return PQ({ticks:_.current,label:(O=e.labelRef)===null||O===void 0?void 0:O.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=A.useCallback(O=>{if(O){var M=O.getElementsByClassName("recharts-cartesian-axis-tick-value");_.current=M;var j=M[0];if(j){var N=window.getComputedStyle(j),k=N.fontSize,C=N.letterSpacing;(k!==p||C!==x)&&(v(k),w(C))}}},[p,x]);return u||r!=null&&r<=0||s!=null&&s<=0?null:A.createElement(ca,{zIndex:e.zIndex},A.createElement(hr,{className:et("recharts-cartesian-axis",o)},A.createElement(HQ,{x:e.x,y:e.y,width:r,height:s,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:Nr(e)}),A.createElement(ZQ,{ref:S,axisType:d,events:m,fontSize:p,getTicksConfig:e,height:e.height,letterSpacing:x,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:f,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:h}),A.createElement(XW,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},A.createElement(rZ,{label:e.label,labelRef:e.labelRef}),e.children)))}),Sx=A.forwardRef((e,t)=>{var n=vn(e,ii);return A.createElement(QQ,es({},n,{ref:t}))});Sx.displayName="CartesianAxis";var JQ=["x1","y1","x2","y2","key"],eJ=["offset"],tJ=["xAxisId","yAxisId"],nJ=["xAxisId","yAxisId"];function Dj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Wt(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:s,width:o,height:u,ry:f}=e;return A.createElement("rect",{x:r,y:s,ry:f,width:o,height:u,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function O5(e){var{option:t,lineItemProps:n}=e,r;if(A.isValidElement(t))r=A.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var s,{x1:o,y1:u,x2:f,y2:d,key:h}=n,m=Vd(n,JQ),p=(s=Nr(m))!==null&&s!==void 0?s:{},{offset:v}=p,x=Vd(p,eJ);r=A.createElement("line",$a({},x,{x1:o,y1:u,x2:f,y2:d,fill:"none",key:h}))}return r}function lJ(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:s}=e;if(!r||!s||!s.length)return null;var{xAxisId:o,yAxisId:u}=e,f=Vd(e,tJ),d=s.map((h,m)=>{var p=Wt(Wt({},f),{},{x1:t,y1:h,x2:t+n,y2:h,key:"line-".concat(m),index:m});return A.createElement(O5,{key:"line-".concat(m),option:r,lineItemProps:p})});return A.createElement("g",{className:"recharts-cartesian-grid-horizontal"},d)}function uJ(e){var{y:t,height:n,vertical:r=!0,verticalPoints:s}=e;if(!r||!s||!s.length)return null;var{xAxisId:o,yAxisId:u}=e,f=Vd(e,nJ),d=s.map((h,m)=>{var p=Wt(Wt({},f),{},{x1:h,y1:t,x2:h,y2:t+n,key:"line-".concat(m),index:m});return A.createElement(O5,{option:r,lineItemProps:p,key:"line-".concat(m)})});return A.createElement("g",{className:"recharts-cartesian-grid-vertical"},d)}function cJ(e){var{horizontalFill:t,fillOpacity:n,x:r,y:s,width:o,height:u,horizontalPoints:f,horizontal:d=!0}=e;if(!d||!t||!t.length||f==null)return null;var h=f.map(p=>Math.round(p+s-s)).sort((p,v)=>p-v);s!==h[0]&&h.unshift(0);var m=h.map((p,v)=>{var x=h[v+1],w=x==null,_=w?s+u-p:x-p;if(_<=0)return null;var S=v%t.length;return A.createElement("rect",{key:"react-".concat(v),y:p,x:r,height:_,width:o,stroke:"none",fill:t[S],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return A.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},m)}function fJ(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:s,y:o,width:u,height:f,verticalPoints:d}=e;if(!t||!n||!n.length)return null;var h=d.map(p=>Math.round(p+s-s)).sort((p,v)=>p-v);s!==h[0]&&h.unshift(0);var m=h.map((p,v)=>{var x=h[v+1],w=x==null,_=w?s+u-p:x-p;if(_<=0)return null;var S=v%n.length;return A.createElement("rect",{key:"react-".concat(v),x:p,y:o,width:_,height:f,stroke:"none",fill:n[S],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return A.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},m)}var dJ=(e,t)=>{var{xAxis:n,width:r,height:s,offset:o}=e;return dC(_x(Wt(Wt(Wt({},ii),n),{},{ticks:hC(n),viewBox:{x:0,y:0,width:r,height:s}})),o.left,o.left+o.width,t)},hJ=(e,t)=>{var{yAxis:n,width:r,height:s,offset:o}=e;return dC(_x(Wt(Wt(Wt({},ii),n),{},{ticks:hC(n),viewBox:{x:0,y:0,width:r,height:s}})),o.top,o.top+o.height,t)},mJ={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:pn.grid};function E5(e){var t=_C(),n=SC(),r=wC(),s=Wt(Wt({},vn(e,mJ)),{},{x:ye(e.x)?e.x:r.left,y:ye(e.y)?e.y:r.top,width:ye(e.width)?e.width:r.width,height:ye(e.height)?e.height:r.height}),{xAxisId:o,yAxisId:u,x:f,y:d,width:h,height:m,syncWithTicks:p,horizontalValues:v,verticalValues:x}=s,w=Jt(),_=ve(Y=>DE(Y,"xAxis",o,w)),S=ve(Y=>DE(Y,"yAxis",u,w));if(!Cr(h)||!Cr(m)||!ye(f)||!ye(d))return null;var O=s.verticalCoordinatesGenerator||dJ,M=s.horizontalCoordinatesGenerator||hJ,{horizontalPoints:j,verticalPoints:N}=s;if((!j||!j.length)&&typeof M=="function"){var k=v&&v.length,C=M({yAxis:S?Wt(Wt({},S),{},{ticks:k?v:S.ticks}):void 0,width:t??h,height:n??m,offset:r},k?!0:p);hd(Array.isArray(C),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof C,"]")),Array.isArray(C)&&(j=C)}if((!N||!N.length)&&typeof O=="function"){var L=x&&x.length,I=O({xAxis:_?Wt(Wt({},_),{},{ticks:L?x:_.ticks}):void 0,width:t??h,height:n??m,offset:r},L?!0:p);hd(Array.isArray(I),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof I,"]")),Array.isArray(I)&&(N=I)}return A.createElement(ca,{zIndex:s.zIndex},A.createElement("g",{className:"recharts-cartesian-grid"},A.createElement(oJ,{fill:s.fill,fillOpacity:s.fillOpacity,x:s.x,y:s.y,width:s.width,height:s.height,ry:s.ry}),A.createElement(cJ,$a({},s,{horizontalPoints:j})),A.createElement(fJ,$a({},s,{verticalPoints:N})),A.createElement(lJ,$a({},s,{offset:r,horizontalPoints:j,xAxis:_,yAxis:S})),A.createElement(uJ,$a({},s,{offset:r,verticalPoints:N,xAxis:_,yAxis:S}))))}E5.displayName="CartesianGrid";var pJ={},j5=Qt({name:"errorBars",initialState:pJ,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:s}=t.payload;e[n]&&(e[n]=e[n].map(o=>o.dataKey===r.dataKey&&o.direction===r.direction?s:o))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(s=>s.dataKey!==r.dataKey||s.direction!==r.direction))}}}),{addErrorBar:Xne,replaceErrorBar:Yne,removeErrorBar:Gne}=j5.actions,gJ=j5.reducer,yJ=["children"];function vJ(e,t){if(e==null)return{};var n,r,s=bJ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},wJ=A.createContext(xJ);function _J(e){var{children:t}=e,n=vJ(e,yJ);return A.createElement(wJ.Provider,{value:n},t)}function M5(e,t){var n,r,s=ve(h=>gi(h,e)),o=ve(h=>yi(h,t)),u=(n=s?.allowDataOverflow)!==null&&n!==void 0?n:wt.allowDataOverflow,f=(r=o?.allowDataOverflow)!==null&&r!==void 0?r:_t.allowDataOverflow,d=u||f;return{needClip:d,needClipX:u,needClipY:f}}function SJ(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,s=w5(),{needClipX:o,needClipY:u,needClip:f}=M5(t,n);if(!f||!s)return null;var{x:d,y:h,width:m,height:p}=s;return A.createElement("clipPath",{id:"clipPath-".concat(r)},A.createElement("rect",{x:o?d:d-m/2,y:u?h:h-p/2,width:o?m:m*2,height:u?p:p*2}))}var AJ=["option","isActive"];function Ql(){return Ql=Object.assign?Object.assign.bind():function(e){for(var t=1;tED(e,"xAxis",t,u),MJ=(e,t,n,r,s,o,u)=>OD(e,"xAxis",t,u),NJ=(e,t,n,r,s,o,u)=>ED(e,"yAxis",n,u),kJ=(e,t,n,r,s,o,u)=>OD(e,"yAxis",n,u),CJ=(e,t,n,r)=>IX(e,"zAxis",r,!1),DJ=(e,t,n,r,s)=>s,PJ=(e,t,n,r,s,o)=>o,RJ=(e,t,n,r,s,o,u)=>vb(e,void 0,void 0,u),LJ=$([W3,DJ],(e,t)=>e.filter(n=>n.type==="scatter").find(n=>n.id===t)),zJ=$([RJ,jJ,MJ,NJ,kJ,CJ,LJ,PJ],(e,t,n,r,s,o,u,f)=>{var{chartData:d,dataStartIndex:h,dataEndIndex:m}=e;if(u!=null){var p;if(u?.data!=null&&u.data.length>0?p=u.data:p=d?.slice(h,m+1),!(p==null||t==null||r==null||n==null||s==null||n?.length===0||s?.length===0))return ZJ({displayedData:p,xAxis:t,yAxis:r,zAxis:o,scatterSettings:u,xAxisTicks:n,yAxisTicks:s,cells:f})}}),IJ=["id"],BJ=["onMouseEnter","onClick","onMouseLeave"],UJ=["animationBegin","animationDuration","animationEasing","hide","isAnimationActive","legendType","lineJointType","lineType","shape","xAxisId","yAxisId","zAxisId"];function o0(e,t){if(e==null)return{};var n,r,s=VJ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{dataKey:t,name:n,fill:r,legendType:s,hide:o}=e;return[{inactive:o,dataKey:t,type:s,color:r,value:mC(n,t),payload:e}]},KJ=A.memo(e=>{var{dataKey:t,points:n,stroke:r,strokeWidth:s,fill:o,name:u,hide:f,tooltipType:d,id:h}=e,m={dataDefinedOnItem:n?.map(p=>p.tooltipPayload),getPosition:p=>{var v;return n==null||(v=n[Number(p)])===null||v===void 0?void 0:v.tooltipPosition},settings:{stroke:r,strokeWidth:s,fill:o,nameKey:void 0,dataKey:t,name:mC(u,t),hide:f,type:d,color:o,unit:"",graphicalItemId:h}};return A.createElement(UZ,{tooltipEntrySettings:m})});function XJ(e){var{points:t,props:n}=e,{line:r,lineType:s,lineJointType:o}=n;if(!r)return null;var u=Nr(n),f=Y0(r),d,h;if(s==="joint")d=t.map(S=>{var O,M;return{x:(O=S.cx)!==null&&O!==void 0?O:null,y:(M=S.cy)!==null&&M!==void 0?M:null}});else if(s==="fitting"){var{xmin:m,xmax:p,a:v,b:x}=k9(t),w=S=>v*S+x;d=[{x:m,y:w(m)},{x:p,y:w(p)}]}var _=yn(yn(yn({},u),{},{fill:"none",stroke:u&&u.fill},f),{},{points:d});return A.isValidElement(r)?h=A.cloneElement(r,_):typeof r=="function"?h=r(_):h=A.createElement(pb,ts({},_,{type:o})),A.createElement(hr,{className:"recharts-scatter-line",key:"recharts-scatter-line"},h)}function YJ(e){var{showLabels:t,points:n,children:r}=e,s=Nu(),o=A.useMemo(()=>n?.map(u=>{var f,d,h={x:(f=u.x)!==null&&f!==void 0?f:0,y:(d=u.y)!==null&&d!==void 0?d:0,width:u.width,height:u.height,lowerWidth:u.width,upperWidth:u.width};return yn(yn({},h),{},{value:void 0,payload:u.payload,viewBox:h,parentViewBox:s,fill:void 0})}),[s,n]);return A.createElement(lZ,{value:t?o:void 0},r)}function GJ(e){var{points:t,allOtherScatterProps:n}=e,{shape:r,activeShape:s,dataKey:o}=n,{id:u}=n,f=o0(n,IJ),d=ve(vu),{onMouseEnter:h,onClick:m,onMouseLeave:p}=n,v=o0(n,BJ),x=zZ(h,o,u),w=IZ(p),_=BZ(m,o,u);if(!F9(t))return null;var S=Nr(f);return A.createElement(A.Fragment,null,A.createElement(XJ,{points:t,props:f}),t.map((O,M)=>{var j=s!=null&&s!==!1,N=j&&d===String(M),k=j&&N?s:r,C=yn(yn(yn({},S),O),{},{index:M,[gC]:String(u)});return A.createElement(ca,{key:"symbol-".concat(O?.cx,"-").concat(O?.cy,"-").concat(O?.size,"-").concat(M),zIndex:N?pn.activeDot:void 0},A.createElement(hr,ts({className:"recharts-scatter-symbol"},_k(v,O,M),{onMouseEnter:x(O,M),onMouseLeave:w(O,M),onClick:_(O,M)}),A.createElement(EJ,ts({option:k,isActive:N},C))))}))}function WJ(e){var{previousPointsRef:t,props:n}=e,{points:r,isAnimationActive:s,animationBegin:o,animationDuration:u,animationEasing:f}=n,d=t.current,h=yb(n,"recharts-scatter-"),[m,p]=A.useState(!1),v=A.useCallback(()=>{p(!1)},[]),x=A.useCallback(()=>{p(!0)},[]),w=!m;return A.createElement(YJ,{showLabels:w,points:r},n.children,A.createElement(gb,{animationId:h,begin:o,duration:u,isActive:s,easing:f,onAnimationEnd:v,onAnimationStart:x,key:h},_=>{var S=_===1?r:r?.map((O,M)=>{var j=d&&d[M];return j?yn(yn({},O),{},{cx:O.cx==null?void 0:Nn(j.cx,O.cx,_),cy:O.cy==null?void 0:Nn(j.cy,O.cy,_),size:Nn(j.size,O.size,_)}):yn(yn({},O),{},{size:Nn(0,O.size,_)})});return _>0&&(t.current=S),A.createElement(hr,null,A.createElement(GJ,{points:S,allOtherScatterProps:n,showLabels:w}))}),A.createElement(fZ,{label:n.label}))}function ZJ(e){var{displayedData:t,xAxis:n,yAxis:r,zAxis:s,scatterSettings:o,xAxisTicks:u,yAxisTicks:f,cells:d}=e,h=dt(n.dataKey)?o.dataKey:n.dataKey,m=dt(r.dataKey)?o.dataKey:r.dataKey,p=s&&s.dataKey,v=s?s.range:X3.range,x=v&&v[0],w=n.scale.bandwidth?n.scale.bandwidth():0,_=r.scale.bandwidth?r.scale.bandwidth():0;return t.map((S,O)=>{var M=Ot(S,h),j=Ot(S,m),N=!dt(p)&&Ot(S,p)||"-",k=[{name:dt(n.dataKey)?o.name:n.name||String(n.dataKey),unit:n.unit||"",value:M,payload:S,dataKey:h,type:o.tooltipType,graphicalItemId:o.id},{name:dt(r.dataKey)?o.name:r.name||String(r.dataKey),unit:r.unit||"",value:j,payload:S,dataKey:m,type:o.tooltipType,graphicalItemId:o.id}];N!=="-"&&s!=null&&k.push({name:s.name||s.dataKey,unit:s.unit||"",value:N,payload:S,dataKey:p,type:o.tooltipType,graphicalItemId:o.id});var C=jT({axis:n,ticks:u,bandSize:w,entry:S,index:O,dataKey:h}),L=jT({axis:r,ticks:f,bandSize:_,entry:S,index:O,dataKey:m}),I=N!=="-"&&s!=null?s.scale.map(N):x,Y=I==null?0:Math.sqrt(Math.max(I,0)/Math.PI);return yn(yn({},S),{},{cx:C,cy:L,x:C==null?void 0:C-Y,y:L==null?void 0:L-Y,width:2*Y,height:2*Y,size:I,node:{x:M,y:j,z:N},tooltipPayload:k,tooltipPosition:{x:C,y:L},payload:S},d&&d[O]&&d[O].props)})}var QJ=(e,t,n)=>({x:e.cx,y:e.cy,value:Number(n==="x"?e.node.x:e.node.y),errorVal:Ot(e,t)});function JJ(e){var{hide:t,points:n,className:r,needClip:s,xAxisId:o,yAxisId:u,id:f}=e,d=A.useRef(null);if(t)return null;var h=et("recharts-scatter",r),m=f;return A.createElement(ca,{zIndex:e.zIndex},A.createElement(hr,{className:h,clipPath:s?"url(#clipPath-".concat(m,")"):void 0,id:f},s&&A.createElement("defs",null,A.createElement(SJ,{clipPathId:m,xAxisId:o,yAxisId:u})),A.createElement(_J,{xAxisId:o,yAxisId:u,data:n,dataPointFormatter:QJ,errorBarOffset:0},A.createElement(hr,{key:"recharts-scatter-symbols"},A.createElement(WJ,{props:e,previousPointsRef:d})))))}var N5={xAxisId:0,yAxisId:0,zAxisId:0,label:!1,line:!1,legendType:"circle",lineType:"joint",lineJointType:"linear",shape:"circle",hide:!1,isAnimationActive:"auto",animationBegin:0,animationDuration:400,animationEasing:"linear",zIndex:pn.scatter};function eee(e){var t=vn(e,N5),{animationBegin:n,animationDuration:r,animationEasing:s,hide:o,isAnimationActive:u,legendType:f,lineJointType:d,lineType:h,shape:m,xAxisId:p,yAxisId:v,zAxisId:x}=t,w=o0(t,UJ),{needClip:_}=M5(p,v),S=A.useMemo(()=>vZ(e.children,bx),[e.children]),O=Jt(),M=ve(j=>zJ(j,p,v,x,e.id,S,O));return _==null||M==null?null:A.createElement(A.Fragment,null,A.createElement(KJ,{dataKey:e.dataKey,points:M,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:e.id}),A.createElement(JJ,ts({},w,{xAxisId:p,yAxisId:v,zAxisId:x,lineType:h,lineJointType:d,legendType:f,shape:m,hide:o,isAnimationActive:u,animationBegin:n,animationDuration:r,animationEasing:s,points:M,needClip:_})))}function tee(e){var t=vn(e,N5),n=Jt();return A.createElement(KZ,{id:t.id,type:"scatter"},r=>A.createElement(A.Fragment,null,A.createElement(VZ,{legendPayload:HJ(t)}),A.createElement(JZ,{type:"scatter",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:t.zAxisId,dataKey:t.dataKey,hide:t.hide,name:t.name,tooltipType:t.tooltipType,isPanorama:n}),A.createElement(eee,ts({},t,{id:r}))))}var k5=A.memo(tee,mh);k5.displayName="Scatter";var nee=["domain","range"],ree=["domain","range"];function Rj(e,t){if(e==null)return{};var n,r,s=iee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(u!=null)return Ij(Ij({},o),{},{type:u})},[o,u]);return A.useLayoutEffect(()=>{f!=null&&(n.current===null?t(iQ(f)):n.current!==f&&t(aQ({prev:n.current,next:f})),n.current=f)},[f,t]),A.useLayoutEffect(()=>()=>{n.current&&(t(sQ(n.current)),n.current=null)},[t]),null}var hee=e=>{var{xAxisId:t,className:n}=e,r=ve(yC),s=Jt(),o="xAxis",u=ve(O=>TD(O,o,t,s)),f=ve(O=>AX(O,t)),d=ve(O=>NX(O,t)),h=ve(O=>H3(O,t));if(f==null||d==null||h==null)return null;var{dangerouslySetInnerHTML:m,ticks:p,scale:v}=e,x=u0(e,see),{id:w,scale:_}=h,S=u0(h,oee);return A.createElement(Sx,l0({},x,S,{x:d.x,y:d.y,width:f.width,height:f.height,className:et("recharts-".concat(o," ").concat(o),n),viewBox:r,ticks:u,axisType:o,axisId:t}))},mee={allowDataOverflow:wt.allowDataOverflow,allowDecimals:wt.allowDecimals,allowDuplicatedCategory:wt.allowDuplicatedCategory,angle:wt.angle,axisLine:ii.axisLine,height:wt.height,hide:!1,includeHidden:wt.includeHidden,interval:wt.interval,label:!1,minTickGap:wt.minTickGap,mirror:wt.mirror,orientation:wt.orientation,padding:wt.padding,reversed:wt.reversed,scale:wt.scale,tick:wt.tick,tickCount:wt.tickCount,tickLine:ii.tickLine,tickSize:ii.tickSize,type:wt.type,niceTicks:wt.niceTicks,xAxisId:0},pee=e=>{var t=vn(e,mee);return A.createElement(A.Fragment,null,A.createElement(dee,{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}),A.createElement(hee,t))},D5=A.memo(pee,C5);D5.displayName="XAxis";var gee=["type"],yee=["dangerouslySetInnerHTML","ticks","scale"],vee=["id","scale"];function c0(){return c0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(u!=null)return Uj(Uj({},o),{},{type:u})},[u,o]);return A.useLayoutEffect(()=>{f!=null&&(n.current===null?t(oQ(f)):n.current!==f&&t(lQ({prev:n.current,next:f})),n.current=f)},[f,t]),A.useLayoutEffect(()=>()=>{n.current&&(t(uQ(n.current)),n.current=null)},[t]),null}function Aee(e){var{yAxisId:t,className:n,width:r,label:s}=e,o=A.useRef(null),u=A.useRef(null),f=ve(yC),d=Jt(),h=it(),m="yAxis",p=ve(C=>DX(C,t)),v=ve(C=>CX(C,t)),x=ve(C=>TD(C,m,t,d)),w=ve(C=>K3(C,t));if(A.useLayoutEffect(()=>{if(!(r!=="auto"||!p||wx(s)||A.isValidElement(s)||w==null)){var C=o.current;if(C){var L=C.getCalculatedWidth();Math.round(p.width)!==Math.round(L)&&h(cQ({id:t,width:L}))}}},[x,p,h,s,t,r,w]),p==null||v==null||w==null)return null;var{dangerouslySetInnerHTML:_,ticks:S,scale:O}=e,M=f0(e,yee),{id:j,scale:N}=w,k=f0(w,vee);return A.createElement(Sx,c0({},M,k,{ref:o,labelRef:u,x:v.x,y:v.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:p.width,height:p.height,className:et("recharts-".concat(m," ").concat(m),n),viewBox:f,ticks:x,axisType:m,axisId:t}))}var Tee={allowDataOverflow:_t.allowDataOverflow,allowDecimals:_t.allowDecimals,allowDuplicatedCategory:_t.allowDuplicatedCategory,angle:_t.angle,axisLine:ii.axisLine,hide:!1,includeHidden:_t.includeHidden,interval:_t.interval,label:!1,minTickGap:_t.minTickGap,mirror:_t.mirror,orientation:_t.orientation,padding:_t.padding,reversed:_t.reversed,scale:_t.scale,tick:_t.tick,tickCount:_t.tickCount,tickLine:ii.tickLine,tickSize:ii.tickSize,type:_t.type,niceTicks:_t.niceTicks,width:_t.width,yAxisId:0},Oee=e=>{var t=vn(e,Tee);return A.createElement(A.Fragment,null,A.createElement(See,{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}),A.createElement(Aee,t))},P5=A.memo(Oee,C5);P5.displayName="YAxis";var Eee=(e,t)=>t,Ax=$([Eee,ht,o3,Dt,FD,vi,rG,Xt],cG);function jee(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function Tx(e){var t=e.currentTarget.getBoundingClientRect(),n,r;if(jee(e)){var s=e.currentTarget.getBBox();n=s.width>0?t.width/s.width:1,r=s.height>0?t.height/s.height:1}else{var o=e.currentTarget;n=o.offsetWidth>0?t.width/o.offsetWidth:1,r=o.offsetHeight>0?t.height/o.offsetHeight:1}var u=(f,d)=>({relativeX:Math.round((f-t.left)/n),relativeY:Math.round((d-t.top)/r)});return"touches"in e?Array.from(e.touches).map(f=>u(f.clientX,f.clientY)):u(e.clientX,e.clientY)}var R5=Pn("mouseClick"),L5=ju();L5.startListening({actionCreator:R5,effect:(e,t)=>{var n=e.payload,r=Ax(t.getState(),Tx(n));r?.activeIndex!=null&&t.dispatch(WX({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var d0=Pn("mouseMove"),z5=ju(),Xs=null,ka=null,Fy=null;z5.startListening({actionCreator:d0,effect:(e,t)=>{var n=e.payload,r=t.getState(),{throttleDelay:s,throttledEvents:o}=r.eventSettings,u=o==="all"||o?.includes("mousemove");Xs!==null&&(cancelAnimationFrame(Xs),Xs=null),ka!==null&&(typeof s!="number"||!u)&&(clearTimeout(ka),ka=null),Fy=Tx(n);var f=()=>{var d=t.getState(),h=ux(d,d.tooltip.settings.shared);if(!Fy){Xs=null,ka=null;return}if(h==="axis"){var m=Ax(d,Fy);m?.activeIndex!=null?t.dispatch(RD({activeIndex:m.activeIndex,activeDataKey:void 0,activeCoordinate:m.activeCoordinate})):t.dispatch(PD())}Xs=null,ka=null};if(!u){f();return}s==="raf"?Xs=requestAnimationFrame(f):typeof s=="number"&&ka===null&&(ka=setTimeout(f,s))}});function Mee(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var Vj={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},I5=Qt({name:"rootProps",initialState:Vj,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:Vj.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}}}),Nee=I5.reducer,{updateOptions:kee}=I5.actions,Cee=null,Dee={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)},B5=Qt({name:"polarOptions",initialState:Cee,reducers:Dee}),{updatePolarOptions:Wne}=B5.actions,Pee=B5.reducer,U5=Pn("keyDown"),V5=Pn("focus"),q5=Pn("blur"),Nh=ju(),Ys=null,Ca=null,Mf=null;Nh.startListening({actionCreator:U5,effect:(e,t)=>{Mf=e.payload,Ys!==null&&(cancelAnimationFrame(Ys),Ys=null);var n=t.getState(),{throttleDelay:r,throttledEvents:s}=n.eventSettings,o=s==="all"||s.includes("keydown");Ca!==null&&(typeof r!="number"||!o)&&(clearTimeout(Ca),Ca=null);var u=()=>{try{var f=t.getState(),d=f.rootProps.accessibilityLayer!==!1;if(!d)return;var{keyboardInteraction:h}=f.tooltip,m=Mf;if(m!=="ArrowRight"&&m!=="ArrowLeft"&&m!=="Enter")return;var p=cx(h,Co(f),qu(f),Fu(f)),v=p==null?-1:Number(p);if(!Number.isFinite(v)||v<0)return;var x=vi(f);if(m==="Enter"){var w=zd(f,"axis","hover",String(h.index));t.dispatch(Ld({active:!h.active,activeIndex:h.index,activeCoordinate:w}));return}var _=BX(f),S=_==="left-to-right"?1:-1,O=m==="ArrowRight"?1:-1,M=v+O*S;if(x==null||M>=x.length||M<0)return;var j=zd(f,"axis","hover",String(M));t.dispatch(Ld({active:!0,activeIndex:M.toString(),activeCoordinate:j}))}finally{Ys=null,Ca=null}};if(!o){u();return}r==="raf"?Ys=requestAnimationFrame(u):typeof r=="number"&&Ca===null&&(u(),Mf=null,Ca=setTimeout(()=>{Mf?u():(Ca=null,Ys=null)},r))}});Nh.startListening({actionCreator:V5,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:s}=n.tooltip;if(!s.active&&s.index==null){var o="0",u=zd(n,"axis","hover",String(o));t.dispatch(Ld({active:!0,activeIndex:o,activeCoordinate:u}))}}}});Nh.startListening({actionCreator:q5,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:s}=n.tooltip;s.active&&t.dispatch(Ld({active:!1,activeIndex:s.index,activeCoordinate:s.coordinate}))}}});function $5(e){e.persist();var{currentTarget:t}=e;return new Proxy(e,{get:(n,r)=>{if(r==="currentTarget")return t;var s=Reflect.get(n,r);return typeof s=="function"?s.bind(n):s}})}var Yn=Pn("externalEvent"),F5=ju(),Nf=new Map,Il=new Map,Hy=new Map;F5.startListening({actionCreator:Yn,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){var s=r.type,o=$5(r);Hy.set(s,{handler:n,reactEvent:o});var u=Nf.get(s);u!==void 0&&(cancelAnimationFrame(u),Nf.delete(s));var f=t.getState(),{throttleDelay:d,throttledEvents:h}=f.eventSettings,m=h,p=m==="all"||m?.includes(s),v=Il.get(s);v!==void 0&&(typeof d!="number"||!p)&&(clearTimeout(v),Il.delete(s));var x=()=>{var S=Hy.get(s);try{if(!S)return;var{handler:O,reactEvent:M}=S,j=t.getState(),N={activeCoordinate:qY(j),activeDataKey:BY(j),activeIndex:vu(j),activeLabel:XD(j),activeTooltipIndex:vu(j),isTooltipActive:$Y(j)};O&&O(N,M)}finally{Nf.delete(s),Il.delete(s),Hy.delete(s)}};if(!p){x();return}if(d==="raf"){var w=requestAnimationFrame(x);Nf.set(s,w)}else if(typeof d=="number"){if(!Il.has(s)){x();var _=setTimeout(x,d);Il.set(s,_)}}else x()}}});var Ree=$([No],e=>e.tooltipItemPayloads),Lee=$([Ree,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(o=>o.settings.graphicalItemId===n);if(r!=null){var{getPosition:s}=r;if(s!=null)return s(t)}}}),H5=Pn("touchMove"),K5=ju(),Da=null,Hi=null,qj=null,Bl=null;K5.startListening({actionCreator:H5,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){Bl=$5(n);var r=t.getState(),{throttleDelay:s,throttledEvents:o}=r.eventSettings,u=o==="all"||o.includes("touchmove");Da!==null&&(cancelAnimationFrame(Da),Da=null),Hi!==null&&(typeof s!="number"||!u)&&(clearTimeout(Hi),Hi=null),qj=Array.from(n.touches).map(d=>Tx({clientX:d.clientX,clientY:d.clientY,currentTarget:n.currentTarget}));var f=()=>{if(Bl!=null){var d=t.getState(),h=ux(d,d.tooltip.settings.shared);if(h==="axis"){var m,p=(m=qj)===null||m===void 0?void 0:m[0];if(p==null){Da=null,Hi=null;return}var v=Ax(d,p);v?.activeIndex!=null&&t.dispatch(RD({activeIndex:v.activeIndex,activeDataKey:void 0,activeCoordinate:v.activeCoordinate}))}else if(h==="item"){var x,w=Bl.touches[0];if(document.elementFromPoint==null||w==null)return;var _=document.elementFromPoint(w.clientX,w.clientY);if(!_||!_.getAttribute)return;var S=_.getAttribute(iV),O=(x=_.getAttribute(gC))!==null&&x!==void 0?x:void 0,M=ko(d).find(k=>k.id===O);if(S==null||M==null||O==null)return;var{dataKey:j}=M,N=Lee(d,S,O);t.dispatch(DD({activeDataKey:j,activeIndex:S,activeCoordinate:N,activeGraphicalItemId:O}))}Da=null,Hi=null}};if(!u){f();return}s==="raf"?Da=requestAnimationFrame(f):typeof s=="number"&&Hi===null&&(f(),Bl=null,Hi=setTimeout(()=>{Bl?f():(Hi=null,Da=null)},s))}}});var X5={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},Y5=Qt({name:"eventSettings",initialState:X5,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=t.payload.throttledEvents)}}}),{setEventSettings:zee}=Y5.actions,Iee=Y5.reducer,Bee=zk({brush:yQ,cartesianAxis:fQ,chartData:qG,errorBars:gJ,eventSettings:Iee,graphicalItems:ZZ,layout:$U,legend:WV,options:zG,polarAxis:hZ,polarOptions:Pee,referenceElements:wQ,renderedTicks:IQ,rootProps:Nee,tooltip:ZX,zIndex:AG}),Uee=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return mU({reducer:Bee,preloadedState:t,middleware:r=>{var s;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((s="es6")!==null&&s!==void 0?s:"")}).concat([L5.middleware,z5.middleware,Nh.middleware,F5.middleware,K5.middleware])},enhancers:r=>{var s=r;return typeof r=="function"&&(s=r()),s.concat(Qk({type:"raf"}))},devTools:{serialize:{replacer:Mee},name:"recharts-".concat(n)}})};function Vee(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,s=Jt(),o=A.useRef(null);if(s)return n;o.current==null&&(o.current=Uee(t,r));var u=ib;return A.createElement(mq,{context:u,store:o.current},n)}function qee(e){var{layout:t,margin:n}=e,r=it(),s=Jt();return A.useEffect(()=>{s||(r(UU(t)),r(BU(n)))},[r,s,t,n]),null}var $ee=A.memo(qee,mh);function Fee(e){var t=it();return A.useEffect(()=>{t(kee(e))},[t,e]),null}var Hee=e=>{var t=it();return A.useEffect(()=>{t(zee(e))},[t,e]),null},Kee=A.memo(Hee,mh);function $j(e){var{zIndex:t,isPanorama:n}=e,r=A.useRef(null),s=it();return A.useLayoutEffect(()=>(r.current&&s(_G({zIndex:t,element:r.current,isPanorama:n})),()=>{s(SG({zIndex:t,isPanorama:n}))}),[s,t,n]),A.createElement("g",{tabIndex:-1,ref:r,className:"recharts-zIndex-layer_".concat(t)})}function Fj(e){var{children:t,isPanorama:n}=e,r=ve(dG);if(!r||r.length===0)return t;var s=r.filter(u=>u<0),o=r.filter(u=>u>0);return A.createElement(A.Fragment,null,s.map(u=>A.createElement($j,{key:u,zIndex:u,isPanorama:n})),t,o.map(u=>A.createElement($j,{key:u,zIndex:u,isPanorama:n})))}var Xee=["children"];function Yee(e,t){if(e==null)return{};var n,r,s=Gee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var n=_C(),r=SC(),s=PC();if(!Cr(n)||!Cr(r))return null;var{children:o,otherAttributes:u,title:f,desc:d}=e,h,m;return u!=null&&(typeof u.tabIndex=="number"?h=u.tabIndex:h=s?0:void 0,typeof u.role=="string"?m=u.role:m=s?"application":void 0),A.createElement(ek,qd({},u,{title:f,desc:d,role:m,tabIndex:h,width:n,height:r,style:Wee,ref:t}),o)}),Qee=e=>{var{children:t}=e,n=ve(ch);if(!n)return null;var{width:r,height:s,y:o,x:u}=n;return A.createElement(ek,{width:r,height:s,x:u,y:o},t)},Hj=A.forwardRef((e,t)=>{var{children:n}=e,r=Yee(e,Xee),s=Jt();return s?A.createElement(Qee,null,A.createElement(Fj,{isPanorama:!0},n)):A.createElement(Zee,qd({ref:t},r),A.createElement(Fj,{isPanorama:!1},n))});function Jee(){var e=it(),[t,n]=A.useState(null),r=ve(rV);return A.useEffect(()=>{if(t!=null){var s=t.getBoundingClientRect(),o=s.width/t.offsetWidth;Le(o)&&o!==r&&e(qU(o))}},[t,e,r]),n}function Kj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ete(e){for(var t=1;t(ZG(),null);function $d(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var ate=A.forwardRef((e,t)=>{var n,r,s=A.useRef(null),[o,u]=A.useState({containerWidth:$d((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:$d((r=e.style)===null||r===void 0?void 0:r.height)}),f=A.useCallback((h,m)=>{u(p=>{var v=Math.round(h),x=Math.round(m);return p.containerWidth===v&&p.containerHeight===x?p:{containerWidth:v,containerHeight:x}})},[]),d=A.useCallback(h=>{if(typeof t=="function"&&t(h),h!=null&&typeof ResizeObserver<"u"){var{width:m,height:p}=h.getBoundingClientRect();f(m,p);var v=w=>{var _=w[0];if(_!=null){var{width:S,height:O}=_.contentRect;f(S,O)}},x=new ResizeObserver(v);x.observe(h),s.current=x}},[t,f]);return A.useEffect(()=>()=>{var h=s.current;h?.disconnect()},[f]),A.createElement(A.Fragment,null,A.createElement(Cu,{width:o.containerWidth,height:o.containerHeight}),A.createElement("div",ta({ref:d},e)))}),ste=A.forwardRef((e,t)=>{var{width:n,height:r}=e,[s,o]=A.useState({containerWidth:$d(n),containerHeight:$d(r)}),u=A.useCallback((d,h)=>{o(m=>{var p=Math.round(d),v=Math.round(h);return m.containerWidth===p&&m.containerHeight===v?m:{containerWidth:p,containerHeight:v}})},[]),f=A.useCallback(d=>{if(typeof t=="function"&&t(d),d!=null){var{width:h,height:m}=d.getBoundingClientRect();u(h,m)}},[t,u]);return A.createElement(A.Fragment,null,A.createElement(Cu,{width:s.containerWidth,height:s.containerHeight}),A.createElement("div",ta({ref:f},e)))}),ote=A.forwardRef((e,t)=>{var{width:n,height:r}=e;return A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement("div",ta({ref:t},e)))}),lte=A.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?A.createElement(ste,ta({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?A.createElement(ote,ta({},e,{width:n,height:r,ref:t})):A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement("div",ta({ref:t},e)))});function ute(e){return e?ate:lte}var cte=A.forwardRef((e,t)=>{var{children:n,className:r,height:s,onClick:o,onContextMenu:u,onDoubleClick:f,onMouseDown:d,onMouseEnter:h,onMouseLeave:m,onMouseMove:p,onMouseUp:v,onTouchEnd:x,onTouchMove:w,onTouchStart:_,style:S,width:O,responsive:M,dispatchTouchEvents:j=!0}=e,N=A.useRef(null),k=it(),[C,L]=A.useState(null),[I,Y]=A.useState(null),te=Jee(),ie=fb(),K=ie?.width>0?ie.width:O,be=ie?.height>0?ie.height:s,pe=A.useCallback(re=>{te(re),typeof t=="function"&&t(re),L(re),Y(re),re!=null&&(N.current=re)},[te,t,L,Y]),xe=A.useCallback(re=>{k(R5(re)),k(Yn({handler:o,reactEvent:re}))},[k,o]),V=A.useCallback(re=>{k(d0(re)),k(Yn({handler:h,reactEvent:re}))},[k,h]),Q=A.useCallback(re=>{k(PD()),k(Yn({handler:m,reactEvent:re}))},[k,m]),ne=A.useCallback(re=>{k(d0(re)),k(Yn({handler:p,reactEvent:re}))},[k,p]),le=A.useCallback(()=>{k(V5())},[k]),ue=A.useCallback(()=>{k(q5())},[k]),P=A.useCallback(re=>{k(U5(re.key))},[k]),H=A.useCallback(re=>{k(Yn({handler:u,reactEvent:re}))},[k,u]),ae=A.useCallback(re=>{k(Yn({handler:f,reactEvent:re}))},[k,f]),se=A.useCallback(re=>{k(Yn({handler:d,reactEvent:re}))},[k,d]),Z=A.useCallback(re=>{k(Yn({handler:v,reactEvent:re}))},[k,v]),oe=A.useCallback(re=>{k(Yn({handler:_,reactEvent:re}))},[k,_]),he=A.useCallback(re=>{j&&k(H5(re)),k(Yn({handler:w,reactEvent:re}))},[k,j,w]),_e=A.useCallback(re=>{k(Yn({handler:x,reactEvent:re}))},[k,x]),J=ute(M);return A.createElement(e5.Provider,{value:C},A.createElement(HB.Provider,{value:I},A.createElement(J,{width:K??S?.width,height:be??S?.height,className:et("recharts-wrapper",r),style:ete({position:"relative",cursor:"default",width:K,height:be},S),onClick:xe,onContextMenu:H,onDoubleClick:ae,onFocus:le,onBlur:ue,onKeyDown:P,onMouseDown:se,onMouseEnter:V,onMouseLeave:Q,onMouseMove:ne,onMouseUp:Z,onTouchEnd:_e,onTouchMove:he,onTouchStart:oe,ref:pe},A.createElement(ite,null),n)))}),fte=["width","height","responsive","children","className","style","compact","title","desc"];function dte(e,t){if(e==null)return{};var n,r,s=hte(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:s,children:o,className:u,style:f,compact:d,title:h,desc:m}=e,p=dte(e,fte),v=Nr(p);return d?A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement(Hj,{otherAttributes:v,title:h,desc:m},o)):A.createElement(cte,{className:u,style:f,width:n,height:r,responsive:s??!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},A.createElement(Hj,{otherAttributes:v,title:h,desc:m,ref:t},A.createElement(SQ,null,o)))});function h0(){return h0=Object.assign?Object.assign.bind():function(e){for(var t=1;tA.createElement(wte,{chartName:"ScatterChart",defaultTooltipEventType:"item",validateTooltipEventTypes:_te,tooltipPayloadSearcher:RG,categoricalChartProps:e,ref:t}));const Ox={bg:{primary:"#0B0D17",secondary:"#12152A",tertiary:"#1A1F3D",hover:"#222850"},accent:{purple:"#8B5CF6",purpleLight:"#A78BFA",purpleDim:"#6D28D9",blue:"#38BDF8",blueLight:"#7DD3FC",blueDim:"#0284C7",cyan:"#06B6D4",amber:"#F59E0B"},text:{primary:"#F1F5F9",secondary:"#94A3B8",muted:"#64748B"},heatmap:{bad:"#EF4444",badBg:"#7F1D1D",mid:"#EAB308",midBg:"#713F12",good:"#22C55E",goodBg:"#14532D"}},Ate={bg:{primary:"#FFFFFF",secondary:"#F8FAFC",tertiary:"#F1F5F9",hover:"#E2E8F0"},accent:{purple:"#7C3AED",purpleLight:"#6D28D9",purpleDim:"#5B21B6",blue:"#0284C7",blueLight:"#0369A1",blueDim:"#075985",cyan:"#0891B2",amber:"#D97706"},text:{primary:"#0F172A",secondary:"#334155",muted:"#64748B"},heatmap:{bad:"#DC2626",badBg:"#FEE2E2",mid:"#CA8A04",midBg:"#FEF9C3",good:"#16A34A",goodBg:"#DCFCE7"}},Tte={dark:Ox,light:Ate},Ex=A.createContext({mode:"dark",colors:Ox});function jx(){return A.useContext(Ex).colors}function Ote(){return A.useContext(Ex).mode}function kf(e,t,n,r,s=!1,o){const u=o??Ox,f=n-t;let d=f===0?.5:(e-t)/f;s&&(d=1-d);const h=.1+d*.55;return{bg:Ete(r,h),text:u.text.primary}}function Ete(e,t){const n=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),s=parseInt(e.slice(5,7),16);return`rgba(${n}, ${r}, ${s}, ${t.toFixed(2)})`}function jte(e=640){const[t,n]=A.useState(!1);return A.useEffect(()=>{const r=()=>n(window.innerWidthwindow.removeEventListener("resize",r)},[e]),t}function Yj({base:e,sub:t}){return b.jsxs(b.Fragment,{children:[e,b.jsx("sub",{className:"text-[0.7em]",children:t})]})}function Mte({active:e,payload:t,xSub:n,ySub:r}){if(!e||!t?.length)return null;const s=t[0].payload,o=s.type==="cascade"?"Cascade":s.type==="2-part"?"2-Part":"Speech-to-Speech",u=s.type==="cascade"?"bg-purple/20 text-purple-light":s.type==="2-part"?"bg-emerald-500/20 text-emerald-400":"bg-blue/20 text-blue-light";return b.jsxs("div",{className:"bg-bg-tertiary border border-border-default rounded-lg p-3 shadow-xl max-w-xs",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1",children:s.name}),b.jsxs("div",{className:"flex gap-4 text-xs",children:[b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[b.jsx(Yj,{base:"EVA-A",sub:n}),":"]})," ",b.jsx("span",{className:"text-purple-light font-mono",children:s.plotX.toFixed(2)})]}),b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[b.jsx(Yj,{base:"EVA-X",sub:r}),":"]})," ",b.jsx("span",{className:"text-blue-light font-mono",children:s.plotY.toFixed(2)})]})]}),s.type==="cascade"&&b.jsxs("div",{className:"text-[10px] text-text-muted mt-1.5 space-y-0.5",children:[b.jsxs("div",{children:["STT: ",s.stt]}),b.jsxs("div",{children:["LLM: ",s.llm]}),b.jsxs("div",{children:["TTS: ",s.tts]})]}),b.jsx("div",{className:"mt-1.5",children:b.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium ${u}`,children:o})})]})}function Gj({x:e,y:t,base:n,sub:r,suffix:s,fill:o,angle:u,small:f}){const d=f?12:20,h=f?9:14,m=f?3:5;return b.jsxs("text",{x:e,y:t,fill:o,fontSize:d,fontWeight:600,textAnchor:"middle",transform:u?`rotate(${u}, ${e}, ${t})`:void 0,children:[n,b.jsx("tspan",{fontSize:h,dy:m,children:r}),s&&b.jsx("tspan",{fontSize:d,dy:-m,children:s})]})}const Wj=[0,.2,.4,.6,.8,1],m0="#A78BFA",Nte="#C4B5FD",G5="#F59E0B",kte="#FBBF24",W5="#34D399",Cte="#6EE7B7",Z5="#06B6D4";function Dte(e){const t=[];for(const n of e)e.some(s=>s.plotY>=n.plotY&&s.plotX>=n.plotX&&(s.plotY>n.plotY||s.plotX>n.plotX))||t.push(n);return t.sort((n,r)=>n.plotX-r.plotX).map(n=>({plotX:n.plotX,plotY:n.plotY}))}function Pte({frontier:e}){const t=mQ(),n=pQ();if(!t||!n||e.length<2)return null;const r=e.map(s=>`${t(s.plotX)},${n(s.plotY)}`).join(" ");return b.jsx("polyline",{points:r,fill:"none",stroke:Z5,strokeWidth:2,strokeDasharray:"6 3",pointerEvents:"none"})}const Ul=[{title:"pass@1",description:b.jsx(b.Fragment,{children:"Average of per-sample scores, where each sample scores 1 if all metrics in category surpass metric-specific threshold, else 0."}),subscript:"pass@1",getX:e=>e.successRates.accuracy.pass_threshold,getY:e=>e.successRates.experience.pass_threshold,domain:[0,1]},{title:"pass@k (k=3)",description:b.jsx(b.Fragment,{children:"Percent of scenarios where at least 1 of k=3 trials surpasses metric-specific thresholds in all metrics in the category. ."}),subscript:"pass@k",getX:e=>e.successRates.accuracy.pass_at_k,getY:e=>e.successRates.experience.pass_at_k,domain:[0,1]},{title:"pass^k (k=3)",description:b.jsx(b.Fragment,{children:"Per-scenario probability of all k=3 trials succeeding (scenario pass rate raised to the k-th power) for that category, averaged across scenarios."}),subscript:"pass^k",getX:e=>e.successRates.accuracy.pass_k,getY:e=>e.successRates.experience.pass_k,domain:[0,1]},{title:"Mean",description:b.jsx(b.Fragment,{children:"Average of per-sample scores, where each sample's score is the mean of the submetrics in that category."}),subscript:"mean",getX:e=>e.successRates.accuracy.mean,getY:e=>e.successRates.experience.mean,domain:[0,1]}];function Rte(e){return e==="2-part"?{fill:W5,stroke:Cte}:e==="s2s"?{fill:G5,stroke:kte}:{fill:m0,stroke:Nte}}function Lte({systems:e}){const t=jx(),[n,r]=A.useState(0),s=jte(),o=Ul[n],u=e.map(m=>({...m,plotX:o.getX(m),plotY:o.getY(m)})),f=Dte(u),d=()=>r(m=>(m-1+Ul.length)%Ul.length),h=()=>r(m=>(m+1)%Ul.length);return b.jsxs("div",{className:"bg-bg-secondary rounded-xl border border-border-default p-6",children:[b.jsx("div",{className:"flex flex-wrap justify-center gap-2 mb-6",children:Ul.map((m,p)=>b.jsx("button",{onClick:()=>r(p),className:`px-3 py-1 rounded-full text-xs font-medium transition-colors ${p===n?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:m.title},p))}),b.jsxs("div",{className:"flex items-center justify-between mb-6",children:[b.jsx("button",{onClick:d,className:"p-2 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(YR,{className:"w-6 h-6"})}),b.jsxs("div",{className:"text-center flex-1 px-4",children:[b.jsx("h3",{className:"text-xl font-semibold text-text-primary mb-2",children:o.title}),b.jsx("p",{className:"text-sm text-text-muted leading-loose max-w-xl mx-auto",children:o.description})]}),b.jsx("button",{onClick:h,className:"p-2 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(sM,{className:"w-6 h-6"})})]}),b.jsxs("div",{className:"flex flex-col lg:flex-row lg:items-center gap-6 max-w-4xl mx-auto",children:[b.jsx("div",{className:"flex-1 min-w-0",children:b.jsx("div",{style:{width:"100%",aspectRatio:"1"},className:"[&_.recharts-surface]:overflow-visible min-h-[300px] sm:min-h-[400px]",children:b.jsx(CV,{width:"100%",height:"100%",children:b.jsxs(Ste,{margin:{top:15,right:15,bottom:s?45:60,left:s?25:40},style:{overflow:"visible"},children:[b.jsx(E5,{strokeDasharray:"3 3",stroke:t.bg.tertiary}),b.jsx(D5,{type:"number",dataKey:"plotX",domain:o.domain,ticks:Wj,allowDataOverflow:!0,tickFormatter:m=>m.toFixed(1),stroke:t.text.muted,tick:{fill:t.text.secondary,fontSize:11},label:({viewBox:m})=>{const{x:p,y:v,width:x}=m;return b.jsx(Gj,{x:p+x/2,y:v+(s?35:50),base:"Accuracy (EVA-A",sub:o.subscript,suffix:")",fill:t.accent.purpleLight,small:s})}}),b.jsx(P5,{type:"number",dataKey:"plotY",domain:o.domain,ticks:Wj,allowDataOverflow:!0,tickFormatter:m=>m.toFixed(1),stroke:t.text.muted,tick:{fill:t.text.secondary,fontSize:11},label:({viewBox:m})=>{const{x:p,y:v,height:x}=m;return b.jsx(Gj,{x:p-(s?2:8),y:v+x/2,base:"Experience (EVA-X",sub:o.subscript,suffix:")",fill:t.accent.blueLight,angle:-90,small:s})}}),b.jsx(aW,{content:b.jsx(Mte,{xSub:o.subscript,ySub:o.subscript}),cursor:!1}),b.jsx(Pte,{frontier:f}),b.jsx(k5,{data:u,fill:m0,children:u.map(m=>{const{fill:p,stroke:v}=Rte(m.type);return b.jsx(bx,{fill:p,stroke:v,strokeWidth:1.5,r:8},m.id)})})]})})})}),b.jsxs("div",{className:"flex flex-wrap justify-center gap-x-4 gap-y-2 lg:flex-col lg:gap-3 lg:flex-shrink-0 lg:pr-2",children:[b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:m0}}),b.jsx("span",{className:"whitespace-nowrap",children:"Cascade"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:W5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Audio Native"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:G5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Speech-to-Speech"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-5 sm:w-6 h-0 border-t-2 border-dashed flex-shrink-0",style:{borderColor:Z5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Pareto Frontier"})]})]})]})]})}const zte=["task_completion","agent_tts_fidelity","faithfulness"],Ite=["turn_taking","conciseness","conversation_progression"],Bte={task_completion:"Task Completion",agent_tts_fidelity:"Agent Speech Fidelity",faithfulness:"Faithfulness"},Ute={turn_taking:"Turn Taking",conciseness:"Conciseness",conversation_progression:"Conversation Progression"},Zj=new Set(["response_speed"]),Vte=[{id:"ultravox-v0-7-kokoro",name:"ultravox v0.7 + kokoro",shortName:"ultravox v0.7 + kokoro",stt:"-",llm:"ultravox v0.7",tts:"kokoro",type:"2-part",evaA:.3933,evaX:.3067,accuracyMetrics:{task_completion:.58,agent_tts_fidelity:.9662,faithfulness:.45},experienceMetrics:{turn_taking:.3782,conciseness:.7532,conversation_progression:.64},diagnosticMetrics:{key_entity_transcription:.784,response_speed:5.9224},successRates:{accuracy:{pass_threshold:.3933,mean:.6654,pass_at_k:.56,pass_k:.2793},experience:{pass_threshold:.3067,mean:.5905,pass_at_k:.54,pass_k:.1807}}},{id:"gpt-realtime-mini",name:"gpt-realtime-mini",shortName:"gpt-realtime-mini",stt:"-",llm:"gpt-realtime-mini",tts:"-",type:"s2s",evaA:.1867,evaX:.4333,accuracyMetrics:{task_completion:.2867,agent_tts_fidelity:.9882,faithfulness:.1833},experienceMetrics:{turn_taking:.7607,conciseness:.8116,conversation_progression:.3567},diagnosticMetrics:{key_entity_transcription:0,response_speed:3.7524},successRates:{accuracy:{pass_threshold:.1867,mean:.4861,pass_at_k:.28,pass_k:.1185},experience:{pass_threshold:.4333,mean:.643,pass_at_k:.7,pass_k:.2615}}},{id:"ultravox-realtime",name:"ultravox-realtime",shortName:"ultravox-realtime",stt:"-",llm:"ultravox-realtime",tts:"-",type:"2-part",evaA:.28,evaX:.44,accuracyMetrics:{task_completion:.4867,agent_tts_fidelity:.9426,faithfulness:.3167},experienceMetrics:{turn_taking:.519,conciseness:.6948,conversation_progression:.5933},diagnosticMetrics:{key_entity_transcription:.8484,response_speed:4.847},successRates:{accuracy:{pass_threshold:.28,mean:.582,pass_at_k:.46,pass_k:.1511},experience:{pass_threshold:.44,mean:.6024,pass_at_k:.76,pass_k:.2356}}},{id:"gpt-4o-mini-transcribe-gpt-5-mini-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-5-mini + gpt-4o-mini-tts",shortName:"gpt-5-mini (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-5-mini",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.2095,evaX:.1267,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9707,faithfulness:.3},experienceMetrics:{turn_taking:.2703,conciseness:.7162,conversation_progression:.4533},diagnosticMetrics:{key_entity_transcription:.6801,response_speed:5.9619},successRates:{accuracy:{pass_threshold:.2095,mean:.5398,pass_at_k:.5,pass_k:.0694},experience:{pass_threshold:.1267,mean:.4799,pass_at_k:.32,pass_k:.0274}}},{id:"gpt-4o-mini-transcribe-sonnet-4-6-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + sonnet-4.6 + gpt-4o-mini-tts",shortName:"sonnet-4.6 (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"sonnet-4.6",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.36,evaX:.02,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.9605,faithfulness:.6433},experienceMetrics:{turn_taking:.1043,conciseness:.8298,conversation_progression:.7767},diagnosticMetrics:{key_entity_transcription:.6167,response_speed:8.2609},successRates:{accuracy:{pass_threshold:.36,mean:.7146,pass_at_k:.62,pass_k:.1867},experience:{pass_threshold:.02,mean:.5703,pass_at_k:.06,pass_k:.0022}}},{id:"gpt-4o-mini-transcribe-gpt-oss-20b-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-oss-20b + gpt-4o-mini-tts",shortName:"gpt-oss-20b (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-oss-20b",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.1267,evaX:.3,accuracyMetrics:{task_completion:.3,agent_tts_fidelity:.9516,faithfulness:.1767},experienceMetrics:{turn_taking:.5225,conciseness:.6871,conversation_progression:.3567},diagnosticMetrics:{key_entity_transcription:.617,response_speed:4.8793},successRates:{accuracy:{pass_threshold:.1267,mean:.4761,pass_at_k:.24,pass_k:.0541},experience:{pass_threshold:.3,mean:.5221,pass_at_k:.6,pass_k:.1356}}},{id:"gpt-4o-mini-transcribe-gpt-oss-120b-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-oss-120b + gpt-4o-mini-tts",shortName:"gpt-oss-120b (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-oss-120b",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.1733,evaX:.54,accuracyMetrics:{task_completion:.2867,agent_tts_fidelity:.9668,faithfulness:.3433},experienceMetrics:{turn_taking:.6251,conciseness:.7655,conversation_progression:.5367},diagnosticMetrics:{key_entity_transcription:.5824,response_speed:4.2443},successRates:{accuracy:{pass_threshold:.1733,mean:.5323,pass_at_k:.34,pass_k:.077},experience:{pass_threshold:.54,mean:.6424,pass_at_k:.94,pass_k:.2467}}},{id:"parakeet-ctc-1-1b-gpt-oss-20b-magpie",name:"parakeet-ctc-1.1b + gpt-oss-20b + magpie",shortName:"gpt-oss-20b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-20b",tts:"magpie",type:"cascade",evaA:.16,evaX:.34,accuracyMetrics:{task_completion:.4,agent_tts_fidelity:.935,faithfulness:.14},experienceMetrics:{turn_taking:.418,conciseness:.7205,conversation_progression:.4933},diagnosticMetrics:{key_entity_transcription:.8148,response_speed:5.9816},successRates:{accuracy:{pass_threshold:.16,mean:.4917,pass_at_k:.32,pass_k:.0711},experience:{pass_threshold:.34,mean:.5439,pass_at_k:.7,pass_k:.1444}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-magpie",name:"parakeet-ctc-1.1b + gpt-oss-120b + magpie",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"magpie",type:"cascade",evaA:.1678,evaX:.42,accuracyMetrics:{task_completion:.3667,agent_tts_fidelity:.9065,faithfulness:.36},experienceMetrics:{turn_taking:.4663,conciseness:.7522,conversation_progression:.63},diagnosticMetrics:{key_entity_transcription:.8415,response_speed:5.2856},successRates:{accuracy:{pass_threshold:.1678,mean:.544,pass_at_k:.3061,pass_k:.0718},experience:{pass_threshold:.42,mean:.6162,pass_at_k:.72,pass_k:.2022}}},{id:"parakeet-ctc-1-1b-qwen3-5-27b-kokoro",name:"parakeet-ctc-1.1b + qwen3.5-27b + kokoro",shortName:"qwen3.5-27b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"qwen3.5-27b",tts:"kokoro",type:"cascade",evaA:.4133,evaX:.06,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.9896,faithfulness:.47},experienceMetrics:{turn_taking:.2249,conciseness:.6823,conversation_progression:.6167},diagnosticMetrics:{key_entity_transcription:.8093,response_speed:7.4968},successRates:{accuracy:{pass_threshold:.4133,mean:.6665,pass_at_k:.7,pass_k:.2104},experience:{pass_threshold:.06,mean:.508,pass_at_k:.14,pass_k:.0156}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-kokoro",name:"parakeet-ctc-1.1b + gpt-oss-120b + kokoro",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"kokoro",type:"cascade",evaA:.2333,evaX:.24,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9601,faithfulness:.3267},experienceMetrics:{turn_taking:.3569,conciseness:.7582,conversation_progression:.6167},diagnosticMetrics:{key_entity_transcription:.7951,response_speed:6.0521},successRates:{accuracy:{pass_threshold:.2333,mean:.5489,pass_at_k:.46,pass_k:.1059},experience:{pass_threshold:.24,mean:.5772,pass_at_k:.5,pass_k:.0844}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-chatterbox",name:"parakeet-ctc-1.1b + gpt-oss-120b + chatterbox",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"chatterbox",type:"cascade",evaA:.1533,evaX:.0267,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.8883,faithfulness:.32},experienceMetrics:{turn_taking:.0645,conciseness:.7841,conversation_progression:.49},diagnosticMetrics:{key_entity_transcription:.8053,response_speed:9.8321},successRates:{accuracy:{pass_threshold:.1533,mean:.5228,pass_at_k:.32,pass_k:.057},experience:{pass_threshold:.0267,mean:.4462,pass_at_k:.06,pass_k:.0074}}},{id:"parakeet-ctc-1-1b-qwen3-5-27b-chatterbox",name:"parakeet-ctc-1.1b + qwen3.5-27b + chatterbox",shortName:"qwen3.5-27b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"qwen3.5-27b",tts:"chatterbox",type:"cascade",evaA:.2533,evaX:0,accuracyMetrics:{task_completion:.5333,agent_tts_fidelity:.8513,faithfulness:.42},experienceMetrics:{turn_taking:.0225,conciseness:.6914,conversation_progression:.56},diagnosticMetrics:{key_entity_transcription:.8268,response_speed:12.0952},successRates:{accuracy:{pass_threshold:.2533,mean:.6015,pass_at_k:.56,pass_k:.0815},experience:{pass_threshold:0,mean:.4246,pass_at_k:0,pass_k:0}}},{id:"voxtral-mini-3b-gpt-oss-20b-magpie",name:"voxtral-mini-3b + gpt-oss-20b + magpie",shortName:"gpt-oss-20b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-20b",tts:"magpie",type:"cascade",evaA:.1133,evaX:.3867,accuracyMetrics:{task_completion:.3733,agent_tts_fidelity:.9349,faithfulness:.1367},experienceMetrics:{turn_taking:.5951,conciseness:.6917,conversation_progression:.3667},diagnosticMetrics:{key_entity_transcription:.6618,response_speed:4.4834},successRates:{accuracy:{pass_threshold:.1133,mean:.4816,pass_at_k:.24,pass_k:.0526},experience:{pass_threshold:.3867,mean:.5512,pass_at_k:.78,pass_k:.1541}}},{id:"voxtral-mini-3b-gpt-oss-120b-magpie",name:"voxtral-mini-3b + gpt-oss-120b + magpie",shortName:"gpt-oss-120b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-120b",tts:"magpie",type:"cascade",evaA:.1477,evaX:.5667,accuracyMetrics:{task_completion:.3467,agent_tts_fidelity:.9467,faithfulness:.2967},experienceMetrics:{turn_taking:.6659,conciseness:.7494,conversation_progression:.4767},diagnosticMetrics:{key_entity_transcription:.6906,response_speed:3.3998},successRates:{accuracy:{pass_threshold:.1477,mean:.5279,pass_at_k:.3265,pass_k:.062},experience:{pass_threshold:.5667,mean:.6307,pass_at_k:.92,pass_k:.3341}}},{id:"voxtral-mini-3b-gpt-oss-120b-chatterbox",name:"voxtral-mini-3b + gpt-oss-120b + chatterbox",shortName:"gpt-oss-120b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-120b",tts:"chatterbox",type:"cascade",evaA:.16,evaX:.0933,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9049,faithfulness:.3467},experienceMetrics:{turn_taking:.204,conciseness:.7701,conversation_progression:.5233},diagnosticMetrics:{key_entity_transcription:.6376,response_speed:7.2744},successRates:{accuracy:{pass_threshold:.16,mean:.5372,pass_at_k:.28,pass_k:.08},experience:{pass_threshold:.0933,mean:.4991,pass_at_k:.28,pass_k:.0104}}},{id:"voxtral-mini-3b-qwen3-5-27b-chatterbox",name:"voxtral-mini-3b + qwen3.5-27b + chatterbox",shortName:"qwen3.5-27b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"qwen3.5-27b",tts:"chatterbox",type:"cascade",evaA:.2067,evaX:0,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.796,faithfulness:.3967},experienceMetrics:{turn_taking:.0296,conciseness:.7165,conversation_progression:.5167},diagnosticMetrics:{key_entity_transcription:.7408,response_speed:14.4124},successRates:{accuracy:{pass_threshold:.2067,mean:.5775,pass_at_k:.52,pass_k:.0452},experience:{pass_threshold:0,mean:.4209,pass_at_k:0,pass_k:0}}},{id:"voxtral-mini-3b-qwen3-5-27b-kokoro",name:"voxtral-mini-3b + qwen3.5-27b + kokoro",shortName:"qwen3.5-27b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"qwen3.5-27b",tts:"kokoro",type:"cascade",evaA:.4933,evaX:.2467,accuracyMetrics:{task_completion:.5933,agent_tts_fidelity:.9949,faithfulness:.5067},experienceMetrics:{turn_taking:.374,conciseness:.6838,conversation_progression:.5433},diagnosticMetrics:{key_entity_transcription:.7518,response_speed:5.8276},successRates:{accuracy:{pass_threshold:.4933,mean:.6983,pass_at_k:.74,pass_k:.3348},experience:{pass_threshold:.2467,mean:.5337,pass_at_k:.5,pass_k:.0985}}},{id:"whisper-large-v3-gpt-oss-20b-chatterbox",name:"whisper-large-v3 + gpt-oss-20b + chatterbox",shortName:"gpt-oss-20b (whisper-large-v3)",stt:"whisper-large-v3",llm:"gpt-oss-20b",tts:"chatterbox",type:"cascade",evaA:.0733,evaX:.04,accuracyMetrics:{task_completion:.38,agent_tts_fidelity:.8849,faithfulness:.1533},experienceMetrics:{turn_taking:.1816,conciseness:.7343,conversation_progression:.44},diagnosticMetrics:{key_entity_transcription:.6696,response_speed:7.5545},successRates:{accuracy:{pass_threshold:.0733,mean:.4728,pass_at_k:.18,pass_k:.017},experience:{pass_threshold:.04,mean:.4519,pass_at_k:.12,pass_k:.0044}}},{id:"whisper-large-v3-gpt-oss-120b-kokoro",name:"whisper-large-v3 + gpt-oss-120b + kokoro",shortName:"gpt-oss-120b (whisper-large-v3)",stt:"whisper-large-v3",llm:"gpt-oss-120b",tts:"kokoro",type:"cascade",evaA:.1667,evaX:.52,accuracyMetrics:{task_completion:.28,agent_tts_fidelity:.9645,faithfulness:.2967},experienceMetrics:{turn_taking:.6148,conciseness:.7536,conversation_progression:.5433},diagnosticMetrics:{key_entity_transcription:.6573,response_speed:4.1026},successRates:{accuracy:{pass_threshold:.1667,mean:.5137,pass_at_k:.32,pass_k:.0763},experience:{pass_threshold:.52,mean:.6372,pass_at_k:.84,pass_k:.3244}}}],qte=["#F59E0B","#38BDF8","#34D399","#A78BFA","#F87171","#22D3EE","#FB923C","#818CF8","#F472B6","#4ADE80","#FACC15","#2DD4BF","#C084FC","#FB7185","#67E8F9","#A3E635"],$te=["#B45309","#0369A1","#047857","#6D28D9","#B91C1C","#0E7490","#C2410C","#4338CA","#BE185D","#15803D","#A16207","#0D9488","#7C3AED","#E11D48","#0891B2","#65A30D"];function Fte(e,t){const n=new Set;for(const o of e)o.stt!=="-"&&n.add(o.stt),n.add(o.llm),o.tts!=="-"&&n.add(o.tts);const r=new Map;let s=0;for(const o of n)r.set(o,t[s%t.length]),s++;return r}function Qj({system:e,componentColors:t}){if(e.type==="s2s"||e.type==="2-part"){if(e.tts!=="-")return b.jsxs("span",{className:"text-sm leading-relaxed inline-flex flex-wrap items-baseline",children:[b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.llm)},children:e.llm}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.tts)},children:e.tts})]});const n=t.get(e.llm)||"#F1F5F9";return b.jsx("span",{style:{color:n},children:e.llm})}return b.jsxs("span",{className:"text-sm leading-relaxed inline-flex flex-wrap items-baseline",children:[b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.stt)},children:e.stt}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.llm)},children:e.llm}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.tts)},children:e.tts})]})}const Hte=[{key:null,label:"Default"},{key:"system_stt",label:"STT"},{key:"system_llm",label:"LLM"},{key:"system_tts",label:"TTS"}];function Vl({active:e,dir:t}){return e?t==="desc"?b.jsx(VR,{className:"w-3 h-3 inline ml-0.5"}):b.jsx($R,{className:"w-3 h-3 inline ml-0.5"}):null}function Jj({title:e,description:t,metricKeys:n,metricLabels:r,dataKey:s,baseColor:o,aggregateColumns:u,aggregateColor:f="#F59E0B",systems:d}){const h=jx(),m=Ote(),p=u??[],v=m==="light"?$te:qte,x=A.useMemo(()=>Fte(d,v),[d,v]),[w,_]=A.useState(null),[S,O]=A.useState("desc"),[M,j]=A.useState(!1),[N,k]=A.useState({top:0,left:0}),C=A.useRef(null),L=A.useRef(null),[I,Y]=A.useState("scores"),te=A.useCallback(()=>{if(C.current){const Z=C.current.getBoundingClientRect();k({top:Z.bottom+4,left:Z.left})}j(Z=>!Z)},[]);A.useEffect(()=>{function Z(oe){L.current&&!L.current.contains(oe.target)&&C.current&&!C.current.contains(oe.target)&&j(!1)}if(M)return document.addEventListener("mousedown",Z),()=>document.removeEventListener("mousedown",Z)},[M]);function ie(Z){w===Z?O(oe=>oe==="desc"?"asc":"desc"):(_(Z),O("desc"))}function K(Z){Z===null?_(null):w===Z?O(oe=>oe==="desc"?"asc":"desc"):(_(Z),O("asc")),j(!1)}const be=A.useMemo(()=>{if(!w)return[...d].sort((he,_e)=>{const J=he.type==="s2s"||he.type==="2-part",re=_e.type==="s2s"||_e.type==="2-part";return J&&!re?-1:!J&&re?1:he.stt.localeCompare(_e.stt)});const Z=he=>{if(w==="system_stt")return he.stt;if(w==="system_llm")return he.llm;if(w==="system_tts")return he.tts;const _e=p.find(J=>J.key===w);return _e?_e.getValue(he):he[s][w]??0},oe=(he,_e)=>{const J=Z(he),re=Z(_e);if(typeof J=="string"&&typeof re=="string")return S==="asc"?J.localeCompare(re):re.localeCompare(J);const Se=J,ee=re;return S==="desc"?ee-Se:Se-ee};return[...d].sort(oe)},[w,S,p,s]),pe={};for(const Z of n){const oe=d.map(he=>he[s][Z]??0);pe[Z]={min:Math.min(...oe),max:Math.max(...oe)}}const xe={};for(const Z of p){const oe=d.map(he=>Z.getValue(he));xe[Z.key]={min:Math.min(...oe),max:Math.max(...oe)}}const V=p.length+n.length,Q=35,ne=`${(100-Q)/V}%`,le=`${Q}%`,ue="text-center py-3 px-1 font-bold text-xs leading-snug cursor-pointer select-none hover:bg-bg-hover/50 transition-colors",P=I==="scores"?p:[],H=I==="metrics"?n:[],ae=I==="scores"?p.length:n.length,se=`${(100-Q)/ae}%`;return b.jsxs("div",{className:"bg-bg-secondary rounded-xl border border-border-default p-4 sm:p-6",children:[b.jsx("h3",{className:"text-lg font-semibold text-text-primary mb-1",children:e}),b.jsx("p",{className:"text-sm text-text-secondary mb-4",children:t}),p.length>0&&n.length>0&&b.jsxs("div",{className:"flex gap-2 mb-4 md:hidden",children:[b.jsx("button",{onClick:()=>Y("scores"),className:`flex-1 px-3 py-2 rounded-lg text-xs font-medium transition-colors ${I==="scores"?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:"Aggregate Scores"}),b.jsx("button",{onClick:()=>Y("metrics"),className:`flex-1 px-3 py-2 rounded-lg text-xs font-medium transition-colors ${I==="metrics"?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:"Individual Metrics"})]}),b.jsx("div",{className:"hidden md:block overflow-x-auto",children:b.jsxs("table",{className:"w-full text-sm",style:{tableLayout:"fixed"},children:[b.jsx("thead",{children:b.jsxs("tr",{className:"border-b border-border-default",children:[b.jsxs("th",{className:"text-left py-3 px-3 text-text-muted font-medium text-sm sticky left-0 bg-bg-secondary z-10",style:{width:le},children:[b.jsxs("button",{ref:C,onClick:te,className:"flex items-center gap-1 hover:text-text-primary transition-colors",children:["System",b.jsx(ai,{className:"w-3.5 h-3.5"}),w?.startsWith("system_")&&b.jsx(Vl,{active:!0,dir:S})]}),M&&G0.createPortal(b.jsx("div",{ref:L,className:"bg-bg-tertiary border border-border-default rounded-lg shadow-xl py-1 min-w-[100px]",style:{position:"fixed",top:N.top,left:N.left,zIndex:9999},children:Hte.map(Z=>b.jsx("button",{onClick:()=>K(Z.key),className:`block w-full text-left px-3 py-1.5 text-xs hover:bg-bg-hover transition-colors ${w===Z.key||Z.key===null&&w===null?"text-purple-light font-medium":"text-text-secondary"}`,children:Z.label},Z.key??"default"))}),document.body)]}),p.map((Z,oe)=>b.jsxs("th",{className:`${ue} ${oe===p.length-1?"border-r-2 border-border-default":""}`,style:{color:f,width:ne},onClick:()=>ie(Z.key),children:[Z.label,b.jsx(Vl,{active:w===Z.key,dir:S})]},Z.key)),n.map(Z=>b.jsxs("th",{className:`${ue} text-text-primary`,style:{width:ne},onClick:()=>ie(Z),children:[r[Z]||Z,b.jsx(Vl,{active:w===Z,dir:S})]},Z))]})}),b.jsx("tbody",{children:be.map(Z=>b.jsxs("tr",{className:"border-b border-border-default/30",children:[b.jsx("td",{className:"py-2.5 px-3 sticky left-0 bg-bg-secondary z-10 whitespace-nowrap",children:b.jsx(Qj,{system:Z,componentColors:x})}),p.map((oe,he)=>{const _e=oe.getValue(Z),{min:J,max:re}=xe[oe.key],{bg:Se,text:ee}=kf(_e,J,re,f,!1,h);return b.jsx("td",{className:`py-1.5 px-1 text-center ${he===p.length-1?"border-r-2 border-border-default":""}`,children:b.jsx("div",{className:"rounded-md px-0.5 py-1.5 font-mono text-xs font-medium",style:{backgroundColor:Se,color:ee},children:_e.toFixed(2)})},oe.key)}),n.map(oe=>{const he=Z[s][oe]??0,{min:_e,max:J}=pe[oe],re=Zj.has(oe),{bg:Se,text:ee}=kf(he,_e,J,o,re,h);return b.jsx("td",{className:"py-1.5 px-1 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1.5 font-mono text-xs font-medium",style:{backgroundColor:Se,color:ee},children:he.toFixed(2)})},oe)})]},Z.id))})]})}),b.jsx("div",{className:"md:hidden overflow-x-auto",children:b.jsxs("table",{className:"w-full text-sm",style:{tableLayout:"fixed"},children:[b.jsx("thead",{children:b.jsxs("tr",{className:"border-b border-border-default",children:[b.jsx("th",{className:"text-left py-3 px-2 text-text-muted font-medium text-xs sticky left-0 bg-bg-secondary z-10",style:{width:le},children:"System"}),P.map(Z=>b.jsxs("th",{className:`${ue} text-[10px] sm:text-xs`,style:{color:f,width:se},onClick:()=>ie(Z.key),children:[Z.label.replace("EVA-A ",""),b.jsx(Vl,{active:w===Z.key,dir:S})]},Z.key)),H.map(Z=>b.jsxs("th",{className:`${ue} text-text-primary text-[10px] sm:text-xs`,style:{width:se},onClick:()=>ie(Z),children:[r[Z]||Z,b.jsx(Vl,{active:w===Z,dir:S})]},Z))]})}),b.jsx("tbody",{children:be.map(Z=>b.jsxs("tr",{className:"border-b border-border-default/30",children:[b.jsx("td",{className:"py-2 px-2 sticky left-0 bg-bg-secondary z-10 text-xs",children:b.jsx(Qj,{system:Z,componentColors:x})}),P.map(oe=>{const he=oe.getValue(Z),{min:_e,max:J}=xe[oe.key],{bg:re,text:Se}=kf(he,_e,J,f,!1,h);return b.jsx("td",{className:"py-1 px-0.5 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1 font-mono text-[10px] sm:text-xs font-medium",style:{backgroundColor:re,color:Se},children:he.toFixed(2)})},oe.key)}),H.map(oe=>{const he=Z[s][oe]??0,{min:_e,max:J}=pe[oe],re=Zj.has(oe),{bg:Se,text:ee}=kf(he,_e,J,o,re,h);return b.jsx("td",{className:"py-1 px-0.5 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1 font-mono text-[10px] sm:text-xs font-medium",style:{backgroundColor:Se,color:ee},children:he.toFixed(2)})},oe)})]},Z.id))})]})})]})}const Kte=[{title:"Transcription failures cascade into low task completion",description:"Transcription failures around last names and confirmation codes cascade into low task completion as the agent is unable to pull up the user's booking and proceed with the request."},{title:"Turn taking remains a key challenge",description:"Effective turn taking remains a key challenge for cascade systems — most turns are late (>4 seconds)."},{title:"Speech synthesis struggles with alphanumeric codes",description:"Speech synthesis systems generally produce the intended speech but struggle the most with alphanumeric codes, often dropping or switching characters and letters."},{title:"LLMs produce verbose, non-voice-appropriate content",description:"LLMs struggle to produce concise, voice-appropriate content, particularly when trying to list flight options for the user."},{title:"Transcription failures reduce conversation efficiency",description:"Transcription failures also lead to inefficient conversation progression, as the agent cannot move the conversation forward when it's stuck trying to retrieve the user's reservation."},{title:"Audio-native systems show promise",description:"Both audio-native systems sit on the Pareto frontier, while the single speech-to-speech system does not — we aim to benchmark more audio-native and s2s systems to see if this holds across the architectural classes."}],Xte=[{title:"Accuracy–experience trade-off",description:"The Pareto frontier reveals a clear accuracy-experience tradeoff across systems, systems that push harder on accuracy are doing so at the cost of conversational experience, and vice versa."},{title:"Low Pass Rates",description:"Performance remains far from saturated — no system clears 0.5 pass@1 on accuracy, and only a few systems exceed 0.50 EVA-X pass@1, suggesting ample opportunities for improvement."},{title:"Sparse Frontier",description:"Only a few systems sit on the Pareto frontier, meaning most systems are strictly dominated. This concentrates the real decision space: only a small subset of system choices actually matter for navigating the accuracy–experience tradeoff."}],Yte=[{key:"eva_a_pass",label:"EVA-A pass@1",getValue:e=>e.successRates.accuracy.pass_threshold},{key:"eva_a_mean",label:"EVA-A Mean",getValue:e=>e.successRates.accuracy.mean}],Gte=[{key:"eva_x_pass",label:"EVA-X pass@1",getValue:e=>e.successRates.experience.pass_threshold},{key:"eva_x_mean",label:"EVA-X Mean",getValue:e=>e.successRates.experience.mean}];function Wte(){const e=jx(),t=Vte;return b.jsx(wo,{id:"leaderboard",title:"Early Results",subtitle:"Early results on the airline domain (50 scenarios, 3 trials each).",children:b.jsxs("div",{className:"space-y-8",children:[b.jsx(Lte,{systems:t}),b.jsxs("div",{className:"rounded-xl border border-purple/20 bg-purple/5 p-6",children:[b.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[b.jsx("div",{className:"w-9 h-9 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(US,{className:"w-5 h-5 text-purple-light"})}),b.jsx("h3",{className:"text-lg font-bold text-text-primary",children:"Pareto Analysis"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:Xte.map((n,r)=>b.jsxs("div",{className:"rounded-lg bg-bg-secondary border border-border-default p-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-2",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:n.description})]},r))})]}),b.jsx(Jj,{title:"Accuracy Metrics (EVA-A)",description:"Per-metric scores for accuracy. All values normalized to 0-1 (higher is better).",metricKeys:zte,metricLabels:Bte,dataKey:"accuracyMetrics",baseColor:e.accent.purple,aggregateColumns:Yte,aggregateColor:"#F59E0B",systems:t}),b.jsx(Jj,{title:"Experience Metrics (EVA-X)",description:"Per-metric scores for conversational experience. All values normalized to 0-1 (higher is better).",metricKeys:Ite,metricLabels:Ute,dataKey:"experienceMetrics",baseColor:e.accent.blue,aggregateColumns:Gte,aggregateColor:"#F59E0B",systems:t}),b.jsxs("div",{className:"rounded-xl border border-purple/20 bg-purple/5 p-6",children:[b.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[b.jsx("div",{className:"w-9 h-9 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(US,{className:"w-5 h-5 text-purple-light"})}),b.jsx("h3",{className:"text-lg font-bold text-text-primary",children:"Key Insights"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:Kte.map((n,r)=>b.jsxs("div",{className:"rounded-lg bg-bg-secondary border border-border-default p-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-2",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:n.description})]},r))})]})]})})}const Zte={high_level_user_goal:"You want to move your LAX to SFO flight today from the late afternoon to an earlier direct flight that leaves before 2:00 PM, as long as the same-day change fee stays under $80.",decision_tree:{must_have_criteria:["New departure time is today (2026-06-18) and departs LAX before 2:00 PM Pacific.","Same-day change fee is under $80 total (acceptable: $0 to $79.99).","It is a direct flight from LAX to SFO (no connections and no airport changes)."],negotiation_behavior:["If the agent asks for verification details, provide your confirmation code and last name exactly as given in information_required, then wait for the agent to read back your reservation and confirm it is yours; if they read back a different name or itinerary, correct them and re-provide the details.","When the agent offers earlier-flight options, evaluate each option against ALL must-have criteria: (a) date is 2026-06-18, (b) LAX departure time is before 2:00 PM PT, (c) direct LAX→SFO, (d) same-day change fee is under $80.","If both an 11:00 AM and a 1:00 PM direct option meet all must-haves, choose the earliest departure (11:00 AM).","If only one option meets all must-haves, accept that option.",'Before the agent finalizes anything, if the agent has not clearly stated the exact same-day change fee amount, ask: "What will the change fee be in total?" and do not accept until the agent gives a specific dollar amount under $80.','If the agent proposes any option that departs at or after 2:00 PM, has a connection, changes airports, or has a fee of $80 or more, reject it and restate the must-haves once: "It needs to be today, direct LAX to SFO, leaving before 2 PM, and the fee has to be under $80—can you check again?"',"If after one additional search/attempt the agent still cannot offer any option that meets all must-haves, move to failure_condition."],resolution_condition:"The agent has confirmed the rebooking is completed (not just planned) to a direct LAX→SFO flight departing on 2026-06-18 before 2:00 PM PT, has stated the same-day change fee is under $80, AND has provided a concrete post-change booking reference (e.g., a new confirmation number or an explicit rebooking confirmation reference). End the call.",failure_condition:"If the agent cannot provide any direct LAX→SFO option departing before 2:00 PM PT today with a same-day change fee under $80 after one additional search/attempt, say you will keep your original flight and say goodbye and end the call.",escalation_behavior:"Do not ask to speak to a supervisor or live agent. If the agent offers to transfer you to a live agent, you must decline. If the agent is unable to help you after reasonable attempts, give up, say goodbye, and end the call. Never speak to a live agent. If the agent attempts to transfer you anyways, hang up using end_call.",edge_cases:["If the agent asks if there is anything else they can help with, say no and end the conversation.","Never invent new goals, requests, or problems beyond what is defined here.","Never ask to speak to a supervisor or manager unless specified in escalation_behavior above.","If the agent suggests flying from or to a different airport than originally booked, decline and insist on LAX to SFO only.","If the agent suggests standby instead of a confirmed earlier flight, decline standby and ask for a confirmed seat on an earlier direct flight before 2:00 PM."]},information_required:{confirmation_number:"6VORJU",first_name:"Kenji",last_name:"Thompson",travel_date:"2026-06-18",origin_airport:"LAX",destination_airport:"SFO",seat_preference:{first_choice:"window",second_choice:"aisle",third_choice:"middle"},original_travel_details:[{origin:"LAX",destination:"SFO",flight_date:"2026-06-18",departure_time:"17:30",status:"confirmed"}]}},Qte="You're direct and to the point—you don't have time for lengthy explanations or unnecessary back-and-forth. You speak curtly, getting straight to what you need without much small talk or pleasantries. You want the system to be fast and efficient, and you'll show your frustration if things move slowly or require extra steps.",Jte=JSON.parse(`[{"role":"assistant","content":"Hello! How can I help you today?","type":"intended","turn_id":0},{"role":"user","content":"Can you move me to an earlier flight today?","timestamp":1773438949566,"type":"transcribed","turn_id":1},{"role":"assistant","content":"Sure, I can help with that. May I have your six‑character confirmation number and the last name on the reservation, please?","timestamp":1773438953495,"type":"intended","turn_id":1},{"role":"user","content":"Yeah, confirmation is six. Victor Oscar Romeo Juliet Uniform. And the last name is Tom. Thompson.","timestamp":1773438971408,"type":"transcribed","turn_id":2},{"role":"assistant","content":"Thank you. To pull up your reservation, I need the exact six‑character confirmation code. I heard “V O R J U”. Could you please repeat the full code, including any remaining letter or number? Also, just to confirm, the last name is Thompson, correct?","timestamp":1773438978057,"type":"intended","turn_id":2},{"role":"user","content":"Yes. Last name is Thompson. The code is 6-8-1-1. Victor. Oscar Romeo Juliet Uniform.","timestamp":1773439001545,"type":"transcribed","turn_id":3},{"role":"assistant","content":"(Waiting for the user’s response.)","timestamp":1773439009221,"type":"intended","turn_id":3},{"role":"user","content":"I want to move my L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A- p.m. you you Thank you. Thank you. Same day change fee is under $80.","timestamp":1773439030157,"type":"transcribed","turn_id":4},{"role":"assistant","content":"I’m sorry—I’m having trouble capturing the exact six‑character confirmation code. Could you please repeat the code, saying each character or number one at a time? For example, you might say “six, eight, one, one, V, O.” Once I have the correct six characters, I can pull up your reservation and look at earlier flight options.","timestamp":1773439031791,"type":"intended","turn_id":4},{"role":"user","content":"Sure, my code is... Six. Victor. Oscar, Romeo, Juliet uniform.","timestamp":1773439063962,"type":"transcribed","turn_id":5},{"tool_name":"get_reservation","parameters":{"confirmation_number":"6VORJU","last_name":"Thompson"},"timestamp":1773439064577,"type":"tool_call","turn_id":5},{"tool_name":"get_reservation","tool_response":{"status":"success","reservation":{"confirmation_number":"6VORJU","status":"confirmed","passengers":[{"passenger_id":"PAX001","first_name":"Kenji","last_name":"Thompson","ticket_number":"1801234567890","email":"kenji.thompson@example.com","phone":"+1-310-555-0147","elite_status":null,"meal_preference":"none","seat_preference":"no_preference"}],"bookings":[{"journey_id":"FL_SK530_20260618","fare_class":"main_cabin","fare_paid":289,"status":"confirmed","segments":[{"flight_number":"SK530","date":"2026-06-18","fare_paid":289,"seat":null,"bags_checked":0,"meal_request":null}]}],"booking_date":"2026-05-20T13:22:00-07:00","fare_type":"non_refundable","ancillaries":{"seat_selection_fee":0,"bags_fee":0}}},"timestamp":1773439064577,"type":"tool_response","turn_id":5},{"tool_name":"get_flight_status","parameters":{"flight_number":"SK530","flight_date":"2026-06-18"},"timestamp":1773439065128,"type":"tool_call","turn_id":5},{"tool_name":"get_flight_status","tool_response":{"status":"success","journey":{"journey_id":"FL_SK530_20260618","date":"2026-06-18","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"status":"scheduled","bookable":true,"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null}}},"timestamp":1773439065128,"type":"tool_response","turn_id":5},{"tool_name":"search_rebooking_options","parameters":{"origin":"LAX","destination":"SFO","date":"2026-06-18","passenger_count":1,"fare_class":"any"},"timestamp":1773439065959,"type":"tool_call","turn_id":5},{"tool_name":"search_rebooking_options","tool_response":{"status":"success","options":[{"journey_id":"FL_SK090_SK410_20260618","origin":"LAX","destination":"SFO","num_stops":1,"total_duration_minutes":170,"segments":[{"segment_number":1,"flight_number":"SK090","origin":"LAX","destination":"SJC","scheduled_departure":"09:20","origin_utc_offset":-8,"scheduled_arrival":"10:30","destination_utc_offset":-8,"duration_minutes":70,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"33A","available_seats":{"basic_economy":8,"main_cabin":14,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":139,"main_cabin":229,"premium_economy":489,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}},{"segment_number":2,"flight_number":"SK410","origin":"SJC","destination":"SFO","scheduled_departure":"11:35","origin_utc_offset":-8,"scheduled_arrival":"12:10","destination_utc_offset":-8,"duration_minutes":35,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"12B","available_seats":{"basic_economy":9,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":89,"main_cabin":129,"premium_economy":239,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}}],"departure_time":"09:20","arrival_time":"12:10","available_seats":{"basic_economy":8,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fare":228},{"journey_id":"FL_SK130_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"13:00","arrival_time":"14:25","available_seats":{"basic_economy":6,"main_cabin":9,"premium_economy":3,"business":2,"first":0},"fare":189},{"journey_id":"FL_SK215_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK215","origin":"LAX","destination":"SFO","scheduled_departure":"14:40","origin_utc_offset":-8,"scheduled_arrival":"16:05","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"737-800","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"47D","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fares":{"basic_economy":169,"main_cabin":259,"premium_economy":529,"business":979,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"14:40","arrival_time":"16:05","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fare":169},{"journey_id":"FL_SK530_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":23,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"17:30","arrival_time":"18:55","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fare":179}],"count":4,"message":"4 flight(s) found"},"timestamp":1773439065959,"type":"tool_response","turn_id":5},{"role":"assistant","content":"I’ve found a few earlier flights from Los Angeles to San Francisco today.\\n\\n1. **One‑stop option** – depart at nine twenty a.m., connect in San Jose and arrive at twelve ten p.m. (fare $228 in main cabin). \\n2. **Direct flight** – depart at one o’clock p.m., arrive at two twenty‑five p.m. (fare $289, same as your current ticket). \\n3. **Direct flight** – depart at two forty p.m., arrive at four oh‑five p.m. (fare $259, a little cheaper).\\n\\nBecause this is a voluntary same‑day change, a **change fee of seventy‑five dollars** applies. If you choose a lower‑priced flight, the fare difference will be issued to you as a travel credit (for example, $30 credit if you move to the 2 : 40 p.m. flight, or $61 credit for the early morning connection).\\n\\nDo any of these options work for you? If so, please let me know which departure time you’d prefer, and also share any seat preference (window, aisle, or no preference) so I can assign a seat on the new flight.","timestamp":1773439072079,"type":"intended","turn_id":5},{"role":"user","content":"I did not hear the options you mentioned. Can you repeat the earlier LAX to SFO flights? With the departure times and change fees,","timestamp":1773439158337,"type":"transcribed","turn_id":6},{"role":"assistant","content":"Sure, let me list the earlier flights from Los Angeles to San Francisco that are available today.\\n\\n**Option 1 – one‑stop connection** \\n- Departure from LAX at nine twenty a.m. \\n- Connect in San Jose and arrive at San Francisco at twelve ten p.m. \\n- Main‑cabin fare is two‑hundred twenty‑eight dollars. \\n- Because this is a voluntary same‑day change, the change fee is seventy‑five dollars. Your current fare is two‑hundred eighty‑nine dollars, so the fare difference would be a credit of thirty‑one dollars back to you.\\n\\n**Option 2 – direct flight** \\n- Departure from LAX at one o’clock p.m. \\n- Arrive at San Francisco at two twenty‑five p.m. \\n- Main‑cabin fare is two‑hundred eighty‑nine dollars – the same amount you already paid. \\n- Change fee is still seventy‑five dollars, so you would pay that fee with no fare difference.\\n\\n**Option 3 – direct flight** \\n- Departure from LAX at two forty p.m. \\n- Arrive at San Francisco at four oh‑five p.m. \\n- Main‑cabin fare is two‑hundred fifty‑nine dollars. \\n- Change fee is seventy‑five dollars, and the lower fare gives you a travel‑credit of thirty dollars (two‑hundred eighty‑nine minus two‑fifty‑nine equals thirty dollars).\\n\\nAll of these flights are still open for booking today. Which departure time would you like to switch to? Also, do you have a seat preference—window, aisle, or no preference?","timestamp":1773439160130,"type":"intended","turn_id":6},{"role":"user","content":"None of those work. It needs to be today. Direct LAX. to SS. F-O. Leaving before 2 p.m. and the fee has to be under $80. Can you check again?","timestamp":1773439255746,"type":"transcribed","turn_id":7},{"tool_name":"search_rebooking_options","parameters":{"origin":"LAX","destination":"SFO","date":"2026-06-18","passenger_count":1,"fare_class":"any"},"timestamp":1773439268671,"type":"tool_call","turn_id":7},{"tool_name":"search_rebooking_options","tool_response":{"status":"success","options":[{"journey_id":"FL_SK090_SK410_20260618","origin":"LAX","destination":"SFO","num_stops":1,"total_duration_minutes":170,"segments":[{"segment_number":1,"flight_number":"SK090","origin":"LAX","destination":"SJC","scheduled_departure":"09:20","origin_utc_offset":-8,"scheduled_arrival":"10:30","destination_utc_offset":-8,"duration_minutes":70,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"33A","available_seats":{"basic_economy":8,"main_cabin":14,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":139,"main_cabin":229,"premium_economy":489,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}},{"segment_number":2,"flight_number":"SK410","origin":"SJC","destination":"SFO","scheduled_departure":"11:35","origin_utc_offset":-8,"scheduled_arrival":"12:10","destination_utc_offset":-8,"duration_minutes":35,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"12B","available_seats":{"basic_economy":9,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":89,"main_cabin":129,"premium_economy":239,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}}],"departure_time":"09:20","arrival_time":"12:10","available_seats":{"basic_economy":8,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fare":228},{"journey_id":"FL_SK130_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"13:00","arrival_time":"14:25","available_seats":{"basic_economy":6,"main_cabin":9,"premium_economy":3,"business":2,"first":0},"fare":189},{"journey_id":"FL_SK215_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK215","origin":"LAX","destination":"SFO","scheduled_departure":"14:40","origin_utc_offset":-8,"scheduled_arrival":"16:05","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"737-800","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"47D","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fares":{"basic_economy":169,"main_cabin":259,"premium_economy":529,"business":979,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"14:40","arrival_time":"16:05","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fare":169},{"journey_id":"FL_SK530_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":23,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"17:30","arrival_time":"18:55","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fare":179}],"count":4,"message":"4 flight(s) found"},"timestamp":1773439268671,"type":"tool_response","turn_id":7},{"role":"assistant","content":"I do have a direct flight that meets those criteria:\\n\\n- **Flight SK 130** – departs Los Angeles at **one o’clock p.m.**, arrives San Francisco at **two twenty‑five p.m.** \\n- It’s a nonstop service, just like your current booking. \\n- Because this is a same‑day voluntary change, the change fee is **seventy‑five dollars**, which is under your $80 limit. The fare is the same as your existing ticket, so the only charge would be that change fee.\\n\\nWould you like to switch to flight SK 130? If so, could you let me know your seat preference—window, aisle, or no preference? Once I have that, I’ll go ahead and rebook you.","timestamp":1773439270267,"type":"intended","turn_id":7},{"role":"user","content":"That one works. I'll take the flight that leaves at 1:00 PM. Seek Preferences window.","timestamp":1773439326852,"type":"transcribed","turn_id":8},{"tool_name":"rebook_flight","parameters":{"confirmation_number":"6VORJU","journey_id":"FL_SK530_20260618","new_journey_id":"FL_SK130_20260618","rebooking_type":"voluntary","waive_change_fee":false,"new_fare_class":null},"timestamp":1773439328182,"type":"tool_call","turn_id":8},{"tool_name":"rebook_flight","tool_response":{"status":"success","confirmation_number":"6VORJU","new_journey":{"journey_id":"FL_SK130_20260618","num_stops":0,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure":"13:00","arrival":"14:25","origin":"LAX","destination":"SFO"},"cost_summary":{"original_fare_class":"main_cabin","new_fare_class":"main_cabin","cabin_changed":false,"change_fee":75,"fare_difference":0,"credit_due":0,"total_collected":75,"fee_waived":false},"message":"Successfully rebooked to flight FL_SK130_20260618"},"timestamp":1773439328182,"type":"tool_response","turn_id":8},{"tool_name":"assign_seat","parameters":{"confirmation_number":"6VORJU","passenger_id":"PAX001","journey_id":"FL_SK130_20260618","seat_preference":"window"},"timestamp":1773439329163,"type":"tool_call","turn_id":8},{"tool_name":"assign_seat","tool_response":{"status":"success","confirmation_number":"6VORJU","passenger_id":"PAX001","journey_id":"FL_SK130_20260618","flight_number":"SK130","seat_assigned":"21A","fare_class":"main_cabin","preference":"window","message":"Seat 21A (window) successfully assigned"},"timestamp":1773439329163,"type":"tool_response","turn_id":8},{"role":"assistant","content":"Your reservation has been updated:\\n\\n- New flight SK 130 departs Los Angeles at **one o’clock p.m.** and arrives in San Francisco at **two twenty‑five p.m.** today. \\n- A **change fee of seventy‑five dollars** has been applied; the fare itself remains the same. \\n- Your seat is a **window seat, 21 A**, on the new flight.\\n\\nEverything else from your original booking—name, ticket number, and any existing preferences—has been transferred.\\n\\nIf you’d like to add checked bags or make any other changes, just let me know. Otherwise, you’re all set. Thank you for flying SkyWay Airlines, and have a pleasant trip!","timestamp":1773439330430,"type":"intended","turn_id":8},{"role":"user","content":"No, that is all. Thanks. Goodbye.","timestamp":1773439384679,"type":"transcribed","turn_id":9},{"role":"assistant","content":"You’re very welcome. Have a great flight, and thank you for choosing SkyWay Airlines. Goodbye. [speaker likely cut itself off]","timestamp":1773439385281,"type":"intended","turn_id":9}]`),ene=JSON.parse(`[{"name":"task_completion","displayName":"Task Completion","category":"eva-a","type":"deterministic","score":1,"normalizedScore":1,"details":{"match":true,"message":"Final database state matches expected state exactly"}},{"name":"agent_speech_fidelity","displayName":"Agent Speech Fidelity","category":"eva-a","type":"lalm_judge","score":1,"normalizedScore":1,"details":{"aggregation":"mean","num_turns":10,"num_evaluated":9,"per_turn_ratings":{"0":1,"1":1,"2":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1},"per_turn_explanations":{"0":"The audio faithfully reproduces the intended text 'Hello! How can I help you today?' without any errors.","1":"The audio faithfully reproduces the intended text 'Sure, I can help with that. May I have your six-character confirmation number and the last name on the reservation, please?' without any errors.","2":"The audio faithfully reproduces the intended text, including the spelled-out confirmation code 'V O R J U' and the last name 'Thompson'.","4":"The audio faithfully reproduces the intended text, including the example spelled-out code 'six, eight, one, one, V, O.' without any errors.","5":"The audio faithfully reproduces the intended text, including all flight times, dollar amounts, and city names.","6":"The audio faithfully reproduces the intended text, including all flight options, times, dollar amounts, and city names.","7":"The audio faithfully reproduces the intended text, including the flight number 'SK 130', times, and dollar amounts.","8":"The audio faithfully reproduces the intended text, including the flight number 'SK 130', times, dollar amounts, and seat number '21 A'.","9":"The audio faithfully reproduces the intended text up to the point where the speaker cuts itself off, as indicated by the tag."}}},{"name":"faithfulness","displayName":"Faithfulness","category":"eva-a","type":"llm_judge","score":1,"normalizedScore":0,"details":{"rating":1,"explanation":{"dimensions":{"fabricating_tool_parameters":{"evidence":"In Turn 8, the rebook_flight call uses \`rebooking_type: 'voluntary'\` instead of \`'same_day'\`. The assistant had been describing this as a 'same-day voluntary change' throughout the conversation and applying the same-day confirmed change fee of $75. However, looking at the tool specification, 'same_day' is a valid rebooking_type option, and since this is indeed a same-day change, using 'voluntary' instead of 'same_day' could be considered a minor categorization issue. That said, the fee outcome ($75) is the same for a main_cabin voluntary change and a same-day confirmed change, so this doesn't materially affect the result. The \`new_fare_class: None\` parameter is passed explicitly as null, which is reasonable since the fare class isn't changing.","flagged":false,"rating":3},"misrepresenting_tool_result":{"evidence":"In Turn 5, the assistant presents Option 1 (the connection) fare as $228 in main cabin. However, the tool result shows the connection's individual segment fares for main_cabin are $229 (SK090) + $129 (SK410), while the journey-level 'fare' field shows $228. The assistant used the journey-level fare of $228. In Turn 5, the assistant states for Option 3 (SK215): 'fare $259, a little cheaper' - the tool shows the main_cabin fare for SK215 is $259, which is correct. However, looking more carefully at the fare difference calculations in Turn 6: for Option 1, the assistant says 'credit of thirty-one dollars' ($289-$228=$61, not $31) - wait, let me recheck. The fare difference is $289-$228=$61, but the assistant says $31. Actually in Turn 5 the assistant says '$61 credit for the early morning connection' which is correct. In Turn 6, the assistant says 'credit of thirty-one dollars' for Option 1. $289-$228=$61, not $31. This is a misrepresentation of a calculated value from tool results. For Option 3 in Turn 6, the assistant says 'credit of thirty dollars' ($289-$259=$30), which is correct.","flagged":true,"rating":1},"violating_policies":{"evidence":"The assistant used rebooking_type 'voluntary' with the standard $75 change fee. For a same-day change, the same-day confirmed change fee is also $75, so the financial outcome is identical. The assistant did explain fees before acting in early turns, and obtained explicit user confirmation in Turn 8 before rebooking. The assistant asked for seat preference before assigning seats. The assistant provided a summary at the end. The assistant did not mention the standby option (same-day standby is free for all fare classes), which could be considered a failure to offer alternatives, but this is minor since the user specifically asked for a confirmed change. One potential issue: the assistant told the user about the $75 change fee and fare implications across Turns 5-7, and the user confirmed in Turn 8, so the 'explain before acting' requirement was met. No significant policy violations detected.","flagged":false,"rating":3},"failing_to_disambiguate":{"evidence":"In Turns 2-4, the user provided the confirmation code in a confusing manner across multiple turns ('six Victor Oscar Romeo Juliet Uniform', then '6-8-1-1 Victor Oscar Romeo Juliet Uniform'). In Turn 3, the user says '6-8-1-1. Victor. Oscar Romeo Juliet Uniform' which could be interpreted as '6811VORJU' (9 characters) or some other combination. The assistant appropriately asked for clarification. In Turn 5, the user said 'Six. Victor. Oscar, Romeo, Juliet uniform' which the assistant interpreted as '6VORJU' (6 characters) and it worked. However, the earlier Turn 3 included '6-8-1-1' which was never reconciled - the assistant could have tried combinations including those digits. Since the final attempt succeeded, this is not a material issue. The user's Turn 4 was garbled (repeated 'L-A' many times and mentioned 'Same day change fee is under $80') which the assistant appropriately handled by re-asking.","flagged":false,"rating":3},"hallucination":{"evidence":"In Turn 5, the assistant mentions issuing a 'travel credit' for fare differences on downgrade scenarios. Per policy, downgrade to lower fare results in travel credit, so this is grounded. In Turn 8's summary, the assistant says 'Everything else from your original booking—name, ticket number, and any existing preferences—has been transferred.' The original booking had no seat assigned, no bags, and no meal request, so saying preferences were 'transferred' slightly embellishes, but this is a conversational courtesy rather than a factual claim. No significant hallucinations detected.","flagged":false,"rating":3}}},"num_turns":31}},{"name":"conciseness","displayName":"Conciseness","category":"eva-x","type":"llm_judge","score":2.2,"normalizedScore":0.6,"details":{"aggregation":"mean","num_turns":10,"num_evaluated":10,"mean_rating":2.2,"per_turn_ratings":{"0":3,"1":3,"2":2,"3":1,"4":3,"5":1,"6":1,"7":3,"8":2,"9":3},"per_turn_explanations":{"0":"Brief, friendly opening question with no extra detail; ideal for voice.","1":"Directly asks for the two required identifiers (confirmation code and last name) in one concise prompt; easy to follow.","2":"Appropriately requests clarification after mishearing the code and confirms the last name. Slightly wordier than necessary (\\"including any remaining letter or number\\") but still very manageable in voice and justified by the identification problem.","3":"The assistant provides no spoken guidance and effectively stalls with “waiting,” which is not helpful in a voice flow and forces the user to carry the conversation without direction.","4":"Clear request to repeat the confirmation code one character at a time, with a helpful example, and explains why (to pull up the reservation). This is appropriate given prior confusion and stays focused.","5":"Presents three alternatives with multiple times, fares, a fee, and multiple example credit calculations in one turn, then adds an additional request for seat preference. For voice, this is a lot to retain and includes extra arithmetic/explanatory detail that could be deferred until the user picks an option.","6":"The user asked for repetition, so listing options again is warranted, but the assistant over-structures it with many bullet points, repeats the same $75 fee three times, and includes detailed fare-difference math and credit explanations for each option. This increases cognitive load for spoken delivery.","7":"Concise: identifies the single flight meeting the constraints, states key times, confirms nonstop, and gives the fee under $80. Ends with a simple confirmation question plus seat preference request—reasonable for the next step.","8":"Clear recap of the successful change with the essential details (new flight/time, change fee, seat assignment). The extra line about transferring everything else and offering bags/other changes adds slight unnecessary length, but it’s still easy to digest and appropriate as a booking-confirmation wrap-up.","9":"Short, polite closing suitable for voice; no overload."},"per_turn_failure_modes":{"0":[],"1":[],"2":["verbosity_or_filler"],"3":["contextually_disproportionate_detail"],"4":[],"5":["excess_information_density","over_enumeration_or_list_exhaustion","contextually_disproportionate_detail"],"6":["over_enumeration_or_list_exhaustion","excess_information_density","verbosity_or_filler"],"7":[],"8":["verbosity_or_filler"],"9":[]}}},{"name":"conversation_progression","displayName":"Conversation Progression","category":"eva-x","type":"llm_judge","score":2,"normalizedScore":0.5,"details":{"rating":2,"explanation":{"dimensions":{"unnecessary_tool_calls":{"evidence":"At Turn 7 the assistant calls \`search_rebooking_options\` again with the same parameters as in Turn 5, despite no new constraints that would change the search results and the prior call already returned the full set of options.","flagged":true,"rating":2},"information_loss":{"evidence":"The assistant generally retains key facts once established (e.g., uses confirmation number 6VORJU and last name Thompson successfully in Turn 5, and then rebooks correctly in Turn 8). Earlier requests to repeat the confirmation code are justified by clearly garbled/partial user input (Turns 2–4).","flagged":false,"rating":3},"redundant_statements":{"evidence":"The assistant repeats the flight options in Turn 6, but this is explicitly requested by the user (“Can you repeat the earlier LAX to SFO flights?”). The final confirmation after rebooking (Turn 8) is a standard helpful recap rather than unnecessary repetition.","flagged":false,"rating":3},"question_quality":{"evidence":"The assistant’s questions are targeted and action-enabling (confirmation code/last name for lookup; then asks which option and seat preference). When the user adds constraints (direct, before 2 p.m., fee under $80), the assistant returns the matching option and asks for confirmation/seat preference.","flagged":false,"rating":3}},"flags_count":""},"num_turns":31}},{"name":"turn_taking","displayName":"Turn Taking","category":"eva-x","type":"llm_judge","score":4.5,"normalizedScore":0.25,"details":{"aggregation":"abs_mean","num_turns":9,"num_evaluated":9,"per_turn_judge_timing_ratings":{"1":"Late","2":"Late","3":"Early / Interrupting","4":"On-Time","5":"Late","6":"On-Time","7":"Late","8":"Late"},"per_turn_judge_timing_explanations":{"1":"The user’s request is complete (“…earlier flight today?”) with no overlap tags. The agent starts 5.507s later, which exceeds the 4s threshold and would feel like an awkward pause.","2":"User finishes providing the confirmation code and last name; the utterance is complete and there are no interruption indicators. The agent begins 4.940s after user end, which is >4s and thus late.","3":"The user’s statement ends at 67.744s, but the agent starts at 67.917s (0.172s later), which is under the 200ms cutoff. Even without explicit interruption tags, this is effectively too early/over-eager turn-taking.","4":"User’s request about changing the LAX→SFO flight is syntactically complete, and no interruption tags indicate overlap. The agent responds after a 2.286s gap, which is within the on-time range.","5":"User finishes spelling the code and stops; no overlap tags are present. The agent waits 9.466s to respond, which is well beyond 4s and clearly late.","6":"The user asks to repeat the options and finishes the question; no interruption tags suggest they were still talking. The agent begins 2.759s later, a normal conversational gap.","7":"User completes the request to check again (direct flight before 2pm, fee under $80) with no overlap markers. The agent starts 4.407s later, slightly over the 4s threshold, so it’s late.","8":"User accepts the 1pm flight and states a window preference, which is complete. The agent waits 5.500s before confirming, exceeding 4s and thus late."},"num_not_applicable":1}},{"name":"transcription_accuracy_key_entities","displayName":"Transcription Accuracy (Key Entities)","category":"diagnostic","type":"llm_judge","score":0.762,"normalizedScore":0.762,"details":{"aggregation":"mean","num_turns":9,"num_evaluated":9,"per_turn_ratings":{"1":-1,"2":1,"3":0.3333333333333333,"4":0.25,"5":1,"6":1,"7":0.75,"8":1,"9":-1},"per_turn_explanations":{"1":"No key entities (names, codes, dates/times, amounts, etc.) present to evaluate.","2":"All 2 key entities transcribed correctly (confirmation code and last name).","3":"1 out of 3 entities correct. Last name correct; confirmation code mis-transcribed (extra digits).","4":"1 out of 4 entities correct. $80 captured, but LAX/SFO and '2 PM' were not correctly transcribed.","5":"Confirmation code transcribed correctly.","6":"Both airport codes (LAX and SFO) transcribed correctly.","7":"3 out of 4 entities correct. SFO was mis-transcribed; LAX, 2 PM, and $80 were correct.","8":"Both entities (1 PM and window seat preference) transcribed correctly.","9":"No key entities present to evaluate."},"per_turn_entity_details":{"1":{"turn_id":1,"entities":[],"summary":"No key entities (names, codes, dates/times, amounts, etc.) present to evaluate."},"2":{"turn_id":2,"entities":[{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"six Victor Oscar Romeo Juliet Uniform","analysis":"Confirmation code phrase matches (minor punctuation/pauses ignored).","correct":true,"skipped":false},{"type":"name","value":"Thompson","transcribed_value":"Tom. Thompson","analysis":"Last name 'Thompson' is present exactly; extra 'Tom' does not change that the entity was captured.","correct":true,"skipped":false}],"summary":"All 2 key entities transcribed correctly (confirmation code and last name)."},"3":{"turn_id":3,"entities":[{"type":"name","value":"Thompson","transcribed_value":"Thompson","analysis":"Matches exactly.","correct":true,"skipped":false},{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"6-8-1-1 Victor Oscar Romeo Juliet Uniform","analysis":"Code corrupted: expected starts with 'six' then letters; transcription inserted extra digits '8-1-1' not in expected.","correct":false,"skipped":false},{"type":"confirmation_code","value":"six","transcribed_value":"6-8-1-1","analysis":"The repeated final 'six' was transcribed as '6-8-1-1', which does not match.","correct":false,"skipped":false}],"summary":"1 out of 3 entities correct. Last name correct; confirmation code mis-transcribed (extra digits)."},"4":{"turn_id":4,"entities":[{"type":"place","value":"L A X","transcribed_value":"L-A (repeated many times)","analysis":"Expected airport code 'LAX' was not captured; transcription devolves into repeated 'L-A' and does not clearly contain 'LAX'.","correct":false,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"missing","analysis":"Expected 'SFO' not present in transcription.","correct":false,"skipped":false},{"type":"time","value":"two p m","transcribed_value":"p.m.","analysis":"Time value missing the 'two/2' component; only 'p.m.' appears.","correct":false,"skipped":false},{"type":"amount","value":"eighty dollars","transcribed_value":"$80","analysis":"Matches semantically ($80).","correct":true,"skipped":false}],"summary":"1 out of 4 entities correct. $80 captured, but LAX/SFO and '2 PM' were not correctly transcribed."},"5":{"turn_id":5,"entities":[{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"Six Victor Oscar Romeo Juliet uniform","analysis":"Matches exactly aside from capitalization/punctuation.","correct":true,"skipped":false}],"summary":"Confirmation code transcribed correctly."},"6":{"turn_id":6,"entities":[{"type":"place","value":"L A X","transcribed_value":"LAX","analysis":"Matches (formatting difference only).","correct":true,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"SFO","analysis":"Matches (formatting difference only).","correct":true,"skipped":false}],"summary":"Both airport codes (LAX and SFO) transcribed correctly."},"7":{"turn_id":7,"entities":[{"type":"place","value":"L A X","transcribed_value":"LAX","analysis":"Matches (formatting difference only).","correct":true,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"SS. F-O","analysis":"Does not match exactly; 'SS F-O' is not 'SFO'.","correct":false,"skipped":false},{"type":"time","value":"two p m","transcribed_value":"2 p.m.","analysis":"Matches semantically.","correct":true,"skipped":false},{"type":"amount","value":"eighty dollars","transcribed_value":"$80","analysis":"Matches semantically ($80).","correct":true,"skipped":false}],"summary":"3 out of 4 entities correct. SFO was mis-transcribed; LAX, 2 PM, and $80 were correct."},"8":{"turn_id":8,"entities":[{"type":"time","value":"one p m","transcribed_value":"1:00 PM","analysis":"Matches semantically.","correct":true,"skipped":false},{"type":"seat_preference","value":"window","transcribed_value":"window","analysis":"Seat preference 'window' present (minor wording error 'Seek Preferences' ignored).","correct":true,"skipped":false}],"summary":"Both entities (1 PM and window seat preference) transcribed correctly."},"9":{"turn_id":9,"entities":[],"summary":"No key entities present to evaluate."}},"per_turn_normalized":{"1":-1,"2":1,"3":0.3333333333333333,"4":0.25,"5":1,"6":1,"7":0.75,"8":1,"9":-1},"num_not_applicable":2}}]`),kh={userGoal:Zte,userPersona:Qte,conversationTrace:Jte,metrics:ene},Ki=kh.userGoal,Xi={highLevelGoal:Ki.high_level_user_goal,decisionTree:{mustHaveCriteria:Ki.decision_tree.must_have_criteria,negotiationBehavior:Ki.decision_tree.negotiation_behavior,resolutionCondition:Ki.decision_tree.resolution_condition,failureCondition:Ki.decision_tree.failure_condition,escalationBehavior:Ki.decision_tree.escalation_behavior,edgeCases:Ki.decision_tree.edge_cases},informationRequired:Ki.information_required},tne=kh.userPersona;function nne(e){const t=[];for(let n=0;n({name:e.name,displayName:e.displayName,category:e.category,type:e.type,score:e.score,normalizedScore:e.normalizedScore,details:e.details})),rne=Mx.filter(e=>e.category==="eva-a"),ine=Mx.filter(e=>e.category==="eva-x"),ane=Mx.filter(e=>e.category==="diagnostic");function eM(e){const t=Math.floor(e/60),n=Math.floor(e%60);return`${t}:${n.toString().padStart(2,"0")}`}function sne({src:e}){const t=A.useRef(null),n=A.useRef(null),[r,s]=A.useState(!1),[o,u]=A.useState(0),[f,d]=A.useState(0),[h,m]=A.useState(!1);A.useEffect(()=>{const _=t.current;if(!_)return;const S=()=>u(_.currentTime),O=()=>d(_.duration),M=()=>s(!1);return _.addEventListener("timeupdate",S),_.addEventListener("loadedmetadata",O),_.addEventListener("ended",M),()=>{_.removeEventListener("timeupdate",S),_.removeEventListener("loadedmetadata",O),_.removeEventListener("ended",M)}},[]);const p=A.useCallback(()=>{const _=t.current;_&&(r?_.pause():_.play(),s(!r))},[r]),v=A.useCallback(()=>{const _=t.current;_&&(_.muted=!h,m(!h))},[h]),x=A.useCallback(_=>{const S=t.current,O=n.current;if(!S||!O)return;const M=O.getBoundingClientRect(),j=Math.max(0,Math.min(1,(_.clientX-M.left)/M.width));S.currentTime=j*f},[f]),w=f>0?o/f*100:0;return b.jsxs("div",{className:"rounded-xl bg-bg-secondary border border-border-default p-4",children:[b.jsx("audio",{ref:t,preload:"metadata",children:b.jsx("source",{src:e,type:"audio/wav"})}),b.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[b.jsx(Gy,{className:"w-5 h-5 text-purple-light"}),b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Conversation Audio"}),b.jsx("span",{className:"text-[10px] px-2 py-0.5 rounded-full bg-bg-tertiary text-text-muted border border-border-default",children:"Recording"})]}),b.jsxs("div",{className:"flex items-center gap-3",children:[b.jsx("button",{onClick:p,className:"w-10 h-10 rounded-full bg-purple/20 hover:bg-purple/30 flex items-center justify-center transition-colors flex-shrink-0",children:r?b.jsx(f6,{className:"w-5 h-5 text-purple-light"}):b.jsx(p6,{className:"w-5 h-5 text-purple-light ml-0.5"})}),b.jsx("span",{className:"text-xs font-mono text-text-muted w-10 text-right flex-shrink-0",children:eM(o)}),b.jsx("div",{ref:n,onClick:x,className:"flex-1 h-2 bg-bg-tertiary rounded-full cursor-pointer group relative",children:b.jsx("div",{className:"h-full bg-purple rounded-full transition-[width] duration-100 relative",style:{width:`${w}%`},children:b.jsx("div",{className:"absolute right-0 top-1/2 -translate-y-1/2 w-3.5 h-3.5 rounded-full bg-purple-light border-2 border-bg-secondary opacity-0 group-hover:opacity-100 transition-opacity"})})}),b.jsx("span",{className:"text-xs font-mono text-text-muted w-10 flex-shrink-0",children:f>0?eM(f):"--:--"}),b.jsx("button",{onClick:v,className:"w-8 h-8 rounded-lg hover:bg-bg-tertiary flex items-center justify-center transition-colors flex-shrink-0",children:h?b.jsx(M6,{className:"w-4 h-4 text-text-muted"}):b.jsx(Gy,{className:"w-4 h-4 text-text-muted"})})]})]})}function one(e){const t=new Map;for(let n=0;nb.jsxs("div",{className:"flex gap-2 text-xs",children:[b.jsxs("span",{className:"text-text-muted font-mono",children:[u,":"]}),b.jsx("span",{className:"text-text-secondary font-mono",children:JSON.stringify(f)})]},u))})]}),t?.toolResponse&&b.jsxs("div",{className:"border-t border-border-default/50",children:[b.jsxs("button",{onClick:()=>o(!s),className:"w-full flex items-center gap-2 px-3 py-2 text-[10px] text-text-muted font-semibold uppercase tracking-wider hover:bg-bg-hover/30 transition-colors",children:[s?b.jsx(ai,{className:"w-3 h-3"}):b.jsx(sM,{className:"w-3 h-3"}),"Response"]}),s&&b.jsx("div",{className:"px-3 pb-3",children:b.jsx("pre",{className:"text-xs text-text-secondary font-mono leading-relaxed max-h-48 overflow-y-auto overflow-x-auto bg-bg-tertiary rounded-lg p-3",children:JSON.stringify(t.toolResponse,null,2)})})]})]})})}function ql({title:e,icon:t,children:n,defaultOpen:r=!1}){const[s,o]=A.useState(r);return b.jsxs("div",{children:[b.jsxs("button",{onClick:()=>o(!s),className:"w-full flex items-center gap-2 rounded-lg border border-border-default bg-bg-primary px-3 py-2 hover:bg-bg-hover/30 transition-colors",children:[b.jsx(t,{className:"w-3.5 h-3.5 text-text-muted"}),b.jsx("span",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider flex-1 text-left",children:e}),b.jsx(ai,{className:`w-3.5 h-3.5 text-text-muted transition-transform ${s?"rotate-180":""}`})]}),s&&b.jsx("div",{className:"mt-2 bg-bg-primary rounded-lg p-3",children:n})]})}function cne(){const[e,t]=A.useState(!0),n=Object.entries(Xi.informationRequired).map(([r,s])=>{const o=r.replace(/_/g," ").replace(/\b\w/g,f=>f.toUpperCase()),u=typeof s=="object"?JSON.stringify(s):String(s);return[o,u]});return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center gap-3 mb-0 hover:opacity-80 transition-opacity",children:[b.jsx("div",{className:"w-10 h-10 rounded-full bg-blue/20 flex items-center justify-center flex-shrink-0",children:b.jsx(Yy,{className:"w-5 h-5 text-blue-light"})}),b.jsxs("div",{className:"flex-1 text-left",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"User Goal"}),b.jsx("div",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:"Scenario Briefing"})]}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${e?"rotate-180":""}`})]}),e&&b.jsxs("div",{className:"mt-4",children:[b.jsx("div",{className:"border-l-2 border-blue/40 pl-4 mb-5",children:b.jsx("p",{className:"text-sm text-text-primary leading-relaxed",children:Xi.highLevelGoal})}),b.jsxs("div",{className:"mb-4 bg-bg-tertiary rounded-lg p-3",children:[b.jsx("div",{className:"text-[10px] font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Persona"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:tne})]}),b.jsxs("div",{className:"mb-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-2.5",children:"Must-Have Criteria"}),b.jsx("div",{className:"space-y-2",children:Xi.decisionTree.mustHaveCriteria.map((r,s)=>b.jsxs("div",{className:"flex gap-2 items-start",children:[b.jsx(Xy,{className:"w-3.5 h-3.5 text-blue-light mt-0.5 flex-shrink-0"}),b.jsx("span",{className:"text-xs text-text-secondary leading-relaxed",children:r})]},s))})]}),b.jsxs("div",{className:"space-y-2",children:[b.jsx(ql,{title:"Negotiation Behavior",icon:lM,children:b.jsx("div",{className:"space-y-2.5",children:Xi.decisionTree.negotiationBehavior.map((r,s)=>b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:r},s))})}),b.jsx(ql,{title:"Resolution & Failure",icon:uM,children:b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-[10px] font-semibold text-emerald-400 uppercase tracking-wider mb-1",children:"Resolution"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.resolutionCondition})]}),b.jsxs("div",{children:[b.jsx("div",{className:"text-[10px] font-semibold text-red-400 uppercase tracking-wider mb-1",children:"Failure"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.failureCondition})]})]})}),b.jsx(ql,{title:"Escalation",icon:w6,children:b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.escalationBehavior})}),b.jsx(ql,{title:"Edge Cases",icon:Jl,children:b.jsx("div",{className:"space-y-2",children:Xi.decisionTree.edgeCases.map((r,s)=>b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:r},s))})}),b.jsx(ql,{title:"Scenario Details",icon:Yy,children:b.jsx("div",{className:"space-y-2",children:n.map(([r,s])=>b.jsxs("div",{className:"flex justify-between gap-3",children:[b.jsx("span",{className:"text-[11px] text-text-muted flex-shrink-0",children:r}),b.jsx("span",{className:"text-[11px] text-text-primary font-medium text-right break-all",children:s})]},r))})})]})]})]})}const Ky=[{name:"get_reservation",description:"Retrieve flight reservation using confirmation number and passenger last name",toolType:"read"},{name:"get_flight_status",description:"Get flight info including status, delays, cancellations, and gate information",toolType:"read"},{name:"get_disruption_info",description:"Get detailed disruption info for IRROPS handling and rebooking entitlements",toolType:"read"},{name:"search_rebooking_options",description:"Search for available flights to rebook a passenger",toolType:"read"},{name:"rebook_flight",description:"Rebook passenger(s) to a new flight (voluntary, IRROPS, or missed flight)",toolType:"write"},{name:"add_to_standby",description:"Add passenger to standby list for a flight",toolType:"write"},{name:"assign_seat",description:"Assign a seat to a passenger based on preference",toolType:"write"},{name:"add_baggage_allowance",description:"Add checked baggage allowance to a flight segment",toolType:"write"},{name:"add_meal_request",description:"Add or update special meal request for a passenger",toolType:"write"},{name:"issue_travel_credit",description:"Issue a travel credit or future flight voucher",toolType:"write"},{name:"issue_hotel_voucher",description:"Issue a hotel voucher for delays or disruptions",toolType:"write"},{name:"issue_meal_voucher",description:"Issue a meal voucher for delays or disruptions",toolType:"write"},{name:"cancel_reservation",description:"Cancel a flight booking",toolType:"write"},{name:"process_refund",description:"Process a refund for a cancelled or eligible reservation",toolType:"write"},{name:"transfer_to_agent",description:"Transfer the call to a live human agent",toolType:"system"}];function fne(e){const t=new Map;for(const n of e)if(n.type==="tool_response"&&n.toolName){const r=t.get(n.toolName)??{calls:0,success:0,error:0};r.calls++,n.toolStatus==="success"?r.success++:r.error++,t.set(n.toolName,r)}return t}function dne({tool:e,isUsed:t,typeColors:n}){const[r,s]=A.useState(!1);return b.jsxs("div",{className:`rounded-lg border ${t?"border-amber/30 bg-amber/5":"border-border-default bg-bg-primary opacity-60"}`,children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center gap-2 px-3 py-2 hover:opacity-80 transition-opacity",children:[b.jsx(p0,{className:`w-3.5 h-3.5 flex-shrink-0 ${t?"text-amber":"text-text-muted"}`}),b.jsx("span",{className:`text-xs font-semibold font-mono flex-1 text-left ${t?"text-text-primary":"text-text-muted"}`,children:e.name}),b.jsx("span",{className:`text-[9px] px-1.5 py-0.5 rounded-full font-medium border ${n[e.toolType]}`,children:e.toolType})]}),r&&b.jsx("div",{className:"px-3 pb-2.5 pt-0",children:b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:e.description})})]})}function hne(){const e=fne(Zs),t=Ky.filter(o=>e.has(o.name)).length,n={read:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20",write:"bg-purple/10 text-purple-light border-purple/20",system:"bg-amber/10 text-amber border-amber/20"},[r,s]=A.useState(!0);return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center gap-3 mb-0 hover:opacity-80 transition-opacity",children:[b.jsx("div",{className:"w-10 h-10 rounded-full bg-amber/20 flex items-center justify-center flex-shrink-0",children:b.jsx(p0,{className:"w-5 h-5 text-amber"})}),b.jsxs("div",{className:"flex-1 text-left",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"Agent Tools"}),b.jsxs("div",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:[t," of ",Ky.length," used in this conversation"]})]}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${r?"rotate-180":""}`})]}),r&&b.jsx("div",{className:"mt-4 space-y-1.5",children:Ky.map(o=>{const u=e.has(o.name);return b.jsx(dne,{tool:o,isUsed:u,typeColors:n},o.name)})})]})}function mne({score:e,size:t="md"}){const n=e>=.8?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":e>=.5?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20",r=t==="sm"?"text-[10px] px-1.5 py-0.5":"text-xs px-2 py-0.5";return b.jsxs("span",{className:`${r} rounded-full font-semibold border ${n}`,children:[(e*100).toFixed(0),"%"]})}function pne({type:e}){const t={deterministic:"Deterministic",llm_judge:"LLM Judge",lalm_judge:"Audio Judge"},n={deterministic:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20",llm_judge:"bg-purple/10 text-purple-light border-purple/20",lalm_judge:"bg-amber/10 text-amber border-amber/20"};return b.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium border ${n[e]??"bg-bg-tertiary text-text-muted border-border-default"}`,children:t[e]??e})}function gne({metric:e}){const[t,n]=A.useState(!1),r=e.details,s=r.per_turn_ratings,o=r.per_turn_explanations,u=r.per_turn_judge_timing_ratings,f=r.per_turn_judge_timing_explanations,d=r.explanation,h=r.per_turn_entity_details,p=(typeof d=="object"&&d!==null?d:void 0)?.dimensions;return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary overflow-hidden",children:[b.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{className:"flex-1 flex items-center gap-3",children:[b.jsx("span",{className:"text-base font-semibold text-text-primary",children:e.displayName}),b.jsx(pne,{type:e.type})]}),b.jsx(mne,{score:e.normalizedScore}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${t?"rotate-180":""}`})]}),t&&b.jsxs("div",{className:"px-5 pb-5 border-t border-border-default/50 pt-4 space-y-5",children:[e.name==="task_completion"&&b.jsxs("div",{className:"flex items-center gap-2",children:[r.match?b.jsx(Xy,{className:"w-5 h-5 text-emerald-400"}):b.jsx(Jl,{className:"w-5 h-5 text-red-400"}),b.jsx("span",{className:"text-base text-text-secondary",children:r.message})]}),p&&b.jsx("div",{className:"space-y-3",children:Object.entries(p).map(([v,x])=>{const w=e.name==="faithfulness";let _,S;return w?x.rating===3?(_="OK",S="bg-emerald-500/10 text-emerald-400 border-emerald-500/20"):x.rating===2?(_="Minor/Ambiguous Issue",S="bg-amber/10 text-amber border-amber/20"):(_="Clear Error",S="bg-red-500/10 text-red-400 border-red-500/20"):e.name==="conversation_progression"?x.rating===3?(_="OK",S="bg-emerald-500/10 text-emerald-400 border-emerald-500/20"):x.rating===2?(_="Minor Issue",S="bg-amber/10 text-amber border-amber/20"):(_="Clear Issue",S="bg-red-500/10 text-red-400 border-red-500/20"):(_=x.flagged?"Flagged":"OK",S=x.flagged?"bg-amber/10 text-amber border-amber/20":"bg-emerald-500/10 text-emerald-400 border-emerald-500/20"),b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:v.replace(/_/g," ").replace(/\b\w/g,O=>O.toUpperCase())}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${S}`,children:_}),b.jsxs("span",{className:"text-xs text-text-muted ml-auto",children:[x.rating,"/3"]})]}),b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:x.evidence})]},v)})}),s&&!p&&!h&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Breakdown"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(s).map(([v,x])=>{const w=o?.[v];return x===-1?null:b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsxs("span",{className:"text-xs font-semibold text-text-muted",children:["Turn ",v]}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${x>=3||x===1&&e.name==="agent_speech_fidelity"?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":x>=2?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20"}`,children:x})]}),w&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:w})]},v)})})]}),u&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Timing"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(u).map(([v,x])=>{const w=f?.[v],_=x==="On-Time"?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":x==="Late"?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20";return b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsxs("span",{className:"text-xs font-semibold text-text-muted",children:["Turn ",v]}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${_}`,children:x})]}),w&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:w})]},v)})})]}),h&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Entity Accuracy"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(h).map(([v,x])=>!x.entities||x.entities.length===0?null:b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"text-xs font-semibold text-text-muted mb-2",children:["Turn ",v]}),b.jsx("div",{className:"space-y-2",children:x.entities.map((w,_)=>b.jsxs("div",{className:"flex items-start gap-2 text-base",children:[w.correct?b.jsx(Xy,{className:"w-4 h-4 text-emerald-400 mt-0.5 flex-shrink-0"}):b.jsx(Jl,{className:"w-4 h-4 text-red-400 mt-0.5 flex-shrink-0"}),b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[w.type,":"]})," ",b.jsx("span",{className:"text-text-secondary",children:w.value}),!w.correct&&b.jsxs("span",{className:"text-red-400",children:[" → ",w.transcribed_value]})]})]},_))}),b.jsx("p",{className:"text-xs text-text-muted mt-2",children:x.summary})]},v))})]}),typeof d=="string"&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:d})]})]})}function yne(){const e=[{label:"Accuracy (EVA-A)",icon:uM,metrics:rne,color:"text-emerald-400"},{label:"Experience (EVA-X)",icon:BR,metrics:ine,color:"text-purple-light"},{label:"Relevant Diagnostic Metric",icon:b6,metrics:ane,color:"text-cyan-400"}];return b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.2},className:"mt-12",children:b.jsx("div",{className:"space-y-8",children:e.map(t=>b.jsxs("div",{children:[b.jsx("div",{className:"flex items-center gap-3 mb-4 pb-3 border-b border-border-default",children:b.jsx("span",{className:"text-lg font-bold text-text-primary",children:t.label})}),b.jsx("div",{className:"space-y-2",children:t.metrics.map(n=>b.jsx(gne,{metric:n},n.name))})]},t.label))})})}function vne(){const e=one(Zs),t=[];let n=0;for(;n{const t=tM[e.category]??nM;return e.items.map((n,r)=>b.jsxs("div",{className:`rounded-xl border ${t.border} ${t.bg} p-5 flex flex-col`,children:[b.jsx("div",{className:"flex items-center gap-2 mb-2",children:b.jsx("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-full ${t.badge} ${t.text} border ${t.badgeBorder}`,children:e.category})}),b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1.5",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed flex-1",children:n.description})]},`${e.category}-${r}`))})})]}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:[b.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(y6,{className:"w-5 h-5 text-purple"})}),b.jsx("h3",{className:"text-xl font-bold text-text-primary",children:"Roadmap"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:xne.flatMap(e=>{const t=tM[e.category]??nM;return e.items.map((n,r)=>b.jsxs("div",{className:`rounded-xl border ${t.border} ${t.bg} p-5 flex flex-col`,children:[b.jsx("div",{className:"flex items-center gap-2 mb-2",children:b.jsx("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-full ${t.badge} ${t.text} border ${t.badgeBorder}`,children:e.category})}),b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1.5",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed flex-1",children:n.description})]},`${e.category}-${r}`))})})]})]})})}const _ne=new Set(["intro","architecture","metrics","early-results","demo","limitations","acknowledgements"]);function rM(){const e=window.location.hash.slice(1);return e&&_ne.has(e)?e:"intro"}function Sne(){if(typeof window<"u"){const e=localStorage.getItem("eva-theme");if(e==="light"||e==="dark")return e}return"dark"}function Ane(){const[e,t]=A.useState(rM),[n,r]=A.useState(Sne);A.useEffect(()=>{const f=()=>t(rM());return window.addEventListener("hashchange",f),()=>window.removeEventListener("hashchange",f)},[]);const s=A.useCallback(f=>{t(f),window.history.pushState(null,"",`#${f}`)},[]);A.useEffect(()=>{document.documentElement.setAttribute("data-theme",n),localStorage.setItem("eva-theme",n)},[n]);const o=A.useCallback(()=>{r(f=>f==="dark"?"light":"dark")},[]),u=A.useMemo(()=>({mode:n,colors:Tte[n]}),[n]);return b.jsx(Ex.Provider,{value:u,children:b.jsxs("div",{className:"min-h-screen bg-bg-primary",children:[b.jsx(C6,{activeTab:e,onTabChange:s,theme:n,onToggleTheme:o}),b.jsxs("main",{children:[e==="intro"&&b.jsx(EB,{}),e==="architecture"&&b.jsx(jB,{}),e==="metrics"&&b.jsx(RB,{}),e==="early-results"&&b.jsx(Wte,{}),e==="demo"&&b.jsx(vne,{}),e==="limitations"&&b.jsx(wne,{}),e==="acknowledgements"&&b.jsx(OB,{})]})]})})}CR.createRoot(document.getElementById("root")).render(b.jsx(A.StrictMode,{children:b.jsx(Ane,{})})); diff --git a/docs/assets/index-DNsPq0CK.css b/docs/assets/index-DNsPq0CK.css new file mode 100644 index 00000000..af54cf03 --- /dev/null +++ b/docs/assets/index-DNsPq0CK.css @@ -0,0 +1 @@ +@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-500:oklch(71.5% .143 215.221);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--leading-loose:2;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-sm:8px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg-primary:#0b0d17;--color-bg-secondary:#12152a;--color-bg-tertiary:#1a1f3d;--color-bg-hover:#222850;--color-purple:#8b5cf6;--color-purple-light:#a78bfa;--color-purple-dim:#6d28d9;--color-blue:#38bdf8;--color-blue-light:#7dd3fc;--color-cyan:#06b6d4;--color-amber:#f59e0b;--color-text-primary:#f1f5f9;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--color-border-default:#1e293b}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.\!container{width:100%!important}@media(min-width:40rem){.\!container{max-width:40rem!important}}@media(min-width:48rem){.\!container{max-width:48rem!important}}@media(min-width:64rem){.\!container{max-width:64rem!important}}@media(min-width:80rem){.\!container{max-width:80rem!important}}@media(min-width:96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-4{margin-block:calc(var(--spacing) * 4)}.-mt-1{margin-top:calc(var(--spacing) * -1)}.-mt-2{margin-top:calc(var(--spacing) * -2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-auto{margin-top:auto}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0{height:calc(var(--spacing) * 0)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-4\.5{height:calc(var(--spacing) * 4.5)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-full{height:100%}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-\[32rem\]{max-height:32rem}.max-h-\[85vh\]{max-height:85vh}.min-h-\[300px\]{min-height:300px}.min-h-screen{min-height:100vh}.w-0{width:calc(var(--spacing) * 0)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-4\.5{width:calc(var(--spacing) * 4.5)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-72{width:calc(var(--spacing) * 72)}.w-\[60\%\]{width:60%}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-64{max-width:calc(var(--spacing) * 64)}.max-w-72{max-width:calc(var(--spacing) * 72)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-\[28rem\]{max-width:28rem}.max-w-\[85\%\]{max-width:85%}.max-w-\[1600px\]{max-width:1600px}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[100px\]{min-width:100px}.min-w-\[160px\]{min-width:160px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-3d{scale:var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z)}.rotate-45{rotate:45deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.resize{resize:both}.columns-2{columns:2}.columns-3{columns:3}.columns-4{columns:4}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-2{border-right-style:var(--tw-border-style);border-right-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber\/20{border-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.border-amber\/20{border-color:color-mix(in oklab,var(--color-amber) 20%,transparent)}}.border-amber\/25{border-color:#f59e0b40}@supports (color:color-mix(in lab,red,red)){.border-amber\/25{border-color:color-mix(in oklab,var(--color-amber) 25%,transparent)}}.border-amber\/30{border-color:#f59e0b4d}@supports (color:color-mix(in lab,red,red)){.border-amber\/30{border-color:color-mix(in oklab,var(--color-amber) 30%,transparent)}}.border-amber\/40{border-color:#f59e0b66}@supports (color:color-mix(in lab,red,red)){.border-amber\/40{border-color:color-mix(in oklab,var(--color-amber) 40%,transparent)}}.border-bg-secondary{border-color:var(--color-bg-secondary)}.border-blue\/20{border-color:#38bdf833}@supports (color:color-mix(in lab,red,red)){.border-blue\/20{border-color:color-mix(in oklab,var(--color-blue) 20%,transparent)}}.border-blue\/25{border-color:#38bdf840}@supports (color:color-mix(in lab,red,red)){.border-blue\/25{border-color:color-mix(in oklab,var(--color-blue) 25%,transparent)}}.border-blue\/30{border-color:#38bdf84d}@supports (color:color-mix(in lab,red,red)){.border-blue\/30{border-color:color-mix(in oklab,var(--color-blue) 30%,transparent)}}.border-blue\/40{border-color:#38bdf866}@supports (color:color-mix(in lab,red,red)){.border-blue\/40{border-color:color-mix(in oklab,var(--color-blue) 40%,transparent)}}.border-border-default{border-color:var(--color-border-default)}.border-border-default\/30{border-color:#1e293b4d}@supports (color:color-mix(in lab,red,red)){.border-border-default\/30{border-color:color-mix(in oklab,var(--color-border-default) 30%,transparent)}}.border-border-default\/50{border-color:#1e293b80}@supports (color:color-mix(in lab,red,red)){.border-border-default\/50{border-color:color-mix(in oklab,var(--color-border-default) 50%,transparent)}}.border-cyan-500\/20{border-color:#00b7d733}@supports (color:color-mix(in lab,red,red)){.border-cyan-500\/20{border-color:color-mix(in oklab,var(--color-cyan-500) 20%,transparent)}}.border-cyan\/30{border-color:#06b6d44d}@supports (color:color-mix(in lab,red,red)){.border-cyan\/30{border-color:color-mix(in oklab,var(--color-cyan) 30%,transparent)}}.border-cyan\/40{border-color:#06b6d466}@supports (color:color-mix(in lab,red,red)){.border-cyan\/40{border-color:color-mix(in oklab,var(--color-cyan) 40%,transparent)}}.border-emerald-500\/20{border-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/20{border-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.border-purple\/20{border-color:#8b5cf633}@supports (color:color-mix(in lab,red,red)){.border-purple\/20{border-color:color-mix(in oklab,var(--color-purple) 20%,transparent)}}.border-purple\/25{border-color:#8b5cf640}@supports (color:color-mix(in lab,red,red)){.border-purple\/25{border-color:color-mix(in oklab,var(--color-purple) 25%,transparent)}}.border-purple\/30{border-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.border-purple\/30{border-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.border-purple\/40{border-color:#8b5cf666}@supports (color:color-mix(in lab,red,red)){.border-purple\/40{border-color:color-mix(in oklab,var(--color-purple) 40%,transparent)}}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.border-transparent{border-color:#0000}.bg-amber\/5{background-color:#f59e0b0d}@supports (color:color-mix(in lab,red,red)){.bg-amber\/5{background-color:color-mix(in oklab,var(--color-amber) 5%,transparent)}}.bg-amber\/10{background-color:#f59e0b1a}@supports (color:color-mix(in lab,red,red)){.bg-amber\/10{background-color:color-mix(in oklab,var(--color-amber) 10%,transparent)}}.bg-amber\/20{background-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.bg-amber\/20{background-color:color-mix(in oklab,var(--color-amber) 20%,transparent)}}.bg-bg-hover{background-color:var(--color-bg-hover)}.bg-bg-primary{background-color:var(--color-bg-primary)}.bg-bg-primary\/80{background-color:#0b0d17cc}@supports (color:color-mix(in lab,red,red)){.bg-bg-primary\/80{background-color:color-mix(in oklab,var(--color-bg-primary) 80%,transparent)}}.bg-bg-primary\/95{background-color:#0b0d17f2}@supports (color:color-mix(in lab,red,red)){.bg-bg-primary\/95{background-color:color-mix(in oklab,var(--color-bg-primary) 95%,transparent)}}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-tertiary{background-color:var(--color-bg-tertiary)}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.bg-blue\/5{background-color:#38bdf80d}@supports (color:color-mix(in lab,red,red)){.bg-blue\/5{background-color:color-mix(in oklab,var(--color-blue) 5%,transparent)}}.bg-blue\/10{background-color:#38bdf81a}@supports (color:color-mix(in lab,red,red)){.bg-blue\/10{background-color:color-mix(in oklab,var(--color-blue) 10%,transparent)}}.bg-blue\/20{background-color:#38bdf833}@supports (color:color-mix(in lab,red,red)){.bg-blue\/20{background-color:color-mix(in oklab,var(--color-blue) 20%,transparent)}}.bg-blue\/30{background-color:#38bdf84d}@supports (color:color-mix(in lab,red,red)){.bg-blue\/30{background-color:color-mix(in oklab,var(--color-blue) 30%,transparent)}}.bg-cyan-500\/5{background-color:#00b7d70d}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/5{background-color:color-mix(in oklab,var(--color-cyan-500) 5%,transparent)}}.bg-cyan-500\/10{background-color:#00b7d71a}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/10{background-color:color-mix(in oklab,var(--color-cyan-500) 10%,transparent)}}.bg-cyan\/5{background-color:#06b6d40d}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/5{background-color:color-mix(in oklab,var(--color-cyan) 5%,transparent)}}.bg-cyan\/10{background-color:#06b6d41a}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/10{background-color:color-mix(in oklab,var(--color-cyan) 10%,transparent)}}.bg-cyan\/20{background-color:#06b6d433}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/20{background-color:color-mix(in oklab,var(--color-cyan) 20%,transparent)}}.bg-emerald-500\/5{background-color:#00bb7f0d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/5{background-color:color-mix(in oklab,var(--color-emerald-500) 5%,transparent)}}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-emerald-500\/20{background-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/20{background-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.bg-purple{background-color:var(--color-purple)}.bg-purple-light{background-color:var(--color-purple-light)}.bg-purple-light\/20{background-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.bg-purple-light\/20{background-color:color-mix(in oklab,var(--color-purple-light) 20%,transparent)}}.bg-purple\/5{background-color:#8b5cf60d}@supports (color:color-mix(in lab,red,red)){.bg-purple\/5{background-color:color-mix(in oklab,var(--color-purple) 5%,transparent)}}.bg-purple\/10{background-color:#8b5cf61a}@supports (color:color-mix(in lab,red,red)){.bg-purple\/10{background-color:color-mix(in oklab,var(--color-purple) 10%,transparent)}}.bg-purple\/15{background-color:#8b5cf626}@supports (color:color-mix(in lab,red,red)){.bg-purple\/15{background-color:color-mix(in oklab,var(--color-purple) 15%,transparent)}}.bg-purple\/20{background-color:#8b5cf633}@supports (color:color-mix(in lab,red,red)){.bg-purple\/20{background-color:color-mix(in oklab,var(--color-purple) 20%,transparent)}}.bg-purple\/30{background-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.bg-purple\/30{background-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-28{padding-top:calc(var(--spacing) * 28)}.pt-32{padding-top:calc(var(--spacing) * 32)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-2\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.7em\]{font-size:.7em}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-loose{--tw-leading:var(--leading-loose);line-height:var(--leading-loose)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#A78BFA\]{color:#a78bfa}.text-amber{color:var(--color-amber)}.text-blue-light{color:var(--color-blue-light)}.text-cyan{color:var(--color-cyan)}.text-cyan-400{color:var(--color-cyan-400)}.text-emerald-400{color:var(--color-emerald-400)}.text-purple{color:var(--color-purple)}.text-purple-light{color:var(--color-purple-light)}.text-red-400{color:var(--color-red-400)}.text-text-muted{color:var(--color-text-muted)}.text-text-primary{color:var(--color-text-primary)}.text-text-primary\/80{color:#f1f5f9cc}@supports (color:color-mix(in lab,red,red)){.text-text-primary\/80{color:color-mix(in oklab,var(--color-text-primary) 80%,transparent)}}.text-text-secondary{color:var(--color-text-secondary)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/issue\:visible:is(:where(.group\/issue):hover *){visibility:visible}.group-hover\/issue\:opacity-100:is(:where(.group\/issue):hover *){opacity:1}.hover\:bg-bg-hover:hover{background-color:var(--color-bg-hover)}.hover\:bg-bg-hover\/30:hover{background-color:#2228504d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-bg-hover\/30:hover{background-color:color-mix(in oklab,var(--color-bg-hover) 30%,transparent)}}.hover\:bg-bg-hover\/50:hover{background-color:#22285080}@supports (color:color-mix(in lab,red,red)){.hover\:bg-bg-hover\/50:hover{background-color:color-mix(in oklab,var(--color-bg-hover) 50%,transparent)}}.hover\:bg-bg-tertiary:hover{background-color:var(--color-bg-tertiary)}.hover\:bg-purple-dim:hover{background-color:var(--color-purple-dim)}.hover\:bg-purple\/30:hover{background-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-purple\/30:hover{background-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.hover\:text-purple:hover{color:var(--color-purple)}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:text-text-secondary:hover{color:var(--color-text-secondary)}.hover\:opacity-80:hover{opacity:.8}}@media(min-width:40rem){.sm\:mx-8{margin-inline:calc(var(--spacing) * 8)}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:h-3{height:calc(var(--spacing) * 3)}.sm\:h-3\.5{height:calc(var(--spacing) * 3.5)}.sm\:min-h-\[400px\]{min-height:400px}.sm\:w-3{width:calc(var(--spacing) * 3)}.sm\:w-3\.5{width:calc(var(--spacing) * 3.5)}.sm\:w-6{width:calc(var(--spacing) * 6)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-baseline{align-items:baseline}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-x-6{column-gap:calc(var(--spacing) * 6)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:px-3{padding-inline:calc(var(--spacing) * 3)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-left{text-align:left}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media(min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:w-\[250px\]{width:250px}.md\:w-auto{width:auto}.md\:max-w-none{max-width:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-6{gap:calc(var(--spacing) * 6)}}@media(min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-8{top:calc(var(--spacing) * 8)}.lg\:max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.lg\:w-\[22\%\]{width:22%}.lg\:w-\[25\%\]{width:25%}.lg\:flex-shrink-0{flex-shrink:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-col{flex-direction:column}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-start{align-items:flex-start}.lg\:gap-3{gap:calc(var(--spacing) * 3)}.lg\:overflow-y-auto{overflow-y:auto}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:pr-2{padding-right:calc(var(--spacing) * 2)}.lg\:text-\[2\.75rem\]{font-size:2.75rem}}.\[\&_\.recharts-surface\]\:overflow-visible .recharts-surface{overflow:visible}}[data-theme=light]{--color-bg-primary:#fff;--color-bg-secondary:#f8fafc;--color-bg-tertiary:#f1f5f9;--color-bg-hover:#e2e8f0;--color-purple:#7c3aed;--color-purple-light:#6d28d9;--color-purple-dim:#5b21b6;--color-blue:#0284c7;--color-blue-light:#0369a1;--color-blue-dim:#075985;--color-cyan:#0891b2;--color-amber:#d97706;--color-text-primary:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-border-default:#e2e8f0;--color-border-accent:#7c3aed;--color-heatmap-bad:#dc2626;--color-heatmap-bad-bg:#fee2e2;--color-heatmap-mid:#ca8a04;--color-heatmap-mid-bg:#fef9c3;--color-heatmap-good:#16a34a;--color-heatmap-good-bg:#dcfce7}html{scroll-behavior:smooth}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-bg-hover)}@keyframes dash{to{stroke-dashoffset:-20px}}.animate-dash{animation:1s linear infinite dash}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false} diff --git a/docs/assets/index-DcU8EScs.css b/docs/assets/index-DcU8EScs.css deleted file mode 100644 index 2c375c5f..00000000 --- a/docs/assets/index-DcU8EScs.css +++ /dev/null @@ -1 +0,0 @@ -@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-500:oklch(71.5% .143 215.221);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--leading-loose:2;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--blur-sm:8px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg-primary:#0b0d17;--color-bg-secondary:#12152a;--color-bg-tertiary:#1a1f3d;--color-bg-hover:#222850;--color-purple:#8b5cf6;--color-purple-light:#a78bfa;--color-purple-dim:#6d28d9;--color-blue:#38bdf8;--color-blue-light:#7dd3fc;--color-cyan:#06b6d4;--color-amber:#f59e0b;--color-text-primary:#f1f5f9;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--color-border-default:#1e293b}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-4{margin-block:calc(var(--spacing) * 4)}.-mt-1{margin-top:calc(var(--spacing) * -1)}.-mt-2{margin-top:calc(var(--spacing) * -2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-auto{margin-top:auto}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0{height:calc(var(--spacing) * 0)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-4\.5{height:calc(var(--spacing) * 4.5)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-full{height:100%}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-\[32rem\]{max-height:32rem}.max-h-\[85vh\]{max-height:85vh}.min-h-\[300px\]{min-height:300px}.min-h-screen{min-height:100vh}.w-0{width:calc(var(--spacing) * 0)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-4\.5{width:calc(var(--spacing) * 4.5)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-72{width:calc(var(--spacing) * 72)}.w-\[60\%\]{width:60%}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-64{max-width:calc(var(--spacing) * 64)}.max-w-72{max-width:calc(var(--spacing) * 72)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-\[28rem\]{max-width:28rem}.max-w-\[85\%\]{max-width:85%}.max-w-\[1600px\]{max-width:1600px}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[100px\]{min-width:100px}.min-w-\[160px\]{min-width:160px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-2{border-right-style:var(--tw-border-style);border-right-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber\/20{border-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.border-amber\/20{border-color:color-mix(in oklab,var(--color-amber) 20%,transparent)}}.border-amber\/25{border-color:#f59e0b40}@supports (color:color-mix(in lab,red,red)){.border-amber\/25{border-color:color-mix(in oklab,var(--color-amber) 25%,transparent)}}.border-amber\/30{border-color:#f59e0b4d}@supports (color:color-mix(in lab,red,red)){.border-amber\/30{border-color:color-mix(in oklab,var(--color-amber) 30%,transparent)}}.border-amber\/40{border-color:#f59e0b66}@supports (color:color-mix(in lab,red,red)){.border-amber\/40{border-color:color-mix(in oklab,var(--color-amber) 40%,transparent)}}.border-bg-secondary{border-color:var(--color-bg-secondary)}.border-blue\/20{border-color:#38bdf833}@supports (color:color-mix(in lab,red,red)){.border-blue\/20{border-color:color-mix(in oklab,var(--color-blue) 20%,transparent)}}.border-blue\/25{border-color:#38bdf840}@supports (color:color-mix(in lab,red,red)){.border-blue\/25{border-color:color-mix(in oklab,var(--color-blue) 25%,transparent)}}.border-blue\/30{border-color:#38bdf84d}@supports (color:color-mix(in lab,red,red)){.border-blue\/30{border-color:color-mix(in oklab,var(--color-blue) 30%,transparent)}}.border-blue\/40{border-color:#38bdf866}@supports (color:color-mix(in lab,red,red)){.border-blue\/40{border-color:color-mix(in oklab,var(--color-blue) 40%,transparent)}}.border-border-default{border-color:var(--color-border-default)}.border-border-default\/30{border-color:#1e293b4d}@supports (color:color-mix(in lab,red,red)){.border-border-default\/30{border-color:color-mix(in oklab,var(--color-border-default) 30%,transparent)}}.border-border-default\/50{border-color:#1e293b80}@supports (color:color-mix(in lab,red,red)){.border-border-default\/50{border-color:color-mix(in oklab,var(--color-border-default) 50%,transparent)}}.border-cyan-500\/20{border-color:#00b7d733}@supports (color:color-mix(in lab,red,red)){.border-cyan-500\/20{border-color:color-mix(in oklab,var(--color-cyan-500) 20%,transparent)}}.border-cyan\/30{border-color:#06b6d44d}@supports (color:color-mix(in lab,red,red)){.border-cyan\/30{border-color:color-mix(in oklab,var(--color-cyan) 30%,transparent)}}.border-cyan\/40{border-color:#06b6d466}@supports (color:color-mix(in lab,red,red)){.border-cyan\/40{border-color:color-mix(in oklab,var(--color-cyan) 40%,transparent)}}.border-emerald-500\/20{border-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/20{border-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.border-purple\/20{border-color:#8b5cf633}@supports (color:color-mix(in lab,red,red)){.border-purple\/20{border-color:color-mix(in oklab,var(--color-purple) 20%,transparent)}}.border-purple\/25{border-color:#8b5cf640}@supports (color:color-mix(in lab,red,red)){.border-purple\/25{border-color:color-mix(in oklab,var(--color-purple) 25%,transparent)}}.border-purple\/30{border-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.border-purple\/30{border-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.border-purple\/40{border-color:#8b5cf666}@supports (color:color-mix(in lab,red,red)){.border-purple\/40{border-color:color-mix(in oklab,var(--color-purple) 40%,transparent)}}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.border-transparent{border-color:#0000}.bg-amber\/5{background-color:#f59e0b0d}@supports (color:color-mix(in lab,red,red)){.bg-amber\/5{background-color:color-mix(in oklab,var(--color-amber) 5%,transparent)}}.bg-amber\/10{background-color:#f59e0b1a}@supports (color:color-mix(in lab,red,red)){.bg-amber\/10{background-color:color-mix(in oklab,var(--color-amber) 10%,transparent)}}.bg-amber\/20{background-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.bg-amber\/20{background-color:color-mix(in oklab,var(--color-amber) 20%,transparent)}}.bg-bg-hover{background-color:var(--color-bg-hover)}.bg-bg-primary{background-color:var(--color-bg-primary)}.bg-bg-primary\/80{background-color:#0b0d17cc}@supports (color:color-mix(in lab,red,red)){.bg-bg-primary\/80{background-color:color-mix(in oklab,var(--color-bg-primary) 80%,transparent)}}.bg-bg-primary\/95{background-color:#0b0d17f2}@supports (color:color-mix(in lab,red,red)){.bg-bg-primary\/95{background-color:color-mix(in oklab,var(--color-bg-primary) 95%,transparent)}}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-tertiary{background-color:var(--color-bg-tertiary)}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.bg-blue\/5{background-color:#38bdf80d}@supports (color:color-mix(in lab,red,red)){.bg-blue\/5{background-color:color-mix(in oklab,var(--color-blue) 5%,transparent)}}.bg-blue\/10{background-color:#38bdf81a}@supports (color:color-mix(in lab,red,red)){.bg-blue\/10{background-color:color-mix(in oklab,var(--color-blue) 10%,transparent)}}.bg-blue\/20{background-color:#38bdf833}@supports (color:color-mix(in lab,red,red)){.bg-blue\/20{background-color:color-mix(in oklab,var(--color-blue) 20%,transparent)}}.bg-blue\/30{background-color:#38bdf84d}@supports (color:color-mix(in lab,red,red)){.bg-blue\/30{background-color:color-mix(in oklab,var(--color-blue) 30%,transparent)}}.bg-cyan-500\/5{background-color:#00b7d70d}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/5{background-color:color-mix(in oklab,var(--color-cyan-500) 5%,transparent)}}.bg-cyan-500\/10{background-color:#00b7d71a}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/10{background-color:color-mix(in oklab,var(--color-cyan-500) 10%,transparent)}}.bg-cyan\/5{background-color:#06b6d40d}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/5{background-color:color-mix(in oklab,var(--color-cyan) 5%,transparent)}}.bg-cyan\/10{background-color:#06b6d41a}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/10{background-color:color-mix(in oklab,var(--color-cyan) 10%,transparent)}}.bg-cyan\/20{background-color:#06b6d433}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/20{background-color:color-mix(in oklab,var(--color-cyan) 20%,transparent)}}.bg-emerald-500\/5{background-color:#00bb7f0d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/5{background-color:color-mix(in oklab,var(--color-emerald-500) 5%,transparent)}}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-emerald-500\/20{background-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/20{background-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.bg-purple{background-color:var(--color-purple)}.bg-purple-light{background-color:var(--color-purple-light)}.bg-purple-light\/20{background-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.bg-purple-light\/20{background-color:color-mix(in oklab,var(--color-purple-light) 20%,transparent)}}.bg-purple\/5{background-color:#8b5cf60d}@supports (color:color-mix(in lab,red,red)){.bg-purple\/5{background-color:color-mix(in oklab,var(--color-purple) 5%,transparent)}}.bg-purple\/10{background-color:#8b5cf61a}@supports (color:color-mix(in lab,red,red)){.bg-purple\/10{background-color:color-mix(in oklab,var(--color-purple) 10%,transparent)}}.bg-purple\/15{background-color:#8b5cf626}@supports (color:color-mix(in lab,red,red)){.bg-purple\/15{background-color:color-mix(in oklab,var(--color-purple) 15%,transparent)}}.bg-purple\/20{background-color:#8b5cf633}@supports (color:color-mix(in lab,red,red)){.bg-purple\/20{background-color:color-mix(in oklab,var(--color-purple) 20%,transparent)}}.bg-purple\/30{background-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.bg-purple\/30{background-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-28{padding-top:calc(var(--spacing) * 28)}.pt-32{padding-top:calc(var(--spacing) * 32)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-2\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.7em\]{font-size:.7em}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-loose{--tw-leading:var(--leading-loose);line-height:var(--leading-loose)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#A78BFA\]{color:#a78bfa}.text-amber{color:var(--color-amber)}.text-blue-light{color:var(--color-blue-light)}.text-cyan{color:var(--color-cyan)}.text-cyan-400{color:var(--color-cyan-400)}.text-emerald-400{color:var(--color-emerald-400)}.text-purple{color:var(--color-purple)}.text-purple-light{color:var(--color-purple-light)}.text-red-400{color:var(--color-red-400)}.text-text-muted{color:var(--color-text-muted)}.text-text-primary{color:var(--color-text-primary)}.text-text-primary\/80{color:#f1f5f9cc}@supports (color:color-mix(in lab,red,red)){.text-text-primary\/80{color:color-mix(in oklab,var(--color-text-primary) 80%,transparent)}}.text-text-secondary{color:var(--color-text-secondary)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.no-underline{text-decoration-line:none}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/issue\:visible:is(:where(.group\/issue):hover *){visibility:visible}.group-hover\/issue\:opacity-100:is(:where(.group\/issue):hover *){opacity:1}.hover\:bg-bg-hover:hover{background-color:var(--color-bg-hover)}.hover\:bg-bg-hover\/30:hover{background-color:#2228504d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-bg-hover\/30:hover{background-color:color-mix(in oklab,var(--color-bg-hover) 30%,transparent)}}.hover\:bg-bg-hover\/50:hover{background-color:#22285080}@supports (color:color-mix(in lab,red,red)){.hover\:bg-bg-hover\/50:hover{background-color:color-mix(in oklab,var(--color-bg-hover) 50%,transparent)}}.hover\:bg-bg-tertiary:hover{background-color:var(--color-bg-tertiary)}.hover\:bg-purple-dim:hover{background-color:var(--color-purple-dim)}.hover\:bg-purple\/30:hover{background-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-purple\/30:hover{background-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.hover\:text-purple:hover{color:var(--color-purple)}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:text-text-secondary:hover{color:var(--color-text-secondary)}.hover\:opacity-80:hover{opacity:.8}}@media(min-width:40rem){.sm\:mx-8{margin-inline:calc(var(--spacing) * 8)}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:h-3{height:calc(var(--spacing) * 3)}.sm\:h-3\.5{height:calc(var(--spacing) * 3.5)}.sm\:min-h-\[400px\]{min-height:400px}.sm\:w-3{width:calc(var(--spacing) * 3)}.sm\:w-3\.5{width:calc(var(--spacing) * 3.5)}.sm\:w-6{width:calc(var(--spacing) * 6)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-baseline{align-items:baseline}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-x-6{column-gap:calc(var(--spacing) * 6)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:px-3{padding-inline:calc(var(--spacing) * 3)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-left{text-align:left}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media(min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:w-\[250px\]{width:250px}.md\:w-auto{width:auto}.md\:max-w-none{max-width:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-6{gap:calc(var(--spacing) * 6)}}@media(min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-8{top:calc(var(--spacing) * 8)}.lg\:max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.lg\:w-\[22\%\]{width:22%}.lg\:w-\[25\%\]{width:25%}.lg\:flex-shrink-0{flex-shrink:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-col{flex-direction:column}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-start{align-items:flex-start}.lg\:gap-3{gap:calc(var(--spacing) * 3)}.lg\:overflow-y-auto{overflow-y:auto}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:pr-2{padding-right:calc(var(--spacing) * 2)}.lg\:text-\[2\.75rem\]{font-size:2.75rem}}.\[\&_\.recharts-surface\]\:overflow-visible .recharts-surface{overflow:visible}}[data-theme=light]{--color-bg-primary:#fff;--color-bg-secondary:#f8fafc;--color-bg-tertiary:#f1f5f9;--color-bg-hover:#e2e8f0;--color-purple:#7c3aed;--color-purple-light:#6d28d9;--color-purple-dim:#5b21b6;--color-blue:#0284c7;--color-blue-light:#0369a1;--color-blue-dim:#075985;--color-cyan:#0891b2;--color-amber:#d97706;--color-text-primary:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-border-default:#e2e8f0;--color-border-accent:#7c3aed;--color-heatmap-bad:#dc2626;--color-heatmap-bad-bg:#fee2e2;--color-heatmap-mid:#ca8a04;--color-heatmap-mid-bg:#fef9c3;--color-heatmap-good:#16a34a;--color-heatmap-good-bg:#dcfce7}html{scroll-behavior:smooth}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-bg-hover)}@keyframes dash{to{stroke-dashoffset:-20px}}.animate-dash{animation:1s linear infinite dash}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false} diff --git a/docs/index.html b/docs/index.html index 9ba8b8e0..815c36b5 100644 --- a/docs/index.html +++ b/docs/index.html @@ -9,8 +9,8 @@ - - + +
diff --git a/website/src/components/metrics/MetricNode.tsx b/website/src/components/metrics/MetricNode.tsx index 4767490d..285f74b8 100644 --- a/website/src/components/metrics/MetricNode.tsx +++ b/website/src/components/metrics/MetricNode.tsx @@ -1,6 +1,6 @@ import { useState } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; -import { ChevronDown, Code, MessageSquare, Volume2 } from 'lucide-react'; +import { ChevronDown, Code, ExternalLink, MessageSquare, Volume2 } from 'lucide-react'; import { metricTypeLabels, metricTypeColors } from '../../data/metricsData'; import type { MetricDefinition } from '../../data/metricsData'; import { JudgePromptViewer } from './JudgePromptViewer'; @@ -131,10 +131,19 @@ export function MetricNode({ metric }: MetricNodeProps) { ))} - {metric.judgeDevelopmentNotes ? ( + {metric.developmentDocUrl && ( + + View judge development details + + + )} + {metric.judgeDevelopmentNotes && (

{metric.judgeDevelopmentNotes}

- ) : ( -

)} diff --git a/website/src/data/leaderboardData.ts b/website/src/data/leaderboardData.ts index ebd9a816..f2eaa557 100644 --- a/website/src/data/leaderboardData.ts +++ b/website/src/data/leaderboardData.ts @@ -75,13 +75,13 @@ export const ossSystems: SystemScore[] = [ shortName: 'gpt-realtime-mini', stt: '-', llm: 'gpt-realtime-mini', tts: '-', type: 's2s', - evaA: 0.1800, evaX: 0.4267, - accuracyMetrics: { task_completion: 0.2667, agent_tts_fidelity: 0.9833, faithfulness: 0.1733 }, - experienceMetrics: { turn_taking: 0.7801, conciseness: 0.7477, conversation_progression: 0.3533 }, - diagnosticMetrics: { key_entity_transcription: 0.8925, response_speed: 3.6711 }, + evaA: 0.1867, evaX: 0.4333, + accuracyMetrics: { task_completion: 0.2867, agent_tts_fidelity: 0.9882, faithfulness: 0.1833 }, + experienceMetrics: { turn_taking: 0.7607, conciseness: 0.8116, conversation_progression: 0.3567 }, + diagnosticMetrics: { key_entity_transcription: 0.0000, response_speed: 3.7524 }, successRates: { - accuracy: { pass_threshold: 0.1800, mean: 0.4744, pass_at_k: 0.3200, pass_k: 0.1044 }, - experience: { pass_threshold: 0.4267, mean: 0.6270, pass_at_k: 0.7200, pass_k: 0.2163 }, + accuracy: { pass_threshold: 0.1867, mean: 0.4861, pass_at_k: 0.2800, pass_k: 0.1185 }, + experience: { pass_threshold: 0.4333, mean: 0.6430, pass_at_k: 0.7000, pass_k: 0.2615 }, }, }, { @@ -220,10 +220,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'parakeet-ctc-1-1b-gpt-oss-120b-chatterbox-turbo', - name: 'parakeet-ctc-1.1b + gpt-oss-120b + chatterbox-turbo', + id: 'parakeet-ctc-1-1b-gpt-oss-120b-chatterbox', + name: 'parakeet-ctc-1.1b + gpt-oss-120b + chatterbox', shortName: 'gpt-oss-120b (parakeet-ctc-1.1b)', - stt: 'parakeet-ctc-1.1b', llm: 'gpt-oss-120b', tts: 'chatterbox-turbo', + stt: 'parakeet-ctc-1.1b', llm: 'gpt-oss-120b', tts: 'chatterbox', type: 'cascade', evaA: 0.1533, evaX: 0.0267, accuracyMetrics: { task_completion: 0.3600, agent_tts_fidelity: 0.8883, faithfulness: 0.3200 }, @@ -235,10 +235,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'parakeet-ctc-1-1b-qwen3-5-27b-chatterbox-turbo', - name: 'parakeet-ctc-1.1b + qwen3.5-27b + chatterbox-turbo', + id: 'parakeet-ctc-1-1b-qwen3-5-27b-chatterbox', + name: 'parakeet-ctc-1.1b + qwen3.5-27b + chatterbox', shortName: 'qwen3.5-27b (parakeet-ctc-1.1b)', - stt: 'parakeet-ctc-1.1b', llm: 'qwen3.5-27b', tts: 'chatterbox-turbo', + stt: 'parakeet-ctc-1.1b', llm: 'qwen3.5-27b', tts: 'chatterbox', type: 'cascade', evaA: 0.2533, evaX: 0.0000, accuracyMetrics: { task_completion: 0.5333, agent_tts_fidelity: 0.8513, faithfulness: 0.4200 }, @@ -280,10 +280,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'voxtral-mini-3b-gpt-oss-120b-chatterbox-turbo', - name: 'voxtral-mini-3b + gpt-oss-120b + chatterbox-turbo', + id: 'voxtral-mini-3b-gpt-oss-120b-chatterbox', + name: 'voxtral-mini-3b + gpt-oss-120b + chatterbox', shortName: 'gpt-oss-120b (voxtral-mini-3b)', - stt: 'voxtral-mini-3b', llm: 'gpt-oss-120b', tts: 'chatterbox-turbo', + stt: 'voxtral-mini-3b', llm: 'gpt-oss-120b', tts: 'chatterbox', type: 'cascade', evaA: 0.1600, evaX: 0.0933, accuracyMetrics: { task_completion: 0.3600, agent_tts_fidelity: 0.9049, faithfulness: 0.3467 }, @@ -295,10 +295,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'voxtral-mini-3b-qwen3-5-27b-chatterbox-turbo', - name: 'voxtral-mini-3b + qwen3.5-27b + chatterbox-turbo', + id: 'voxtral-mini-3b-qwen3-5-27b-chatterbox', + name: 'voxtral-mini-3b + qwen3.5-27b + chatterbox', shortName: 'qwen3.5-27b (voxtral-mini-3b)', - stt: 'voxtral-mini-3b', llm: 'qwen3.5-27b', tts: 'chatterbox-turbo', + stt: 'voxtral-mini-3b', llm: 'qwen3.5-27b', tts: 'chatterbox', type: 'cascade', evaA: 0.2067, evaX: 0.0000, accuracyMetrics: { task_completion: 0.5400, agent_tts_fidelity: 0.7960, faithfulness: 0.3967 }, @@ -325,10 +325,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'whisper-large-v3-gpt-oss-20b-chatterbox-turbo', - name: 'whisper-large-v3 + gpt-oss-20b + chatterbox-turbo', + id: 'whisper-large-v3-gpt-oss-20b-chatterbox', + name: 'whisper-large-v3 + gpt-oss-20b + chatterbox', shortName: 'gpt-oss-20b (whisper-large-v3)', - stt: 'whisper-large-v3', llm: 'gpt-oss-20b', tts: 'chatterbox-turbo', + stt: 'whisper-large-v3', llm: 'gpt-oss-20b', tts: 'chatterbox', type: 'cascade', evaA: 0.0733, evaX: 0.0400, accuracyMetrics: { task_completion: 0.3800, agent_tts_fidelity: 0.8849, faithfulness: 0.1533 }, diff --git a/website/src/data/metricsData.ts b/website/src/data/metricsData.ts index b0362d42..deb878f2 100644 --- a/website/src/data/metricsData.ts +++ b/website/src/data/metricsData.ts @@ -16,6 +16,7 @@ export interface MetricDefinition { judgeAccuracy?: number; judgeScores?: { label: string; value: number; std?: number }[]; judgeDevelopmentNotes?: string; + developmentDocUrl?: string; } export const metricTypeLabels: Record = { @@ -52,14 +53,15 @@ export const metrics: MetricDefinition[] = [ judgeAccuracy: 0.8957, judgeScores: [ { label: 'accuracy', value: 0.8957, std: 0.0258 }, - { label: 'macro_f1_classes_0_1', value: 0.856, std: 0.024 }, + { label: 'macro_f1', value: 0.856, std: 0.024 }, ], description: 'Measures whether the agent correctly spoke the information it intended to communicate. TTS systems can mispronounce, skip, or distort words \u2014 in a voice context, if a confirmation code is not spoken correctly, the user cannot act on it regardless of whether the LLM produced the right answer.', inputs: 'Agent audio recording, intended assistant text (what LLM generated)', outputRange: 'Binary per turn (0=low fidelity, 1=high fidelity), aggregated as mean across turns', passThreshold: '≥ 0.95', - judgePrompt: `You are an expert evaluator judging the fidelity of text-to-speech (TTS) audio against the intended text. You will listen to one audio clip and verify that the spoken content faithfully reproduces the intended text, with special attention to TTS-critical entities. - + judgePrompt: `You are an expert evaluator judging the fidelity of this audio file against the intended text. +You will listen to one audio clip and verify that the spoken content faithfully reproduces the intended text, with special attention to TTS-critical entities. +The audio provided is a recording of the agent's side of a conversation, and contains only the agent responses, not the user. ## Intended Turns {intended_turns_formatted} @@ -76,16 +78,9 @@ The intended text may contain non-spoken tags and markers. You must understand t Tags like [slow], [firm], [annoyed] describe how the words were meant to be spoken. They are NOT spoken aloud and should never be expected in the audio. ### Interruption Tags -These are metadata markers inserted during post-processing to describe what happened in the conversation. They are NOT spoken aloud. Never penalize the audio for not containing these tags. -The tags also tell you that certain portions of the intended text were likely never spoken, because the speaker was interrupted or cut themselves off. Do NOT penalize for missing words that fall in a region the tags indicate was not spoken. +{interruption_tags_reference} -Tag definitions: -\u2022 [assistant interrupts] \u2014 The agent started speaking over the user. Text after this tag in the user's intended text may have been partially or fully drowned out by the agent speaking. Expect that some words after this tag may be missing or garbled in the audio. -\u2022 [user interrupts] \u2014 The user started speaking over the agent. Text after this tag in the agent's intended text may have been partially or fully spoken before the agent yielded the floor. Expect that some words after this tag may be missing. -\u2022 [likely cut off by user] \u2014 In agent intended text, marks approximately where the agent's speech was cut off by the user. Text BEFORE this tag was likely cut off at some point \u2014 the speaker may not have finished everything before it. Text AFTER this tag was most likely said (the agent resumed after the interruption). Do not penalize for missing words before this tag. -\u2022 [speaker likely cut itself off] \u2014 The agent stopped talking on its own, probably because it detected the user was speaking. Words before this tag were probably not all said. The text after this tag is what the agent said after resuming. Do not penalize for missing words before this tag. -\u2022 [likely interruption] \u2014 An unexplained break in the speaker's audio. Words around this boundary may be missing or fragmented. -\u2022 [assistant starts replying - user interrupts] \u2014 In user intended text, the user was speaking, the agent began to reply, and the user interrupted the agent. Text around this boundary may have overlapping speech. Some words near this tag may be missing or garbled. +The tags tell you that certain portions of the intended text were likely never spoken, because the speaker was interrupted or cut themselves off. Do NOT penalize for missing words that fall in a region the tags indicate was not spoken. **Key principle:** If a tag indicates that a section of text was likely not spoken aloud (due to interruption or cut-off), do NOT penalize for those words being missing from the audio. Only evaluate fidelity for words that were reasonably expected to have been spoken. @@ -118,8 +113,6 @@ For each intended turn, compare what you hear in the audio against the intended - Non-spoken tags: [slow], [firm], [annoyed], and all interruption tags listed above - Words in regions flagged by interruption tags as likely not spoken -**IMPORTANT: Only rate what you clearly hear.** If you cannot clearly make out a word or entity, note the uncertainty in your explanation rather than guessing. Do not fabricate or assume what was spoken. - ## Rating Scale (per turn) - **1 (High Fidelity)**: All entities are spoken correctly. Non-entity words are faithfully reproduced with no meaningful omissions or additions. - **0 (Low Fidelity)**: One or more entity errors, OR significant non-entity word errors that change the meaning of the turn. @@ -130,12 +123,14 @@ Respond with a JSON object. Each turn entry must include the turn_id matching th "turns": [ {{ "turn_id": , + "transcript": "explanation": "", "rating": <0 or 1> }} ], "explanation": "" }}`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/agent_speech_fidelity_development.md', }, { id: 'faithfulness', @@ -342,6 +337,7 @@ Respond in JSON format: }}, "rating": }}`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/faithfulness_development.md', }, // ─── EVA-X Core Metrics (3) ─── @@ -529,6 +525,7 @@ Return a JSON array with one object per turn: ] Make sure to use the same turn ids as provided in the conversation context. It typically starts at 1. The length of the array must equal the number of assistant turns in the conversation.`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/turn_taking_development.md', }, { id: 'conciseness', @@ -649,6 +646,7 @@ Provide your response as a valid JSON array, one entry per turn. Each entry must ] If the turn is rated 3 or null, failure_modes must be an empty list: [].`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/conciseness_development.md', }, { id: 'conversation_progression', @@ -821,6 +819,7 @@ Respond in JSON format. The "evidence" field must ALWAYS contain 1-2 sentences r }}, "rating": }}`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/conversation_progression_development.md', }, // ─── Debug Metrics (6) ─── @@ -1036,6 +1035,7 @@ Transcribed: \`My phone number is 404-555.\` "summary": "<1-2 sentence summary for this turn>" }} ]`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/transcription_accuracy_key_entities.md', }, // ─── Validation Metrics (3) ─── From 427d892db19c16ca25be129ee955c483be1de4d1 Mon Sep 17 00:00:00 2001 From: Katrina Date: Wed, 25 Mar 2026 20:28:00 -0400 Subject: [PATCH 10/17] add support for openai realtime model. Add vad tracking for realtime models (using external vad) --- .env.example | 12 +-- src/eva/assistant/pipeline/observers.py | 3 +- src/eva/assistant/pipeline/realtime_llm.py | 94 ++++++++++++++++- src/eva/assistant/pipeline/services.py | 116 ++++++++++++++------- src/eva/assistant/server.py | 31 +++++- src/eva/models/config.py | 13 ++- src/eva/utils/prompt_manager.py | 2 +- 7 files changed, 212 insertions(+), 59 deletions(-) diff --git a/.env.example b/.env.example index 061dd906..7398c5d0 100644 --- a/.env.example +++ b/.env.example @@ -167,20 +167,16 @@ EVA_MODEL__LLM=gpt-5.2 # GOOGLE_API_KEY=your_google_api_key_here # ============================================== -# Optional: Realtime / Audio-LLM Configuration +# Optional: Speech-to-Speech / Audio-LLM Configuration # ============================================== -# Only needed if benchmarking speech-to-speech or realtime models. +# Only needed if benchmarking speech-to-speech models. -# EVA_MODEL__REALTIME_MODEL=gpt-realtime-mini -# EVA_MODEL__REALTIME_MODEL_PARAMS='{"voice":"marin"}' +# EVA_MODEL__S2S=openai +# EVA_MODEL__S2S_PARAMS='{"model": "gpt-realtime-mini", "voice": "marin"}' # EVA_MODEL__AUDIO_LLM= # EVA_MODEL__AUDIO_LLM_PARAMS='{"url": "", "api_key": ""}' -# Azure Realtime credentials (if using Azure realtime models) -# AZURE_OPENAI_REALTIME_API_KEY= -# AZURE_OPENAI_REALTIME_ENDPOINT= - # ============================================== # Optional: Execution Settings # ============================================== diff --git a/src/eva/assistant/pipeline/observers.py b/src/eva/assistant/pipeline/observers.py index df1a50d5..a3755d48 100644 --- a/src/eva/assistant/pipeline/observers.py +++ b/src/eva/assistant/pipeline/observers.py @@ -22,6 +22,7 @@ from pipecat.observers.turn_tracking_observer import TurnTrackingObserver from pipecat.services.azure.realtime.llm import AzureRealtimeLLMService from pipecat.services.llm_service import LLMService +from pipecat.services.openai.realtime.llm import OpenAIRealtimeLLMService from pipecat.services.stt_service import STTService from pipecat.services.tts_service import TTSService @@ -31,7 +32,7 @@ logger = get_logger(__name__) -_TRANSCRIPTION_SERVICES = (STTService, AzureRealtimeLLMService) +_TRANSCRIPTION_SERVICES = (STTService, AzureRealtimeLLMService, OpenAIRealtimeLLMService) class WallClock(SystemClock): diff --git a/src/eva/assistant/pipeline/realtime_llm.py b/src/eva/assistant/pipeline/realtime_llm.py index 7d30bac2..b502b4df 100644 --- a/src/eva/assistant/pipeline/realtime_llm.py +++ b/src/eva/assistant/pipeline/realtime_llm.py @@ -1,6 +1,6 @@ """Instrumented realtime LLM service for correct audit log ordering and timestamps. -Subclasses AzureRealtimeLLMService to intercept raw OpenAI Realtime API events +Subclasses OpenAIRealtimeLLMService to intercept raw OpenAI Realtime API events (speech_started, speech_stopped, transcription.completed, response.done) which have a guaranteed ordering and carry item_id for correlation. @@ -11,17 +11,24 @@ Writing user entries on #3 and assistant entries on #5 guarantees correct order. """ +import struct import time from dataclasses import dataclass from typing import Any, Optional -from pipecat.services.azure.realtime.llm import AzureRealtimeLLMService +from pipecat.frames.frames import Frame, InputAudioRawFrame, VADUserStartedSpeakingFrame, VADUserStoppedSpeakingFrame +from pipecat.processors.frame_processor import FrameDirection +from pipecat.services.openai.realtime.llm import OpenAIRealtimeLLMService from eva.assistant.agentic.audit_log import AuditLog from eva.utils.logging import get_logger logger = get_logger(__name__) +# Audio threshold for detecting speech vs silence +# RMS values below this are considered silence +SILENCE_RMS_THRESHOLD = 10 + @dataclass class _UserTurnRecord: @@ -39,8 +46,20 @@ def _wall_ms() -> str: return str(int(round(time.time() * 1000))) -class InstrumentedRealtimeLLMService(AzureRealtimeLLMService): - """AzureRealtimeLLMService subclass that writes audit log entries with correct ordering and wall-clock timestamps derived from Realtime API events. +def _calculate_rms(audio_bytes: bytes) -> float: + """Calculate RMS (root mean square) energy of 16-bit PCM audio.""" + if len(audio_bytes) < 2: + return 0.0 + num_samples = len(audio_bytes) // 2 + samples = struct.unpack(f"<{num_samples}h", audio_bytes[: num_samples * 2]) + if not samples: + return 0.0 + sum_squares = sum(s * s for s in samples) + return (sum_squares / len(samples)) ** 0.5 + + +class InstrumentedRealtimeLLMService(OpenAIRealtimeLLMService): + """OpenAIRealtimeLLMService subclass that writes audit log entries with correct ordering and wall-clock timestamps derived from Realtime API events. All overridden methods call ``super()`` first so that the parent's frame processing (audio playback, interruption handling, metrics, etc.) is fully @@ -61,12 +80,35 @@ def __init__(self, *, audit_log: AuditLog, **kwargs: Any) -> None: # Track whether we're mid-assistant-response (for interruption flushing) self._assistant_responding: bool = False + # Track audio frame timing for VAD delay calculation + self._last_audio_frame_time: Optional[float] = None + self._vad_delay_ms: Optional[int] = None + + async def process_frame(self, frame: Frame, direction: FrameDirection) -> None: + """Track audio frame timing before passing to parent. + + Only updates the timestamp when audio has actual speech content (not silence), + so VAD delay calculation reflects when user actually stopped speaking. + """ + if isinstance(frame, InputAudioRawFrame): + rms = _calculate_rms(frame.audio) + if rms > SILENCE_RMS_THRESHOLD: + self._last_audio_frame_time = time.time() + + await super().process_frame(frame, direction) + async def _handle_evt_speech_started(self, evt: Any) -> None: """Fires when user starts speaking (input_audio_buffer.speech_started). Captures wall-clock start time. Also flushes any in-progress interrupted assistant response before recording the new user turn. """ + # Reset VAD tracking for new turn + self._vad_delay_ms = None + + # Broadcast VAD user started speaking frame because realtime VAD does not broadcast it themselves + await self.broadcast_frame(VADUserStartedSpeakingFrame) + # Flush interrupted assistant response if one is in progress if self._assistant_responding and self._current_assistant_transcript_parts: partial_text = "".join(self._current_assistant_transcript_parts) + " [interrupted]" @@ -92,8 +134,21 @@ async def _handle_evt_speech_started(self, evt: Any) -> None: async def _handle_evt_speech_stopped(self, evt: Any) -> None: """Fires when user stops speaking (input_audio_buffer.speech_stopped). - Captures wall-clock end time for the user turn. + Captures wall-clock end time for the user turn and calculates VAD delay. """ + speech_stopped_time = time.time() + + # Calculate VAD delay: time between last audio frame and speech_stopped event + if self._last_audio_frame_time is not None: + self._vad_delay_ms = int((speech_stopped_time - self._last_audio_frame_time) * 1000) + else: + logger.warning("speech_stopped fired but no audio frames were tracked") + self._vad_delay_ms = None + + # Reset audio tracking for next turn + self._last_audio_frame_time = None + + await self.broadcast_frame(VADUserStoppedSpeakingFrame) await super()._handle_evt_speech_stopped(evt) item_id = getattr(evt, "item_id", None) or "" @@ -145,6 +200,7 @@ async def _handle_evt_audio_delta(self, evt: Any) -> None: """Fires for each audio chunk of the assistant response. Captures wall-clock of the *first* delta as assistant response start. + Also logs the full user-perceived response latency including VAD delay. """ await super()._handle_evt_audio_delta(evt) @@ -152,6 +208,24 @@ async def _handle_evt_audio_delta(self, evt: Any) -> None: self._assistant_response_start_wall_ms = _wall_ms() self._assistant_responding = True + # Log full user-perceived latency (includes VAD delay) + if self._vad_delay_ms is not None: + # Find the most recent user turn to get speech_stopped time + recent_record = None + for record in self._user_turns.values(): + if record.speech_stopped_wall_ms: + recent_record = record + + if recent_record and recent_record.speech_stopped_wall_ms: + speech_stopped_ms = int(recent_record.speech_stopped_wall_ms) + response_start_ms = int(self._assistant_response_start_wall_ms) + vad_to_response_ms = response_start_ms - speech_stopped_ms + full_latency_ms = vad_to_response_ms + self._vad_delay_ms + logger.debug( + f"Full response latency: {full_latency_ms}ms " + f"(VAD delay: {self._vad_delay_ms}ms + response: {vad_to_response_ms}ms)" + ) + async def _handle_evt_audio_transcript_delta(self, evt: Any) -> None: """Fires for incremental assistant transcript text. @@ -220,6 +294,16 @@ def _reset_assistant_state(self) -> None: self._assistant_response_start_wall_ms = None self._assistant_responding = False + @property + def last_vad_delay_ms(self) -> Optional[int]: + """Return the most recent VAD delay in milliseconds. + + This is the time between when audio frames stopped arriving and when + OpenAI's VAD detected end of speech. Can be used to adjust response + latency measurements to reflect user-perceived latency. + """ + return self._vad_delay_ms + @staticmethod def _response_has_function_calls(evt: Any) -> bool: """Return True if the response.done event contains any function_call outputs.""" diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index 1fcdf76d..f5fefef8 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -20,7 +20,6 @@ AssemblyAIConnectionParams, AssemblyAISTTService, ) -from pipecat.services.azure.realtime.llm import AzureRealtimeLLMService from pipecat.services.cartesia.stt import CartesiaLiveOptions, CartesiaSTTService from pipecat.services.cartesia.tts import CartesiaTTSService from pipecat.services.deepgram.flux.stt import DeepgramFluxSTTService @@ -37,12 +36,14 @@ SemanticTurnDetection, SessionProperties, ) +from pipecat.services.openai.realtime.llm import OpenAIRealtimeLLMService from pipecat.services.openai.stt import OpenAISTTService from pipecat.services.openai.tts import VALID_VOICES, OpenAITTSService from pipecat.services.stt_service import STTService from pipecat.services.tts_service import TTSService from pipecat.transcriptions.language import Language from pipecat.utils.text.base_text_filter import BaseTextFilter +from websockets.asyncio.client import connect as websocket_connect from eva.assistant.pipeline.alm_vllm import ALMvLLMClient from eva.assistant.pipeline.nvidia_baseten import BasetenSTTService, BasetenTTSService @@ -381,6 +382,15 @@ def create_realtime_llm_service( """ model_lower = (model or "").lower() + # Get realtime server prompt + prompt_manager = PromptManager() + system_prompt = prompt_manager.get_prompt( + "realtime_agent.system_prompt", + agent_personality=agent.description, + agent_instructions=agent.instructions, + datetime=current_date_time, + ) + openai_tools = agent.build_tools_for_realtime() if agent else None # Convert OpenAI format tools to pipecat format @@ -400,62 +410,70 @@ def create_realtime_llm_service( ) pipecat_tools = ToolsSchema(standard_tools=function_schemas) - # Get realtime server prompt - prompt_manager = PromptManager() - system_prompt = prompt_manager.get_prompt( - "realtime_agent.system_prompt", - agent_personality=agent.description, - agent_instructions=agent.instructions, - datetime=current_date_time, + session_properties = SessionProperties( + instructions=system_prompt, + audio=AudioConfiguration( + input=AudioInput( + transcription=InputAudioTranscription( + model=params.get("transcription_model", "gpt-4o-mini-transcribe") + ), + # Set openai TurnDetection parameters. Not setting this at all will turn it on by default + turn_detection=SemanticTurnDetection(), + ), + output=AudioOutput( + voice=params.get("voice", "marin"), + ), + ), + tools=pipecat_tools, + tool_choice="auto", ) - if model_lower.startswith("gpt-realtime"): + if model_lower.startswith("openai"): + if audit_log is not None: + logger.info( + f"Using InstrumentedRealtimeLLMService for audit log interception: openai: {params.get('model')}" + ) + return InstrumentedRealtimeLLMService( + model=params.get("model"), + audit_log=audit_log, + api_key=params.get("api_key") or os.getenv("OPENAI_API_KEY"), + session_properties=session_properties, + ) + + return OpenAIRealtimeLLMService( + api_key=params.get("api_key"), + session_properties=session_properties, + ) + elif model_lower.startswith("azure") or model_lower.startswith("gpt-realtime"): # - # base_url =The full Azure WebSocket endpoint URL including api-version and deployment. + # base_url: The full Azure WebSocket endpoint URL including api-version and deployment. # Example: "wss://my-project.openai.azure.com/openai/v1/realtime" - url = os.environ.get("AZURE_OPENAI_REALTIME_ENDPOINT", "") - url += f"?model={model_lower}" - - session_properties = SessionProperties( - instructions=system_prompt, - audio=AudioConfiguration( - input=AudioInput( - transcription=InputAudioTranscription(model="whisper-1"), - # Set openai TurnDetection parameters. Not setting this at all will turn it - # on by default - turn_detection=SemanticTurnDetection(), - # Or set to False to disable openai turn detection and use transport VAD - # turn_detection=False, - # noise_reduction=InputAudioNoiseReduction(type="near_field"), - ), - output=AudioOutput( - voice=params.get("voice", "marin"), - ), - ), - tools=pipecat_tools, - tool_choice="auto", - ) - logger.info(f"Using Azure Realtime LLM: {model_lower}") + url = params.get("url", "") + + logger.info(f"Using Azure Realtime LLM: {model_lower}, url {url}") if audit_log is not None: logger.info("Using InstrumentedRealtimeLLMService for audit log interception") - return InstrumentedRealtimeLLMService( - model=model_lower, + service = InstrumentedRealtimeLLMService( + model=params.get("model"), audit_log=audit_log, - api_key=os.environ.get("AZURE_OPENAI_REALTIME_API_KEY"), + api_key=params.get("api_key"), base_url=url, session_properties=session_properties, ) + InstrumentedRealtimeLLMService._connect = override__connect # azure realtime connect + return service - return AzureRealtimeLLMService( - api_key=os.environ.get("AZURE_OPENAI_REALTIME_API_KEY"), + return OpenAIRealtimeLLMService( + api_key=params.get("api_key"), base_url=url, session_properties=session_properties, ) elif model_lower == "ultravox": + logger.info("Using Ultravox LLM") return UltravoxRealtimeLLMService( params=OneShotInputParams( - api_key=os.getenv("ULTRAVOX_API_KEY"), + api_key=params.get("api_key"), system_prompt=system_prompt, temperature=0.3, max_duration=datetime.timedelta(minutes=6), @@ -573,6 +591,26 @@ async def override_run_tts(self, text: str, context_id: str) -> AsyncGenerator[F yield ErrorFrame(error=f"Unknown error occurred: {e}") +async def override__connect(self): + try: + if self._websocket: + # Here we assume that if we have a websocket, we are connected. We + # handle disconnections in the send/recv code paths. + return + + logger.info(f"Connecting to {self.base_url}") + self._websocket = await websocket_connect( + uri=self.base_url, + additional_headers={ + "api-key": self.api_key, + }, + ) + self._receive_task = self.create_task(self._receive_task_handler()) + except Exception as e: + await self.push_error(error_msg=f"initialization error: {e}", exception=e) + self._websocket = None + + # Unicode to ASCII replacements for TTS _TTS_CHAR_MAP = str.maketrans( { diff --git a/src/eva/assistant/server.py b/src/eva/assistant/server.py index 57a0fc2e..4282e894 100644 --- a/src/eva/assistant/server.py +++ b/src/eva/assistant/server.py @@ -326,7 +326,10 @@ async def _realtime_tool_handler(params) -> None: "smart_turn_stop_secs", 0.8 ) # Shorter silence so we don't have to wait 3s if smart turn marks audio as incomplete - if isinstance(self.pipeline_config, PipelineConfig) and self.pipeline_config.turn_strategy == "external": + if ( + isinstance(self.pipeline_config, (PipelineConfig, SpeechToSpeechConfig)) + and self.pipeline_config.turn_strategy == "external" + ): logger.info("Using external user turn strategies") user_turn_strategies = ExternalUserTurnStrategies() vad_analyzer = None @@ -444,9 +447,29 @@ async def on_user_transcription(text: str, timestamp: str, turn_id: int | None) self._latency_measurements = [] async def on_latency_measured(observer, latency_seconds: float): - """Event handler for UserBotLatencyObserver - stores latency measurements.""" - self._latency_measurements.append(latency_seconds) - logger.debug(f"Response latency captured: {latency_seconds:.3f}s") + """Event handler for UserBotLatencyObserver - stores latency measurements. + + For realtime LLM, adds VAD delay to get full user-perceived latency. + For pipecat VAD (non-realtime), uses the latency as-is. + """ + adjusted_latency = latency_seconds + + # Add VAD delay for realtime LLM to get full user-perceived latency + if isinstance(realtime_llm, InstrumentedRealtimeLLMService): + vad_delay_ms = realtime_llm.last_vad_delay_ms + if vad_delay_ms is not None: + vad_delay_s = vad_delay_ms / 1000.0 + adjusted_latency = latency_seconds + vad_delay_s + logger.debug( + f"Response latency captured: {adjusted_latency:.3f}s " + f"(VAD delay: {vad_delay_s:.3f}s + pipecat: {latency_seconds:.3f}s)" + ) + else: + logger.debug(f"Response latency captured: {latency_seconds:.3f}s (no VAD delay available)") + else: + logger.debug(f"Response latency captured: {latency_seconds:.3f}s") + + self._latency_measurements.append(adjusted_latency) user_bot_observer = UserBotLatencyObserver() user_bot_observer.add_event_handler("on_latency_measured", on_latency_measured) diff --git a/src/eva/models/config.py b/src/eva/models/config.py index cd8fe819..99b706b6 100644 --- a/src/eva/models/config.py +++ b/src/eva/models/config.py @@ -97,6 +97,17 @@ class SpeechToSpeechConfig(BaseModel): s2s: str = Field(description="Speech-to-speech model name", examples=["gpt-realtime-mini", "gemini_live"]) s2s_params: dict[str, Any] = Field({}, description="Additional speech-to-speech model parameters (JSON)") + turn_strategy: Literal["smart", "external"] = Field( + "smart", + description=( + "User turn detection strategy. " + "'smart' uses LocalSmartTurnAnalyzerV3 + SileroVAD (default). " + "'external' uses ExternalUserTurnStrategies for services with built-in turn detection " + "(e.g., deepgram-flux, Speechmatics). " + "Set via EVA_MODEL__TURN_STRATEGY=external." + ), + ) + class AudioLLMConfig(BaseModel): """Configuration for an Audio-LLM pipeline (audio in, text out, separate TTS). @@ -129,7 +140,7 @@ class AudioLLMConfig(BaseModel): *PipelineConfig._LEGACY_RENAMES, *PipelineConfig._LEGACY_DROP, } -_S2S_FIELDS = {"s2s", "s2s_params"} +_S2S_FIELDS = {"s2s", "s2s_params", "turn_strategy"} _AUDIO_LLM_FIELDS = {"audio_llm", "audio_llm_params", "tts", "tts_params"} diff --git a/src/eva/utils/prompt_manager.py b/src/eva/utils/prompt_manager.py index 2216fddc..56971149 100644 --- a/src/eva/utils/prompt_manager.py +++ b/src/eva/utils/prompt_manager.py @@ -121,7 +121,7 @@ def get_prompt(self, path: str, **variables) -> str: return value.format(**formatted_vars) except KeyError as e: raise KeyError( - "Missing variable {e} for prompt '{path}'. Available variables: {sorted(formatted_vars.keys())}" + f"Missing variable {e} for prompt '{path}'. Available variables: {sorted(formatted_vars.keys())}" ) from e From 15745eb664508dbbeb6aedc701c3c1c263074316 Mon Sep 17 00:00:00 2001 From: Katrina Date: Wed, 25 Mar 2026 20:31:34 -0400 Subject: [PATCH 11/17] add api_key to s2s params example --- .env.example | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.env.example b/.env.example index 7398c5d0..4a434630 100644 --- a/.env.example +++ b/.env.example @@ -172,7 +172,7 @@ EVA_MODEL__LLM=gpt-5.2 # Only needed if benchmarking speech-to-speech models. # EVA_MODEL__S2S=openai -# EVA_MODEL__S2S_PARAMS='{"model": "gpt-realtime-mini", "voice": "marin"}' +# EVA_MODEL__S2S_PARAMS='{"model": "gpt-realtime-mini", "api_key": ""}' # EVA_MODEL__AUDIO_LLM= # EVA_MODEL__AUDIO_LLM_PARAMS='{"url": "", "api_key": ""}' From 4cc7010b239df6197213bf571641dfb8d9d6cfce Mon Sep 17 00:00:00 2001 From: Katrina Date: Wed, 25 Mar 2026 20:33:03 -0400 Subject: [PATCH 12/17] add comment --- src/eva/assistant/pipeline/services.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index f5fefef8..31000f81 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -592,6 +592,7 @@ async def override_run_tts(self, text: str, context_id: str) -> AsyncGenerator[F async def override__connect(self): + # Allow connections to azure / other providers using a base_url try: if self._websocket: # Here we assume that if we have a websocket, we are connected. We From d8ee6e567f8adf2a20d1f386f0003fe7f49820a8 Mon Sep 17 00:00:00 2001 From: Katrina Date: Thu, 26 Mar 2026 11:26:28 -0400 Subject: [PATCH 13/17] move session_properties object to openai/azure only flows --- src/eva/assistant/pipeline/services.py | 41 +++++++++++++++----------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index 31000f81..9173c0e4 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -410,25 +410,8 @@ def create_realtime_llm_service( ) pipecat_tools = ToolsSchema(standard_tools=function_schemas) - session_properties = SessionProperties( - instructions=system_prompt, - audio=AudioConfiguration( - input=AudioInput( - transcription=InputAudioTranscription( - model=params.get("transcription_model", "gpt-4o-mini-transcribe") - ), - # Set openai TurnDetection parameters. Not setting this at all will turn it on by default - turn_detection=SemanticTurnDetection(), - ), - output=AudioOutput( - voice=params.get("voice", "marin"), - ), - ), - tools=pipecat_tools, - tool_choice="auto", - ) - if model_lower.startswith("openai"): + session_properties = get_openai_session_properties(system_prompt, params, pipecat_tools) if audit_log is not None: logger.info( f"Using InstrumentedRealtimeLLMService for audit log interception: openai: {params.get('model')}" @@ -449,6 +432,7 @@ def create_realtime_llm_service( # base_url: The full Azure WebSocket endpoint URL including api-version and deployment. # Example: "wss://my-project.openai.azure.com/openai/v1/realtime" url = params.get("url", "") + session_properties = get_openai_session_properties(system_prompt, params, pipecat_tools) logger.info(f"Using Azure Realtime LLM: {model_lower}, url {url}") @@ -486,6 +470,27 @@ def create_realtime_llm_service( raise ValueError(f"Unknown realtime model: {model}. Available: gpt-realtime, ultravox") +def get_openai_session_properties(system_prompt: str, params: dict, pipecat_tools) -> SessionProperties: + """Create openai compatible session properties object.""" + return SessionProperties( + instructions=system_prompt, + audio=AudioConfiguration( + input=AudioInput( + transcription=InputAudioTranscription( + model=params.get("transcription_model", "gpt-4o-mini-transcribe") + ), + # Set openai TurnDetection parameters. Not setting this at all will turn it on by default + turn_detection=SemanticTurnDetection(), + ), + output=AudioOutput( + voice=params.get("voice", "marin"), + ), + ), + tools=pipecat_tools, + tool_choice="auto", + ) + + def create_audio_llm_client( model: str, params: dict[str, Any], From 3c5c98d85aa550b30066b9d7698491d7c46082c2 Mon Sep 17 00:00:00 2001 From: Katrina Date: Thu, 26 Mar 2026 18:06:01 -0400 Subject: [PATCH 14/17] make api_key required for realtime models --- .../assistant/pipeline/audio_llm_processor.py | 3 +-- src/eva/assistant/pipeline/services.py | 11 +++++------ src/eva/models/config.py | 17 ++++++++++++----- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/src/eva/assistant/pipeline/audio_llm_processor.py b/src/eva/assistant/pipeline/audio_llm_processor.py index a9154d4e..bb5b24b3 100644 --- a/src/eva/assistant/pipeline/audio_llm_processor.py +++ b/src/eva/assistant/pipeline/audio_llm_processor.py @@ -19,7 +19,6 @@ import asyncio import base64 import io -import os import time import wave from collections.abc import Awaitable @@ -418,7 +417,7 @@ def __init__( super().__init__(**kwargs) self._audio_collector = audio_collector params = params or {} - self._api_key = params.get("api_key") or os.getenv("OPENAI_API_KEY") + self._api_key = params.get["api_key"] self._model = model self._system_prompt = system_prompt or self.DEFAULT_SYSTEM_PROMPT self._sample_rate = sample_rate diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index 9173c0e4..328b18aa 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -4,7 +4,6 @@ """ import datetime -import os from typing import Any, AsyncGenerator, Optional from deepgram import LiveOptions @@ -419,12 +418,12 @@ def create_realtime_llm_service( return InstrumentedRealtimeLLMService( model=params.get("model"), audit_log=audit_log, - api_key=params.get("api_key") or os.getenv("OPENAI_API_KEY"), + api_key=params.get["api_key"], session_properties=session_properties, ) return OpenAIRealtimeLLMService( - api_key=params.get("api_key"), + api_key=params.get["api_key"], session_properties=session_properties, ) elif model_lower.startswith("azure") or model_lower.startswith("gpt-realtime"): @@ -441,7 +440,7 @@ def create_realtime_llm_service( service = InstrumentedRealtimeLLMService( model=params.get("model"), audit_log=audit_log, - api_key=params.get("api_key"), + api_key=params.get["api_key"], base_url=url, session_properties=session_properties, ) @@ -449,7 +448,7 @@ def create_realtime_llm_service( return service return OpenAIRealtimeLLMService( - api_key=params.get("api_key"), + api_key=params.get["api_key"], base_url=url, session_properties=session_properties, ) @@ -457,7 +456,7 @@ def create_realtime_llm_service( logger.info("Using Ultravox LLM") return UltravoxRealtimeLLMService( params=OneShotInputParams( - api_key=params.get("api_key"), + api_key=params.get["api_key"], system_prompt=system_prompt, temperature=0.3, max_duration=datetime.timedelta(minutes=6), diff --git a/src/eva/models/config.py b/src/eva/models/config.py index 99b706b6..6a7ec0e9 100644 --- a/src/eva/models/config.py +++ b/src/eva/models/config.py @@ -452,28 +452,35 @@ def _warn_deprecated_aliases(cls, data: Any) -> Any: @model_validator(mode="after") def _check_companion_services(self) -> "RunConfig": """Ensure required companion services are set for each pipeline mode.""" + required_keys = ["api_key", "model"] if isinstance(self.model, PipelineConfig): if not self.model.stt: raise ValueError("EVA_MODEL__STT is required when using EVA_MODEL__LLM (ASR-LLM-TTS pipeline).") if not self.model.tts: raise ValueError("EVA_MODEL__TTS is required when using EVA_MODEL__LLM (ASR-LLM-TTS pipeline).") - self._validate_service_params("STT", self.model.stt, self.model.stt_params) - self._validate_service_params("TTS", self.model.tts, self.model.tts_params) + self._validate_service_params("STT", self.model.stt, required_keys, self.model.stt_params) + self._validate_service_params("TTS", self.model.tts, required_keys, self.model.tts_params) elif isinstance(self.model, AudioLLMConfig): if not self.model.tts: raise ValueError("EVA_MODEL__TTS is required when using EVA_MODEL__AUDIO_LLM (SpeechLM-TTS pipeline).") - self._validate_service_params("TTS", self.model.tts, self.model.tts_params) + self._validate_service_params("TTS", self.model.tts, required_keys, self.model.tts_params) + self._validate_service_params("audio_llm", self.model.audio_llm, required_keys, self.model.audio_llm_params) + elif isinstance(self.model, SpeechToSpeechConfig): + # api_key is required, some s2s services don't require model + self._validate_service_params("S2S", self.model.s2s, ["api_key"], self.model.s2s_params) return self # Providers that manage their own model/key resolution (e.g. WebSocket-based) _SKIP_PARAMS_VALIDATION: ClassVar[set[str]] = {"nvidia"} @classmethod - def _validate_service_params(cls, service: str, provider: str, params: dict[str, Any]) -> None: + def _validate_service_params( + cls, service: str, provider: str, required_keys: list[str], params: dict[str, Any] + ) -> None: """Validate that STT/TTS params contain required keys.""" if provider.lower() in cls._SKIP_PARAMS_VALIDATION: return - missing = [key for key in ("api_key", "model") if key not in params] + missing = [key for key in required_keys if key not in params] if missing: missing_str = " and ".join(f'"{k}"' for k in missing) env_var = f"EVA_MODEL__{service}_PARAMS" From 17502306e4f421a9076becfc3393cec6946a4fa5 Mon Sep 17 00:00:00 2001 From: Katrina Date: Thu, 26 Mar 2026 18:25:04 -0400 Subject: [PATCH 15/17] fix test now that api_key is mandatory for realtime models --- tests/unit/models/test_config_models.py | 37 +++++++++++++++++-------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/tests/unit/models/test_config_models.py b/tests/unit/models/test_config_models.py index 9b77854c..81e4179f 100644 --- a/tests/unit/models/test_config_models.py +++ b/tests/unit/models/test_config_models.py @@ -56,6 +56,10 @@ "EVA_MODEL__STT_PARAMS": json.dumps({"api_key": "test_key", "model": "nova-2"}), "EVA_MODEL__TTS_PARAMS": json.dumps({"api_key": "test_key", "model": "sonic"}), } +_S2S_ENV = _EVA_MODEL_LIST_ENV | { + "EVA_MODEL__S2S": "gpt-realtime-mini", + "EVA_MODEL__S2S_PARAMS": json.dumps({"api_key": ""}), +} def _config( @@ -355,14 +359,14 @@ class TestDeprecatedEnvVars: lambda c: c.model.tts, ), ( - _EVA_MODEL_LIST_ENV, + _S2S_ENV, "REALTIME_MODEL", "EVA_MODEL__S2S", "test-model", lambda c: c.model.s2s, ), ( - _EVA_MODEL_LIST_ENV, + _S2S_ENV, "EVA_MODEL__REALTIME_MODEL", "EVA_MODEL__S2S", "test-model", @@ -383,17 +387,17 @@ class TestDeprecatedEnvVars: lambda c: c.model.tts_params, ), ( - _EVA_MODEL_LIST_ENV | {"EVA_MODEL__S2S": "test-model"}, + _S2S_ENV, "REALTIME_MODEL_PARAMS", "EVA_MODEL__S2S_PARAMS", - {"foo": "bar"}, + {"api_key": "k"}, lambda c: c.model.s2s_params, ), ( - _EVA_MODEL_LIST_ENV | {"EVA_MODEL__S2S": "test-model"}, + _S2S_ENV, "EVA_MODEL__REALTIME_MODEL_PARAMS", "EVA_MODEL__S2S_PARAMS", - {"foo": "bar"}, + {"api_key": "k"}, lambda c: c.model.s2s_params, ), ( @@ -580,7 +584,7 @@ def test_tts_model(self): assert c.model.tts == "cartesia" def test_realtime_model(self): - config = _config(env_vars=_EVA_MODEL_LIST_ENV, cli_args=["--realtime-model", "test-model"]) + config = _config(env_vars=_S2S_ENV, cli_args=["--realtime-model", "test-model"]) assert config.model.s2s == "test-model" def test_domain_cli(self): @@ -656,20 +660,31 @@ class TestSpeechToSpeechConfig: def test_s2s_config_from_env(self): """EVA_MODEL__S2S selects SpeechToSpeechConfig.""" - config = _config(env_vars=_EVA_MODEL_LIST_ENV | {"EVA_MODEL__S2S": "gpt-realtime-mini"}) + config = _config( + env_vars=_EVA_MODEL_LIST_ENV + | { + "EVA_MODEL__S2S": "gpt-realtime-mini", + "EVA_MODEL__S2S_PARAMS": json.dumps({"api_key": ""}), + } + ) assert isinstance(config.model, SpeechToSpeechConfig) assert config.model.s2s == "gpt-realtime-mini" def test_s2s_config_from_cli(self): """--s2s-model selects SpeechToSpeechConfig.""" - config = _config(env_vars=_EVA_MODEL_LIST_ENV, cli_args=["--model.s2s", "gemini_live"]) + config = _config( + env_vars=_EVA_MODEL_LIST_ENV, + cli_args=["--model.s2s", "gemini_live", "--model.s2s-params", '{"api_key": "test-key"}'], + ) assert isinstance(config.model, SpeechToSpeechConfig) assert config.model.s2s == "gemini_live" + assert config.model.s2s_params == {"api_key": "test-key"} def test_s2s_config_with_params(self): """S2S params are passed through.""" config = _config( - env_vars=_EVA_MODEL_LIST_ENV, model={"s2s": "gpt-realtime-mini", "s2s_params": {"voice": "alloy"}} + env_vars=_EVA_MODEL_LIST_ENV, + model={"s2s": "gpt-realtime-mini", "s2s_params": {"voice": "alloy", "api_key": "key_1"}}, ) assert isinstance(config.model, SpeechToSpeechConfig) - assert config.model.s2s_params == {"voice": "alloy"} + assert config.model.s2s_params == {"voice": "alloy", "api_key": "key_1"} From 0c33ef61924b38482163f75d84b56c62d4e52e77 Mon Sep 17 00:00:00 2001 From: tara-servicenow Date: Thu, 26 Mar 2026 17:09:05 -0700 Subject: [PATCH 16/17] Fix param get --- src/eva/assistant/pipeline/services.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/eva/assistant/pipeline/services.py b/src/eva/assistant/pipeline/services.py index 328b18aa..1b735824 100644 --- a/src/eva/assistant/pipeline/services.py +++ b/src/eva/assistant/pipeline/services.py @@ -418,12 +418,12 @@ def create_realtime_llm_service( return InstrumentedRealtimeLLMService( model=params.get("model"), audit_log=audit_log, - api_key=params.get["api_key"], + api_key=params["api_key"], session_properties=session_properties, ) return OpenAIRealtimeLLMService( - api_key=params.get["api_key"], + api_key=params["api_key"], session_properties=session_properties, ) elif model_lower.startswith("azure") or model_lower.startswith("gpt-realtime"): @@ -440,7 +440,7 @@ def create_realtime_llm_service( service = InstrumentedRealtimeLLMService( model=params.get("model"), audit_log=audit_log, - api_key=params.get["api_key"], + api_key=params["api_key"], base_url=url, session_properties=session_properties, ) @@ -448,7 +448,7 @@ def create_realtime_llm_service( return service return OpenAIRealtimeLLMService( - api_key=params.get["api_key"], + api_key=params["api_key"], base_url=url, session_properties=session_properties, ) @@ -456,7 +456,7 @@ def create_realtime_llm_service( logger.info("Using Ultravox LLM") return UltravoxRealtimeLLMService( params=OneShotInputParams( - api_key=params.get["api_key"], + api_key=params["api_key"], system_prompt=system_prompt, temperature=0.3, max_duration=datetime.timedelta(minutes=6), From 9bf2aead3e2c39df0373b42dc3a100e5cec6aa92 Mon Sep 17 00:00:00 2001 From: "user.email" Date: Fri, 27 Mar 2026 16:27:38 -0700 Subject: [PATCH 17/17] Website fixes --- .../{index-B7XxGtG-.js => index-DNHH3PHW.js} | 55 ++++++++----------- docs/assets/index-DNsPq0CK.css | 1 + docs/assets/index-DcU8EScs.css | 1 - docs/index.html | 4 +- website/src/components/metrics/MetricNode.tsx | 17 ++++-- website/src/data/leaderboardData.ts | 42 +++++++------- website/src/data/metricsData.ts | 28 +++++----- 7 files changed, 75 insertions(+), 73 deletions(-) rename docs/assets/{index-B7XxGtG-.js => index-DNHH3PHW.js} (67%) create mode 100644 docs/assets/index-DNsPq0CK.css delete mode 100644 docs/assets/index-DcU8EScs.css diff --git a/docs/assets/index-B7XxGtG-.js b/docs/assets/index-DNHH3PHW.js similarity index 67% rename from docs/assets/index-B7XxGtG-.js rename to docs/assets/index-DNHH3PHW.js index a564f0dd..67db553f 100644 --- a/docs/assets/index-B7XxGtG-.js +++ b/docs/assets/index-DNHH3PHW.js @@ -1,12 +1,12 @@ -function xR(e,t){for(var n=0;nr[s]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const u of o.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&r(u)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();function ia(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Xp={exports:{}},Ol={};var MS;function wR(){if(MS)return Ol;MS=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,s,o){var u=null;if(o!==void 0&&(u=""+o),s.key!==void 0&&(u=""+s.key),"key"in s){o={};for(var f in s)f!=="key"&&(o[f]=s[f])}else o=s;return s=o.ref,{$$typeof:e,type:r,key:u,ref:s!==void 0?s:null,props:o}}return Ol.Fragment=t,Ol.jsx=n,Ol.jsxs=n,Ol}var kS;function _R(){return kS||(kS=1,Xp.exports=wR()),Xp.exports}var b=_R(),Yp={exports:{}},Ae={};var NS;function SR(){if(NS)return Ae;NS=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),v=Symbol.iterator;function x(P){return P===null||typeof P!="object"?null:(P=v&&P[v]||P["@@iterator"],typeof P=="function"?P:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,S={};function O(P,H,ae){this.props=P,this.context=H,this.refs=S,this.updater=ae||w}O.prototype.isReactComponent={},O.prototype.setState=function(P,H){if(typeof P!="object"&&typeof P!="function"&&P!=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,P,H,"setState")},O.prototype.forceUpdate=function(P){this.updater.enqueueForceUpdate(this,P,"forceUpdate")};function M(){}M.prototype=O.prototype;function j(P,H,ae){this.props=P,this.context=H,this.refs=S,this.updater=ae||w}var k=j.prototype=new M;k.constructor=j,_(k,O.prototype),k.isPureReactComponent=!0;var N=Array.isArray;function C(){}var L={H:null,A:null,T:null,S:null},I=Object.prototype.hasOwnProperty;function Y(P,H,ae){var se=ae.ref;return{$$typeof:e,type:P,key:H,ref:se!==void 0?se:null,props:ae}}function te(P,H){return Y(P.type,H,P.props)}function ie(P){return typeof P=="object"&&P!==null&&P.$$typeof===e}function K(P){var H={"=":"=0",":":"=2"};return"$"+P.replace(/[=:]/g,function(ae){return H[ae]})}var be=/\/+/g;function pe(P,H){return typeof P=="object"&&P!==null&&P.key!=null?K(""+P.key):H.toString(36)}function xe(P){switch(P.status){case"fulfilled":return P.value;case"rejected":throw P.reason;default:switch(typeof P.status=="string"?P.then(C,C):(P.status="pending",P.then(function(H){P.status==="pending"&&(P.status="fulfilled",P.value=H)},function(H){P.status==="pending"&&(P.status="rejected",P.reason=H)})),P.status){case"fulfilled":return P.value;case"rejected":throw P.reason}}throw P}function V(P,H,ae,se,Z){var oe=typeof P;(oe==="undefined"||oe==="boolean")&&(P=null);var he=!1;if(P===null)he=!0;else switch(oe){case"bigint":case"string":case"number":he=!0;break;case"object":switch(P.$$typeof){case e:case t:he=!0;break;case m:return he=P._init,V(he(P._payload),H,ae,se,Z)}}if(he)return Z=Z(P),he=se===""?"."+pe(P,0):se,N(Z)?(ae="",he!=null&&(ae=he.replace(be,"$&/")+"/"),V(Z,H,ae,"",function(re){return re})):Z!=null&&(ie(Z)&&(Z=te(Z,ae+(Z.key==null||P&&P.key===Z.key?"":(""+Z.key).replace(be,"$&/")+"/")+he)),H.push(Z)),1;he=0;var _e=se===""?".":se+":";if(N(P))for(var J=0;J>>1,ue=V[le];if(0>>1;les(ae,ne))ses(Z,ae)?(V[le]=Z,V[se]=ne,le=se):(V[le]=ae,V[H]=ne,le=H);else if(ses(Z,ne))V[le]=Z,V[se]=ne,le=se;else break e}}return Q}function s(V,Q){var ne=V.sortIndex-Q.sortIndex;return ne!==0?ne:V.id-Q.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var u=Date,f=u.now();e.unstable_now=function(){return u.now()-f}}var d=[],h=[],m=1,p=null,v=3,x=!1,w=!1,_=!1,S=!1,O=typeof setTimeout=="function"?setTimeout:null,M=typeof clearTimeout=="function"?clearTimeout:null,j=typeof setImmediate<"u"?setImmediate:null;function k(V){for(var Q=n(h);Q!==null;){if(Q.callback===null)r(h);else if(Q.startTime<=V)r(h),Q.sortIndex=Q.expirationTime,t(d,Q);else break;Q=n(h)}}function N(V){if(_=!1,k(V),!w)if(n(d)!==null)w=!0,C||(C=!0,K());else{var Q=n(h);Q!==null&&xe(N,Q.startTime-V)}}var C=!1,L=-1,I=5,Y=-1;function te(){return S?!0:!(e.unstable_now()-YV&&te());){var le=p.callback;if(typeof le=="function"){p.callback=null,v=p.priorityLevel;var ue=le(p.expirationTime<=V);if(V=e.unstable_now(),typeof ue=="function"){p.callback=ue,k(V),Q=!0;break t}p===n(d)&&r(d),k(V)}else r(d);p=n(d)}if(p!==null)Q=!0;else{var P=n(h);P!==null&&xe(N,P.startTime-V),Q=!1}}break e}finally{p=null,v=ne,x=!1}Q=void 0}}finally{Q?K():C=!1}}}var K;if(typeof j=="function")K=function(){j(ie)};else if(typeof MessageChannel<"u"){var be=new MessageChannel,pe=be.port2;be.port1.onmessage=ie,K=function(){pe.postMessage(null)}}else K=function(){O(ie,0)};function xe(V,Q){L=O(function(){V(e.unstable_now())},Q)}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(V){V.callback=null},e.unstable_forceFrameRate=function(V){0>V||125le?(V.sortIndex=ne,t(h,V),n(d)===null&&V===n(h)&&(_?(M(L),L=-1):_=!0,xe(N,ne-le))):(V.sortIndex=ue,t(d,V),w||x||(w=!0,C||(C=!0,K()))),V},e.unstable_shouldYield=te,e.unstable_wrapCallback=function(V){var Q=v;return function(){var ne=v;v=Q;try{return V.apply(this,arguments)}finally{v=ne}}}})(Zp)),Zp}var PS;function ER(){return PS||(PS=1,Wp.exports=OR()),Wp.exports}var Qp={exports:{}},Yt={};var RS;function jR(){if(RS)return Yt;RS=1;var e=yo();function t(d){var h="https://react.dev/errors/"+d;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Qp.exports=jR(),Qp.exports}var zS;function MR(){if(zS)return El;zS=1;var e=ER(),t=yo(),n=iM();function r(i){var a="https://react.dev/errors/"+i;if(1ue||(i.current=le[ue],le[ue]=null,ue--)}function ae(i,a){ue++,le[ue]=i.current,i.current=a}var se=P(null),Z=P(null),oe=P(null),he=P(null);function _e(i,a){switch(ae(oe,a),ae(Z,i),ae(se,null),a.nodeType){case 9:case 11:i=(i=a.documentElement)&&(i=i.namespaceURI)?Q_(i):0;break;default:if(i=a.tagName,a=a.namespaceURI)a=Q_(a),i=J_(a,i);else switch(i){case"svg":i=1;break;case"math":i=2;break;default:i=0}}H(se),ae(se,i)}function J(){H(se),H(Z),H(oe)}function re(i){i.memoizedState!==null&&ae(he,i);var a=se.current,l=J_(a,i.type);a!==l&&(ae(Z,i),ae(se,l))}function Se(i){Z.current===i&&(H(se),H(Z)),he.current===i&&(H(he),_l._currentValue=ne)}var ee,Rt;function De(i){if(ee===void 0)try{throw Error()}catch(l){var a=l.stack.trim().match(/\n( *(at )?)/);ee=a&&a[1]||"",Rt=-1r[s]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const u of o.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&r(u)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();function ia(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Xp={exports:{}},Ol={};var MS;function _R(){if(MS)return Ol;MS=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,s,o){var u=null;if(o!==void 0&&(u=""+o),s.key!==void 0&&(u=""+s.key),"key"in s){o={};for(var f in s)f!=="key"&&(o[f]=s[f])}else o=s;return s=o.ref,{$$typeof:e,type:r,key:u,ref:s!==void 0?s:null,props:o}}return Ol.Fragment=t,Ol.jsx=n,Ol.jsxs=n,Ol}var NS;function SR(){return NS||(NS=1,Xp.exports=_R()),Xp.exports}var b=SR(),Yp={exports:{}},Ae={};var kS;function AR(){if(kS)return Ae;kS=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),v=Symbol.iterator;function x(P){return P===null||typeof P!="object"?null:(P=v&&P[v]||P["@@iterator"],typeof P=="function"?P:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,S={};function O(P,H,ae){this.props=P,this.context=H,this.refs=S,this.updater=ae||w}O.prototype.isReactComponent={},O.prototype.setState=function(P,H){if(typeof P!="object"&&typeof P!="function"&&P!=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,P,H,"setState")},O.prototype.forceUpdate=function(P){this.updater.enqueueForceUpdate(this,P,"forceUpdate")};function M(){}M.prototype=O.prototype;function j(P,H,ae){this.props=P,this.context=H,this.refs=S,this.updater=ae||w}var N=j.prototype=new M;N.constructor=j,_(N,O.prototype),N.isPureReactComponent=!0;var k=Array.isArray;function C(){}var L={H:null,A:null,T:null,S:null},I=Object.prototype.hasOwnProperty;function Y(P,H,ae){var se=ae.ref;return{$$typeof:e,type:P,key:H,ref:se!==void 0?se:null,props:ae}}function te(P,H){return Y(P.type,H,P.props)}function ie(P){return typeof P=="object"&&P!==null&&P.$$typeof===e}function K(P){var H={"=":"=0",":":"=2"};return"$"+P.replace(/[=:]/g,function(ae){return H[ae]})}var be=/\/+/g;function pe(P,H){return typeof P=="object"&&P!==null&&P.key!=null?K(""+P.key):H.toString(36)}function xe(P){switch(P.status){case"fulfilled":return P.value;case"rejected":throw P.reason;default:switch(typeof P.status=="string"?P.then(C,C):(P.status="pending",P.then(function(H){P.status==="pending"&&(P.status="fulfilled",P.value=H)},function(H){P.status==="pending"&&(P.status="rejected",P.reason=H)})),P.status){case"fulfilled":return P.value;case"rejected":throw P.reason}}throw P}function V(P,H,ae,se,Z){var oe=typeof P;(oe==="undefined"||oe==="boolean")&&(P=null);var he=!1;if(P===null)he=!0;else switch(oe){case"bigint":case"string":case"number":he=!0;break;case"object":switch(P.$$typeof){case e:case t:he=!0;break;case m:return he=P._init,V(he(P._payload),H,ae,se,Z)}}if(he)return Z=Z(P),he=se===""?"."+pe(P,0):se,k(Z)?(ae="",he!=null&&(ae=he.replace(be,"$&/")+"/"),V(Z,H,ae,"",function(re){return re})):Z!=null&&(ie(Z)&&(Z=te(Z,ae+(Z.key==null||P&&P.key===Z.key?"":(""+Z.key).replace(be,"$&/")+"/")+he)),H.push(Z)),1;he=0;var _e=se===""?".":se+":";if(k(P))for(var J=0;J>>1,ue=V[le];if(0>>1;les(ae,ne))ses(Z,ae)?(V[le]=Z,V[se]=ne,le=se):(V[le]=ae,V[H]=ne,le=H);else if(ses(Z,ne))V[le]=Z,V[se]=ne,le=se;else break e}}return Q}function s(V,Q){var ne=V.sortIndex-Q.sortIndex;return ne!==0?ne:V.id-Q.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var u=Date,f=u.now();e.unstable_now=function(){return u.now()-f}}var d=[],h=[],m=1,p=null,v=3,x=!1,w=!1,_=!1,S=!1,O=typeof setTimeout=="function"?setTimeout:null,M=typeof clearTimeout=="function"?clearTimeout:null,j=typeof setImmediate<"u"?setImmediate:null;function N(V){for(var Q=n(h);Q!==null;){if(Q.callback===null)r(h);else if(Q.startTime<=V)r(h),Q.sortIndex=Q.expirationTime,t(d,Q);else break;Q=n(h)}}function k(V){if(_=!1,N(V),!w)if(n(d)!==null)w=!0,C||(C=!0,K());else{var Q=n(h);Q!==null&&xe(k,Q.startTime-V)}}var C=!1,L=-1,I=5,Y=-1;function te(){return S?!0:!(e.unstable_now()-YV&&te());){var le=p.callback;if(typeof le=="function"){p.callback=null,v=p.priorityLevel;var ue=le(p.expirationTime<=V);if(V=e.unstable_now(),typeof ue=="function"){p.callback=ue,N(V),Q=!0;break t}p===n(d)&&r(d),N(V)}else r(d);p=n(d)}if(p!==null)Q=!0;else{var P=n(h);P!==null&&xe(k,P.startTime-V),Q=!1}}break e}finally{p=null,v=ne,x=!1}Q=void 0}}finally{Q?K():C=!1}}}var K;if(typeof j=="function")K=function(){j(ie)};else if(typeof MessageChannel<"u"){var be=new MessageChannel,pe=be.port2;be.port1.onmessage=ie,K=function(){pe.postMessage(null)}}else K=function(){O(ie,0)};function xe(V,Q){L=O(function(){V(e.unstable_now())},Q)}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(V){V.callback=null},e.unstable_forceFrameRate=function(V){0>V||125le?(V.sortIndex=ne,t(h,V),n(d)===null&&V===n(h)&&(_?(M(L),L=-1):_=!0,xe(k,ne-le))):(V.sortIndex=ue,t(d,V),w||x||(w=!0,C||(C=!0,K()))),V},e.unstable_shouldYield=te,e.unstable_wrapCallback=function(V){var Q=v;return function(){var ne=v;v=Q;try{return V.apply(this,arguments)}finally{v=ne}}}})(Zp)),Zp}var PS;function jR(){return PS||(PS=1,Wp.exports=ER()),Wp.exports}var Qp={exports:{}},Yt={};var RS;function MR(){if(RS)return Yt;RS=1;var e=yo();function t(d){var h="https://react.dev/errors/"+d;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Qp.exports=MR(),Qp.exports}var zS;function NR(){if(zS)return El;zS=1;var e=jR(),t=yo(),n=iM();function r(i){var a="https://react.dev/errors/"+i;if(1ue||(i.current=le[ue],le[ue]=null,ue--)}function ae(i,a){ue++,le[ue]=i.current,i.current=a}var se=P(null),Z=P(null),oe=P(null),he=P(null);function _e(i,a){switch(ae(oe,a),ae(Z,i),ae(se,null),a.nodeType){case 9:case 11:i=(i=a.documentElement)&&(i=i.namespaceURI)?Q_(i):0;break;default:if(i=a.tagName,a=a.namespaceURI)a=Q_(a),i=J_(a,i);else switch(i){case"svg":i=1;break;case"math":i=2;break;default:i=0}}H(se),ae(se,i)}function J(){H(se),H(Z),H(oe)}function re(i){i.memoizedState!==null&&ae(he,i);var a=se.current,l=J_(a,i.type);a!==l&&(ae(Z,i),ae(se,l))}function Se(i){Z.current===i&&(H(se),H(Z)),he.current===i&&(H(he),_l._currentValue=ne)}var ee,Rt;function De(i){if(ee===void 0)try{throw Error()}catch(l){var a=l.stack.trim().match(/\n( *(at )?)/);ee=a&&a[1]||"",Rt=-1)":-1g||D[c]!==U[g]){var X=` `+D[c].replace(" at new "," at ");return i.displayName&&X.includes("")&&(X=X.replace("",i.displayName)),X}while(1<=c&&0<=g);break}}}finally{Lt=!1,Error.prepareStackTrace=l}return(l=i?i.displayName||i.name:"")?De(l):""}function Pr(i,a){switch(i.tag){case 26:case 27:case 5:return De(i.type);case 16:return De("Lazy");case 13:return i.child!==a&&a!==null?De("Suspense Fallback"):De("Suspense");case 19:return De("SuspenseList");case 0:case 15:return zt(i.type,!1);case 11:return zt(i.type.render,!1);case 1:return zt(i.type,!0);case 31:return De("Activity");default:return""}}function Do(i){try{var a="",l=null;do a+=Pr(i,l),l=i,i=i.return;while(i);return a}catch(c){return` Error generating stack: `+c.message+` -`+c.stack}}var Ch=Object.prototype.hasOwnProperty,Dh=e.unstable_scheduleCallback,Ph=e.unstable_cancelCallback,Q5=e.unstable_shouldYield,J5=e.unstable_requestPaint,bn=e.unstable_now,eP=e.unstable_getCurrentPriorityLevel,kx=e.unstable_ImmediatePriority,Nx=e.unstable_UserBlockingPriority,Ku=e.unstable_NormalPriority,tP=e.unstable_LowPriority,Cx=e.unstable_IdlePriority,nP=e.log,rP=e.unstable_setDisableYieldValue,Po=null,xn=null;function bi(i){if(typeof nP=="function"&&rP(i),xn&&typeof xn.setStrictMode=="function")try{xn.setStrictMode(Po,i)}catch{}}var wn=Math.clz32?Math.clz32:sP,iP=Math.log,aP=Math.LN2;function sP(i){return i>>>=0,i===0?32:31-(iP(i)/aP|0)|0}var Xu=256,Yu=262144,Gu=4194304;function fa(i){var a=i&42;if(a!==0)return a;switch(i&-i){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 i&261888;case 262144:case 524288:case 1048576:case 2097152:return i&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return i&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return i}}function Wu(i,a,l){var c=i.pendingLanes;if(c===0)return 0;var g=0,y=i.suspendedLanes,T=i.pingedLanes;i=i.warmLanes;var E=c&134217727;return E!==0?(c=E&~y,c!==0?g=fa(c):(T&=E,T!==0?g=fa(T):l||(l=E&~i,l!==0&&(g=fa(l))))):(E=c&~y,E!==0?g=fa(E):T!==0?g=fa(T):l||(l=c&~i,l!==0&&(g=fa(l)))),g===0?0:a!==0&&a!==g&&(a&y)===0&&(y=g&-g,l=a&-a,y>=l||y===32&&(l&4194048)!==0)?a:g}function Ro(i,a){return(i.pendingLanes&~(i.suspendedLanes&~i.pingedLanes)&a)===0}function oP(i,a){switch(i){case 1:case 2:case 4:case 8:case 64:return a+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 a+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 Dx(){var i=Gu;return Gu<<=1,(Gu&62914560)===0&&(Gu=4194304),i}function Rh(i){for(var a=[],l=0;31>l;l++)a.push(i);return a}function Lo(i,a){i.pendingLanes|=a,a!==268435456&&(i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0)}function lP(i,a,l,c,g,y){var T=i.pendingLanes;i.pendingLanes=l,i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0,i.expiredLanes&=l,i.entangledLanes&=l,i.errorRecoveryDisabledLanes&=l,i.shellSuspendCounter=0;var E=i.entanglements,D=i.expirationTimes,U=i.hiddenUpdates;for(l=T&~l;0"u")return null;try{return i.activeElement||i.body}catch{return i.body}}var mP=/[\n"\\]/g;function zn(i){return i.replace(mP,function(a){return"\\"+a.charCodeAt(0).toString(16)+" "})}function Vh(i,a,l,c,g,y,T,E){i.name="",T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"?i.type=T:i.removeAttribute("type"),a!=null?T==="number"?(a===0&&i.value===""||i.value!=a)&&(i.value=""+Ln(a)):i.value!==""+Ln(a)&&(i.value=""+Ln(a)):T!=="submit"&&T!=="reset"||i.removeAttribute("value"),a!=null?qh(i,T,Ln(a)):l!=null?qh(i,T,Ln(l)):c!=null&&i.removeAttribute("value"),g==null&&y!=null&&(i.defaultChecked=!!y),g!=null&&(i.checked=g&&typeof g!="function"&&typeof g!="symbol"),E!=null&&typeof E!="function"&&typeof E!="symbol"&&typeof E!="boolean"?i.name=""+Ln(E):i.removeAttribute("name")}function Kx(i,a,l,c,g,y,T,E){if(y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(i.type=y),a!=null||l!=null){if(!(y!=="submit"&&y!=="reset"||a!=null)){Uh(i);return}l=l!=null?""+Ln(l):"",a=a!=null?""+Ln(a):l,E||a===i.value||(i.value=a),i.defaultValue=a}c=c??g,c=typeof c!="function"&&typeof c!="symbol"&&!!c,i.checked=E?i.checked:!!c,i.defaultChecked=!!c,T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"&&(i.name=T),Uh(i)}function qh(i,a,l){a==="number"&&Ju(i.ownerDocument)===i||i.defaultValue===""+l||(i.defaultValue=""+l)}function us(i,a,l,c){if(i=i.options,a){a={};for(var g=0;g"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Xh=!1;if(zr)try{var Uo={};Object.defineProperty(Uo,"passive",{get:function(){Xh=!0}}),window.addEventListener("test",Uo,Uo),window.removeEventListener("test",Uo,Uo)}catch{Xh=!1}var wi=null,Yh=null,tc=null;function Jx(){if(tc)return tc;var i,a=Yh,l=a.length,c,g="value"in wi?wi.value:wi.textContent,y=g.length;for(i=0;i=$o),a1=" ",s1=!1;function o1(i,a){switch(i){case"keyup":return qP.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function l1(i){return i=i.detail,typeof i=="object"&&"data"in i?i.data:null}var hs=!1;function FP(i,a){switch(i){case"compositionend":return l1(a);case"keypress":return a.which!==32?null:(s1=!0,a1);case"textInput":return i=a.data,i===a1&&s1?null:i;default:return null}}function HP(i,a){if(hs)return i==="compositionend"||!Jh&&o1(i,a)?(i=Jx(),tc=Yh=wi=null,hs=!1,i):null;switch(i){case"paste":return null;case"keypress":if(!(a.ctrlKey||a.altKey||a.metaKey)||a.ctrlKey&&a.altKey){if(a.char&&1=a)return{node:l,offset:a-i};i=c}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=g1(l)}}function v1(i,a){return i&&a?i===a?!0:i&&i.nodeType===3?!1:a&&a.nodeType===3?v1(i,a.parentNode):"contains"in i?i.contains(a):i.compareDocumentPosition?!!(i.compareDocumentPosition(a)&16):!1:!1}function b1(i){i=i!=null&&i.ownerDocument!=null&&i.ownerDocument.defaultView!=null?i.ownerDocument.defaultView:window;for(var a=Ju(i.document);a instanceof i.HTMLIFrameElement;){try{var l=typeof a.contentWindow.location.href=="string"}catch{l=!1}if(l)i=a.contentWindow;else break;a=Ju(i.document)}return a}function nm(i){var a=i&&i.nodeName&&i.nodeName.toLowerCase();return a&&(a==="input"&&(i.type==="text"||i.type==="search"||i.type==="tel"||i.type==="url"||i.type==="password")||a==="textarea"||i.contentEditable==="true")}var JP=zr&&"documentMode"in document&&11>=document.documentMode,ms=null,rm=null,Xo=null,im=!1;function x1(i,a,l){var c=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;im||ms==null||ms!==Ju(c)||(c=ms,"selectionStart"in c&&nm(c)?c={start:c.selectionStart,end:c.selectionEnd}:(c=(c.ownerDocument&&c.ownerDocument.defaultView||window).getSelection(),c={anchorNode:c.anchorNode,anchorOffset:c.anchorOffset,focusNode:c.focusNode,focusOffset:c.focusOffset}),Xo&&Ko(Xo,c)||(Xo=c,c=Yc(rm,"onSelect"),0>=T,g-=T,gr=1<<32-wn(a)+g|l<Oe?(ke=me,me=null):ke=me.sibling;var Re=q(z,me,B[Oe],G);if(Re===null){me===null&&(me=ke);break}i&&me&&Re.alternate===null&&a(z,me),R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re,me=ke}if(Oe===B.length)return l(z,me),Ne&&Br(z,Oe),ge;if(me===null){for(;OeOe?(ke=me,me=null):ke=me.sibling;var $i=q(z,me,Re.value,G);if($i===null){me===null&&(me=ke);break}i&&me&&$i.alternate===null&&a(z,me),R=y($i,R,Oe),Pe===null?ge=$i:Pe.sibling=$i,Pe=$i,me=ke}if(Re.done)return l(z,me),Ne&&Br(z,Oe),ge;if(me===null){for(;!Re.done;Oe++,Re=B.next())Re=W(z,Re.value,G),Re!==null&&(R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re);return Ne&&Br(z,Oe),ge}for(me=c(me);!Re.done;Oe++,Re=B.next())Re=F(me,z,Oe,Re.value,G),Re!==null&&(i&&Re.alternate!==null&&me.delete(Re.key===null?Oe:Re.key),R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re);return i&&me.forEach(function(bR){return a(z,bR)}),Ne&&Br(z,Oe),ge}function Fe(z,R,B,G){if(typeof B=="object"&&B!==null&&B.type===_&&B.key===null&&(B=B.props.children),typeof B=="object"&&B!==null){switch(B.$$typeof){case x:e:{for(var ge=B.key;R!==null;){if(R.key===ge){if(ge=B.type,ge===_){if(R.tag===7){l(z,R.sibling),G=g(R,B.props.children),G.return=z,z=G;break e}}else if(R.elementType===ge||typeof ge=="object"&&ge!==null&&ge.$$typeof===I&&_a(ge)===R.type){l(z,R.sibling),G=g(R,B.props),Jo(G,B),G.return=z,z=G;break e}l(z,R);break}else a(z,R);R=R.sibling}B.type===_?(G=ya(B.props.children,z.mode,G,B.key),G.return=z,z=G):(G=fc(B.type,B.key,B.props,null,z.mode,G),Jo(G,B),G.return=z,z=G)}return T(z);case w:e:{for(ge=B.key;R!==null;){if(R.key===ge)if(R.tag===4&&R.stateNode.containerInfo===B.containerInfo&&R.stateNode.implementation===B.implementation){l(z,R.sibling),G=g(R,B.children||[]),G.return=z,z=G;break e}else{l(z,R);break}else a(z,R);R=R.sibling}G=fm(B,z.mode,G),G.return=z,z=G}return T(z);case I:return B=_a(B),Fe(z,R,B,G)}if(xe(B))return fe(z,R,B,G);if(K(B)){if(ge=K(B),typeof ge!="function")throw Error(r(150));return B=ge.call(B),we(z,R,B,G)}if(typeof B.then=="function")return Fe(z,R,vc(B),G);if(B.$$typeof===j)return Fe(z,R,mc(z,B),G);bc(z,B)}return typeof B=="string"&&B!==""||typeof B=="number"||typeof B=="bigint"?(B=""+B,R!==null&&R.tag===6?(l(z,R.sibling),G=g(R,B),G.return=z,z=G):(l(z,R),G=cm(B,z.mode,G),G.return=z,z=G),T(z)):l(z,R)}return function(z,R,B,G){try{Qo=0;var ge=Fe(z,R,B,G);return Ts=null,ge}catch(me){if(me===As||me===gc)throw me;var Pe=Sn(29,me,null,z.mode);return Pe.lanes=G,Pe.return=z,Pe}}}var Aa=$1(!0),F1=$1(!1),Oi=!1;function Sm(i){i.updateQueue={baseState:i.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Am(i,a){i=i.updateQueue,a.updateQueue===i&&(a.updateQueue={baseState:i.baseState,firstBaseUpdate:i.firstBaseUpdate,lastBaseUpdate:i.lastBaseUpdate,shared:i.shared,callbacks:null})}function Ei(i){return{lane:i,tag:0,payload:null,callback:null,next:null}}function ji(i,a,l){var c=i.updateQueue;if(c===null)return null;if(c=c.shared,(Ie&2)!==0){var g=c.pending;return g===null?a.next=a:(a.next=g.next,g.next=a),c.pending=a,a=cc(i),E1(i,null,l),a}return uc(i,c,a,l),cc(i)}function el(i,a,l){if(a=a.updateQueue,a!==null&&(a=a.shared,(l&4194048)!==0)){var c=a.lanes;c&=i.pendingLanes,l|=c,a.lanes=l,Rx(i,l)}}function Tm(i,a){var l=i.updateQueue,c=i.alternate;if(c!==null&&(c=c.updateQueue,l===c)){var g=null,y=null;if(l=l.firstBaseUpdate,l!==null){do{var T={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};y===null?g=y=T:y=y.next=T,l=l.next}while(l!==null);y===null?g=y=a:y=y.next=a}else g=y=a;l={baseState:c.baseState,firstBaseUpdate:g,lastBaseUpdate:y,shared:c.shared,callbacks:c.callbacks},i.updateQueue=l;return}i=l.lastBaseUpdate,i===null?l.firstBaseUpdate=a:i.next=a,l.lastBaseUpdate=a}var Om=!1;function tl(){if(Om){var i=Ss;if(i!==null)throw i}}function nl(i,a,l,c){Om=!1;var g=i.updateQueue;Oi=!1;var y=g.firstBaseUpdate,T=g.lastBaseUpdate,E=g.shared.pending;if(E!==null){g.shared.pending=null;var D=E,U=D.next;D.next=null,T===null?y=U:T.next=U,T=D;var X=i.alternate;X!==null&&(X=X.updateQueue,E=X.lastBaseUpdate,E!==T&&(E===null?X.firstBaseUpdate=U:E.next=U,X.lastBaseUpdate=D))}if(y!==null){var W=g.baseState;T=0,X=U=D=null,E=y;do{var q=E.lane&-536870913,F=q!==E.lane;if(F?(Me&q)===q:(c&q)===q){q!==0&&q===_s&&(Om=!0),X!==null&&(X=X.next={lane:0,tag:E.tag,payload:E.payload,callback:null,next:null});e:{var fe=i,we=E;q=a;var Fe=l;switch(we.tag){case 1:if(fe=we.payload,typeof fe=="function"){W=fe.call(Fe,W,q);break e}W=fe;break e;case 3:fe.flags=fe.flags&-65537|128;case 0:if(fe=we.payload,q=typeof fe=="function"?fe.call(Fe,W,q):fe,q==null)break e;W=p({},W,q);break e;case 2:Oi=!0}}q=E.callback,q!==null&&(i.flags|=64,F&&(i.flags|=8192),F=g.callbacks,F===null?g.callbacks=[q]:F.push(q))}else F={lane:q,tag:E.tag,payload:E.payload,callback:E.callback,next:null},X===null?(U=X=F,D=W):X=X.next=F,T|=q;if(E=E.next,E===null){if(E=g.shared.pending,E===null)break;F=E,E=F.next,F.next=null,g.lastBaseUpdate=F,g.shared.pending=null}}while(!0);X===null&&(D=W),g.baseState=D,g.firstBaseUpdate=U,g.lastBaseUpdate=X,y===null&&(g.shared.lanes=0),Di|=T,i.lanes=T,i.memoizedState=W}}function H1(i,a){if(typeof i!="function")throw Error(r(191,i));i.call(a)}function K1(i,a){var l=i.callbacks;if(l!==null)for(i.callbacks=null,i=0;iy?y:8;var T=V.T,E={};V.T=E,Hm(i,!1,a,l);try{var D=g(),U=V.S;if(U!==null&&U(E,D),D!==null&&typeof D=="object"&&typeof D.then=="function"){var X=l4(D,c);al(i,a,X,jn(i))}else al(i,a,c,jn(i))}catch(W){al(i,a,{then:function(){},status:"rejected",reason:W},jn())}finally{Q.p=y,T!==null&&E.types!==null&&(T.types=E.types),V.T=T}}function m4(){}function $m(i,a,l,c){if(i.tag!==5)throw Error(r(476));var g=Aw(i).queue;Sw(i,g,a,ne,l===null?m4:function(){return Tw(i),l(c)})}function Aw(i){var a=i.memoizedState;if(a!==null)return a;a={memoizedState:ne,baseState:ne,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:ne},next:null};var l={};return a.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:l},next:null},i.memoizedState=a,i=i.alternate,i!==null&&(i.memoizedState=a),a}function Tw(i){var a=Aw(i);a.next===null&&(a=i.alternate.memoizedState),al(i,a.next.queue,{},jn())}function Fm(){return Ut(_l)}function Ow(){return ft().memoizedState}function Ew(){return ft().memoizedState}function p4(i){for(var a=i.return;a!==null;){switch(a.tag){case 24:case 3:var l=jn();i=Ei(l);var c=ji(a,i,l);c!==null&&(hn(c,a,l),el(c,a,l)),a={cache:bm()},i.payload=a;return}a=a.return}}function g4(i,a,l){var c=jn();l={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Mc(i)?Mw(a,l):(l=lm(i,a,l,c),l!==null&&(hn(l,i,c),kw(l,a,c)))}function jw(i,a,l){var c=jn();al(i,a,l,c)}function al(i,a,l,c){var g={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Mc(i))Mw(a,g);else{var y=i.alternate;if(i.lanes===0&&(y===null||y.lanes===0)&&(y=a.lastRenderedReducer,y!==null))try{var T=a.lastRenderedState,E=y(T,l);if(g.hasEagerState=!0,g.eagerState=E,_n(E,T))return uc(i,a,g,0),Ke===null&&lc(),!1}catch{}if(l=lm(i,a,g,c),l!==null)return hn(l,i,c),kw(l,a,c),!0}return!1}function Hm(i,a,l,c){if(c={lane:2,revertLane:Sp(),gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null},Mc(i)){if(a)throw Error(r(479))}else a=lm(i,l,c,2),a!==null&&hn(a,i,2)}function Mc(i){var a=i.alternate;return i===Te||a!==null&&a===Te}function Mw(i,a){Es=_c=!0;var l=i.pending;l===null?a.next=a:(a.next=l.next,l.next=a),i.pending=a}function kw(i,a,l){if((l&4194048)!==0){var c=a.lanes;c&=i.pendingLanes,l|=c,a.lanes=l,Rx(i,l)}}var sl={readContext:Ut,use:Tc,useCallback:at,useContext:at,useEffect:at,useImperativeHandle:at,useLayoutEffect:at,useInsertionEffect:at,useMemo:at,useReducer:at,useRef:at,useState:at,useDebugValue:at,useDeferredValue:at,useTransition:at,useSyncExternalStore:at,useId:at,useHostTransitionStatus:at,useFormState:at,useActionState:at,useOptimistic:at,useMemoCache:at,useCacheRefresh:at};sl.useEffectEvent=at;var Nw={readContext:Ut,use:Tc,useCallback:function(i,a){return en().memoizedState=[i,a===void 0?null:a],i},useContext:Ut,useEffect:mw,useImperativeHandle:function(i,a,l){l=l!=null?l.concat([i]):null,Ec(4194308,4,vw.bind(null,a,i),l)},useLayoutEffect:function(i,a){return Ec(4194308,4,i,a)},useInsertionEffect:function(i,a){Ec(4,2,i,a)},useMemo:function(i,a){var l=en();a=a===void 0?null:a;var c=i();if(Ta){bi(!0);try{i()}finally{bi(!1)}}return l.memoizedState=[c,a],c},useReducer:function(i,a,l){var c=en();if(l!==void 0){var g=l(a);if(Ta){bi(!0);try{l(a)}finally{bi(!1)}}}else g=a;return c.memoizedState=c.baseState=g,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:i,lastRenderedState:g},c.queue=i,i=i.dispatch=g4.bind(null,Te,i),[c.memoizedState,i]},useRef:function(i){var a=en();return i={current:i},a.memoizedState=i},useState:function(i){i=Im(i);var a=i.queue,l=jw.bind(null,Te,a);return a.dispatch=l,[i.memoizedState,l]},useDebugValue:Vm,useDeferredValue:function(i,a){var l=en();return qm(l,i,a)},useTransition:function(){var i=Im(!1);return i=Sw.bind(null,Te,i.queue,!0,!1),en().memoizedState=i,[!1,i]},useSyncExternalStore:function(i,a,l){var c=Te,g=en();if(Ne){if(l===void 0)throw Error(r(407));l=l()}else{if(l=a(),Ke===null)throw Error(r(349));(Me&127)!==0||Q1(c,a,l)}g.memoizedState=l;var y={value:l,getSnapshot:a};return g.queue=y,mw(ew.bind(null,c,y,i),[i]),c.flags|=2048,Ms(9,{destroy:void 0},J1.bind(null,c,y,l,a),null),l},useId:function(){var i=en(),a=Ke.identifierPrefix;if(Ne){var l=yr,c=gr;l=(c&~(1<<32-wn(c)-1)).toString(32)+l,a="_"+a+"R_"+l,l=Sc++,0<\/script>",y=y.removeChild(y.firstChild);break;case"select":y=typeof c.is=="string"?T.createElement("select",{is:c.is}):T.createElement("select"),c.multiple?y.multiple=!0:c.size&&(y.size=c.size);break;default:y=typeof c.is=="string"?T.createElement(g,{is:c.is}):T.createElement(g)}}y[It]=a,y[on]=c;e:for(T=a.child;T!==null;){if(T.tag===5||T.tag===6)y.appendChild(T.stateNode);else if(T.tag!==4&&T.tag!==27&&T.child!==null){T.child.return=T,T=T.child;continue}if(T===a)break e;for(;T.sibling===null;){if(T.return===null||T.return===a)break e;T=T.return}T.sibling.return=T.return,T=T.sibling}a.stateNode=y;e:switch(qt(y,g,c),g){case"button":case"input":case"select":case"textarea":c=!!c.autoFocus;break e;case"img":c=!0;break e;default:c=!1}c&&Hr(a)}}return Ze(a),ap(a,a.type,i===null?null:i.memoizedProps,a.pendingProps,l),null;case 6:if(i&&a.stateNode!=null)i.memoizedProps!==c&&Hr(a);else{if(typeof c!="string"&&a.stateNode===null)throw Error(r(166));if(i=oe.current,xs(a)){if(i=a.stateNode,l=a.memoizedProps,c=null,g=Bt,g!==null)switch(g.tag){case 27:case 5:c=g.memoizedProps}i[It]=a,i=!!(i.nodeValue===l||c!==null&&c.suppressHydrationWarning===!0||W_(i.nodeValue,l)),i||Ai(a,!0)}else i=Gc(i).createTextNode(c),i[It]=a,a.stateNode=i}return Ze(a),null;case 31:if(l=a.memoizedState,i===null||i.memoizedState!==null){if(c=xs(a),l!==null){if(i===null){if(!c)throw Error(r(318));if(i=a.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(557));i[It]=a}else va(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Ze(a),i=!1}else l=pm(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=l),i=!0;if(!i)return a.flags&256?(Tn(a),a):(Tn(a),null);if((a.flags&128)!==0)throw Error(r(558))}return Ze(a),null;case 13:if(c=a.memoizedState,i===null||i.memoizedState!==null&&i.memoizedState.dehydrated!==null){if(g=xs(a),c!==null&&c.dehydrated!==null){if(i===null){if(!g)throw Error(r(318));if(g=a.memoizedState,g=g!==null?g.dehydrated:null,!g)throw Error(r(317));g[It]=a}else va(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Ze(a),g=!1}else g=pm(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=g),g=!0;if(!g)return a.flags&256?(Tn(a),a):(Tn(a),null)}return Tn(a),(a.flags&128)!==0?(a.lanes=l,a):(l=c!==null,i=i!==null&&i.memoizedState!==null,l&&(c=a.child,g=null,c.alternate!==null&&c.alternate.memoizedState!==null&&c.alternate.memoizedState.cachePool!==null&&(g=c.alternate.memoizedState.cachePool.pool),y=null,c.memoizedState!==null&&c.memoizedState.cachePool!==null&&(y=c.memoizedState.cachePool.pool),y!==g&&(c.flags|=2048)),l!==i&&l&&(a.child.flags|=8192),Pc(a,a.updateQueue),Ze(a),null);case 4:return J(),i===null&&Ep(a.stateNode.containerInfo),Ze(a),null;case 10:return Vr(a.type),Ze(a),null;case 19:if(H(ct),c=a.memoizedState,c===null)return Ze(a),null;if(g=(a.flags&128)!==0,y=c.rendering,y===null)if(g)ll(c,!1);else{if(st!==0||i!==null&&(i.flags&128)!==0)for(i=a.child;i!==null;){if(y=wc(i),y!==null){for(a.flags|=128,ll(c,!1),i=y.updateQueue,a.updateQueue=i,Pc(a,i),a.subtreeFlags=0,i=l,l=a.child;l!==null;)j1(l,i),l=l.sibling;return ae(ct,ct.current&1|2),Ne&&Br(a,c.treeForkCount),a.child}i=i.sibling}c.tail!==null&&bn()>Bc&&(a.flags|=128,g=!0,ll(c,!1),a.lanes=4194304)}else{if(!g)if(i=wc(y),i!==null){if(a.flags|=128,g=!0,i=i.updateQueue,a.updateQueue=i,Pc(a,i),ll(c,!0),c.tail===null&&c.tailMode==="hidden"&&!y.alternate&&!Ne)return Ze(a),null}else 2*bn()-c.renderingStartTime>Bc&&l!==536870912&&(a.flags|=128,g=!0,ll(c,!1),a.lanes=4194304);c.isBackwards?(y.sibling=a.child,a.child=y):(i=c.last,i!==null?i.sibling=y:a.child=y,c.last=y)}return c.tail!==null?(i=c.tail,c.rendering=i,c.tail=i.sibling,c.renderingStartTime=bn(),i.sibling=null,l=ct.current,ae(ct,g?l&1|2:l&1),Ne&&Br(a,c.treeForkCount),i):(Ze(a),null);case 22:case 23:return Tn(a),jm(),c=a.memoizedState!==null,i!==null?i.memoizedState!==null!==c&&(a.flags|=8192):c&&(a.flags|=8192),c?(l&536870912)!==0&&(a.flags&128)===0&&(Ze(a),a.subtreeFlags&6&&(a.flags|=8192)):Ze(a),l=a.updateQueue,l!==null&&Pc(a,l.retryQueue),l=null,i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(l=i.memoizedState.cachePool.pool),c=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(c=a.memoizedState.cachePool.pool),c!==l&&(a.flags|=2048),i!==null&&H(wa),null;case 24:return l=null,i!==null&&(l=i.memoizedState.cache),a.memoizedState.cache!==l&&(a.flags|=2048),Vr(mt),Ze(a),null;case 25:return null;case 30:return null}throw Error(r(156,a.tag))}function w4(i,a){switch(hm(a),a.tag){case 1:return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 3:return Vr(mt),J(),i=a.flags,(i&65536)!==0&&(i&128)===0?(a.flags=i&-65537|128,a):null;case 26:case 27:case 5:return Se(a),null;case 31:if(a.memoizedState!==null){if(Tn(a),a.alternate===null)throw Error(r(340));va()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 13:if(Tn(a),i=a.memoizedState,i!==null&&i.dehydrated!==null){if(a.alternate===null)throw Error(r(340));va()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 19:return H(ct),null;case 4:return J(),null;case 10:return Vr(a.type),null;case 22:case 23:return Tn(a),jm(),i!==null&&H(wa),i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 24:return Vr(mt),null;case 25:return null;default:return null}}function t_(i,a){switch(hm(a),a.tag){case 3:Vr(mt),J();break;case 26:case 27:case 5:Se(a);break;case 4:J();break;case 31:a.memoizedState!==null&&Tn(a);break;case 13:Tn(a);break;case 19:H(ct);break;case 10:Vr(a.type);break;case 22:case 23:Tn(a),jm(),i!==null&&H(wa);break;case 24:Vr(mt)}}function ul(i,a){try{var l=a.updateQueue,c=l!==null?l.lastEffect:null;if(c!==null){var g=c.next;l=g;do{if((l.tag&i)===i){c=void 0;var y=l.create,T=l.inst;c=y(),T.destroy=c}l=l.next}while(l!==g)}}catch(E){Ve(a,a.return,E)}}function Ni(i,a,l){try{var c=a.updateQueue,g=c!==null?c.lastEffect:null;if(g!==null){var y=g.next;c=y;do{if((c.tag&i)===i){var T=c.inst,E=T.destroy;if(E!==void 0){T.destroy=void 0,g=a;var D=l,U=E;try{U()}catch(X){Ve(g,D,X)}}}c=c.next}while(c!==y)}}catch(X){Ve(a,a.return,X)}}function n_(i){var a=i.updateQueue;if(a!==null){var l=i.stateNode;try{K1(a,l)}catch(c){Ve(i,i.return,c)}}}function r_(i,a,l){l.props=Oa(i.type,i.memoizedProps),l.state=i.memoizedState;try{l.componentWillUnmount()}catch(c){Ve(i,a,c)}}function cl(i,a){try{var l=i.ref;if(l!==null){switch(i.tag){case 26:case 27:case 5:var c=i.stateNode;break;case 30:c=i.stateNode;break;default:c=i.stateNode}typeof l=="function"?i.refCleanup=l(c):l.current=c}}catch(g){Ve(i,a,g)}}function vr(i,a){var l=i.ref,c=i.refCleanup;if(l!==null)if(typeof c=="function")try{c()}catch(g){Ve(i,a,g)}finally{i.refCleanup=null,i=i.alternate,i!=null&&(i.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(g){Ve(i,a,g)}else l.current=null}function i_(i){var a=i.type,l=i.memoizedProps,c=i.stateNode;try{e:switch(a){case"button":case"input":case"select":case"textarea":l.autoFocus&&c.focus();break e;case"img":l.src?c.src=l.src:l.srcSet&&(c.srcset=l.srcSet)}}catch(g){Ve(i,i.return,g)}}function sp(i,a,l){try{var c=i.stateNode;$4(c,i.type,l,a),c[on]=a}catch(g){Ve(i,i.return,g)}}function a_(i){return i.tag===5||i.tag===3||i.tag===26||i.tag===27&&Ii(i.type)||i.tag===4}function op(i){e:for(;;){for(;i.sibling===null;){if(i.return===null||a_(i.return))return null;i=i.return}for(i.sibling.return=i.return,i=i.sibling;i.tag!==5&&i.tag!==6&&i.tag!==18;){if(i.tag===27&&Ii(i.type)||i.flags&2||i.child===null||i.tag===4)continue e;i.child.return=i,i=i.child}if(!(i.flags&2))return i.stateNode}}function lp(i,a,l){var c=i.tag;if(c===5||c===6)i=i.stateNode,a?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(i,a):(a=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,a.appendChild(i),l=l._reactRootContainer,l!=null||a.onclick!==null||(a.onclick=Lr));else if(c!==4&&(c===27&&Ii(i.type)&&(l=i.stateNode,a=null),i=i.child,i!==null))for(lp(i,a,l),i=i.sibling;i!==null;)lp(i,a,l),i=i.sibling}function Rc(i,a,l){var c=i.tag;if(c===5||c===6)i=i.stateNode,a?l.insertBefore(i,a):l.appendChild(i);else if(c!==4&&(c===27&&Ii(i.type)&&(l=i.stateNode),i=i.child,i!==null))for(Rc(i,a,l),i=i.sibling;i!==null;)Rc(i,a,l),i=i.sibling}function s_(i){var a=i.stateNode,l=i.memoizedProps;try{for(var c=i.type,g=a.attributes;g.length;)a.removeAttributeNode(g[0]);qt(a,c,l),a[It]=i,a[on]=l}catch(y){Ve(i,i.return,y)}}var Kr=!1,yt=!1,up=!1,o_=typeof WeakSet=="function"?WeakSet:Set,kt=null;function _4(i,a){if(i=i.containerInfo,kp=nf,i=b1(i),nm(i)){if("selectionStart"in i)var l={start:i.selectionStart,end:i.selectionEnd};else e:{l=(l=i.ownerDocument)&&l.defaultView||window;var c=l.getSelection&&l.getSelection();if(c&&c.rangeCount!==0){l=c.anchorNode;var g=c.anchorOffset,y=c.focusNode;c=c.focusOffset;try{l.nodeType,y.nodeType}catch{l=null;break e}var T=0,E=-1,D=-1,U=0,X=0,W=i,q=null;t:for(;;){for(var F;W!==l||g!==0&&W.nodeType!==3||(E=T+g),W!==y||c!==0&&W.nodeType!==3||(D=T+c),W.nodeType===3&&(T+=W.nodeValue.length),(F=W.firstChild)!==null;)q=W,W=F;for(;;){if(W===i)break t;if(q===l&&++U===g&&(E=T),q===y&&++X===c&&(D=T),(F=W.nextSibling)!==null)break;W=q,q=W.parentNode}W=F}l=E===-1||D===-1?null:{start:E,end:D}}else l=null}l=l||{start:0,end:0}}else l=null;for(Np={focusedElem:i,selectionRange:l},nf=!1,kt=a;kt!==null;)if(a=kt,i=a.child,(a.subtreeFlags&1028)!==0&&i!==null)i.return=a,kt=i;else for(;kt!==null;){switch(a=kt,y=a.alternate,i=a.flags,a.tag){case 0:if((i&4)!==0&&(i=a.updateQueue,i=i!==null?i.events:null,i!==null))for(l=0;l title"))),qt(y,c,l),y[It]=i,Mt(y),c=y;break e;case"link":var T=hS("link","href",g).get(c+(l.href||""));if(T){for(var E=0;EFe&&(T=Fe,Fe=we,we=T);var z=y1(E,we),R=y1(E,Fe);if(z&&R&&(F.rangeCount!==1||F.anchorNode!==z.node||F.anchorOffset!==z.offset||F.focusNode!==R.node||F.focusOffset!==R.offset)){var B=W.createRange();B.setStart(z.node,z.offset),F.removeAllRanges(),we>Fe?(F.addRange(B),F.extend(R.node,R.offset)):(B.setEnd(R.node,R.offset),F.addRange(B))}}}}for(W=[],F=E;F=F.parentNode;)F.nodeType===1&&W.push({element:F,left:F.scrollLeft,top:F.scrollTop});for(typeof E.focus=="function"&&E.focus(),E=0;El?32:l,V.T=null,l=gp,gp=null;var y=Ri,T=Zr;if(xt=0,Ps=Ri=null,Zr=0,(Ie&6)!==0)throw Error(r(331));var E=Ie;if(Ie|=4,v_(y.current),p_(y,y.current,T,l),Ie=E,gl(0,!1),xn&&typeof xn.onPostCommitFiberRoot=="function")try{xn.onPostCommitFiberRoot(Po,y)}catch{}return!0}finally{Q.p=g,V.T=c,L_(i,a)}}function I_(i,a,l){a=Bn(l,a),a=Gm(i.stateNode,a,2),i=ji(i,a,2),i!==null&&(Lo(i,2),br(i))}function Ve(i,a,l){if(i.tag===3)I_(i,i,l);else for(;a!==null;){if(a.tag===3){I_(a,i,l);break}else if(a.tag===1){var c=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof c.componentDidCatch=="function"&&(Pi===null||!Pi.has(c))){i=Bn(l,i),l=Bw(2),c=ji(a,l,2),c!==null&&(Uw(l,c,a,i),Lo(c,2),br(c));break}}a=a.return}}function xp(i,a,l){var c=i.pingCache;if(c===null){c=i.pingCache=new T4;var g=new Set;c.set(a,g)}else g=c.get(a),g===void 0&&(g=new Set,c.set(a,g));g.has(l)||(dp=!0,g.add(l),i=k4.bind(null,i,a,l),a.then(i,i))}function k4(i,a,l){var c=i.pingCache;c!==null&&c.delete(a),i.pingedLanes|=i.suspendedLanes&l,i.warmLanes&=~l,Ke===i&&(Me&l)===l&&(st===4||st===3&&(Me&62914560)===Me&&300>bn()-Ic?(Ie&2)===0&&Rs(i,0):hp|=l,Ds===Me&&(Ds=0)),br(i)}function B_(i,a){a===0&&(a=Dx()),i=ga(i,a),i!==null&&(Lo(i,a),br(i))}function N4(i){var a=i.memoizedState,l=0;a!==null&&(l=a.retryLane),B_(i,l)}function C4(i,a){var l=0;switch(i.tag){case 31:case 13:var c=i.stateNode,g=i.memoizedState;g!==null&&(l=g.retryLane);break;case 19:c=i.stateNode;break;case 22:c=i.stateNode._retryCache;break;default:throw Error(r(314))}c!==null&&c.delete(a),B_(i,l)}function D4(i,a){return Dh(i,a)}var Hc=null,zs=null,wp=!1,Kc=!1,_p=!1,zi=0;function br(i){i!==zs&&i.next===null&&(zs===null?Hc=zs=i:zs=zs.next=i),Kc=!0,wp||(wp=!0,R4())}function gl(i,a){if(!_p&&Kc){_p=!0;do for(var l=!1,c=Hc;c!==null;){if(i!==0){var g=c.pendingLanes;if(g===0)var y=0;else{var T=c.suspendedLanes,E=c.pingedLanes;y=(1<<31-wn(42|i)+1)-1,y&=g&~(T&~E),y=y&201326741?y&201326741|1:y?y|2:0}y!==0&&(l=!0,$_(c,y))}else y=Me,y=Wu(c,c===Ke?y:0,c.cancelPendingCommit!==null||c.timeoutHandle!==-1),(y&3)===0||Ro(c,y)||(l=!0,$_(c,y));c=c.next}while(l);_p=!1}}function P4(){U_()}function U_(){Kc=wp=!1;var i=0;zi!==0&&H4()&&(i=zi);for(var a=bn(),l=null,c=Hc;c!==null;){var g=c.next,y=V_(c,a);y===0?(c.next=null,l===null?Hc=g:l.next=g,g===null&&(zs=l)):(l=c,(i!==0||(y&3)!==0)&&(Kc=!0)),c=g}xt!==0&&xt!==5||gl(i),zi!==0&&(zi=0)}function V_(i,a){for(var l=i.suspendedLanes,c=i.pingedLanes,g=i.expirationTimes,y=i.pendingLanes&-62914561;0E)break;var X=D.transferSize,W=D.initiatorType;X&&Z_(W)&&(D=D.responseEnd,T+=X*(D"u"?null:document;function uS(i,a,l){var c=Is;if(c&&typeof a=="string"&&a){var g=zn(a);g='link[rel="'+i+'"][href="'+g+'"]',typeof l=="string"&&(g+='[crossorigin="'+l+'"]'),lS.has(g)||(lS.add(g),i={rel:i,crossOrigin:l,href:a},c.querySelector(g)===null&&(a=c.createElement("link"),qt(a,"link",i),Mt(a),c.head.appendChild(a)))}}function eR(i){Qr.D(i),uS("dns-prefetch",i,null)}function tR(i,a){Qr.C(i,a),uS("preconnect",i,a)}function nR(i,a,l){Qr.L(i,a,l);var c=Is;if(c&&i&&a){var g='link[rel="preload"][as="'+zn(a)+'"]';a==="image"&&l&&l.imageSrcSet?(g+='[imagesrcset="'+zn(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(g+='[imagesizes="'+zn(l.imageSizes)+'"]')):g+='[href="'+zn(i)+'"]';var y=g;switch(a){case"style":y=Bs(i);break;case"script":y=Us(i)}Hn.has(y)||(i=p({rel:"preload",href:a==="image"&&l&&l.imageSrcSet?void 0:i,as:a},l),Hn.set(y,i),c.querySelector(g)!==null||a==="style"&&c.querySelector(xl(y))||a==="script"&&c.querySelector(wl(y))||(a=c.createElement("link"),qt(a,"link",i),Mt(a),c.head.appendChild(a)))}}function rR(i,a){Qr.m(i,a);var l=Is;if(l&&i){var c=a&&typeof a.as=="string"?a.as:"script",g='link[rel="modulepreload"][as="'+zn(c)+'"][href="'+zn(i)+'"]',y=g;switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":y=Us(i)}if(!Hn.has(y)&&(i=p({rel:"modulepreload",href:i},a),Hn.set(y,i),l.querySelector(g)===null)){switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(wl(y)))return}c=l.createElement("link"),qt(c,"link",i),Mt(c),l.head.appendChild(c)}}}function iR(i,a,l){Qr.S(i,a,l);var c=Is;if(c&&i){var g=os(c).hoistableStyles,y=Bs(i);a=a||"default";var T=g.get(y);if(!T){var E={loading:0,preload:null};if(T=c.querySelector(xl(y)))E.loading=5;else{i=p({rel:"stylesheet",href:i,"data-precedence":a},l),(l=Hn.get(y))&&Ip(i,l);var D=T=c.createElement("link");Mt(D),qt(D,"link",i),D._p=new Promise(function(U,X){D.onload=U,D.onerror=X}),D.addEventListener("load",function(){E.loading|=1}),D.addEventListener("error",function(){E.loading|=2}),E.loading|=4,Zc(T,a,c)}T={type:"stylesheet",instance:T,count:1,state:E},g.set(y,T)}}}function aR(i,a){Qr.X(i,a);var l=Is;if(l&&i){var c=os(l).hoistableScripts,g=Us(i),y=c.get(g);y||(y=l.querySelector(wl(g)),y||(i=p({src:i,async:!0},a),(a=Hn.get(g))&&Bp(i,a),y=l.createElement("script"),Mt(y),qt(y,"link",i),l.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},c.set(g,y))}}function sR(i,a){Qr.M(i,a);var l=Is;if(l&&i){var c=os(l).hoistableScripts,g=Us(i),y=c.get(g);y||(y=l.querySelector(wl(g)),y||(i=p({src:i,async:!0,type:"module"},a),(a=Hn.get(g))&&Bp(i,a),y=l.createElement("script"),Mt(y),qt(y,"link",i),l.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},c.set(g,y))}}function cS(i,a,l,c){var g=(g=oe.current)?Wc(g):null;if(!g)throw Error(r(446));switch(i){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(a=Bs(l.href),l=os(g).hoistableStyles,c=l.get(a),c||(c={type:"style",instance:null,count:0,state:null},l.set(a,c)),c):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){i=Bs(l.href);var y=os(g).hoistableStyles,T=y.get(i);if(T||(g=g.ownerDocument||g,T={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},y.set(i,T),(y=g.querySelector(xl(i)))&&!y._p&&(T.instance=y,T.state.loading=5),Hn.has(i)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Hn.set(i,l),y||oR(g,i,l,T.state))),a&&c===null)throw Error(r(528,""));return T}if(a&&c!==null)throw Error(r(529,""));return null;case"script":return a=l.async,l=l.src,typeof l=="string"&&a&&typeof a!="function"&&typeof a!="symbol"?(a=Us(l),l=os(g).hoistableScripts,c=l.get(a),c||(c={type:"script",instance:null,count:0,state:null},l.set(a,c)),c):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,i))}}function Bs(i){return'href="'+zn(i)+'"'}function xl(i){return'link[rel="stylesheet"]['+i+"]"}function fS(i){return p({},i,{"data-precedence":i.precedence,precedence:null})}function oR(i,a,l,c){i.querySelector('link[rel="preload"][as="style"]['+a+"]")?c.loading=1:(a=i.createElement("link"),c.preload=a,a.addEventListener("load",function(){return c.loading|=1}),a.addEventListener("error",function(){return c.loading|=2}),qt(a,"link",l),Mt(a),i.head.appendChild(a))}function Us(i){return'[src="'+zn(i)+'"]'}function wl(i){return"script[async]"+i}function dS(i,a,l){if(a.count++,a.instance===null)switch(a.type){case"style":var c=i.querySelector('style[data-href~="'+zn(l.href)+'"]');if(c)return a.instance=c,Mt(c),c;var g=p({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return c=(i.ownerDocument||i).createElement("style"),Mt(c),qt(c,"style",g),Zc(c,l.precedence,i),a.instance=c;case"stylesheet":g=Bs(l.href);var y=i.querySelector(xl(g));if(y)return a.state.loading|=4,a.instance=y,Mt(y),y;c=fS(l),(g=Hn.get(g))&&Ip(c,g),y=(i.ownerDocument||i).createElement("link"),Mt(y);var T=y;return T._p=new Promise(function(E,D){T.onload=E,T.onerror=D}),qt(y,"link",c),a.state.loading|=4,Zc(y,l.precedence,i),a.instance=y;case"script":return y=Us(l.src),(g=i.querySelector(wl(y)))?(a.instance=g,Mt(g),g):(c=l,(g=Hn.get(y))&&(c=p({},l),Bp(c,g)),i=i.ownerDocument||i,g=i.createElement("script"),Mt(g),qt(g,"link",c),i.head.appendChild(g),a.instance=g);case"void":return null;default:throw Error(r(443,a.type))}else a.type==="stylesheet"&&(a.state.loading&4)===0&&(c=a.instance,a.state.loading|=4,Zc(c,l.precedence,i));return a.instance}function Zc(i,a,l){for(var c=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),g=c.length?c[c.length-1]:null,y=g,T=0;T title"):null)}function lR(i,a,l){if(l===1||a.itemProp!=null)return!1;switch(i){case"meta":case"title":return!0;case"style":if(typeof a.precedence!="string"||typeof a.href!="string"||a.href==="")break;return!0;case"link":if(typeof a.rel!="string"||typeof a.href!="string"||a.href===""||a.onLoad||a.onError)break;return a.rel==="stylesheet"?(i=a.disabled,typeof a.precedence=="string"&&i==null):!0;case"script":if(a.async&&typeof a.async!="function"&&typeof a.async!="symbol"&&!a.onLoad&&!a.onError&&a.src&&typeof a.src=="string")return!0}return!1}function pS(i){return!(i.type==="stylesheet"&&(i.state.loading&3)===0)}function uR(i,a,l,c){if(l.type==="stylesheet"&&(typeof c.media!="string"||matchMedia(c.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var g=Bs(c.href),y=a.querySelector(xl(g));if(y){a=y._p,a!==null&&typeof a=="object"&&typeof a.then=="function"&&(i.count++,i=Jc.bind(i),a.then(i,i)),l.state.loading|=4,l.instance=y,Mt(y);return}y=a.ownerDocument||a,c=fS(c),(g=Hn.get(g))&&Ip(c,g),y=y.createElement("link"),Mt(y);var T=y;T._p=new Promise(function(E,D){T.onload=E,T.onerror=D}),qt(y,"link",c),l.instance=y}i.stylesheets===null&&(i.stylesheets=new Map),i.stylesheets.set(l,a),(a=l.state.preload)&&(l.state.loading&3)===0&&(i.count++,l=Jc.bind(i),a.addEventListener("load",l),a.addEventListener("error",l))}}var Up=0;function cR(i,a){return i.stylesheets&&i.count===0&&tf(i,i.stylesheets),0Up?50:800)+a);return i.unsuspend=l,function(){i.unsuspend=null,clearTimeout(c),clearTimeout(g)}}:null}function Jc(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)tf(this,this.stylesheets);else if(this.unsuspend){var i=this.unsuspend;this.unsuspend=null,i()}}}var ef=null;function tf(i,a){i.stylesheets=null,i.unsuspend!==null&&(i.count++,ef=new Map,a.forEach(fR,i),ef=null,Jc.call(i))}function fR(i,a){if(!(a.state.loading&4)){var l=ef.get(i);if(l)var c=l.get(null);else{l=new Map,ef.set(i,l);for(var g=i.querySelectorAll("link[data-precedence],style[data-precedence]"),y=0;y"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Gp.exports=MR(),Gp.exports}var NR=kR();const aM=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const CR=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const DR=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const BS=e=>{const t=DR(e);return t.charAt(0).toUpperCase()+t.slice(1)};var PR={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const RR=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};const LR=A.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:s="",children:o,iconNode:u,...f},d)=>A.createElement("svg",{ref:d,...PR,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:aM("lucide",s),...!o&&!RR(f)&&{"aria-hidden":"true"},...f},[...u.map(([h,m])=>A.createElement(h,m)),...Array.isArray(o)?o:[o]]));const Be=(e,t)=>{const n=A.forwardRef(({className:r,...s},o)=>A.createElement(LR,{ref:o,iconNode:t,className:aM(`lucide-${CR(BS(e))}`,`lucide-${e}`,r),...s}));return n.displayName=BS(e),n};const zR=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],IR=Be("activity",zR);const BR=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],UR=Be("arrow-down",BR);const VR=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],qR=Be("arrow-up",VR);const $R=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],FR=Be("bot",$R);const HR=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ai=Be("chevron-down",HR);const KR=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],XR=Be("chevron-left",KR);const YR=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],sM=Be("chevron-right",YR);const GR=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Xy=Be("circle-check",GR);const WR=[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]],ZR=Be("code",WR);const QR=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],JR=Be("database",QR);const e6=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],t6=Be("external-link",e6);const n6=[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]],r6=Be("github",n6);const i6=[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]],US=Be("lightbulb",i6);const a6=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],s6=Be("menu",a6);const o6=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],oM=Be("message-square",o6);const l6=[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]],u6=Be("moon",l6);const c6=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]],f6=Be("pause",c6);const d6=[["path",{d:"M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z",key:"1v9wt8"}]],h6=Be("plane",d6);const m6=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],p6=Be("play",m6);const g6=[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]],y6=Be("rocket",g6);const v6=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],b6=Be("search",v6);const x6=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],w6=Be("shield",x6);const _6=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]],S6=Be("sun",_6);const A6=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],lM=Be("target",A6);const T6=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Jl=Be("triangle-alert",T6);const O6=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],Yy=Be("user",O6);const E6=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]],Gy=Be("volume-2",E6);const j6=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]],M6=Be("volume-x",j6);const k6=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],p0=Be("wrench",k6);const N6=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],uM=Be("x",N6),VS=[{id:"intro",label:"Intro"},{id:"architecture",label:"Architecture"},{id:"metrics",label:"Methodology"},{id:"early-results",label:"Early Results"},{id:"demo",label:"Demo"},{id:"limitations",label:"Limitations & Future"},{id:"acknowledgements",label:"Contributors"}];function C6({activeTab:e,onTabChange:t,theme:n,onToggleTheme:r}){const[s,o]=A.useState(!1),u=f=>{t(f),o(!1)};return b.jsxs("nav",{className:"fixed top-0 left-0 right-0 z-50 bg-bg-primary/80 backdrop-blur-xl border-b border-border-default",children:[b.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:b.jsxs("div",{className:"flex items-center justify-between h-16",children:[b.jsx("button",{onClick:()=>o(!s),className:"md:hidden w-9 h-9 rounded-lg flex items-center justify-center text-text-muted hover:text-text-primary hover:bg-bg-hover transition-colors","aria-label":s?"Close menu":"Open menu",children:s?b.jsx(uM,{className:"w-5 h-5"}):b.jsx(s6,{className:"w-5 h-5"})}),b.jsx("div",{className:"hidden md:block w-0"}),b.jsx("div",{className:"hidden md:flex items-center gap-4",children:VS.map(f=>b.jsx("a",{href:`#${f.id}`,onClick:d=>{d.preventDefault(),t(f.id)},className:`px-4 py-2 rounded-lg text-base font-semibold transition-colors no-underline ${e===f.id?"text-purple-light bg-purple/15 border border-purple/30":"text-text-primary/80 hover:text-text-primary hover:bg-bg-hover border border-transparent"}`,children:f.label},f.id))}),b.jsx("button",{onClick:r,className:"w-9 h-9 rounded-lg flex items-center justify-center text-text-muted hover:text-text-primary hover:bg-bg-hover transition-colors","aria-label":`Switch to ${n==="dark"?"light":"dark"} mode`,children:n==="dark"?b.jsx(S6,{className:"w-4.5 h-4.5"}):b.jsx(u6,{className:"w-4.5 h-4.5"})})]})}),s&&b.jsx("div",{className:"md:hidden border-t border-border-default bg-bg-primary/95 backdrop-blur-xl",children:b.jsx("div",{className:"px-4 py-3 space-y-1",children:VS.map(f=>b.jsx("a",{href:`#${f.id}`,onClick:d=>{d.preventDefault(),u(f.id)},className:`block px-4 py-3 rounded-lg text-base font-semibold transition-colors no-underline ${e===f.id?"text-purple-light bg-purple/15 border border-purple/30":"text-text-primary/80 hover:text-text-primary hover:bg-bg-hover border border-transparent"}`,children:f.label},f.id))})})]})}const g0=A.createContext({});function y0(e){const t=A.useRef(null);return t.current===null&&(t.current=e()),t.current}const D6=typeof window<"u",cM=D6?A.useLayoutEffect:A.useEffect,Fd=A.createContext(null);function v0(e,t){e.indexOf(t)===-1&&e.push(t)}function Ff(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Mr=(e,t,n)=>n>t?t:n{};const si={},fM=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function dM(e){return typeof e=="object"&&e!==null}const hM=e=>/^0[^.\s]+$/u.test(e);function mM(e){let t;return()=>(t===void 0&&(t=e()),t)}const Jn=e=>e,P6=(e,t)=>n=>t(e(n)),wu=(...e)=>e.reduce(P6),eu=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r};class x0{constructor(){this.subscriptions=[]}add(t){return v0(this.subscriptions,t),()=>Ff(this.subscriptions,t)}notify(t,n,r){const s=this.subscriptions.length;if(s)if(s===1)this.subscriptions[0](t,n,r);else for(let o=0;oe*1e3,Gn=e=>e/1e3;function pM(e,t){return t?e*(1e3/t):0}const gM=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,R6=1e-7,L6=12;function z6(e,t,n,r,s){let o,u,f=0;do u=t+(n-t)/2,o=gM(u,r,s)-e,o>0?n=u:t=u;while(Math.abs(o)>R6&&++fz6(o,0,1,e,n);return o=>o===0||o===1?o:gM(s(o),t,r)}const yM=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,vM=e=>t=>1-e(1-t),bM=_u(.33,1.53,.69,.99),w0=vM(bM),xM=yM(w0),wM=e=>(e*=2)<1?.5*w0(e):.5*(2-Math.pow(2,-10*(e-1))),_0=e=>1-Math.sin(Math.acos(e)),_M=vM(_0),SM=yM(_0),I6=_u(.42,0,1,1),B6=_u(0,0,.58,1),AM=_u(.42,0,.58,1),U6=e=>Array.isArray(e)&&typeof e[0]!="number",TM=e=>Array.isArray(e)&&typeof e[0]=="number",V6={linear:Jn,easeIn:I6,easeInOut:AM,easeOut:B6,circIn:_0,circInOut:SM,circOut:_M,backIn:w0,backInOut:xM,backOut:bM,anticipate:wM},q6=e=>typeof e=="string",qS=e=>{if(TM(e)){b0(e.length===4);const[t,n,r,s]=e;return _u(t,n,r,s)}else if(q6(e))return V6[e];return e},cf=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function $6(e,t){let n=new Set,r=new Set,s=!1,o=!1;const u=new WeakSet;let f={delta:0,timestamp:0,isProcessing:!1};function d(m){u.has(m)&&(h.schedule(m),e()),m(f)}const h={schedule:(m,p=!1,v=!1)=>{const w=v&&s?n:r;return p&&u.add(m),w.has(m)||w.add(m),m},cancel:m=>{r.delete(m),u.delete(m)},process:m=>{if(f=m,s){o=!0;return}s=!0,[n,r]=[r,n],n.forEach(d),n.clear(),s=!1,o&&(o=!1,h.process(m))}};return h}const F6=40;function OM(e,t){let n=!1,r=!0;const s={delta:0,timestamp:0,isProcessing:!1},o=()=>n=!0,u=cf.reduce((j,k)=>(j[k]=$6(o),j),{}),{setup:f,read:d,resolveKeyframes:h,preUpdate:m,update:p,preRender:v,render:x,postRender:w}=u,_=()=>{const j=si.useManualTiming?s.timestamp:performance.now();n=!1,si.useManualTiming||(s.delta=r?1e3/60:Math.max(Math.min(j-s.timestamp,F6),1)),s.timestamp=j,s.isProcessing=!0,f.process(s),d.process(s),h.process(s),m.process(s),p.process(s),v.process(s),x.process(s),w.process(s),s.isProcessing=!1,n&&t&&(r=!1,e(_))},S=()=>{n=!0,r=!0,s.isProcessing||e(_)};return{schedule:cf.reduce((j,k)=>{const N=u[k];return j[k]=(C,L=!1,I=!1)=>(n||S(),N.schedule(C,L,I)),j},{}),cancel:j=>{for(let k=0;k(Cf===void 0&&tn.set(Ft.isProcessing||si.useManualTiming?Ft.timestamp:performance.now()),Cf),set:e=>{Cf=e,queueMicrotask(H6)}},EM=e=>t=>typeof t=="string"&&t.startsWith(e),jM=EM("--"),K6=EM("var(--"),S0=e=>K6(e)?X6.test(e.split("/*")[0].trim()):!1,X6=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function $S(e){return typeof e!="string"?!1:e.split("/*")[0].includes("var(--")}const vo={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},tu={...vo,transform:e=>Mr(0,1,e)},ff={...vo,default:1},Xl=e=>Math.round(e*1e5)/1e5,A0=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Y6(e){return e==null}const G6=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,T0=(e,t)=>n=>!!(typeof n=="string"&&G6.test(n)&&n.startsWith(e)||t&&!Y6(n)&&Object.prototype.hasOwnProperty.call(n,t)),MM=(e,t,n)=>r=>{if(typeof r!="string")return r;const[s,o,u,f]=r.match(A0);return{[e]:parseFloat(s),[t]:parseFloat(o),[n]:parseFloat(u),alpha:f!==void 0?parseFloat(f):1}},W6=e=>Mr(0,255,e),eg={...vo,transform:e=>Math.round(W6(e))},Ia={test:T0("rgb","red"),parse:MM("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+eg.transform(e)+", "+eg.transform(t)+", "+eg.transform(n)+", "+Xl(tu.transform(r))+")"};function Z6(e){let t="",n="",r="",s="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),s=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),s=e.substring(4,5),t+=t,n+=n,r+=r,s+=s),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:s?parseInt(s,16)/255:1}}const Wy={test:T0("#"),parse:Z6,transform:Ia.transform},Su=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),Yi=Su("deg"),Or=Su("%"),de=Su("px"),Q6=Su("vh"),J6=Su("vw"),FS={...Or,parse:e=>Or.parse(e)/100,transform:e=>Or.transform(e*100)},Qs={test:T0("hsl","hue"),parse:MM("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+Or.transform(Xl(t))+", "+Or.transform(Xl(n))+", "+Xl(tu.transform(r))+")"},vt={test:e=>Ia.test(e)||Wy.test(e)||Qs.test(e),parse:e=>Ia.test(e)?Ia.parse(e):Qs.test(e)?Qs.parse(e):Wy.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?Ia.transform(e):Qs.transform(e),getAnimatableNone:e=>{const t=vt.parse(e);return t.alpha=0,vt.transform(t)}},eL=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function tL(e){return isNaN(e)&&typeof e=="string"&&(e.match(A0)?.length||0)+(e.match(eL)?.length||0)>0}const kM="number",NM="color",nL="var",rL="var(",HS="${}",iL=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function nu(e){const t=e.toString(),n=[],r={color:[],number:[],var:[]},s=[];let o=0;const f=t.replace(iL,d=>(vt.test(d)?(r.color.push(o),s.push(NM),n.push(vt.parse(d))):d.startsWith(rL)?(r.var.push(o),s.push(nL),n.push(d)):(r.number.push(o),s.push(kM),n.push(parseFloat(d))),++o,HS)).split(HS);return{values:n,split:f,indexes:r,types:s}}function CM(e){return nu(e).values}function DM(e){const{split:t,types:n}=nu(e),r=t.length;return s=>{let o="";for(let u=0;utypeof e=="number"?0:vt.test(e)?vt.getAnimatableNone(e):e;function sL(e){const t=CM(e);return DM(e)(t.map(aL))}const dr={test:tL,parse:CM,createTransformer:DM,getAnimatableNone:sL};function tg(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function oL({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let s=0,o=0,u=0;if(!t)s=o=u=n;else{const f=n<.5?n*(1+t):n+t-n*t,d=2*n-f;s=tg(d,f,e+1/3),o=tg(d,f,e),u=tg(d,f,e-1/3)}return{red:Math.round(s*255),green:Math.round(o*255),blue:Math.round(u*255),alpha:r}}function Hf(e,t){return n=>n>0?t:e}const rt=(e,t,n)=>e+(t-e)*n,ng=(e,t,n)=>{const r=e*e,s=n*(t*t-r)+r;return s<0?0:Math.sqrt(s)},lL=[Wy,Ia,Qs],uL=e=>lL.find(t=>t.test(e));function KS(e){const t=uL(e);if(!t)return!1;let n=t.parse(e);return t===Qs&&(n=oL(n)),n}const XS=(e,t)=>{const n=KS(e),r=KS(t);if(!n||!r)return Hf(e,t);const s={...n};return o=>(s.red=ng(n.red,r.red,o),s.green=ng(n.green,r.green,o),s.blue=ng(n.blue,r.blue,o),s.alpha=rt(n.alpha,r.alpha,o),Ia.transform(s))},Zy=new Set(["none","hidden"]);function cL(e,t){return Zy.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function fL(e,t){return n=>rt(e,t,n)}function O0(e){return typeof e=="number"?fL:typeof e=="string"?S0(e)?Hf:vt.test(e)?XS:mL:Array.isArray(e)?PM:typeof e=="object"?vt.test(e)?XS:dL:Hf}function PM(e,t){const n=[...e],r=n.length,s=e.map((o,u)=>O0(o)(o,t[u]));return o=>{for(let u=0;u{for(const o in r)n[o]=r[o](s);return n}}function hL(e,t){const n=[],r={color:0,var:0,number:0};for(let s=0;s{const n=dr.createTransformer(t),r=nu(e),s=nu(t);return r.indexes.var.length===s.indexes.var.length&&r.indexes.color.length===s.indexes.color.length&&r.indexes.number.length>=s.indexes.number.length?Zy.has(e)&&!s.values.length||Zy.has(t)&&!r.values.length?cL(e,t):wu(PM(hL(r,s),s.values),n):Hf(e,t)};function RM(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?rt(e,t,n):O0(e)(e,t)}const pL=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>Ge.update(t,n),stop:()=>na(t),now:()=>Ft.isProcessing?Ft.timestamp:tn.now()}},LM=(e,t,n=10)=>{let r="";const s=Math.max(Math.round(t/n),2);for(let o=0;o=Kf?1/0:t}function gL(e,t=100,n){const r=n({...e,keyframes:[0,t]}),s=Math.min(E0(r),Kf);return{type:"keyframes",ease:o=>r.next(s*o).value/t,duration:Gn(s)}}const yL=5;function zM(e,t,n){const r=Math.max(t-yL,0);return pM(n-e(r),t-r)}const lt={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},rg=.001;function vL({duration:e=lt.duration,bounce:t=lt.bounce,velocity:n=lt.velocity,mass:r=lt.mass}){let s,o,u=1-t;u=Mr(lt.minDamping,lt.maxDamping,u),e=Mr(lt.minDuration,lt.maxDuration,Gn(e)),u<1?(s=h=>{const m=h*u,p=m*e,v=m-n,x=Qy(h,u),w=Math.exp(-p);return rg-v/x*w},o=h=>{const p=h*u*e,v=p*n+n,x=Math.pow(u,2)*Math.pow(h,2)*e,w=Math.exp(-p),_=Qy(Math.pow(h,2),u);return(-s(h)+rg>0?-1:1)*((v-x)*w)/_}):(s=h=>{const m=Math.exp(-h*e),p=(h-n)*e+1;return-rg+m*p},o=h=>{const m=Math.exp(-h*e),p=(n-h)*(e*e);return m*p});const f=5/e,d=xL(s,o,f);if(e=fr(e),isNaN(d))return{stiffness:lt.stiffness,damping:lt.damping,duration:e};{const h=Math.pow(d,2)*r;return{stiffness:h,damping:u*2*Math.sqrt(r*h),duration:e}}}const bL=12;function xL(e,t,n){let r=n;for(let s=1;se[n]!==void 0)}function SL(e){let t={velocity:lt.velocity,stiffness:lt.stiffness,damping:lt.damping,mass:lt.mass,isResolvedFromDuration:!1,...e};if(!YS(e,_L)&&YS(e,wL))if(t.velocity=0,e.visualDuration){const n=e.visualDuration,r=2*Math.PI/(n*1.2),s=r*r,o=2*Mr(.05,1,1-(e.bounce||0))*Math.sqrt(s);t={...t,mass:lt.mass,stiffness:s,damping:o}}else{const n=vL({...e,velocity:0});t={...t,...n,mass:lt.mass},t.isResolvedFromDuration=!0}return t}function Xf(e=lt.visualDuration,t=lt.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:r,restDelta:s}=n;const o=n.keyframes[0],u=n.keyframes[n.keyframes.length-1],f={done:!1,value:o},{stiffness:d,damping:h,mass:m,duration:p,velocity:v,isResolvedFromDuration:x}=SL({...n,velocity:-Gn(n.velocity||0)}),w=v||0,_=h/(2*Math.sqrt(d*m)),S=u-o,O=Gn(Math.sqrt(d/m)),M=Math.abs(S)<5;r||(r=M?lt.restSpeed.granular:lt.restSpeed.default),s||(s=M?lt.restDelta.granular:lt.restDelta.default);let j;if(_<1){const N=Qy(O,_);j=C=>{const L=Math.exp(-_*O*C);return u-L*((w+_*O*S)/N*Math.sin(N*C)+S*Math.cos(N*C))}}else if(_===1)j=N=>u-Math.exp(-O*N)*(S+(w+O*S)*N);else{const N=O*Math.sqrt(_*_-1);j=C=>{const L=Math.exp(-_*O*C),I=Math.min(N*C,300);return u-L*((w+_*O*S)*Math.sinh(I)+N*S*Math.cosh(I))/N}}const k={calculatedDuration:x&&p||null,next:N=>{const C=j(N);if(x)f.done=N>=p;else{let L=N===0?w:0;_<1&&(L=N===0?fr(w):zM(j,N,C));const I=Math.abs(L)<=r,Y=Math.abs(u-C)<=s;f.done=I&&Y}return f.value=f.done?u:C,f},toString:()=>{const N=Math.min(E0(k),Kf),C=LM(L=>k.next(N*L).value,N,30);return N+"ms "+C},toTransition:()=>{}};return k}Xf.applyToOptions=e=>{const t=gL(e,100,Xf);return e.ease=t.ease,e.duration=fr(t.duration),e.type="keyframes",e};function Jy({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:s=10,bounceStiffness:o=500,modifyTarget:u,min:f,max:d,restDelta:h=.5,restSpeed:m}){const p=e[0],v={done:!1,value:p},x=I=>f!==void 0&&Id,w=I=>f===void 0?d:d===void 0||Math.abs(f-I)-_*Math.exp(-I/r),j=I=>O+M(I),k=I=>{const Y=M(I),te=j(I);v.done=Math.abs(Y)<=h,v.value=v.done?O:te};let N,C;const L=I=>{x(v.value)&&(N=I,C=Xf({keyframes:[v.value,w(v.value)],velocity:zM(j,I,v.value),damping:s,stiffness:o,restDelta:h,restSpeed:m}))};return L(0),{calculatedDuration:null,next:I=>{let Y=!1;return!C&&N===void 0&&(Y=!0,k(I),L(I)),N!==void 0&&I>=N?C.next(I-N):(!Y&&k(I),v)}}}function AL(e,t,n){const r=[],s=n||si.mix||RM,o=e.length-1;for(let u=0;ut[0];if(o===2&&t[0]===t[1])return()=>t[1];const u=e[0]===e[1];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const f=AL(t,r,s),d=f.length,h=m=>{if(u&&m1)for(;ph(Mr(e[0],e[o-1],m)):h}function OL(e,t){const n=e[e.length-1];for(let r=1;r<=t;r++){const s=eu(0,t,r);e.push(rt(n,1,s))}}function EL(e){const t=[0];return OL(t,e.length-1),t}function jL(e,t){return e.map(n=>n*t)}function ML(e,t){return e.map(()=>t||AM).splice(0,e.length-1)}function Yl({duration:e=300,keyframes:t,times:n,ease:r="easeInOut"}){const s=U6(r)?r.map(qS):qS(r),o={done:!1,value:t[0]},u=jL(n&&n.length===t.length?n:EL(t),e),f=TL(u,t,{ease:Array.isArray(s)?s:ML(t,s)});return{calculatedDuration:e,next:d=>(o.value=f(d),o.done=d>=e,o)}}const kL=e=>e!==null;function j0(e,{repeat:t,repeatType:n="loop"},r,s=1){const o=e.filter(kL),f=s<0||t&&n!=="loop"&&t%2===1?0:o.length-1;return!f||r===void 0?o[f]:r}const NL={decay:Jy,inertia:Jy,tween:Yl,keyframes:Yl,spring:Xf};function IM(e){typeof e.type=="string"&&(e.type=NL[e.type])}class M0{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const CL=e=>e/100;class k0 extends M0{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==tn.now()&&this.tick(tn.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;IM(t);const{type:n=Yl,repeat:r=0,repeatDelay:s=0,repeatType:o,velocity:u=0}=t;let{keyframes:f}=t;const d=n||Yl;d!==Yl&&typeof f[0]!="number"&&(this.mixKeyframes=wu(CL,RM(f[0],f[1])),f=[0,100]);const h=d({...t,keyframes:f});o==="mirror"&&(this.mirroredGenerator=d({...t,keyframes:[...f].reverse(),velocity:-u})),h.calculatedDuration===null&&(h.calculatedDuration=E0(h));const{calculatedDuration:m}=h;this.calculatedDuration=m,this.resolvedDuration=m+s,this.totalDuration=this.resolvedDuration*(r+1)-s,this.generator=h}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:r,totalDuration:s,mixKeyframes:o,mirroredGenerator:u,resolvedDuration:f,calculatedDuration:d}=this;if(this.startTime===null)return r.next(0);const{delay:h=0,keyframes:m,repeat:p,repeatType:v,repeatDelay:x,type:w,onUpdate:_,finalKeyframe:S}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-s/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const O=this.currentTime-h*(this.playbackSpeed>=0?1:-1),M=this.playbackSpeed>=0?O<0:O>s;this.currentTime=Math.max(O,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=s);let j=this.currentTime,k=r;if(p){const I=Math.min(this.currentTime,s)/f;let Y=Math.floor(I),te=I%1;!te&&I>=1&&(te=1),te===1&&Y--,Y=Math.min(Y,p+1),Y%2&&(v==="reverse"?(te=1-te,x&&(te-=x/f)):v==="mirror"&&(k=u)),j=Mr(0,1,te)*f}const N=M?{done:!1,value:m[0]}:k.next(j);o&&!M&&(N.value=o(N.value));let{done:C}=N;!M&&d!==null&&(C=this.playbackSpeed>=0?this.currentTime>=s:this.currentTime<=0);const L=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&C);return L&&w!==Jy&&(N.value=j0(m,this.options,S,this.speed)),_&&_(N.value),L&&this.finish(),N}then(t,n){return this.finished.then(t,n)}get duration(){return Gn(this.calculatedDuration)}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(this.currentTime)}set time(t){t=fr(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),this.driver?this.driver.start(!1):(this.startTime=0,this.state="paused",this.holdTime=t,this.tick(t))}get speed(){return this.playbackSpeed}set speed(t){const n=this.playbackSpeed!==t;n&&this.driver&&this.updateTime(tn.now()),this.playbackSpeed=t,n&&this.driver&&(this.time=Gn(this.currentTime))}play(){if(this.isStopped)return;const{driver:t=pL,startTime:n}=this.options;this.driver||(this.driver=t(s=>this.tick(s))),this.options.onPlay?.();const r=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=r):this.holdTime!==null?this.startTime=r-this.holdTime:this.startTime||(this.startTime=n??r),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(tn.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),t.observe(this)}}function DL(e){for(let t=1;te*180/Math.PI,ev=e=>{const t=Ba(Math.atan2(e[1],e[0]));return tv(t)},PL={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:ev,rotateZ:ev,skewX:e=>Ba(Math.atan(e[1])),skewY:e=>Ba(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},tv=e=>(e=e%360,e<0&&(e+=360),e),GS=ev,WS=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),ZS=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),RL={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:WS,scaleY:ZS,scale:e=>(WS(e)+ZS(e))/2,rotateX:e=>tv(Ba(Math.atan2(e[6],e[5]))),rotateY:e=>tv(Ba(Math.atan2(-e[2],e[0]))),rotateZ:GS,rotate:GS,skewX:e=>Ba(Math.atan(e[4])),skewY:e=>Ba(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function nv(e){return e.includes("scale")?1:0}function rv(e,t){if(!e||e==="none")return nv(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let r,s;if(n)r=RL,s=n;else{const f=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=PL,s=f}if(!s)return nv(t);const o=r[t],u=s[1].split(",").map(zL);return typeof o=="function"?o(u):u[o]}const LL=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return rv(n,t)};function zL(e){return parseFloat(e.trim())}const bo=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],xo=new Set(bo),QS=e=>e===vo||e===de,IL=new Set(["x","y","z"]),BL=bo.filter(e=>!IL.has(e));function UL(e){const t=[];return BL.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t}const Qi={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>rv(t,"x"),y:(e,{transform:t})=>rv(t,"y")};Qi.translateX=Qi.x;Qi.translateY=Qi.y;const Fa=new Set;let iv=!1,av=!1,sv=!1;function BM(){if(av){const e=Array.from(Fa).filter(r=>r.needsMeasurement),t=new Set(e.map(r=>r.element)),n=new Map;t.forEach(r=>{const s=UL(r);s.length&&(n.set(r,s),r.render())}),e.forEach(r=>r.measureInitialState()),t.forEach(r=>{r.render();const s=n.get(r);s&&s.forEach(([o,u])=>{r.getValue(o)?.set(u)})}),e.forEach(r=>r.measureEndState()),e.forEach(r=>{r.suspendedScrollY!==void 0&&window.scrollTo(0,r.suspendedScrollY)})}av=!1,iv=!1,Fa.forEach(e=>e.complete(sv)),Fa.clear()}function UM(){Fa.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(av=!0)})}function VL(){sv=!0,UM(),BM(),sv=!1}class N0{constructor(t,n,r,s,o,u=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=r,this.motionValue=s,this.element=o,this.isAsync=u}scheduleResolve(){this.state="scheduled",this.isAsync?(Fa.add(this),iv||(iv=!0,Ge.read(UM),Ge.resolveKeyframes(BM))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:r,motionValue:s}=this;if(t[0]===null){const o=s?.get(),u=t[t.length-1];if(o!==void 0)t[0]=o;else if(r&&n){const f=r.readValue(n,u);f!=null&&(t[0]=f)}t[0]===void 0&&(t[0]=u),s&&o===void 0&&s.set(t[0])}DL(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),Fa.delete(this)}cancel(){this.state==="scheduled"&&(Fa.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const qL=e=>e.startsWith("--");function VM(e,t,n){qL(t)?e.style.setProperty(t,n):e.style[t]=n}const $L={};function qM(e,t){const n=mM(e);return()=>$L[t]??n()}const FL=qM(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),$M=qM(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),$l=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,JS={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:$l([0,.65,.55,1]),circOut:$l([.55,0,1,.45]),backIn:$l([.31,.01,.66,-.59]),backOut:$l([.33,1.53,.69,.99])};function FM(e,t){if(e)return typeof e=="function"?$M()?LM(e,t):"ease-out":TM(e)?$l(e):Array.isArray(e)?e.map(n=>FM(n,t)||JS.easeOut):JS[e]}function HL(e,t,n,{delay:r=0,duration:s=300,repeat:o=0,repeatType:u="loop",ease:f="easeOut",times:d}={},h=void 0){const m={[t]:n};d&&(m.offset=d);const p=FM(f,s);Array.isArray(p)&&(m.easing=p);const v={delay:r,duration:s,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:o+1,direction:u==="reverse"?"alternate":"normal"};return h&&(v.pseudoElement=h),e.animate(m,v)}function HM(e){return typeof e=="function"&&"applyToOptions"in e}function KL({type:e,...t}){return HM(e)&&$M()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class KM extends M0{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!t)return;const{element:n,name:r,keyframes:s,pseudoElement:o,allowFlatten:u=!1,finalKeyframe:f,onComplete:d}=t;this.isPseudoElement=!!o,this.allowFlatten=u,this.options=t,b0(typeof t.type!="string");const h=KL(t);this.animation=HL(n,r,s,h,o),h.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!o){const m=j0(s,this.options,f,this.speed);this.updateMotionValue&&this.updateMotionValue(m),VM(n,r,m),this.animation.cancel()}d?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){const t=this.options?.element;!this.isPseudoElement&&t?.isConnected&&this.animation.commitStyles?.()}get duration(){const t=this.animation.effect?.getComputedTiming?.().duration||0;return Gn(Number(t))}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(Number(this.animation.currentTime)||0)}set time(t){const n=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=fr(t),n&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(t){this.manualStartTime=this.animation.startTime=t}attachTimeline({timeline:t,rangeStart:n,rangeEnd:r,observe:s}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,t&&FL()?(this.animation.timeline=t,n&&(this.animation.rangeStart=n),r&&(this.animation.rangeEnd=r),Jn):s(this)}}const XM={anticipate:wM,backInOut:xM,circInOut:SM};function XL(e){return e in XM}function YL(e){typeof e.ease=="string"&&XL(e.ease)&&(e.ease=XM[e.ease])}const ig=10;class GL extends KM{constructor(t){YL(t),IM(t),super(t),t.startTime!==void 0&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:r,onComplete:s,element:o,...u}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const f=new k0({...u,autoplay:!1}),d=Math.max(ig,tn.now()-this.startTime),h=Mr(0,ig,d-ig),m=f.sample(d).value,{name:p}=this.options;o&&p&&VM(o,p,m),n.setWithVelocity(f.sample(Math.max(0,d-h)).value,m,h),f.stop()}}const eA=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(dr.test(e)||e==="0")&&!e.startsWith("url("));function WL(e){const t=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function e8(e){const{motionValue:t,name:n,repeatDelay:r,repeatType:s,damping:o,type:u}=e;if(!(t?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:d,transformTemplate:h}=t.owner.getProps();return JL()&&n&&QL.has(n)&&(n!=="transform"||!h)&&!d&&!r&&s!=="mirror"&&o!==0&&u!=="inertia"}const t8=40;class n8 extends M0{constructor({autoplay:t=!0,delay:n=0,type:r="keyframes",repeat:s=0,repeatDelay:o=0,repeatType:u="loop",keyframes:f,name:d,motionValue:h,element:m,...p}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=tn.now();const v={autoplay:t,delay:n,type:r,repeat:s,repeatDelay:o,repeatType:u,name:d,motionValue:h,element:m,...p},x=m?.KeyframeResolver||N0;this.keyframeResolver=new x(f,(w,_,S)=>this.onKeyframesResolved(w,_,v,!S),d,h,m),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(t,n,r,s){this.keyframeResolver=void 0;const{name:o,type:u,velocity:f,delay:d,isHandoff:h,onUpdate:m}=r;this.resolvedAt=tn.now(),ZL(t,o,u,f)||((si.instantAnimations||!d)&&m?.(j0(t,r,n)),t[0]=t[t.length-1],ov(r),r.repeat=0);const v={startTime:s?this.resolvedAt?this.resolvedAt-this.createdAt>t8?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...r,keyframes:t},x=!h&&e8(v),w=v.motionValue?.owner?.current,_=x?new GL({...v,element:w}):new k0(v);_.finished.then(()=>{this.notifyFinished()}).catch(Jn),this.pendingTimeline&&(this.stopTimeline=_.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=_}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),VL()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}function YM(e,t,n,r=0,s=1){const o=Array.from(e).sort((h,m)=>h.sortNodePosition(m)).indexOf(t),u=e.size,f=(u-1)*r;return typeof n=="function"?n(o,u):s===1?o*r:f-o*r}const r8=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function i8(e){const t=r8.exec(e);if(!t)return[,];const[,n,r,s]=t;return[`--${n??r}`,s]}function GM(e,t,n=1){const[r,s]=i8(e);if(!r)return;const o=window.getComputedStyle(t).getPropertyValue(r);if(o){const u=o.trim();return fM(u)?parseFloat(u):u}return S0(s)?GM(s,t,n+1):s}const a8={type:"spring",stiffness:500,damping:25,restSpeed:10},s8=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),o8={type:"keyframes",duration:.8},l8={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},u8=(e,{keyframes:t})=>t.length>2?o8:xo.has(e)?e.startsWith("scale")?s8(t[1]):a8:l8,c8=e=>e!==null;function f8(e,{repeat:t,repeatType:n="loop"},r){const s=e.filter(c8),o=t&&n!=="loop"&&t%2===1?0:s.length-1;return s[o]}function WM(e,t){if(e?.inherit&&t){const{inherit:n,...r}=e;return{...t,...r}}return e}function C0(e,t){const n=e?.[t]??e?.default??e;return n!==e?WM(n,e):n}function d8({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:s,repeat:o,repeatType:u,repeatDelay:f,from:d,elapsed:h,...m}){return!!Object.keys(m).length}const D0=(e,t,n,r={},s,o)=>u=>{const f=C0(r,e)||{},d=f.delay||r.delay||0;let{elapsed:h=0}=r;h=h-fr(d);const m={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...f,delay:-h,onUpdate:v=>{t.set(v),f.onUpdate&&f.onUpdate(v)},onComplete:()=>{u(),f.onComplete&&f.onComplete()},name:e,motionValue:t,element:o?void 0:s};d8(f)||Object.assign(m,u8(e,m)),m.duration&&(m.duration=fr(m.duration)),m.repeatDelay&&(m.repeatDelay=fr(m.repeatDelay)),m.from!==void 0&&(m.keyframes[0]=m.from);let p=!1;if((m.type===!1||m.duration===0&&!m.repeatDelay)&&(ov(m),m.delay===0&&(p=!0)),(si.instantAnimations||si.skipAnimations||s?.shouldSkipAnimations)&&(p=!0,ov(m),m.delay=0),m.allowFlatten=!f.type&&!f.ease,p&&!o&&t.get()!==void 0){const v=f8(m.keyframes,f);if(v!==void 0){Ge.update(()=>{m.onUpdate(v),m.onComplete()});return}}return f.isSync?new k0(m):new n8(m)};function tA(e){const t=[{},{}];return e?.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function P0(e,t,n,r){if(typeof t=="function"){const[s,o]=tA(r);t=t(n!==void 0?n:e.custom,s,o)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[s,o]=tA(r);t=t(n!==void 0?n:e.custom,s,o)}return t}function ao(e,t,n){const r=e.getProps();return P0(r,t,n!==void 0?n:r.custom,e)}const ZM=new Set(["width","height","top","left","right","bottom",...bo]),nA=30,h8=e=>!isNaN(parseFloat(e));class m8{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=r=>{const s=tn.now();if(this.updatedAt!==s&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(r),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=tn.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=h8(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new x0);const r=this.events[t].add(n);return t==="change"?()=>{r(),Ge.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,r){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-r}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=tn.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>nA)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,nA);return pM(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function uo(e,t){return new m8(e,t)}const lv=e=>Array.isArray(e);function p8(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,uo(n))}function g8(e){return lv(e)?e[e.length-1]||0:e}function y8(e,t){const n=ao(e,t);let{transitionEnd:r={},transition:s={},...o}=n||{};o={...o,...r};for(const u in o){const f=g8(o[u]);p8(e,u,f)}}const Zt=e=>!!(e&&e.getVelocity);function v8(e){return!!(Zt(e)&&e.add)}function uv(e,t){const n=e.getValue("willChange");if(v8(n))return n.add(t);if(!n&&si.WillChange){const r=new si.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function R0(e){return e.replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}const b8="framerAppearId",QM="data-"+R0(b8);function JM(e){return e.props[QM]}function x8({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function ek(e,t,{delay:n=0,transitionOverride:r,type:s}={}){let{transition:o,transitionEnd:u,...f}=t;const d=e.getDefaultTransition();o=o?WM(o,d):d;const h=o?.reduceMotion;r&&(o=r);const m=[],p=s&&e.animationState&&e.animationState.getState()[s];for(const v in f){const x=e.getValue(v,e.latestValues[v]??null),w=f[v];if(w===void 0||p&&x8(p,v))continue;const _={delay:n,...C0(o||{},v)},S=x.get();if(S!==void 0&&!x.isAnimating&&!Array.isArray(w)&&w===S&&!_.velocity)continue;let O=!1;if(window.MotionHandoffAnimation){const k=JM(e);if(k){const N=window.MotionHandoffAnimation(k,v,Ge);N!==null&&(_.startTime=N,O=!0)}}uv(e,v);const M=h??e.shouldReduceMotion;x.start(D0(v,x,w,M&&ZM.has(v)?{type:!1}:_,e,O));const j=x.animation;j&&m.push(j)}if(u){const v=()=>Ge.update(()=>{u&&y8(e,u)});m.length?Promise.all(m).then(v):v()}return m}function cv(e,t,n={}){const r=ao(e,t,n.type==="exit"?e.presenceContext?.custom:void 0);let{transition:s=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(s=n.transitionOverride);const o=r?()=>Promise.all(ek(e,r,n)):()=>Promise.resolve(),u=e.variantChildren&&e.variantChildren.size?(d=0)=>{const{delayChildren:h=0,staggerChildren:m,staggerDirection:p}=s;return w8(e,t,d,h,m,p,n)}:()=>Promise.resolve(),{when:f}=s;if(f){const[d,h]=f==="beforeChildren"?[o,u]:[u,o];return d().then(()=>h())}else return Promise.all([o(),u(n.delay)])}function w8(e,t,n=0,r=0,s=0,o=1,u){const f=[];for(const d of e.variantChildren)d.notify("AnimationStart",t),f.push(cv(d,t,{...u,delay:n+(typeof r=="function"?0:r)+YM(e.variantChildren,d,r,s,o)}).then(()=>d.notify("AnimationComplete",t)));return Promise.all(f)}function _8(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const s=t.map(o=>cv(e,o,n));r=Promise.all(s)}else if(typeof t=="string")r=cv(e,t,n);else{const s=typeof t=="function"?ao(e,t,n.custom):t;r=Promise.all(ek(e,s,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}const S8={test:e=>e==="auto",parse:e=>e},tk=e=>t=>t.test(e),nk=[vo,de,Or,Yi,J6,Q6,S8],rA=e=>nk.find(tk(e));function A8(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||hM(e):!0}const T8=new Set(["brightness","contrast","saturate","opacity"]);function O8(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(A0)||[];if(!r)return e;const s=n.replace(r,"");let o=T8.has(t)?1:0;return r!==n&&(o*=100),t+"("+o+s+")"}const E8=/\b([a-z-]*)\(.*?\)/gu,fv={...dr,getAnimatableNone:e=>{const t=e.match(E8);return t?t.map(O8).join(" "):e}},dv={...dr,getAnimatableNone:e=>{const t=dr.parse(e);return dr.createTransformer(e)(t.map(r=>typeof r=="number"?0:typeof r=="object"?{...r,alpha:1}:r))}},iA={...vo,transform:Math.round},j8={rotate:Yi,rotateX:Yi,rotateY:Yi,rotateZ:Yi,scale:ff,scaleX:ff,scaleY:ff,scaleZ:ff,skew:Yi,skewX:Yi,skewY:Yi,distance:de,translateX:de,translateY:de,translateZ:de,x:de,y:de,z:de,perspective:de,transformPerspective:de,opacity:tu,originX:FS,originY:FS,originZ:de},L0={borderWidth:de,borderTopWidth:de,borderRightWidth:de,borderBottomWidth:de,borderLeftWidth:de,borderRadius:de,borderTopLeftRadius:de,borderTopRightRadius:de,borderBottomRightRadius:de,borderBottomLeftRadius:de,width:de,maxWidth:de,height:de,maxHeight:de,top:de,right:de,bottom:de,left:de,inset:de,insetBlock:de,insetBlockStart:de,insetBlockEnd:de,insetInline:de,insetInlineStart:de,insetInlineEnd:de,padding:de,paddingTop:de,paddingRight:de,paddingBottom:de,paddingLeft:de,paddingBlock:de,paddingBlockStart:de,paddingBlockEnd:de,paddingInline:de,paddingInlineStart:de,paddingInlineEnd:de,margin:de,marginTop:de,marginRight:de,marginBottom:de,marginLeft:de,marginBlock:de,marginBlockStart:de,marginBlockEnd:de,marginInline:de,marginInlineStart:de,marginInlineEnd:de,fontSize:de,backgroundPositionX:de,backgroundPositionY:de,...j8,zIndex:iA,fillOpacity:tu,strokeOpacity:tu,numOctaves:iA},M8={...L0,color:vt,backgroundColor:vt,outlineColor:vt,fill:vt,stroke:vt,borderColor:vt,borderTopColor:vt,borderRightColor:vt,borderBottomColor:vt,borderLeftColor:vt,filter:fv,WebkitFilter:fv,mask:dv,WebkitMask:dv},rk=e=>M8[e],k8=new Set([fv,dv]);function ik(e,t){let n=rk(e);return k8.has(n)||(n=dr),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const N8=new Set(["auto","none","0"]);function C8(e,t,n){let r=0,s;for(;r{t.getValue(f).set(d)}),this.resolveNoneKeyframes()}}const P8=new Set(["opacity","clipPath","filter","transform"]);function ak(e,t,n){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e=="string"){let r=document;const s=n?.[e]??r.querySelectorAll(e);return s?Array.from(s):[]}return Array.from(e).filter(r=>r!=null)}const sk=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function hv(e){return dM(e)&&"offsetHeight"in e}const{schedule:z0}=OM(queueMicrotask,!1),or={x:!1,y:!1};function ok(){return or.x||or.y}function R8(e){return e==="x"||e==="y"?or[e]?null:(or[e]=!0,()=>{or[e]=!1}):or.x||or.y?null:(or.x=or.y=!0,()=>{or.x=or.y=!1})}function lk(e,t){const n=ak(e),r=new AbortController,s={passive:!0,...t,signal:r.signal};return[n,s,()=>r.abort()]}function L8(e){return!(e.pointerType==="touch"||ok())}function z8(e,t,n={}){const[r,s,o]=lk(e,n);return r.forEach(u=>{let f=!1,d=!1,h;const m=()=>{u.removeEventListener("pointerleave",w)},p=S=>{h&&(h(S),h=void 0),m()},v=S=>{f=!1,window.removeEventListener("pointerup",v),window.removeEventListener("pointercancel",v),d&&(d=!1,p(S))},x=()=>{f=!0,window.addEventListener("pointerup",v,s),window.addEventListener("pointercancel",v,s)},w=S=>{if(S.pointerType!=="touch"){if(f){d=!0;return}p(S)}},_=S=>{if(!L8(S))return;d=!1;const O=t(u,S);typeof O=="function"&&(h=O,u.addEventListener("pointerleave",w,s))};u.addEventListener("pointerenter",_,s),u.addEventListener("pointerdown",x,s)}),o}const uk=(e,t)=>t?e===t?!0:uk(e,t.parentElement):!1,I0=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,I8=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function B8(e){return I8.has(e.tagName)||e.isContentEditable===!0}const U8=new Set(["INPUT","SELECT","TEXTAREA"]);function V8(e){return U8.has(e.tagName)||e.isContentEditable===!0}const Df=new WeakSet;function aA(e){return t=>{t.key==="Enter"&&e(t)}}function ag(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const q8=(e,t)=>{const n=e.currentTarget;if(!n)return;const r=aA(()=>{if(Df.has(n))return;ag(n,"down");const s=aA(()=>{ag(n,"up")}),o=()=>ag(n,"cancel");n.addEventListener("keyup",s,t),n.addEventListener("blur",o,t)});n.addEventListener("keydown",r,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",r),t)};function sA(e){return I0(e)&&!ok()}const oA=new WeakSet;function $8(e,t,n={}){const[r,s,o]=lk(e,n),u=f=>{const d=f.currentTarget;if(!sA(f)||oA.has(f))return;Df.add(d),n.stopPropagation&&oA.add(f);const h=t(d,f),m=(x,w)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",v),Df.has(d)&&Df.delete(d),sA(x)&&typeof h=="function"&&h(x,{success:w})},p=x=>{m(x,d===window||d===document||n.useGlobalTarget||uk(d,x.target))},v=x=>{m(x,!1)};window.addEventListener("pointerup",p,s),window.addEventListener("pointercancel",v,s)};return r.forEach(f=>{(n.useGlobalTarget?window:f).addEventListener("pointerdown",u,s),hv(f)&&(f.addEventListener("focus",h=>q8(h,s)),!B8(f)&&!f.hasAttribute("tabindex")&&(f.tabIndex=0))}),o}function B0(e){return dM(e)&&"ownerSVGElement"in e}const Pf=new WeakMap;let Rf;const ck=(e,t,n)=>(r,s)=>s&&s[0]?s[0][e+"Size"]:B0(r)&&"getBBox"in r?r.getBBox()[t]:r[n],F8=ck("inline","width","offsetWidth"),H8=ck("block","height","offsetHeight");function K8({target:e,borderBoxSize:t}){Pf.get(e)?.forEach(n=>{n(e,{get width(){return F8(e,t)},get height(){return H8(e,t)}})})}function X8(e){e.forEach(K8)}function Y8(){typeof ResizeObserver>"u"||(Rf=new ResizeObserver(X8))}function G8(e,t){Rf||Y8();const n=ak(e);return n.forEach(r=>{let s=Pf.get(r);s||(s=new Set,Pf.set(r,s)),s.add(t),Rf?.observe(r)}),()=>{n.forEach(r=>{const s=Pf.get(r);s?.delete(t),s?.size||Rf?.unobserve(r)})}}const Lf=new Set;let Js;function W8(){Js=()=>{const e={get width(){return window.innerWidth},get height(){return window.innerHeight}};Lf.forEach(t=>t(e))},window.addEventListener("resize",Js)}function Z8(e){return Lf.add(e),Js||W8(),()=>{Lf.delete(e),!Lf.size&&typeof Js=="function"&&(window.removeEventListener("resize",Js),Js=void 0)}}function lA(e,t){return typeof e=="function"?Z8(e):G8(e,t)}function Q8(e){return B0(e)&&e.tagName==="svg"}const J8=[...nk,vt,dr],ez=e=>J8.find(tk(e)),uA=()=>({translate:0,scale:1,origin:0,originPoint:0}),eo=()=>({x:uA(),y:uA()}),cA=()=>({min:0,max:0}),St=()=>({x:cA(),y:cA()}),tz=new WeakMap;function Hd(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function ru(e){return typeof e=="string"||Array.isArray(e)}const U0=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],V0=["initial",...U0];function Kd(e){return Hd(e.animate)||V0.some(t=>ru(e[t]))}function fk(e){return!!(Kd(e)||e.variants)}function nz(e,t,n){for(const r in t){const s=t[r],o=n[r];if(Zt(s))e.addValue(r,s);else if(Zt(o))e.addValue(r,uo(s,{owner:e}));else if(o!==s)if(e.hasValue(r)){const u=e.getValue(r);u.liveStyle===!0?u.jump(s):u.hasAnimated||u.set(s)}else{const u=e.getStaticValue(r);e.addValue(r,uo(u!==void 0?u:s,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const mv={current:null},dk={current:!1},rz=typeof window<"u";function iz(){if(dk.current=!0,!!rz)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>mv.current=e.matches;e.addEventListener("change",t),t()}else mv.current=!1}const fA=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Yf={};function hk(e){Yf=e}function az(){return Yf}class sz{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:s,skipAnimations:o,blockInitialAnimation:u,visualState:f},d={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=N0,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const x=tn.now();this.renderScheduledAtthis.bindToMotionValue(r,n)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(dk.current||iz(),this.shouldReduceMotion=mv.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),na(this.notifyUpdate),na(this.render),this.valueSubscriptions.forEach(t=>t()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const t in this.events)this.events[t].clear();for(const t in this.features){const n=this.features[t];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),n.accelerate&&P8.has(t)&&this.current instanceof HTMLElement){const{factory:u,keyframes:f,times:d,ease:h,duration:m}=n.accelerate,p=new KM({element:this.current,name:t,keyframes:f,times:d,ease:h,duration:fr(m)}),v=u(p);this.valueSubscriptions.set(t,()=>{v(),p.cancel()});return}const r=xo.has(t);r&&this.onBindTransform&&this.onBindTransform();const s=n.on("change",u=>{this.latestValues[t]=u,this.props.onUpdate&&Ge.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;typeof window<"u"&&window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{s(),o&&o(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Yf){const n=Yf[t];if(!n)continue;const{isEnabled:r,Feature:s}=n;if(!this.features[t]&&s&&r(this.props)&&(this.features[t]=new s(this)),this.features[t]){const o=this.features[t];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):St()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;rn.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=uo(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(fM(r)||hM(r))?r=parseFloat(r):!ez(r)&&dr.test(n)&&(r=ik(t,n)),this.setBaseTarget(t,Zt(r)?r.get():r)),Zt(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const o=P0(this.props,n,this.presenceContext?.custom);o&&(r=o[t])}if(n&&r!==void 0)return r;const s=this.getBaseTargetFromProps(this.props,t);return s!==void 0&&!Zt(s)?s:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new x0),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){z0.render(this.render)}}class mk extends sz{constructor(){super(...arguments),this.KeyframeResolver=D8}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){const r=t.style;return r?r[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;Zt(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}class aa{constructor(t){this.isMounted=!1,this.node=t}update(){}}function pk({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function oz({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function lz(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function sg(e){return e===void 0||e===1}function pv({scale:e,scaleX:t,scaleY:n}){return!sg(e)||!sg(t)||!sg(n)}function Pa(e){return pv(e)||gk(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function gk(e){return dA(e.x)||dA(e.y)}function dA(e){return e&&e!=="0%"}function Gf(e,t,n){const r=e-n,s=t*r;return n+s}function hA(e,t,n,r,s){return s!==void 0&&(e=Gf(e,s,r)),Gf(e,n,r)+t}function gv(e,t=0,n=1,r,s){e.min=hA(e.min,t,n,r,s),e.max=hA(e.max,t,n,r,s)}function yk(e,{x:t,y:n}){gv(e.x,t.translate,t.scale,t.originPoint),gv(e.y,n.translate,n.scale,n.originPoint)}const mA=.999999999999,pA=1.0000000000001;function uz(e,t,n,r=!1){const s=n.length;if(!s)return;t.x=t.y=1;let o,u;for(let f=0;fmA&&(t.x=1),t.ymA&&(t.y=1)}function to(e,t){e.min=e.min+t,e.max=e.max+t}function gA(e,t,n,r,s=.5){const o=rt(e.min,e.max,s);gv(e,t,n,o,r)}function yA(e,t){return typeof e=="string"?parseFloat(e)/100*(t.max-t.min):e}function no(e,t){gA(e.x,yA(t.x,e.x),t.scaleX,t.scale,t.originX),gA(e.y,yA(t.y,e.y),t.scaleY,t.scale,t.originY)}function vk(e,t){return pk(lz(e.getBoundingClientRect(),t))}function cz(e,t,n){const r=vk(e,n),{scroll:s}=t;return s&&(to(r.x,s.offset.x),to(r.y,s.offset.y)),r}const fz={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},dz=bo.length;function hz(e,t,n){let r="",s=!0;for(let o=0;o{if(!t.target)return e;if(typeof e=="string")if(de.test(e))e=parseFloat(e);else return e;const n=vA(e,t.target.x),r=vA(e,t.target.y);return`${n}% ${r}%`}},mz={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,s=dr.parse(e);if(s.length>5)return r;const o=dr.createTransformer(e),u=typeof s[0]!="number"?1:0,f=n.x.scale*t.x,d=n.y.scale*t.y;s[0+u]/=f,s[1+u]/=d;const h=rt(f,d,.5);return typeof s[2+u]=="number"&&(s[2+u]/=h),typeof s[3+u]=="number"&&(s[3+u]/=h),o(s)}},yv={borderRadius:{...jl,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:jl,borderTopRightRadius:jl,borderBottomLeftRadius:jl,borderBottomRightRadius:jl,boxShadow:mz};function xk(e,{layout:t,layoutId:n}){return xo.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!yv[e]||e==="opacity")}function $0(e,t,n){const r=e.style,s=t?.style,o={};if(!r)return o;for(const u in r)(Zt(r[u])||s&&Zt(s[u])||xk(u,e)||n?.getValue(u)?.liveStyle!==void 0)&&(o[u]=r[u]);return o}function pz(e){return window.getComputedStyle(e)}class gz extends mk{constructor(){super(...arguments),this.type="html",this.renderInstance=bk}readValueFromInstance(t,n){if(xo.has(n))return this.projection?.isProjecting?nv(n):LL(t,n);{const r=pz(t),s=(jM(n)?r.getPropertyValue(n):r[n])||0;return typeof s=="string"?s.trim():s}}measureInstanceViewportBox(t,{transformPagePoint:n}){return vk(t,n)}build(t,n,r){q0(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return $0(t,n,r)}}const yz={offset:"stroke-dashoffset",array:"stroke-dasharray"},vz={offset:"strokeDashoffset",array:"strokeDasharray"};function bz(e,t,n=1,r=0,s=!0){e.pathLength=1;const o=s?yz:vz;e[o.offset]=`${-r}`,e[o.array]=`${t} ${n}`}const xz=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function wk(e,{attrX:t,attrY:n,attrScale:r,pathLength:s,pathSpacing:o=1,pathOffset:u=0,...f},d,h,m){if(q0(e,f,h),d){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:p,style:v}=e;p.transform&&(v.transform=p.transform,delete p.transform),(v.transform||p.transformOrigin)&&(v.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),v.transform&&(v.transformBox=m?.transformBox??"fill-box",delete p.transformBox);for(const x of xz)p[x]!==void 0&&(v[x]=p[x],delete p[x]);t!==void 0&&(p.x=t),n!==void 0&&(p.y=n),r!==void 0&&(p.scale=r),s!==void 0&&bz(p,s,o,u,!1)}const _k=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),Sk=e=>typeof e=="string"&&e.toLowerCase()==="svg";function wz(e,t,n,r){bk(e,t,void 0,r);for(const s in t.attrs)e.setAttribute(_k.has(s)?s:R0(s),t.attrs[s])}function Ak(e,t,n){const r=$0(e,t,n);for(const s in e)if(Zt(e[s])||Zt(t[s])){const o=bo.indexOf(s)!==-1?"attr"+s.charAt(0).toUpperCase()+s.substring(1):s;r[o]=e[s]}return r}class _z extends mk{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=St}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(xo.has(n)){const r=rk(n);return r&&r.default||0}return n=_k.has(n)?n:R0(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return Ak(t,n,r)}build(t,n,r){wk(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,s){wz(t,n,r,s)}mount(t){this.isSVGTag=Sk(t.tagName),super.mount(t)}}const Sz=V0.length;function Tk(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?Tk(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;nPromise.all(t.map(({animation:n,options:r})=>_8(e,n,r)))}function Ez(e){let t=Oz(e),n=bA(),r=!0,s=!1;const o=h=>(m,p)=>{const v=ao(e,p,h==="exit"?e.presenceContext?.custom:void 0);if(v){const{transition:x,transitionEnd:w,..._}=v;m={...m,..._,...w}}return m};function u(h){t=h(e)}function f(h){const{props:m}=e,p=Tk(e.parent)||{},v=[],x=new Set;let w={},_=1/0;for(let O=0;O_&&N,te=!1;const ie=Array.isArray(k)?k:[k];let K=ie.reduce(o(M),{});C===!1&&(K={});const{prevResolvedValues:be={}}=j,pe={...be,...K},xe=ne=>{Y=!0,x.has(ne)&&(te=!0,x.delete(ne)),j.needsAnimating[ne]=!0;const le=e.getValue(ne);le&&(le.liveStyle=!1)};for(const ne in pe){const le=K[ne],ue=be[ne];if(w.hasOwnProperty(ne))continue;let P=!1;lv(le)&&lv(ue)?P=!Ok(le,ue):P=le!==ue,P?le!=null?xe(ne):x.add(ne):le!==void 0&&x.has(ne)?xe(ne):j.protectedKeys[ne]=!0}j.prevProp=k,j.prevResolvedValues=K,j.isActive&&(w={...w,...K}),(r||s)&&e.blockInitialAnimation&&(Y=!1);const V=L&&I;Y&&(!V||te)&&v.push(...ie.map(ne=>{const le={type:M};if(typeof ne=="string"&&(r||s)&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:ue}=e,P=ao(ue,ne);if(ue.enteringChildren&&P){const{delayChildren:H}=P.transition||{};le.delay=YM(ue.enteringChildren,e,H)}}return{animation:ne,options:le}}))}if(x.size){const O={};if(typeof m.initial!="boolean"){const M=ao(e,Array.isArray(m.initial)?m.initial[0]:m.initial);M&&M.transition&&(O.transition=M.transition)}x.forEach(M=>{const j=e.getBaseTarget(M),k=e.getValue(M);k&&(k.liveStyle=!0),O[M]=j??null}),v.push({animation:O})}let S=!!v.length;return r&&(m.initial===!1||m.initial===m.animate)&&!e.manuallyAnimateOnMount&&(S=!1),r=!1,s=!1,S?t(v):Promise.resolve()}function d(h,m){if(n[h].isActive===m)return Promise.resolve();e.variantChildren?.forEach(v=>v.animationState?.setActive(h,m)),n[h].isActive=m;const p=f(h);for(const v in n)n[v].protectedKeys={};return p}return{animateChanges:f,setActive:d,setAnimateFunction:u,getState:()=>n,reset:()=>{n=bA(),s=!0}}}function jz(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!Ok(t,e):!1}function Ma(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function bA(){return{animate:Ma(!0),whileInView:Ma(),whileHover:Ma(),whileTap:Ma(),whileDrag:Ma(),whileFocus:Ma(),exit:Ma()}}function xA(e,t){e.min=t.min,e.max=t.max}function sr(e,t){xA(e.x,t.x),xA(e.y,t.y)}function wA(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}const Ek=1e-4,Mz=1-Ek,kz=1+Ek,jk=.01,Nz=0-jk,Cz=0+jk;function nn(e){return e.max-e.min}function Dz(e,t,n){return Math.abs(e-t)<=n}function _A(e,t,n,r=.5){e.origin=r,e.originPoint=rt(t.min,t.max,e.origin),e.scale=nn(n)/nn(t),e.translate=rt(n.min,n.max,e.origin)-e.originPoint,(e.scale>=Mz&&e.scale<=kz||isNaN(e.scale))&&(e.scale=1),(e.translate>=Nz&&e.translate<=Cz||isNaN(e.translate))&&(e.translate=0)}function Gl(e,t,n,r){_A(e.x,t.x,n.x,r?r.originX:void 0),_A(e.y,t.y,n.y,r?r.originY:void 0)}function SA(e,t,n){e.min=n.min+t.min,e.max=e.min+nn(t)}function Pz(e,t,n){SA(e.x,t.x,n.x),SA(e.y,t.y,n.y)}function AA(e,t,n){e.min=t.min-n.min,e.max=e.min+nn(t)}function Wf(e,t,n){AA(e.x,t.x,n.x),AA(e.y,t.y,n.y)}function TA(e,t,n,r,s){return e-=t,e=Gf(e,1/n,r),s!==void 0&&(e=Gf(e,1/s,r)),e}function Rz(e,t=0,n=1,r=.5,s,o=e,u=e){if(Or.test(t)&&(t=parseFloat(t),t=rt(u.min,u.max,t/100)-u.min),typeof t!="number")return;let f=rt(o.min,o.max,r);e===o&&(f-=t),e.min=TA(e.min,t,n,f,s),e.max=TA(e.max,t,n,f,s)}function OA(e,t,[n,r,s],o,u){Rz(e,t[n],t[r],t[s],t.scale,o,u)}const Lz=["x","scaleX","originX"],zz=["y","scaleY","originY"];function EA(e,t,n,r){OA(e.x,t,Lz,n?n.x:void 0,r?r.x:void 0),OA(e.y,t,zz,n?n.y:void 0,r?r.y:void 0)}function jA(e){return e.translate===0&&e.scale===1}function Mk(e){return jA(e.x)&&jA(e.y)}function MA(e,t){return e.min===t.min&&e.max===t.max}function Iz(e,t){return MA(e.x,t.x)&&MA(e.y,t.y)}function kA(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function kk(e,t){return kA(e.x,t.x)&&kA(e.y,t.y)}function NA(e){return nn(e.x)/nn(e.y)}function CA(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function Sr(e){return[e("x"),e("y")]}function Bz(e,t,n){let r="";const s=e.x.translate/t.x,o=e.y.translate/t.y,u=n?.z||0;if((s||o||u)&&(r=`translate3d(${s}px, ${o}px, ${u}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:h,rotate:m,rotateX:p,rotateY:v,skewX:x,skewY:w}=n;h&&(r=`perspective(${h}px) ${r}`),m&&(r+=`rotate(${m}deg) `),p&&(r+=`rotateX(${p}deg) `),v&&(r+=`rotateY(${v}deg) `),x&&(r+=`skewX(${x}deg) `),w&&(r+=`skewY(${w}deg) `)}const f=e.x.scale*t.x,d=e.y.scale*t.y;return(f!==1||d!==1)&&(r+=`scale(${f}, ${d})`),r||"none"}const Nk=["TopLeft","TopRight","BottomLeft","BottomRight"],Uz=Nk.length,DA=e=>typeof e=="string"?parseFloat(e):e,PA=e=>typeof e=="number"||de.test(e);function Vz(e,t,n,r,s,o){s?(e.opacity=rt(0,n.opacity??1,qz(r)),e.opacityExit=rt(t.opacity??1,0,$z(r))):o&&(e.opacity=rt(t.opacity??1,n.opacity??1,r));for(let u=0;urt?1:n(eu(e,t,r))}function Fz(e,t,n){const r=Zt(e)?e:uo(e);return r.start(D0("",r,t,n)),r.animation}function iu(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const Hz=(e,t)=>e.depth-t.depth;class Kz{constructor(){this.children=[],this.isDirty=!1}add(t){v0(this.children,t),this.isDirty=!0}remove(t){Ff(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(Hz),this.isDirty=!1,this.children.forEach(t)}}function Xz(e,t){const n=tn.now(),r=({timestamp:s})=>{const o=s-n;o>=t&&(na(r),e(o-t))};return Ge.setup(r,!0),()=>na(r)}function zf(e){return Zt(e)?e.get():e}class Yz{constructor(){this.members=[]}add(t){v0(this.members,t);for(let n=this.members.length-1;n>=0;n--){const r=this.members[n];if(r===t||r===this.lead||r===this.prevLead)continue;const s=r.instance;(!s||s.isConnected===!1)&&!r.snapshot&&(Ff(this.members,r),r.unmount())}t.scheduleRender()}remove(t){if(Ff(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){for(let n=this.members.indexOf(t)-1;n>=0;n--){const r=this.members[n];if(r.isPresent!==!1&&r.instance?.isConnected!==!1)return this.promote(r),!0}return!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.updateSnapshot(),t.scheduleRender();const{layoutDependency:s}=r.options,{layoutDependency:o}=t.options;(s===void 0||s!==o)&&(t.resumeFrom=r,n&&(r.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root?.isUpdating&&(t.isLayoutDirty=!0)),t.options.crossfade===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{t.options.onExitComplete?.(),t.resumingFrom?.options.onExitComplete?.()})}scheduleRender(){this.members.forEach(t=>t.instance&&t.scheduleRender(!1))}removeLeadSnapshot(){this.lead?.snapshot&&(this.lead.snapshot=void 0)}}const If={hasAnimatedSinceResize:!0,hasEverUpdated:!1},og=["","X","Y","Z"],Gz=1e3;let Wz=0;function lg(e,t,n,r){const{latestValues:s}=t;s[e]&&(n[e]=s[e],t.setStaticValue(e,0),r&&(r[e]=0))}function Dk(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=JM(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:s,layoutId:o}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Ge,!(s||o))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&Dk(r)}function Pk({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:s}){return class{constructor(u={},f=t?.()){this.id=Wz++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(Jz),this.nodes.forEach(rI),this.nodes.forEach(iI),this.nodes.forEach(eI)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=u,this.root=f?f.root||f:this,this.path=f?[...f.path,f]:[],this.parent=f,this.depth=f?f.depth+1:0;for(let d=0;dthis.root.updateBlockedByResize=!1;Ge.read(()=>{p=window.innerWidth}),e(u,()=>{const x=window.innerWidth;x!==p&&(p=x,this.root.updateBlockedByResize=!0,m&&m(),m=Xz(v,250),If.hasAnimatedSinceResize&&(If.hasAnimatedSinceResize=!1,this.nodes.forEach(IA)))})}f&&this.root.registerSharedNode(f,this),this.options.animate!==!1&&h&&(f||d)&&this.addEventListener("didUpdate",({delta:m,hasLayoutChanged:p,hasRelativeLayoutChanged:v,layout:x})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const w=this.options.transition||h.getDefaultTransition()||uI,{onLayoutAnimationStart:_,onLayoutAnimationComplete:S}=h.getProps(),O=!this.targetLayout||!kk(this.targetLayout,x),M=!p&&v;if(this.options.layoutRoot||this.resumeFrom||M||p&&(O||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const j={...C0(w,"layout"),onPlay:_,onComplete:S};(h.shouldReduceMotion||this.options.layoutRoot)&&(j.delay=0,j.type=!1),this.startAnimation(j),this.setAnimationOrigin(m,M)}else p||IA(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=x})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const u=this.getStack();u&&u.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),na(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(aI),this.animationId++)}getTransformTemplate(){const{visualElement:u}=this.options;return u&&u.getProps().transformTemplate}willUpdate(u=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&Dk(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let m=0;m{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!nn(this.snapshot.measuredBox.x)&&!nn(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let d=0;d{const N=k/1e3;BA(p.x,u.x,N),BA(p.y,u.y,N),this.setTargetDelta(p),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Wf(v,this.layout.layoutBox,this.relativeParent.layout.layoutBox),oI(this.relativeTarget,this.relativeTargetOrigin,v,N),j&&Iz(this.relativeTarget,j)&&(this.isProjectionDirty=!1),j||(j=St()),sr(j,this.relativeTarget)),_&&(this.animationValues=m,Vz(m,h,this.latestValues,N,M,O)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=N},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(u){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(na(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Ge.update(()=>{If.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=uo(0)),this.motionValue.jump(0,!1),this.currentAnimation=Fz(this.motionValue,[0,1e3],{...u,velocity:0,isSync:!0,onUpdate:f=>{this.mixTargetDelta(f),u.onUpdate&&u.onUpdate(f)},onStop:()=>{},onComplete:()=>{u.onComplete&&u.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const u=this.getStack();u&&u.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Gz),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const u=this.getLead();let{targetWithTransforms:f,target:d,layout:h,latestValues:m}=u;if(!(!f||!d||!h)){if(this!==u&&this.layout&&h&&Rk(this.options.animationType,this.layout.layoutBox,h.layoutBox)){d=this.target||St();const p=nn(this.layout.layoutBox.x);d.x.min=u.target.x.min,d.x.max=d.x.min+p;const v=nn(this.layout.layoutBox.y);d.y.min=u.target.y.min,d.y.max=d.y.min+v}sr(f,d),no(f,m),Gl(this.projectionDeltaWithTransform,this.layoutCorrected,f,m)}}registerSharedNode(u,f){this.sharedNodes.has(u)||this.sharedNodes.set(u,new Yz),this.sharedNodes.get(u).add(f);const h=f.options.initialPromotionConfig;f.promote({transition:h?h.transition:void 0,preserveFollowOpacity:h&&h.shouldPreserveFollowOpacity?h.shouldPreserveFollowOpacity(f):void 0})}isLead(){const u=this.getStack();return u?u.lead===this:!0}getLead(){const{layoutId:u}=this.options;return u?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:u}=this.options;return u?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:u}=this.options;if(u)return this.root.sharedNodes.get(u)}promote({needsReset:u,transition:f,preserveFollowOpacity:d}={}){const h=this.getStack();h&&h.promote(this,d),u&&(this.projectionDelta=void 0,this.needsReset=!0),f&&this.setOptions({transition:f})}relegate(){const u=this.getStack();return u?u.relegate(this):!1}resetSkewAndRotation(){const{visualElement:u}=this.options;if(!u)return;let f=!1;const{latestValues:d}=u;if((d.z||d.rotate||d.rotateX||d.rotateY||d.rotateZ||d.skewX||d.skewY)&&(f=!0),!f)return;const h={};d.z&&lg("z",u,h,this.animationValues);for(let m=0;mu.currentAnimation?.stop()),this.root.nodes.forEach(LA),this.root.sharedNodes.clear()}}}function Zz(e){e.updateLayout()}function Qz(e){const t=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:r}=e.layout,{animationType:s}=e.options,o=t.source!==e.layout.source;s==="size"?Sr(m=>{const p=o?t.measuredBox[m]:t.layoutBox[m],v=nn(p);p.min=n[m].min,p.max=p.min+v}):Rk(s,t.layoutBox,n)&&Sr(m=>{const p=o?t.measuredBox[m]:t.layoutBox[m],v=nn(n[m]);p.max=p.min+v,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[m].max=e.relativeTarget[m].min+v)});const u=eo();Gl(u,n,t.layoutBox);const f=eo();o?Gl(f,e.applyTransform(r,!0),t.measuredBox):Gl(f,n,t.layoutBox);const d=!Mk(u);let h=!1;if(!e.resumeFrom){const m=e.getClosestProjectingParent();if(m&&!m.resumeFrom){const{snapshot:p,layout:v}=m;if(p&&v){const x=St();Wf(x,t.layoutBox,p.layoutBox);const w=St();Wf(w,n,v.layoutBox),kk(x,w)||(h=!0),m.options.layoutRoot&&(e.relativeTarget=w,e.relativeTargetOrigin=x,e.relativeParent=m)}}}e.notifyListeners("didUpdate",{layout:n,snapshot:t,delta:f,layoutDelta:u,hasLayoutChanged:d,hasRelativeLayoutChanged:h})}else if(e.isLead()){const{onExitComplete:n}=e.options;n&&n()}e.options.transition=void 0}function Jz(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function eI(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function tI(e){e.clearSnapshot()}function LA(e){e.clearMeasurements()}function zA(e){e.isLayoutDirty=!1}function nI(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function IA(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function rI(e){e.resolveTargetDelta()}function iI(e){e.calcProjection()}function aI(e){e.resetSkewAndRotation()}function sI(e){e.removeLeadSnapshot()}function BA(e,t,n){e.translate=rt(t.translate,0,n),e.scale=rt(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function UA(e,t,n,r){e.min=rt(t.min,n.min,r),e.max=rt(t.max,n.max,r)}function oI(e,t,n,r){UA(e.x,t.x,n.x,r),UA(e.y,t.y,n.y,r)}function lI(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const uI={duration:.45,ease:[.4,0,.1,1]},VA=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),qA=VA("applewebkit/")&&!VA("chrome/")?Math.round:Jn;function $A(e){e.min=qA(e.min),e.max=qA(e.max)}function cI(e){$A(e.x),$A(e.y)}function Rk(e,t,n){return e==="position"||e==="preserve-aspect"&&!Dz(NA(t),NA(n),.2)}function fI(e){return e!==e.root&&e.scroll?.wasRoot}const dI=Pk({attachResizeListener:(e,t)=>iu(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),ug={current:void 0},Lk=Pk({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!ug.current){const e=new dI({});e.mount(window),e.setOptions({layoutScroll:!0}),ug.current=e}return ug.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),F0=A.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function FA(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function hI(...e){return t=>{let n=!1;const r=e.map(s=>{const o=FA(s,t);return!n&&typeof o=="function"&&(n=!0),o});if(n)return()=>{for(let s=0;s{const{width:v,height:x,top:w,left:_,right:S,bottom:O}=d.current;if(t||o===!1||!f.current||!v||!x)return;const M=n==="left"?`left: ${_}`:`right: ${S}`,j=r==="bottom"?`bottom: ${O}`:`top: ${w}`;f.current.dataset.motionPopId=u;const k=document.createElement("style");h&&(k.nonce=h);const N=s??document.head;return N.appendChild(k),k.sheet&&k.sheet.insertRule(` +`+c.stack}}var Ch=Object.prototype.hasOwnProperty,Dh=e.unstable_scheduleCallback,Ph=e.unstable_cancelCallback,J5=e.unstable_shouldYield,eP=e.unstable_requestPaint,bn=e.unstable_now,tP=e.unstable_getCurrentPriorityLevel,Nx=e.unstable_ImmediatePriority,kx=e.unstable_UserBlockingPriority,Ku=e.unstable_NormalPriority,nP=e.unstable_LowPriority,Cx=e.unstable_IdlePriority,rP=e.log,iP=e.unstable_setDisableYieldValue,Po=null,xn=null;function bi(i){if(typeof rP=="function"&&iP(i),xn&&typeof xn.setStrictMode=="function")try{xn.setStrictMode(Po,i)}catch{}}var wn=Math.clz32?Math.clz32:oP,aP=Math.log,sP=Math.LN2;function oP(i){return i>>>=0,i===0?32:31-(aP(i)/sP|0)|0}var Xu=256,Yu=262144,Gu=4194304;function fa(i){var a=i&42;if(a!==0)return a;switch(i&-i){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 i&261888;case 262144:case 524288:case 1048576:case 2097152:return i&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return i&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return i}}function Wu(i,a,l){var c=i.pendingLanes;if(c===0)return 0;var g=0,y=i.suspendedLanes,T=i.pingedLanes;i=i.warmLanes;var E=c&134217727;return E!==0?(c=E&~y,c!==0?g=fa(c):(T&=E,T!==0?g=fa(T):l||(l=E&~i,l!==0&&(g=fa(l))))):(E=c&~y,E!==0?g=fa(E):T!==0?g=fa(T):l||(l=c&~i,l!==0&&(g=fa(l)))),g===0?0:a!==0&&a!==g&&(a&y)===0&&(y=g&-g,l=a&-a,y>=l||y===32&&(l&4194048)!==0)?a:g}function Ro(i,a){return(i.pendingLanes&~(i.suspendedLanes&~i.pingedLanes)&a)===0}function lP(i,a){switch(i){case 1:case 2:case 4:case 8:case 64:return a+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 a+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 Dx(){var i=Gu;return Gu<<=1,(Gu&62914560)===0&&(Gu=4194304),i}function Rh(i){for(var a=[],l=0;31>l;l++)a.push(i);return a}function Lo(i,a){i.pendingLanes|=a,a!==268435456&&(i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0)}function uP(i,a,l,c,g,y){var T=i.pendingLanes;i.pendingLanes=l,i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0,i.expiredLanes&=l,i.entangledLanes&=l,i.errorRecoveryDisabledLanes&=l,i.shellSuspendCounter=0;var E=i.entanglements,D=i.expirationTimes,U=i.hiddenUpdates;for(l=T&~l;0"u")return null;try{return i.activeElement||i.body}catch{return i.body}}var pP=/[\n"\\]/g;function zn(i){return i.replace(pP,function(a){return"\\"+a.charCodeAt(0).toString(16)+" "})}function Vh(i,a,l,c,g,y,T,E){i.name="",T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"?i.type=T:i.removeAttribute("type"),a!=null?T==="number"?(a===0&&i.value===""||i.value!=a)&&(i.value=""+Ln(a)):i.value!==""+Ln(a)&&(i.value=""+Ln(a)):T!=="submit"&&T!=="reset"||i.removeAttribute("value"),a!=null?qh(i,T,Ln(a)):l!=null?qh(i,T,Ln(l)):c!=null&&i.removeAttribute("value"),g==null&&y!=null&&(i.defaultChecked=!!y),g!=null&&(i.checked=g&&typeof g!="function"&&typeof g!="symbol"),E!=null&&typeof E!="function"&&typeof E!="symbol"&&typeof E!="boolean"?i.name=""+Ln(E):i.removeAttribute("name")}function Kx(i,a,l,c,g,y,T,E){if(y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(i.type=y),a!=null||l!=null){if(!(y!=="submit"&&y!=="reset"||a!=null)){Uh(i);return}l=l!=null?""+Ln(l):"",a=a!=null?""+Ln(a):l,E||a===i.value||(i.value=a),i.defaultValue=a}c=c??g,c=typeof c!="function"&&typeof c!="symbol"&&!!c,i.checked=E?i.checked:!!c,i.defaultChecked=!!c,T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"&&(i.name=T),Uh(i)}function qh(i,a,l){a==="number"&&Ju(i.ownerDocument)===i||i.defaultValue===""+l||(i.defaultValue=""+l)}function us(i,a,l,c){if(i=i.options,a){a={};for(var g=0;g"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Xh=!1;if(zr)try{var Uo={};Object.defineProperty(Uo,"passive",{get:function(){Xh=!0}}),window.addEventListener("test",Uo,Uo),window.removeEventListener("test",Uo,Uo)}catch{Xh=!1}var wi=null,Yh=null,tc=null;function Jx(){if(tc)return tc;var i,a=Yh,l=a.length,c,g="value"in wi?wi.value:wi.textContent,y=g.length;for(i=0;i=$o),a1=" ",s1=!1;function o1(i,a){switch(i){case"keyup":return $P.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function l1(i){return i=i.detail,typeof i=="object"&&"data"in i?i.data:null}var hs=!1;function HP(i,a){switch(i){case"compositionend":return l1(a);case"keypress":return a.which!==32?null:(s1=!0,a1);case"textInput":return i=a.data,i===a1&&s1?null:i;default:return null}}function KP(i,a){if(hs)return i==="compositionend"||!Jh&&o1(i,a)?(i=Jx(),tc=Yh=wi=null,hs=!1,i):null;switch(i){case"paste":return null;case"keypress":if(!(a.ctrlKey||a.altKey||a.metaKey)||a.ctrlKey&&a.altKey){if(a.char&&1=a)return{node:l,offset:a-i};i=c}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=g1(l)}}function v1(i,a){return i&&a?i===a?!0:i&&i.nodeType===3?!1:a&&a.nodeType===3?v1(i,a.parentNode):"contains"in i?i.contains(a):i.compareDocumentPosition?!!(i.compareDocumentPosition(a)&16):!1:!1}function b1(i){i=i!=null&&i.ownerDocument!=null&&i.ownerDocument.defaultView!=null?i.ownerDocument.defaultView:window;for(var a=Ju(i.document);a instanceof i.HTMLIFrameElement;){try{var l=typeof a.contentWindow.location.href=="string"}catch{l=!1}if(l)i=a.contentWindow;else break;a=Ju(i.document)}return a}function nm(i){var a=i&&i.nodeName&&i.nodeName.toLowerCase();return a&&(a==="input"&&(i.type==="text"||i.type==="search"||i.type==="tel"||i.type==="url"||i.type==="password")||a==="textarea"||i.contentEditable==="true")}var e4=zr&&"documentMode"in document&&11>=document.documentMode,ms=null,rm=null,Xo=null,im=!1;function x1(i,a,l){var c=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;im||ms==null||ms!==Ju(c)||(c=ms,"selectionStart"in c&&nm(c)?c={start:c.selectionStart,end:c.selectionEnd}:(c=(c.ownerDocument&&c.ownerDocument.defaultView||window).getSelection(),c={anchorNode:c.anchorNode,anchorOffset:c.anchorOffset,focusNode:c.focusNode,focusOffset:c.focusOffset}),Xo&&Ko(Xo,c)||(Xo=c,c=Yc(rm,"onSelect"),0>=T,g-=T,gr=1<<32-wn(a)+g|l<Oe?(Ne=me,me=null):Ne=me.sibling;var Re=q(z,me,B[Oe],G);if(Re===null){me===null&&(me=Ne);break}i&&me&&Re.alternate===null&&a(z,me),R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re,me=Ne}if(Oe===B.length)return l(z,me),ke&&Br(z,Oe),ge;if(me===null){for(;OeOe?(Ne=me,me=null):Ne=me.sibling;var $i=q(z,me,Re.value,G);if($i===null){me===null&&(me=Ne);break}i&&me&&$i.alternate===null&&a(z,me),R=y($i,R,Oe),Pe===null?ge=$i:Pe.sibling=$i,Pe=$i,me=Ne}if(Re.done)return l(z,me),ke&&Br(z,Oe),ge;if(me===null){for(;!Re.done;Oe++,Re=B.next())Re=W(z,Re.value,G),Re!==null&&(R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re);return ke&&Br(z,Oe),ge}for(me=c(me);!Re.done;Oe++,Re=B.next())Re=F(me,z,Oe,Re.value,G),Re!==null&&(i&&Re.alternate!==null&&me.delete(Re.key===null?Oe:Re.key),R=y(Re,R,Oe),Pe===null?ge=Re:Pe.sibling=Re,Pe=Re);return i&&me.forEach(function(xR){return a(z,xR)}),ke&&Br(z,Oe),ge}function Fe(z,R,B,G){if(typeof B=="object"&&B!==null&&B.type===_&&B.key===null&&(B=B.props.children),typeof B=="object"&&B!==null){switch(B.$$typeof){case x:e:{for(var ge=B.key;R!==null;){if(R.key===ge){if(ge=B.type,ge===_){if(R.tag===7){l(z,R.sibling),G=g(R,B.props.children),G.return=z,z=G;break e}}else if(R.elementType===ge||typeof ge=="object"&&ge!==null&&ge.$$typeof===I&&_a(ge)===R.type){l(z,R.sibling),G=g(R,B.props),Jo(G,B),G.return=z,z=G;break e}l(z,R);break}else a(z,R);R=R.sibling}B.type===_?(G=ya(B.props.children,z.mode,G,B.key),G.return=z,z=G):(G=fc(B.type,B.key,B.props,null,z.mode,G),Jo(G,B),G.return=z,z=G)}return T(z);case w:e:{for(ge=B.key;R!==null;){if(R.key===ge)if(R.tag===4&&R.stateNode.containerInfo===B.containerInfo&&R.stateNode.implementation===B.implementation){l(z,R.sibling),G=g(R,B.children||[]),G.return=z,z=G;break e}else{l(z,R);break}else a(z,R);R=R.sibling}G=fm(B,z.mode,G),G.return=z,z=G}return T(z);case I:return B=_a(B),Fe(z,R,B,G)}if(xe(B))return fe(z,R,B,G);if(K(B)){if(ge=K(B),typeof ge!="function")throw Error(r(150));return B=ge.call(B),we(z,R,B,G)}if(typeof B.then=="function")return Fe(z,R,vc(B),G);if(B.$$typeof===j)return Fe(z,R,mc(z,B),G);bc(z,B)}return typeof B=="string"&&B!==""||typeof B=="number"||typeof B=="bigint"?(B=""+B,R!==null&&R.tag===6?(l(z,R.sibling),G=g(R,B),G.return=z,z=G):(l(z,R),G=cm(B,z.mode,G),G.return=z,z=G),T(z)):l(z,R)}return function(z,R,B,G){try{Qo=0;var ge=Fe(z,R,B,G);return Ts=null,ge}catch(me){if(me===As||me===gc)throw me;var Pe=Sn(29,me,null,z.mode);return Pe.lanes=G,Pe.return=z,Pe}}}var Aa=$1(!0),F1=$1(!1),Oi=!1;function Sm(i){i.updateQueue={baseState:i.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Am(i,a){i=i.updateQueue,a.updateQueue===i&&(a.updateQueue={baseState:i.baseState,firstBaseUpdate:i.firstBaseUpdate,lastBaseUpdate:i.lastBaseUpdate,shared:i.shared,callbacks:null})}function Ei(i){return{lane:i,tag:0,payload:null,callback:null,next:null}}function ji(i,a,l){var c=i.updateQueue;if(c===null)return null;if(c=c.shared,(Ie&2)!==0){var g=c.pending;return g===null?a.next=a:(a.next=g.next,g.next=a),c.pending=a,a=cc(i),E1(i,null,l),a}return uc(i,c,a,l),cc(i)}function el(i,a,l){if(a=a.updateQueue,a!==null&&(a=a.shared,(l&4194048)!==0)){var c=a.lanes;c&=i.pendingLanes,l|=c,a.lanes=l,Rx(i,l)}}function Tm(i,a){var l=i.updateQueue,c=i.alternate;if(c!==null&&(c=c.updateQueue,l===c)){var g=null,y=null;if(l=l.firstBaseUpdate,l!==null){do{var T={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};y===null?g=y=T:y=y.next=T,l=l.next}while(l!==null);y===null?g=y=a:y=y.next=a}else g=y=a;l={baseState:c.baseState,firstBaseUpdate:g,lastBaseUpdate:y,shared:c.shared,callbacks:c.callbacks},i.updateQueue=l;return}i=l.lastBaseUpdate,i===null?l.firstBaseUpdate=a:i.next=a,l.lastBaseUpdate=a}var Om=!1;function tl(){if(Om){var i=Ss;if(i!==null)throw i}}function nl(i,a,l,c){Om=!1;var g=i.updateQueue;Oi=!1;var y=g.firstBaseUpdate,T=g.lastBaseUpdate,E=g.shared.pending;if(E!==null){g.shared.pending=null;var D=E,U=D.next;D.next=null,T===null?y=U:T.next=U,T=D;var X=i.alternate;X!==null&&(X=X.updateQueue,E=X.lastBaseUpdate,E!==T&&(E===null?X.firstBaseUpdate=U:E.next=U,X.lastBaseUpdate=D))}if(y!==null){var W=g.baseState;T=0,X=U=D=null,E=y;do{var q=E.lane&-536870913,F=q!==E.lane;if(F?(Me&q)===q:(c&q)===q){q!==0&&q===_s&&(Om=!0),X!==null&&(X=X.next={lane:0,tag:E.tag,payload:E.payload,callback:null,next:null});e:{var fe=i,we=E;q=a;var Fe=l;switch(we.tag){case 1:if(fe=we.payload,typeof fe=="function"){W=fe.call(Fe,W,q);break e}W=fe;break e;case 3:fe.flags=fe.flags&-65537|128;case 0:if(fe=we.payload,q=typeof fe=="function"?fe.call(Fe,W,q):fe,q==null)break e;W=p({},W,q);break e;case 2:Oi=!0}}q=E.callback,q!==null&&(i.flags|=64,F&&(i.flags|=8192),F=g.callbacks,F===null?g.callbacks=[q]:F.push(q))}else F={lane:q,tag:E.tag,payload:E.payload,callback:E.callback,next:null},X===null?(U=X=F,D=W):X=X.next=F,T|=q;if(E=E.next,E===null){if(E=g.shared.pending,E===null)break;F=E,E=F.next,F.next=null,g.lastBaseUpdate=F,g.shared.pending=null}}while(!0);X===null&&(D=W),g.baseState=D,g.firstBaseUpdate=U,g.lastBaseUpdate=X,y===null&&(g.shared.lanes=0),Di|=T,i.lanes=T,i.memoizedState=W}}function H1(i,a){if(typeof i!="function")throw Error(r(191,i));i.call(a)}function K1(i,a){var l=i.callbacks;if(l!==null)for(i.callbacks=null,i=0;iy?y:8;var T=V.T,E={};V.T=E,Hm(i,!1,a,l);try{var D=g(),U=V.S;if(U!==null&&U(E,D),D!==null&&typeof D=="object"&&typeof D.then=="function"){var X=u4(D,c);al(i,a,X,jn(i))}else al(i,a,c,jn(i))}catch(W){al(i,a,{then:function(){},status:"rejected",reason:W},jn())}finally{Q.p=y,T!==null&&E.types!==null&&(T.types=E.types),V.T=T}}function p4(){}function $m(i,a,l,c){if(i.tag!==5)throw Error(r(476));var g=Aw(i).queue;Sw(i,g,a,ne,l===null?p4:function(){return Tw(i),l(c)})}function Aw(i){var a=i.memoizedState;if(a!==null)return a;a={memoizedState:ne,baseState:ne,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:ne},next:null};var l={};return a.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:l},next:null},i.memoizedState=a,i=i.alternate,i!==null&&(i.memoizedState=a),a}function Tw(i){var a=Aw(i);a.next===null&&(a=i.alternate.memoizedState),al(i,a.next.queue,{},jn())}function Fm(){return Ut(_l)}function Ow(){return ft().memoizedState}function Ew(){return ft().memoizedState}function g4(i){for(var a=i.return;a!==null;){switch(a.tag){case 24:case 3:var l=jn();i=Ei(l);var c=ji(a,i,l);c!==null&&(hn(c,a,l),el(c,a,l)),a={cache:bm()},i.payload=a;return}a=a.return}}function y4(i,a,l){var c=jn();l={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Mc(i)?Mw(a,l):(l=lm(i,a,l,c),l!==null&&(hn(l,i,c),Nw(l,a,c)))}function jw(i,a,l){var c=jn();al(i,a,l,c)}function al(i,a,l,c){var g={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Mc(i))Mw(a,g);else{var y=i.alternate;if(i.lanes===0&&(y===null||y.lanes===0)&&(y=a.lastRenderedReducer,y!==null))try{var T=a.lastRenderedState,E=y(T,l);if(g.hasEagerState=!0,g.eagerState=E,_n(E,T))return uc(i,a,g,0),Ke===null&&lc(),!1}catch{}if(l=lm(i,a,g,c),l!==null)return hn(l,i,c),Nw(l,a,c),!0}return!1}function Hm(i,a,l,c){if(c={lane:2,revertLane:Sp(),gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null},Mc(i)){if(a)throw Error(r(479))}else a=lm(i,l,c,2),a!==null&&hn(a,i,2)}function Mc(i){var a=i.alternate;return i===Te||a!==null&&a===Te}function Mw(i,a){Es=_c=!0;var l=i.pending;l===null?a.next=a:(a.next=l.next,l.next=a),i.pending=a}function Nw(i,a,l){if((l&4194048)!==0){var c=a.lanes;c&=i.pendingLanes,l|=c,a.lanes=l,Rx(i,l)}}var sl={readContext:Ut,use:Tc,useCallback:at,useContext:at,useEffect:at,useImperativeHandle:at,useLayoutEffect:at,useInsertionEffect:at,useMemo:at,useReducer:at,useRef:at,useState:at,useDebugValue:at,useDeferredValue:at,useTransition:at,useSyncExternalStore:at,useId:at,useHostTransitionStatus:at,useFormState:at,useActionState:at,useOptimistic:at,useMemoCache:at,useCacheRefresh:at};sl.useEffectEvent=at;var kw={readContext:Ut,use:Tc,useCallback:function(i,a){return en().memoizedState=[i,a===void 0?null:a],i},useContext:Ut,useEffect:mw,useImperativeHandle:function(i,a,l){l=l!=null?l.concat([i]):null,Ec(4194308,4,vw.bind(null,a,i),l)},useLayoutEffect:function(i,a){return Ec(4194308,4,i,a)},useInsertionEffect:function(i,a){Ec(4,2,i,a)},useMemo:function(i,a){var l=en();a=a===void 0?null:a;var c=i();if(Ta){bi(!0);try{i()}finally{bi(!1)}}return l.memoizedState=[c,a],c},useReducer:function(i,a,l){var c=en();if(l!==void 0){var g=l(a);if(Ta){bi(!0);try{l(a)}finally{bi(!1)}}}else g=a;return c.memoizedState=c.baseState=g,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:i,lastRenderedState:g},c.queue=i,i=i.dispatch=y4.bind(null,Te,i),[c.memoizedState,i]},useRef:function(i){var a=en();return i={current:i},a.memoizedState=i},useState:function(i){i=Im(i);var a=i.queue,l=jw.bind(null,Te,a);return a.dispatch=l,[i.memoizedState,l]},useDebugValue:Vm,useDeferredValue:function(i,a){var l=en();return qm(l,i,a)},useTransition:function(){var i=Im(!1);return i=Sw.bind(null,Te,i.queue,!0,!1),en().memoizedState=i,[!1,i]},useSyncExternalStore:function(i,a,l){var c=Te,g=en();if(ke){if(l===void 0)throw Error(r(407));l=l()}else{if(l=a(),Ke===null)throw Error(r(349));(Me&127)!==0||Q1(c,a,l)}g.memoizedState=l;var y={value:l,getSnapshot:a};return g.queue=y,mw(ew.bind(null,c,y,i),[i]),c.flags|=2048,Ms(9,{destroy:void 0},J1.bind(null,c,y,l,a),null),l},useId:function(){var i=en(),a=Ke.identifierPrefix;if(ke){var l=yr,c=gr;l=(c&~(1<<32-wn(c)-1)).toString(32)+l,a="_"+a+"R_"+l,l=Sc++,0<\/script>",y=y.removeChild(y.firstChild);break;case"select":y=typeof c.is=="string"?T.createElement("select",{is:c.is}):T.createElement("select"),c.multiple?y.multiple=!0:c.size&&(y.size=c.size);break;default:y=typeof c.is=="string"?T.createElement(g,{is:c.is}):T.createElement(g)}}y[It]=a,y[on]=c;e:for(T=a.child;T!==null;){if(T.tag===5||T.tag===6)y.appendChild(T.stateNode);else if(T.tag!==4&&T.tag!==27&&T.child!==null){T.child.return=T,T=T.child;continue}if(T===a)break e;for(;T.sibling===null;){if(T.return===null||T.return===a)break e;T=T.return}T.sibling.return=T.return,T=T.sibling}a.stateNode=y;e:switch(qt(y,g,c),g){case"button":case"input":case"select":case"textarea":c=!!c.autoFocus;break e;case"img":c=!0;break e;default:c=!1}c&&Hr(a)}}return Ze(a),ap(a,a.type,i===null?null:i.memoizedProps,a.pendingProps,l),null;case 6:if(i&&a.stateNode!=null)i.memoizedProps!==c&&Hr(a);else{if(typeof c!="string"&&a.stateNode===null)throw Error(r(166));if(i=oe.current,xs(a)){if(i=a.stateNode,l=a.memoizedProps,c=null,g=Bt,g!==null)switch(g.tag){case 27:case 5:c=g.memoizedProps}i[It]=a,i=!!(i.nodeValue===l||c!==null&&c.suppressHydrationWarning===!0||W_(i.nodeValue,l)),i||Ai(a,!0)}else i=Gc(i).createTextNode(c),i[It]=a,a.stateNode=i}return Ze(a),null;case 31:if(l=a.memoizedState,i===null||i.memoizedState!==null){if(c=xs(a),l!==null){if(i===null){if(!c)throw Error(r(318));if(i=a.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(557));i[It]=a}else va(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Ze(a),i=!1}else l=pm(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=l),i=!0;if(!i)return a.flags&256?(Tn(a),a):(Tn(a),null);if((a.flags&128)!==0)throw Error(r(558))}return Ze(a),null;case 13:if(c=a.memoizedState,i===null||i.memoizedState!==null&&i.memoizedState.dehydrated!==null){if(g=xs(a),c!==null&&c.dehydrated!==null){if(i===null){if(!g)throw Error(r(318));if(g=a.memoizedState,g=g!==null?g.dehydrated:null,!g)throw Error(r(317));g[It]=a}else va(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Ze(a),g=!1}else g=pm(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=g),g=!0;if(!g)return a.flags&256?(Tn(a),a):(Tn(a),null)}return Tn(a),(a.flags&128)!==0?(a.lanes=l,a):(l=c!==null,i=i!==null&&i.memoizedState!==null,l&&(c=a.child,g=null,c.alternate!==null&&c.alternate.memoizedState!==null&&c.alternate.memoizedState.cachePool!==null&&(g=c.alternate.memoizedState.cachePool.pool),y=null,c.memoizedState!==null&&c.memoizedState.cachePool!==null&&(y=c.memoizedState.cachePool.pool),y!==g&&(c.flags|=2048)),l!==i&&l&&(a.child.flags|=8192),Pc(a,a.updateQueue),Ze(a),null);case 4:return J(),i===null&&Ep(a.stateNode.containerInfo),Ze(a),null;case 10:return Vr(a.type),Ze(a),null;case 19:if(H(ct),c=a.memoizedState,c===null)return Ze(a),null;if(g=(a.flags&128)!==0,y=c.rendering,y===null)if(g)ll(c,!1);else{if(st!==0||i!==null&&(i.flags&128)!==0)for(i=a.child;i!==null;){if(y=wc(i),y!==null){for(a.flags|=128,ll(c,!1),i=y.updateQueue,a.updateQueue=i,Pc(a,i),a.subtreeFlags=0,i=l,l=a.child;l!==null;)j1(l,i),l=l.sibling;return ae(ct,ct.current&1|2),ke&&Br(a,c.treeForkCount),a.child}i=i.sibling}c.tail!==null&&bn()>Bc&&(a.flags|=128,g=!0,ll(c,!1),a.lanes=4194304)}else{if(!g)if(i=wc(y),i!==null){if(a.flags|=128,g=!0,i=i.updateQueue,a.updateQueue=i,Pc(a,i),ll(c,!0),c.tail===null&&c.tailMode==="hidden"&&!y.alternate&&!ke)return Ze(a),null}else 2*bn()-c.renderingStartTime>Bc&&l!==536870912&&(a.flags|=128,g=!0,ll(c,!1),a.lanes=4194304);c.isBackwards?(y.sibling=a.child,a.child=y):(i=c.last,i!==null?i.sibling=y:a.child=y,c.last=y)}return c.tail!==null?(i=c.tail,c.rendering=i,c.tail=i.sibling,c.renderingStartTime=bn(),i.sibling=null,l=ct.current,ae(ct,g?l&1|2:l&1),ke&&Br(a,c.treeForkCount),i):(Ze(a),null);case 22:case 23:return Tn(a),jm(),c=a.memoizedState!==null,i!==null?i.memoizedState!==null!==c&&(a.flags|=8192):c&&(a.flags|=8192),c?(l&536870912)!==0&&(a.flags&128)===0&&(Ze(a),a.subtreeFlags&6&&(a.flags|=8192)):Ze(a),l=a.updateQueue,l!==null&&Pc(a,l.retryQueue),l=null,i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(l=i.memoizedState.cachePool.pool),c=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(c=a.memoizedState.cachePool.pool),c!==l&&(a.flags|=2048),i!==null&&H(wa),null;case 24:return l=null,i!==null&&(l=i.memoizedState.cache),a.memoizedState.cache!==l&&(a.flags|=2048),Vr(mt),Ze(a),null;case 25:return null;case 30:return null}throw Error(r(156,a.tag))}function _4(i,a){switch(hm(a),a.tag){case 1:return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 3:return Vr(mt),J(),i=a.flags,(i&65536)!==0&&(i&128)===0?(a.flags=i&-65537|128,a):null;case 26:case 27:case 5:return Se(a),null;case 31:if(a.memoizedState!==null){if(Tn(a),a.alternate===null)throw Error(r(340));va()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 13:if(Tn(a),i=a.memoizedState,i!==null&&i.dehydrated!==null){if(a.alternate===null)throw Error(r(340));va()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 19:return H(ct),null;case 4:return J(),null;case 10:return Vr(a.type),null;case 22:case 23:return Tn(a),jm(),i!==null&&H(wa),i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 24:return Vr(mt),null;case 25:return null;default:return null}}function t_(i,a){switch(hm(a),a.tag){case 3:Vr(mt),J();break;case 26:case 27:case 5:Se(a);break;case 4:J();break;case 31:a.memoizedState!==null&&Tn(a);break;case 13:Tn(a);break;case 19:H(ct);break;case 10:Vr(a.type);break;case 22:case 23:Tn(a),jm(),i!==null&&H(wa);break;case 24:Vr(mt)}}function ul(i,a){try{var l=a.updateQueue,c=l!==null?l.lastEffect:null;if(c!==null){var g=c.next;l=g;do{if((l.tag&i)===i){c=void 0;var y=l.create,T=l.inst;c=y(),T.destroy=c}l=l.next}while(l!==g)}}catch(E){Ve(a,a.return,E)}}function ki(i,a,l){try{var c=a.updateQueue,g=c!==null?c.lastEffect:null;if(g!==null){var y=g.next;c=y;do{if((c.tag&i)===i){var T=c.inst,E=T.destroy;if(E!==void 0){T.destroy=void 0,g=a;var D=l,U=E;try{U()}catch(X){Ve(g,D,X)}}}c=c.next}while(c!==y)}}catch(X){Ve(a,a.return,X)}}function n_(i){var a=i.updateQueue;if(a!==null){var l=i.stateNode;try{K1(a,l)}catch(c){Ve(i,i.return,c)}}}function r_(i,a,l){l.props=Oa(i.type,i.memoizedProps),l.state=i.memoizedState;try{l.componentWillUnmount()}catch(c){Ve(i,a,c)}}function cl(i,a){try{var l=i.ref;if(l!==null){switch(i.tag){case 26:case 27:case 5:var c=i.stateNode;break;case 30:c=i.stateNode;break;default:c=i.stateNode}typeof l=="function"?i.refCleanup=l(c):l.current=c}}catch(g){Ve(i,a,g)}}function vr(i,a){var l=i.ref,c=i.refCleanup;if(l!==null)if(typeof c=="function")try{c()}catch(g){Ve(i,a,g)}finally{i.refCleanup=null,i=i.alternate,i!=null&&(i.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(g){Ve(i,a,g)}else l.current=null}function i_(i){var a=i.type,l=i.memoizedProps,c=i.stateNode;try{e:switch(a){case"button":case"input":case"select":case"textarea":l.autoFocus&&c.focus();break e;case"img":l.src?c.src=l.src:l.srcSet&&(c.srcset=l.srcSet)}}catch(g){Ve(i,i.return,g)}}function sp(i,a,l){try{var c=i.stateNode;F4(c,i.type,l,a),c[on]=a}catch(g){Ve(i,i.return,g)}}function a_(i){return i.tag===5||i.tag===3||i.tag===26||i.tag===27&&Ii(i.type)||i.tag===4}function op(i){e:for(;;){for(;i.sibling===null;){if(i.return===null||a_(i.return))return null;i=i.return}for(i.sibling.return=i.return,i=i.sibling;i.tag!==5&&i.tag!==6&&i.tag!==18;){if(i.tag===27&&Ii(i.type)||i.flags&2||i.child===null||i.tag===4)continue e;i.child.return=i,i=i.child}if(!(i.flags&2))return i.stateNode}}function lp(i,a,l){var c=i.tag;if(c===5||c===6)i=i.stateNode,a?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(i,a):(a=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,a.appendChild(i),l=l._reactRootContainer,l!=null||a.onclick!==null||(a.onclick=Lr));else if(c!==4&&(c===27&&Ii(i.type)&&(l=i.stateNode,a=null),i=i.child,i!==null))for(lp(i,a,l),i=i.sibling;i!==null;)lp(i,a,l),i=i.sibling}function Rc(i,a,l){var c=i.tag;if(c===5||c===6)i=i.stateNode,a?l.insertBefore(i,a):l.appendChild(i);else if(c!==4&&(c===27&&Ii(i.type)&&(l=i.stateNode),i=i.child,i!==null))for(Rc(i,a,l),i=i.sibling;i!==null;)Rc(i,a,l),i=i.sibling}function s_(i){var a=i.stateNode,l=i.memoizedProps;try{for(var c=i.type,g=a.attributes;g.length;)a.removeAttributeNode(g[0]);qt(a,c,l),a[It]=i,a[on]=l}catch(y){Ve(i,i.return,y)}}var Kr=!1,yt=!1,up=!1,o_=typeof WeakSet=="function"?WeakSet:Set,Nt=null;function S4(i,a){if(i=i.containerInfo,Np=nf,i=b1(i),nm(i)){if("selectionStart"in i)var l={start:i.selectionStart,end:i.selectionEnd};else e:{l=(l=i.ownerDocument)&&l.defaultView||window;var c=l.getSelection&&l.getSelection();if(c&&c.rangeCount!==0){l=c.anchorNode;var g=c.anchorOffset,y=c.focusNode;c=c.focusOffset;try{l.nodeType,y.nodeType}catch{l=null;break e}var T=0,E=-1,D=-1,U=0,X=0,W=i,q=null;t:for(;;){for(var F;W!==l||g!==0&&W.nodeType!==3||(E=T+g),W!==y||c!==0&&W.nodeType!==3||(D=T+c),W.nodeType===3&&(T+=W.nodeValue.length),(F=W.firstChild)!==null;)q=W,W=F;for(;;){if(W===i)break t;if(q===l&&++U===g&&(E=T),q===y&&++X===c&&(D=T),(F=W.nextSibling)!==null)break;W=q,q=W.parentNode}W=F}l=E===-1||D===-1?null:{start:E,end:D}}else l=null}l=l||{start:0,end:0}}else l=null;for(kp={focusedElem:i,selectionRange:l},nf=!1,Nt=a;Nt!==null;)if(a=Nt,i=a.child,(a.subtreeFlags&1028)!==0&&i!==null)i.return=a,Nt=i;else for(;Nt!==null;){switch(a=Nt,y=a.alternate,i=a.flags,a.tag){case 0:if((i&4)!==0&&(i=a.updateQueue,i=i!==null?i.events:null,i!==null))for(l=0;l title"))),qt(y,c,l),y[It]=i,Mt(y),c=y;break e;case"link":var T=hS("link","href",g).get(c+(l.href||""));if(T){for(var E=0;EFe&&(T=Fe,Fe=we,we=T);var z=y1(E,we),R=y1(E,Fe);if(z&&R&&(F.rangeCount!==1||F.anchorNode!==z.node||F.anchorOffset!==z.offset||F.focusNode!==R.node||F.focusOffset!==R.offset)){var B=W.createRange();B.setStart(z.node,z.offset),F.removeAllRanges(),we>Fe?(F.addRange(B),F.extend(R.node,R.offset)):(B.setEnd(R.node,R.offset),F.addRange(B))}}}}for(W=[],F=E;F=F.parentNode;)F.nodeType===1&&W.push({element:F,left:F.scrollLeft,top:F.scrollTop});for(typeof E.focus=="function"&&E.focus(),E=0;El?32:l,V.T=null,l=gp,gp=null;var y=Ri,T=Zr;if(xt=0,Ps=Ri=null,Zr=0,(Ie&6)!==0)throw Error(r(331));var E=Ie;if(Ie|=4,v_(y.current),p_(y,y.current,T,l),Ie=E,gl(0,!1),xn&&typeof xn.onPostCommitFiberRoot=="function")try{xn.onPostCommitFiberRoot(Po,y)}catch{}return!0}finally{Q.p=g,V.T=c,L_(i,a)}}function I_(i,a,l){a=Bn(l,a),a=Gm(i.stateNode,a,2),i=ji(i,a,2),i!==null&&(Lo(i,2),br(i))}function Ve(i,a,l){if(i.tag===3)I_(i,i,l);else for(;a!==null;){if(a.tag===3){I_(a,i,l);break}else if(a.tag===1){var c=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof c.componentDidCatch=="function"&&(Pi===null||!Pi.has(c))){i=Bn(l,i),l=Bw(2),c=ji(a,l,2),c!==null&&(Uw(l,c,a,i),Lo(c,2),br(c));break}}a=a.return}}function xp(i,a,l){var c=i.pingCache;if(c===null){c=i.pingCache=new O4;var g=new Set;c.set(a,g)}else g=c.get(a),g===void 0&&(g=new Set,c.set(a,g));g.has(l)||(dp=!0,g.add(l),i=k4.bind(null,i,a,l),a.then(i,i))}function k4(i,a,l){var c=i.pingCache;c!==null&&c.delete(a),i.pingedLanes|=i.suspendedLanes&l,i.warmLanes&=~l,Ke===i&&(Me&l)===l&&(st===4||st===3&&(Me&62914560)===Me&&300>bn()-Ic?(Ie&2)===0&&Rs(i,0):hp|=l,Ds===Me&&(Ds=0)),br(i)}function B_(i,a){a===0&&(a=Dx()),i=ga(i,a),i!==null&&(Lo(i,a),br(i))}function C4(i){var a=i.memoizedState,l=0;a!==null&&(l=a.retryLane),B_(i,l)}function D4(i,a){var l=0;switch(i.tag){case 31:case 13:var c=i.stateNode,g=i.memoizedState;g!==null&&(l=g.retryLane);break;case 19:c=i.stateNode;break;case 22:c=i.stateNode._retryCache;break;default:throw Error(r(314))}c!==null&&c.delete(a),B_(i,l)}function P4(i,a){return Dh(i,a)}var Hc=null,zs=null,wp=!1,Kc=!1,_p=!1,zi=0;function br(i){i!==zs&&i.next===null&&(zs===null?Hc=zs=i:zs=zs.next=i),Kc=!0,wp||(wp=!0,L4())}function gl(i,a){if(!_p&&Kc){_p=!0;do for(var l=!1,c=Hc;c!==null;){if(i!==0){var g=c.pendingLanes;if(g===0)var y=0;else{var T=c.suspendedLanes,E=c.pingedLanes;y=(1<<31-wn(42|i)+1)-1,y&=g&~(T&~E),y=y&201326741?y&201326741|1:y?y|2:0}y!==0&&(l=!0,$_(c,y))}else y=Me,y=Wu(c,c===Ke?y:0,c.cancelPendingCommit!==null||c.timeoutHandle!==-1),(y&3)===0||Ro(c,y)||(l=!0,$_(c,y));c=c.next}while(l);_p=!1}}function R4(){U_()}function U_(){Kc=wp=!1;var i=0;zi!==0&&K4()&&(i=zi);for(var a=bn(),l=null,c=Hc;c!==null;){var g=c.next,y=V_(c,a);y===0?(c.next=null,l===null?Hc=g:l.next=g,g===null&&(zs=l)):(l=c,(i!==0||(y&3)!==0)&&(Kc=!0)),c=g}xt!==0&&xt!==5||gl(i),zi!==0&&(zi=0)}function V_(i,a){for(var l=i.suspendedLanes,c=i.pingedLanes,g=i.expirationTimes,y=i.pendingLanes&-62914561;0E)break;var X=D.transferSize,W=D.initiatorType;X&&Z_(W)&&(D=D.responseEnd,T+=X*(D"u"?null:document;function uS(i,a,l){var c=Is;if(c&&typeof a=="string"&&a){var g=zn(a);g='link[rel="'+i+'"][href="'+g+'"]',typeof l=="string"&&(g+='[crossorigin="'+l+'"]'),lS.has(g)||(lS.add(g),i={rel:i,crossOrigin:l,href:a},c.querySelector(g)===null&&(a=c.createElement("link"),qt(a,"link",i),Mt(a),c.head.appendChild(a)))}}function tR(i){Qr.D(i),uS("dns-prefetch",i,null)}function nR(i,a){Qr.C(i,a),uS("preconnect",i,a)}function rR(i,a,l){Qr.L(i,a,l);var c=Is;if(c&&i&&a){var g='link[rel="preload"][as="'+zn(a)+'"]';a==="image"&&l&&l.imageSrcSet?(g+='[imagesrcset="'+zn(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(g+='[imagesizes="'+zn(l.imageSizes)+'"]')):g+='[href="'+zn(i)+'"]';var y=g;switch(a){case"style":y=Bs(i);break;case"script":y=Us(i)}Hn.has(y)||(i=p({rel:"preload",href:a==="image"&&l&&l.imageSrcSet?void 0:i,as:a},l),Hn.set(y,i),c.querySelector(g)!==null||a==="style"&&c.querySelector(xl(y))||a==="script"&&c.querySelector(wl(y))||(a=c.createElement("link"),qt(a,"link",i),Mt(a),c.head.appendChild(a)))}}function iR(i,a){Qr.m(i,a);var l=Is;if(l&&i){var c=a&&typeof a.as=="string"?a.as:"script",g='link[rel="modulepreload"][as="'+zn(c)+'"][href="'+zn(i)+'"]',y=g;switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":y=Us(i)}if(!Hn.has(y)&&(i=p({rel:"modulepreload",href:i},a),Hn.set(y,i),l.querySelector(g)===null)){switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(wl(y)))return}c=l.createElement("link"),qt(c,"link",i),Mt(c),l.head.appendChild(c)}}}function aR(i,a,l){Qr.S(i,a,l);var c=Is;if(c&&i){var g=os(c).hoistableStyles,y=Bs(i);a=a||"default";var T=g.get(y);if(!T){var E={loading:0,preload:null};if(T=c.querySelector(xl(y)))E.loading=5;else{i=p({rel:"stylesheet",href:i,"data-precedence":a},l),(l=Hn.get(y))&&Ip(i,l);var D=T=c.createElement("link");Mt(D),qt(D,"link",i),D._p=new Promise(function(U,X){D.onload=U,D.onerror=X}),D.addEventListener("load",function(){E.loading|=1}),D.addEventListener("error",function(){E.loading|=2}),E.loading|=4,Zc(T,a,c)}T={type:"stylesheet",instance:T,count:1,state:E},g.set(y,T)}}}function sR(i,a){Qr.X(i,a);var l=Is;if(l&&i){var c=os(l).hoistableScripts,g=Us(i),y=c.get(g);y||(y=l.querySelector(wl(g)),y||(i=p({src:i,async:!0},a),(a=Hn.get(g))&&Bp(i,a),y=l.createElement("script"),Mt(y),qt(y,"link",i),l.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},c.set(g,y))}}function oR(i,a){Qr.M(i,a);var l=Is;if(l&&i){var c=os(l).hoistableScripts,g=Us(i),y=c.get(g);y||(y=l.querySelector(wl(g)),y||(i=p({src:i,async:!0,type:"module"},a),(a=Hn.get(g))&&Bp(i,a),y=l.createElement("script"),Mt(y),qt(y,"link",i),l.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},c.set(g,y))}}function cS(i,a,l,c){var g=(g=oe.current)?Wc(g):null;if(!g)throw Error(r(446));switch(i){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(a=Bs(l.href),l=os(g).hoistableStyles,c=l.get(a),c||(c={type:"style",instance:null,count:0,state:null},l.set(a,c)),c):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){i=Bs(l.href);var y=os(g).hoistableStyles,T=y.get(i);if(T||(g=g.ownerDocument||g,T={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},y.set(i,T),(y=g.querySelector(xl(i)))&&!y._p&&(T.instance=y,T.state.loading=5),Hn.has(i)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Hn.set(i,l),y||lR(g,i,l,T.state))),a&&c===null)throw Error(r(528,""));return T}if(a&&c!==null)throw Error(r(529,""));return null;case"script":return a=l.async,l=l.src,typeof l=="string"&&a&&typeof a!="function"&&typeof a!="symbol"?(a=Us(l),l=os(g).hoistableScripts,c=l.get(a),c||(c={type:"script",instance:null,count:0,state:null},l.set(a,c)),c):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,i))}}function Bs(i){return'href="'+zn(i)+'"'}function xl(i){return'link[rel="stylesheet"]['+i+"]"}function fS(i){return p({},i,{"data-precedence":i.precedence,precedence:null})}function lR(i,a,l,c){i.querySelector('link[rel="preload"][as="style"]['+a+"]")?c.loading=1:(a=i.createElement("link"),c.preload=a,a.addEventListener("load",function(){return c.loading|=1}),a.addEventListener("error",function(){return c.loading|=2}),qt(a,"link",l),Mt(a),i.head.appendChild(a))}function Us(i){return'[src="'+zn(i)+'"]'}function wl(i){return"script[async]"+i}function dS(i,a,l){if(a.count++,a.instance===null)switch(a.type){case"style":var c=i.querySelector('style[data-href~="'+zn(l.href)+'"]');if(c)return a.instance=c,Mt(c),c;var g=p({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return c=(i.ownerDocument||i).createElement("style"),Mt(c),qt(c,"style",g),Zc(c,l.precedence,i),a.instance=c;case"stylesheet":g=Bs(l.href);var y=i.querySelector(xl(g));if(y)return a.state.loading|=4,a.instance=y,Mt(y),y;c=fS(l),(g=Hn.get(g))&&Ip(c,g),y=(i.ownerDocument||i).createElement("link"),Mt(y);var T=y;return T._p=new Promise(function(E,D){T.onload=E,T.onerror=D}),qt(y,"link",c),a.state.loading|=4,Zc(y,l.precedence,i),a.instance=y;case"script":return y=Us(l.src),(g=i.querySelector(wl(y)))?(a.instance=g,Mt(g),g):(c=l,(g=Hn.get(y))&&(c=p({},l),Bp(c,g)),i=i.ownerDocument||i,g=i.createElement("script"),Mt(g),qt(g,"link",c),i.head.appendChild(g),a.instance=g);case"void":return null;default:throw Error(r(443,a.type))}else a.type==="stylesheet"&&(a.state.loading&4)===0&&(c=a.instance,a.state.loading|=4,Zc(c,l.precedence,i));return a.instance}function Zc(i,a,l){for(var c=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),g=c.length?c[c.length-1]:null,y=g,T=0;T title"):null)}function uR(i,a,l){if(l===1||a.itemProp!=null)return!1;switch(i){case"meta":case"title":return!0;case"style":if(typeof a.precedence!="string"||typeof a.href!="string"||a.href==="")break;return!0;case"link":if(typeof a.rel!="string"||typeof a.href!="string"||a.href===""||a.onLoad||a.onError)break;return a.rel==="stylesheet"?(i=a.disabled,typeof a.precedence=="string"&&i==null):!0;case"script":if(a.async&&typeof a.async!="function"&&typeof a.async!="symbol"&&!a.onLoad&&!a.onError&&a.src&&typeof a.src=="string")return!0}return!1}function pS(i){return!(i.type==="stylesheet"&&(i.state.loading&3)===0)}function cR(i,a,l,c){if(l.type==="stylesheet"&&(typeof c.media!="string"||matchMedia(c.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var g=Bs(c.href),y=a.querySelector(xl(g));if(y){a=y._p,a!==null&&typeof a=="object"&&typeof a.then=="function"&&(i.count++,i=Jc.bind(i),a.then(i,i)),l.state.loading|=4,l.instance=y,Mt(y);return}y=a.ownerDocument||a,c=fS(c),(g=Hn.get(g))&&Ip(c,g),y=y.createElement("link"),Mt(y);var T=y;T._p=new Promise(function(E,D){T.onload=E,T.onerror=D}),qt(y,"link",c),l.instance=y}i.stylesheets===null&&(i.stylesheets=new Map),i.stylesheets.set(l,a),(a=l.state.preload)&&(l.state.loading&3)===0&&(i.count++,l=Jc.bind(i),a.addEventListener("load",l),a.addEventListener("error",l))}}var Up=0;function fR(i,a){return i.stylesheets&&i.count===0&&tf(i,i.stylesheets),0Up?50:800)+a);return i.unsuspend=l,function(){i.unsuspend=null,clearTimeout(c),clearTimeout(g)}}:null}function Jc(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)tf(this,this.stylesheets);else if(this.unsuspend){var i=this.unsuspend;this.unsuspend=null,i()}}}var ef=null;function tf(i,a){i.stylesheets=null,i.unsuspend!==null&&(i.count++,ef=new Map,a.forEach(dR,i),ef=null,Jc.call(i))}function dR(i,a){if(!(a.state.loading&4)){var l=ef.get(i);if(l)var c=l.get(null);else{l=new Map,ef.set(i,l);for(var g=i.querySelectorAll("link[data-precedence],style[data-precedence]"),y=0;y"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Gp.exports=NR(),Gp.exports}var CR=kR();const aM=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const DR=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const PR=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const BS=e=>{const t=PR(e);return t.charAt(0).toUpperCase()+t.slice(1)};var RR={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const LR=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};const zR=A.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:s="",children:o,iconNode:u,...f},d)=>A.createElement("svg",{ref:d,...RR,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:aM("lucide",s),...!o&&!LR(f)&&{"aria-hidden":"true"},...f},[...u.map(([h,m])=>A.createElement(h,m)),...Array.isArray(o)?o:[o]]));const Be=(e,t)=>{const n=A.forwardRef(({className:r,...s},o)=>A.createElement(zR,{ref:o,iconNode:t,className:aM(`lucide-${DR(BS(e))}`,`lucide-${e}`,r),...s}));return n.displayName=BS(e),n};const IR=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],BR=Be("activity",IR);const UR=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],VR=Be("arrow-down",UR);const qR=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],$R=Be("arrow-up",qR);const FR=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],HR=Be("bot",FR);const KR=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ai=Be("chevron-down",KR);const XR=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],YR=Be("chevron-left",XR);const GR=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],sM=Be("chevron-right",GR);const WR=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Xy=Be("circle-check",WR);const ZR=[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]],QR=Be("code",ZR);const JR=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],e6=Be("database",JR);const t6=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],oM=Be("external-link",t6);const n6=[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]],r6=Be("github",n6);const i6=[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]],US=Be("lightbulb",i6);const a6=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],s6=Be("menu",a6);const o6=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],lM=Be("message-square",o6);const l6=[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]],u6=Be("moon",l6);const c6=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]],f6=Be("pause",c6);const d6=[["path",{d:"M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z",key:"1v9wt8"}]],h6=Be("plane",d6);const m6=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],p6=Be("play",m6);const g6=[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]],y6=Be("rocket",g6);const v6=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],b6=Be("search",v6);const x6=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],w6=Be("shield",x6);const _6=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]],S6=Be("sun",_6);const A6=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],uM=Be("target",A6);const T6=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Jl=Be("triangle-alert",T6);const O6=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],Yy=Be("user",O6);const E6=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]],Gy=Be("volume-2",E6);const j6=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]],M6=Be("volume-x",j6);const N6=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],p0=Be("wrench",N6);const k6=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],cM=Be("x",k6),VS=[{id:"intro",label:"Intro"},{id:"architecture",label:"Architecture"},{id:"metrics",label:"Methodology"},{id:"early-results",label:"Early Results"},{id:"demo",label:"Demo"},{id:"limitations",label:"Limitations & Future"},{id:"acknowledgements",label:"Contributors"}];function C6({activeTab:e,onTabChange:t,theme:n,onToggleTheme:r}){const[s,o]=A.useState(!1),u=f=>{t(f),o(!1)};return b.jsxs("nav",{className:"fixed top-0 left-0 right-0 z-50 bg-bg-primary/80 backdrop-blur-xl border-b border-border-default",children:[b.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:b.jsxs("div",{className:"flex items-center justify-between h-16",children:[b.jsx("button",{onClick:()=>o(!s),className:"md:hidden w-9 h-9 rounded-lg flex items-center justify-center text-text-muted hover:text-text-primary hover:bg-bg-hover transition-colors","aria-label":s?"Close menu":"Open menu",children:s?b.jsx(cM,{className:"w-5 h-5"}):b.jsx(s6,{className:"w-5 h-5"})}),b.jsx("div",{className:"hidden md:block w-0"}),b.jsx("div",{className:"hidden md:flex items-center gap-4",children:VS.map(f=>b.jsx("a",{href:`#${f.id}`,onClick:d=>{d.preventDefault(),t(f.id)},className:`px-4 py-2 rounded-lg text-base font-semibold transition-colors no-underline ${e===f.id?"text-purple-light bg-purple/15 border border-purple/30":"text-text-primary/80 hover:text-text-primary hover:bg-bg-hover border border-transparent"}`,children:f.label},f.id))}),b.jsx("button",{onClick:r,className:"w-9 h-9 rounded-lg flex items-center justify-center text-text-muted hover:text-text-primary hover:bg-bg-hover transition-colors","aria-label":`Switch to ${n==="dark"?"light":"dark"} mode`,children:n==="dark"?b.jsx(S6,{className:"w-4.5 h-4.5"}):b.jsx(u6,{className:"w-4.5 h-4.5"})})]})}),s&&b.jsx("div",{className:"md:hidden border-t border-border-default bg-bg-primary/95 backdrop-blur-xl",children:b.jsx("div",{className:"px-4 py-3 space-y-1",children:VS.map(f=>b.jsx("a",{href:`#${f.id}`,onClick:d=>{d.preventDefault(),u(f.id)},className:`block px-4 py-3 rounded-lg text-base font-semibold transition-colors no-underline ${e===f.id?"text-purple-light bg-purple/15 border border-purple/30":"text-text-primary/80 hover:text-text-primary hover:bg-bg-hover border border-transparent"}`,children:f.label},f.id))})})]})}const g0=A.createContext({});function y0(e){const t=A.useRef(null);return t.current===null&&(t.current=e()),t.current}const D6=typeof window<"u",fM=D6?A.useLayoutEffect:A.useEffect,Fd=A.createContext(null);function v0(e,t){e.indexOf(t)===-1&&e.push(t)}function Ff(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Mr=(e,t,n)=>n>t?t:n{};const si={},dM=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function hM(e){return typeof e=="object"&&e!==null}const mM=e=>/^0[^.\s]+$/u.test(e);function pM(e){let t;return()=>(t===void 0&&(t=e()),t)}const Jn=e=>e,P6=(e,t)=>n=>t(e(n)),wu=(...e)=>e.reduce(P6),eu=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r};class x0{constructor(){this.subscriptions=[]}add(t){return v0(this.subscriptions,t),()=>Ff(this.subscriptions,t)}notify(t,n,r){const s=this.subscriptions.length;if(s)if(s===1)this.subscriptions[0](t,n,r);else for(let o=0;oe*1e3,Gn=e=>e/1e3;function gM(e,t){return t?e*(1e3/t):0}const yM=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,R6=1e-7,L6=12;function z6(e,t,n,r,s){let o,u,f=0;do u=t+(n-t)/2,o=yM(u,r,s)-e,o>0?n=u:t=u;while(Math.abs(o)>R6&&++fz6(o,0,1,e,n);return o=>o===0||o===1?o:yM(s(o),t,r)}const vM=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,bM=e=>t=>1-e(1-t),xM=_u(.33,1.53,.69,.99),w0=bM(xM),wM=vM(w0),_M=e=>(e*=2)<1?.5*w0(e):.5*(2-Math.pow(2,-10*(e-1))),_0=e=>1-Math.sin(Math.acos(e)),SM=bM(_0),AM=vM(_0),I6=_u(.42,0,1,1),B6=_u(0,0,.58,1),TM=_u(.42,0,.58,1),U6=e=>Array.isArray(e)&&typeof e[0]!="number",OM=e=>Array.isArray(e)&&typeof e[0]=="number",V6={linear:Jn,easeIn:I6,easeInOut:TM,easeOut:B6,circIn:_0,circInOut:AM,circOut:SM,backIn:w0,backInOut:wM,backOut:xM,anticipate:_M},q6=e=>typeof e=="string",qS=e=>{if(OM(e)){b0(e.length===4);const[t,n,r,s]=e;return _u(t,n,r,s)}else if(q6(e))return V6[e];return e},cf=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function $6(e,t){let n=new Set,r=new Set,s=!1,o=!1;const u=new WeakSet;let f={delta:0,timestamp:0,isProcessing:!1};function d(m){u.has(m)&&(h.schedule(m),e()),m(f)}const h={schedule:(m,p=!1,v=!1)=>{const w=v&&s?n:r;return p&&u.add(m),w.has(m)||w.add(m),m},cancel:m=>{r.delete(m),u.delete(m)},process:m=>{if(f=m,s){o=!0;return}s=!0,[n,r]=[r,n],n.forEach(d),n.clear(),s=!1,o&&(o=!1,h.process(m))}};return h}const F6=40;function EM(e,t){let n=!1,r=!0;const s={delta:0,timestamp:0,isProcessing:!1},o=()=>n=!0,u=cf.reduce((j,N)=>(j[N]=$6(o),j),{}),{setup:f,read:d,resolveKeyframes:h,preUpdate:m,update:p,preRender:v,render:x,postRender:w}=u,_=()=>{const j=si.useManualTiming?s.timestamp:performance.now();n=!1,si.useManualTiming||(s.delta=r?1e3/60:Math.max(Math.min(j-s.timestamp,F6),1)),s.timestamp=j,s.isProcessing=!0,f.process(s),d.process(s),h.process(s),m.process(s),p.process(s),v.process(s),x.process(s),w.process(s),s.isProcessing=!1,n&&t&&(r=!1,e(_))},S=()=>{n=!0,r=!0,s.isProcessing||e(_)};return{schedule:cf.reduce((j,N)=>{const k=u[N];return j[N]=(C,L=!1,I=!1)=>(n||S(),k.schedule(C,L,I)),j},{}),cancel:j=>{for(let N=0;N(Cf===void 0&&tn.set(Ft.isProcessing||si.useManualTiming?Ft.timestamp:performance.now()),Cf),set:e=>{Cf=e,queueMicrotask(H6)}},jM=e=>t=>typeof t=="string"&&t.startsWith(e),MM=jM("--"),K6=jM("var(--"),S0=e=>K6(e)?X6.test(e.split("/*")[0].trim()):!1,X6=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function $S(e){return typeof e!="string"?!1:e.split("/*")[0].includes("var(--")}const vo={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},tu={...vo,transform:e=>Mr(0,1,e)},ff={...vo,default:1},Xl=e=>Math.round(e*1e5)/1e5,A0=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Y6(e){return e==null}const G6=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,T0=(e,t)=>n=>!!(typeof n=="string"&&G6.test(n)&&n.startsWith(e)||t&&!Y6(n)&&Object.prototype.hasOwnProperty.call(n,t)),NM=(e,t,n)=>r=>{if(typeof r!="string")return r;const[s,o,u,f]=r.match(A0);return{[e]:parseFloat(s),[t]:parseFloat(o),[n]:parseFloat(u),alpha:f!==void 0?parseFloat(f):1}},W6=e=>Mr(0,255,e),eg={...vo,transform:e=>Math.round(W6(e))},Ia={test:T0("rgb","red"),parse:NM("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+eg.transform(e)+", "+eg.transform(t)+", "+eg.transform(n)+", "+Xl(tu.transform(r))+")"};function Z6(e){let t="",n="",r="",s="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),s=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),s=e.substring(4,5),t+=t,n+=n,r+=r,s+=s),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:s?parseInt(s,16)/255:1}}const Wy={test:T0("#"),parse:Z6,transform:Ia.transform},Su=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),Yi=Su("deg"),Or=Su("%"),de=Su("px"),Q6=Su("vh"),J6=Su("vw"),FS={...Or,parse:e=>Or.parse(e)/100,transform:e=>Or.transform(e*100)},Qs={test:T0("hsl","hue"),parse:NM("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+Or.transform(Xl(t))+", "+Or.transform(Xl(n))+", "+Xl(tu.transform(r))+")"},vt={test:e=>Ia.test(e)||Wy.test(e)||Qs.test(e),parse:e=>Ia.test(e)?Ia.parse(e):Qs.test(e)?Qs.parse(e):Wy.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?Ia.transform(e):Qs.transform(e),getAnimatableNone:e=>{const t=vt.parse(e);return t.alpha=0,vt.transform(t)}},eL=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function tL(e){return isNaN(e)&&typeof e=="string"&&(e.match(A0)?.length||0)+(e.match(eL)?.length||0)>0}const kM="number",CM="color",nL="var",rL="var(",HS="${}",iL=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function nu(e){const t=e.toString(),n=[],r={color:[],number:[],var:[]},s=[];let o=0;const f=t.replace(iL,d=>(vt.test(d)?(r.color.push(o),s.push(CM),n.push(vt.parse(d))):d.startsWith(rL)?(r.var.push(o),s.push(nL),n.push(d)):(r.number.push(o),s.push(kM),n.push(parseFloat(d))),++o,HS)).split(HS);return{values:n,split:f,indexes:r,types:s}}function DM(e){return nu(e).values}function PM(e){const{split:t,types:n}=nu(e),r=t.length;return s=>{let o="";for(let u=0;utypeof e=="number"?0:vt.test(e)?vt.getAnimatableNone(e):e;function sL(e){const t=DM(e);return PM(e)(t.map(aL))}const dr={test:tL,parse:DM,createTransformer:PM,getAnimatableNone:sL};function tg(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function oL({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let s=0,o=0,u=0;if(!t)s=o=u=n;else{const f=n<.5?n*(1+t):n+t-n*t,d=2*n-f;s=tg(d,f,e+1/3),o=tg(d,f,e),u=tg(d,f,e-1/3)}return{red:Math.round(s*255),green:Math.round(o*255),blue:Math.round(u*255),alpha:r}}function Hf(e,t){return n=>n>0?t:e}const rt=(e,t,n)=>e+(t-e)*n,ng=(e,t,n)=>{const r=e*e,s=n*(t*t-r)+r;return s<0?0:Math.sqrt(s)},lL=[Wy,Ia,Qs],uL=e=>lL.find(t=>t.test(e));function KS(e){const t=uL(e);if(!t)return!1;let n=t.parse(e);return t===Qs&&(n=oL(n)),n}const XS=(e,t)=>{const n=KS(e),r=KS(t);if(!n||!r)return Hf(e,t);const s={...n};return o=>(s.red=ng(n.red,r.red,o),s.green=ng(n.green,r.green,o),s.blue=ng(n.blue,r.blue,o),s.alpha=rt(n.alpha,r.alpha,o),Ia.transform(s))},Zy=new Set(["none","hidden"]);function cL(e,t){return Zy.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function fL(e,t){return n=>rt(e,t,n)}function O0(e){return typeof e=="number"?fL:typeof e=="string"?S0(e)?Hf:vt.test(e)?XS:mL:Array.isArray(e)?RM:typeof e=="object"?vt.test(e)?XS:dL:Hf}function RM(e,t){const n=[...e],r=n.length,s=e.map((o,u)=>O0(o)(o,t[u]));return o=>{for(let u=0;u{for(const o in r)n[o]=r[o](s);return n}}function hL(e,t){const n=[],r={color:0,var:0,number:0};for(let s=0;s{const n=dr.createTransformer(t),r=nu(e),s=nu(t);return r.indexes.var.length===s.indexes.var.length&&r.indexes.color.length===s.indexes.color.length&&r.indexes.number.length>=s.indexes.number.length?Zy.has(e)&&!s.values.length||Zy.has(t)&&!r.values.length?cL(e,t):wu(RM(hL(r,s),s.values),n):Hf(e,t)};function LM(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?rt(e,t,n):O0(e)(e,t)}const pL=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>Ge.update(t,n),stop:()=>na(t),now:()=>Ft.isProcessing?Ft.timestamp:tn.now()}},zM=(e,t,n=10)=>{let r="";const s=Math.max(Math.round(t/n),2);for(let o=0;o=Kf?1/0:t}function gL(e,t=100,n){const r=n({...e,keyframes:[0,t]}),s=Math.min(E0(r),Kf);return{type:"keyframes",ease:o=>r.next(s*o).value/t,duration:Gn(s)}}const yL=5;function IM(e,t,n){const r=Math.max(t-yL,0);return gM(n-e(r),t-r)}const lt={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},rg=.001;function vL({duration:e=lt.duration,bounce:t=lt.bounce,velocity:n=lt.velocity,mass:r=lt.mass}){let s,o,u=1-t;u=Mr(lt.minDamping,lt.maxDamping,u),e=Mr(lt.minDuration,lt.maxDuration,Gn(e)),u<1?(s=h=>{const m=h*u,p=m*e,v=m-n,x=Qy(h,u),w=Math.exp(-p);return rg-v/x*w},o=h=>{const p=h*u*e,v=p*n+n,x=Math.pow(u,2)*Math.pow(h,2)*e,w=Math.exp(-p),_=Qy(Math.pow(h,2),u);return(-s(h)+rg>0?-1:1)*((v-x)*w)/_}):(s=h=>{const m=Math.exp(-h*e),p=(h-n)*e+1;return-rg+m*p},o=h=>{const m=Math.exp(-h*e),p=(n-h)*(e*e);return m*p});const f=5/e,d=xL(s,o,f);if(e=fr(e),isNaN(d))return{stiffness:lt.stiffness,damping:lt.damping,duration:e};{const h=Math.pow(d,2)*r;return{stiffness:h,damping:u*2*Math.sqrt(r*h),duration:e}}}const bL=12;function xL(e,t,n){let r=n;for(let s=1;se[n]!==void 0)}function SL(e){let t={velocity:lt.velocity,stiffness:lt.stiffness,damping:lt.damping,mass:lt.mass,isResolvedFromDuration:!1,...e};if(!YS(e,_L)&&YS(e,wL))if(t.velocity=0,e.visualDuration){const n=e.visualDuration,r=2*Math.PI/(n*1.2),s=r*r,o=2*Mr(.05,1,1-(e.bounce||0))*Math.sqrt(s);t={...t,mass:lt.mass,stiffness:s,damping:o}}else{const n=vL({...e,velocity:0});t={...t,...n,mass:lt.mass},t.isResolvedFromDuration=!0}return t}function Xf(e=lt.visualDuration,t=lt.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:r,restDelta:s}=n;const o=n.keyframes[0],u=n.keyframes[n.keyframes.length-1],f={done:!1,value:o},{stiffness:d,damping:h,mass:m,duration:p,velocity:v,isResolvedFromDuration:x}=SL({...n,velocity:-Gn(n.velocity||0)}),w=v||0,_=h/(2*Math.sqrt(d*m)),S=u-o,O=Gn(Math.sqrt(d/m)),M=Math.abs(S)<5;r||(r=M?lt.restSpeed.granular:lt.restSpeed.default),s||(s=M?lt.restDelta.granular:lt.restDelta.default);let j;if(_<1){const k=Qy(O,_);j=C=>{const L=Math.exp(-_*O*C);return u-L*((w+_*O*S)/k*Math.sin(k*C)+S*Math.cos(k*C))}}else if(_===1)j=k=>u-Math.exp(-O*k)*(S+(w+O*S)*k);else{const k=O*Math.sqrt(_*_-1);j=C=>{const L=Math.exp(-_*O*C),I=Math.min(k*C,300);return u-L*((w+_*O*S)*Math.sinh(I)+k*S*Math.cosh(I))/k}}const N={calculatedDuration:x&&p||null,next:k=>{const C=j(k);if(x)f.done=k>=p;else{let L=k===0?w:0;_<1&&(L=k===0?fr(w):IM(j,k,C));const I=Math.abs(L)<=r,Y=Math.abs(u-C)<=s;f.done=I&&Y}return f.value=f.done?u:C,f},toString:()=>{const k=Math.min(E0(N),Kf),C=zM(L=>N.next(k*L).value,k,30);return k+"ms "+C},toTransition:()=>{}};return N}Xf.applyToOptions=e=>{const t=gL(e,100,Xf);return e.ease=t.ease,e.duration=fr(t.duration),e.type="keyframes",e};function Jy({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:s=10,bounceStiffness:o=500,modifyTarget:u,min:f,max:d,restDelta:h=.5,restSpeed:m}){const p=e[0],v={done:!1,value:p},x=I=>f!==void 0&&Id,w=I=>f===void 0?d:d===void 0||Math.abs(f-I)-_*Math.exp(-I/r),j=I=>O+M(I),N=I=>{const Y=M(I),te=j(I);v.done=Math.abs(Y)<=h,v.value=v.done?O:te};let k,C;const L=I=>{x(v.value)&&(k=I,C=Xf({keyframes:[v.value,w(v.value)],velocity:IM(j,I,v.value),damping:s,stiffness:o,restDelta:h,restSpeed:m}))};return L(0),{calculatedDuration:null,next:I=>{let Y=!1;return!C&&k===void 0&&(Y=!0,N(I),L(I)),k!==void 0&&I>=k?C.next(I-k):(!Y&&N(I),v)}}}function AL(e,t,n){const r=[],s=n||si.mix||LM,o=e.length-1;for(let u=0;ut[0];if(o===2&&t[0]===t[1])return()=>t[1];const u=e[0]===e[1];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const f=AL(t,r,s),d=f.length,h=m=>{if(u&&m1)for(;ph(Mr(e[0],e[o-1],m)):h}function OL(e,t){const n=e[e.length-1];for(let r=1;r<=t;r++){const s=eu(0,t,r);e.push(rt(n,1,s))}}function EL(e){const t=[0];return OL(t,e.length-1),t}function jL(e,t){return e.map(n=>n*t)}function ML(e,t){return e.map(()=>t||TM).splice(0,e.length-1)}function Yl({duration:e=300,keyframes:t,times:n,ease:r="easeInOut"}){const s=U6(r)?r.map(qS):qS(r),o={done:!1,value:t[0]},u=jL(n&&n.length===t.length?n:EL(t),e),f=TL(u,t,{ease:Array.isArray(s)?s:ML(t,s)});return{calculatedDuration:e,next:d=>(o.value=f(d),o.done=d>=e,o)}}const NL=e=>e!==null;function j0(e,{repeat:t,repeatType:n="loop"},r,s=1){const o=e.filter(NL),f=s<0||t&&n!=="loop"&&t%2===1?0:o.length-1;return!f||r===void 0?o[f]:r}const kL={decay:Jy,inertia:Jy,tween:Yl,keyframes:Yl,spring:Xf};function BM(e){typeof e.type=="string"&&(e.type=kL[e.type])}class M0{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const CL=e=>e/100;class N0 extends M0{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==tn.now()&&this.tick(tn.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;BM(t);const{type:n=Yl,repeat:r=0,repeatDelay:s=0,repeatType:o,velocity:u=0}=t;let{keyframes:f}=t;const d=n||Yl;d!==Yl&&typeof f[0]!="number"&&(this.mixKeyframes=wu(CL,LM(f[0],f[1])),f=[0,100]);const h=d({...t,keyframes:f});o==="mirror"&&(this.mirroredGenerator=d({...t,keyframes:[...f].reverse(),velocity:-u})),h.calculatedDuration===null&&(h.calculatedDuration=E0(h));const{calculatedDuration:m}=h;this.calculatedDuration=m,this.resolvedDuration=m+s,this.totalDuration=this.resolvedDuration*(r+1)-s,this.generator=h}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:r,totalDuration:s,mixKeyframes:o,mirroredGenerator:u,resolvedDuration:f,calculatedDuration:d}=this;if(this.startTime===null)return r.next(0);const{delay:h=0,keyframes:m,repeat:p,repeatType:v,repeatDelay:x,type:w,onUpdate:_,finalKeyframe:S}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-s/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const O=this.currentTime-h*(this.playbackSpeed>=0?1:-1),M=this.playbackSpeed>=0?O<0:O>s;this.currentTime=Math.max(O,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=s);let j=this.currentTime,N=r;if(p){const I=Math.min(this.currentTime,s)/f;let Y=Math.floor(I),te=I%1;!te&&I>=1&&(te=1),te===1&&Y--,Y=Math.min(Y,p+1),Y%2&&(v==="reverse"?(te=1-te,x&&(te-=x/f)):v==="mirror"&&(N=u)),j=Mr(0,1,te)*f}const k=M?{done:!1,value:m[0]}:N.next(j);o&&!M&&(k.value=o(k.value));let{done:C}=k;!M&&d!==null&&(C=this.playbackSpeed>=0?this.currentTime>=s:this.currentTime<=0);const L=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&C);return L&&w!==Jy&&(k.value=j0(m,this.options,S,this.speed)),_&&_(k.value),L&&this.finish(),k}then(t,n){return this.finished.then(t,n)}get duration(){return Gn(this.calculatedDuration)}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(this.currentTime)}set time(t){t=fr(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),this.driver?this.driver.start(!1):(this.startTime=0,this.state="paused",this.holdTime=t,this.tick(t))}get speed(){return this.playbackSpeed}set speed(t){const n=this.playbackSpeed!==t;n&&this.driver&&this.updateTime(tn.now()),this.playbackSpeed=t,n&&this.driver&&(this.time=Gn(this.currentTime))}play(){if(this.isStopped)return;const{driver:t=pL,startTime:n}=this.options;this.driver||(this.driver=t(s=>this.tick(s))),this.options.onPlay?.();const r=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=r):this.holdTime!==null?this.startTime=r-this.holdTime:this.startTime||(this.startTime=n??r),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(tn.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),t.observe(this)}}function DL(e){for(let t=1;te*180/Math.PI,ev=e=>{const t=Ba(Math.atan2(e[1],e[0]));return tv(t)},PL={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:ev,rotateZ:ev,skewX:e=>Ba(Math.atan(e[1])),skewY:e=>Ba(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},tv=e=>(e=e%360,e<0&&(e+=360),e),GS=ev,WS=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),ZS=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),RL={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:WS,scaleY:ZS,scale:e=>(WS(e)+ZS(e))/2,rotateX:e=>tv(Ba(Math.atan2(e[6],e[5]))),rotateY:e=>tv(Ba(Math.atan2(-e[2],e[0]))),rotateZ:GS,rotate:GS,skewX:e=>Ba(Math.atan(e[4])),skewY:e=>Ba(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function nv(e){return e.includes("scale")?1:0}function rv(e,t){if(!e||e==="none")return nv(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let r,s;if(n)r=RL,s=n;else{const f=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=PL,s=f}if(!s)return nv(t);const o=r[t],u=s[1].split(",").map(zL);return typeof o=="function"?o(u):u[o]}const LL=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return rv(n,t)};function zL(e){return parseFloat(e.trim())}const bo=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],xo=new Set(bo),QS=e=>e===vo||e===de,IL=new Set(["x","y","z"]),BL=bo.filter(e=>!IL.has(e));function UL(e){const t=[];return BL.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t}const Qi={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>rv(t,"x"),y:(e,{transform:t})=>rv(t,"y")};Qi.translateX=Qi.x;Qi.translateY=Qi.y;const Fa=new Set;let iv=!1,av=!1,sv=!1;function UM(){if(av){const e=Array.from(Fa).filter(r=>r.needsMeasurement),t=new Set(e.map(r=>r.element)),n=new Map;t.forEach(r=>{const s=UL(r);s.length&&(n.set(r,s),r.render())}),e.forEach(r=>r.measureInitialState()),t.forEach(r=>{r.render();const s=n.get(r);s&&s.forEach(([o,u])=>{r.getValue(o)?.set(u)})}),e.forEach(r=>r.measureEndState()),e.forEach(r=>{r.suspendedScrollY!==void 0&&window.scrollTo(0,r.suspendedScrollY)})}av=!1,iv=!1,Fa.forEach(e=>e.complete(sv)),Fa.clear()}function VM(){Fa.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(av=!0)})}function VL(){sv=!0,VM(),UM(),sv=!1}class k0{constructor(t,n,r,s,o,u=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=r,this.motionValue=s,this.element=o,this.isAsync=u}scheduleResolve(){this.state="scheduled",this.isAsync?(Fa.add(this),iv||(iv=!0,Ge.read(VM),Ge.resolveKeyframes(UM))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:r,motionValue:s}=this;if(t[0]===null){const o=s?.get(),u=t[t.length-1];if(o!==void 0)t[0]=o;else if(r&&n){const f=r.readValue(n,u);f!=null&&(t[0]=f)}t[0]===void 0&&(t[0]=u),s&&o===void 0&&s.set(t[0])}DL(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),Fa.delete(this)}cancel(){this.state==="scheduled"&&(Fa.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const qL=e=>e.startsWith("--");function qM(e,t,n){qL(t)?e.style.setProperty(t,n):e.style[t]=n}const $L={};function $M(e,t){const n=pM(e);return()=>$L[t]??n()}const FL=$M(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),FM=$M(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),$l=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,JS={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:$l([0,.65,.55,1]),circOut:$l([.55,0,1,.45]),backIn:$l([.31,.01,.66,-.59]),backOut:$l([.33,1.53,.69,.99])};function HM(e,t){if(e)return typeof e=="function"?FM()?zM(e,t):"ease-out":OM(e)?$l(e):Array.isArray(e)?e.map(n=>HM(n,t)||JS.easeOut):JS[e]}function HL(e,t,n,{delay:r=0,duration:s=300,repeat:o=0,repeatType:u="loop",ease:f="easeOut",times:d}={},h=void 0){const m={[t]:n};d&&(m.offset=d);const p=HM(f,s);Array.isArray(p)&&(m.easing=p);const v={delay:r,duration:s,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:o+1,direction:u==="reverse"?"alternate":"normal"};return h&&(v.pseudoElement=h),e.animate(m,v)}function KM(e){return typeof e=="function"&&"applyToOptions"in e}function KL({type:e,...t}){return KM(e)&&FM()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class XM extends M0{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!t)return;const{element:n,name:r,keyframes:s,pseudoElement:o,allowFlatten:u=!1,finalKeyframe:f,onComplete:d}=t;this.isPseudoElement=!!o,this.allowFlatten=u,this.options=t,b0(typeof t.type!="string");const h=KL(t);this.animation=HL(n,r,s,h,o),h.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!o){const m=j0(s,this.options,f,this.speed);this.updateMotionValue&&this.updateMotionValue(m),qM(n,r,m),this.animation.cancel()}d?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){const t=this.options?.element;!this.isPseudoElement&&t?.isConnected&&this.animation.commitStyles?.()}get duration(){const t=this.animation.effect?.getComputedTiming?.().duration||0;return Gn(Number(t))}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(Number(this.animation.currentTime)||0)}set time(t){const n=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=fr(t),n&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(t){this.manualStartTime=this.animation.startTime=t}attachTimeline({timeline:t,rangeStart:n,rangeEnd:r,observe:s}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,t&&FL()?(this.animation.timeline=t,n&&(this.animation.rangeStart=n),r&&(this.animation.rangeEnd=r),Jn):s(this)}}const YM={anticipate:_M,backInOut:wM,circInOut:AM};function XL(e){return e in YM}function YL(e){typeof e.ease=="string"&&XL(e.ease)&&(e.ease=YM[e.ease])}const ig=10;class GL extends XM{constructor(t){YL(t),BM(t),super(t),t.startTime!==void 0&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:r,onComplete:s,element:o,...u}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const f=new N0({...u,autoplay:!1}),d=Math.max(ig,tn.now()-this.startTime),h=Mr(0,ig,d-ig),m=f.sample(d).value,{name:p}=this.options;o&&p&&qM(o,p,m),n.setWithVelocity(f.sample(Math.max(0,d-h)).value,m,h),f.stop()}}const eA=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(dr.test(e)||e==="0")&&!e.startsWith("url("));function WL(e){const t=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function e8(e){const{motionValue:t,name:n,repeatDelay:r,repeatType:s,damping:o,type:u}=e;if(!(t?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:d,transformTemplate:h}=t.owner.getProps();return JL()&&n&&QL.has(n)&&(n!=="transform"||!h)&&!d&&!r&&s!=="mirror"&&o!==0&&u!=="inertia"}const t8=40;class n8 extends M0{constructor({autoplay:t=!0,delay:n=0,type:r="keyframes",repeat:s=0,repeatDelay:o=0,repeatType:u="loop",keyframes:f,name:d,motionValue:h,element:m,...p}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=tn.now();const v={autoplay:t,delay:n,type:r,repeat:s,repeatDelay:o,repeatType:u,name:d,motionValue:h,element:m,...p},x=m?.KeyframeResolver||k0;this.keyframeResolver=new x(f,(w,_,S)=>this.onKeyframesResolved(w,_,v,!S),d,h,m),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(t,n,r,s){this.keyframeResolver=void 0;const{name:o,type:u,velocity:f,delay:d,isHandoff:h,onUpdate:m}=r;this.resolvedAt=tn.now(),ZL(t,o,u,f)||((si.instantAnimations||!d)&&m?.(j0(t,r,n)),t[0]=t[t.length-1],ov(r),r.repeat=0);const v={startTime:s?this.resolvedAt?this.resolvedAt-this.createdAt>t8?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...r,keyframes:t},x=!h&&e8(v),w=v.motionValue?.owner?.current,_=x?new GL({...v,element:w}):new N0(v);_.finished.then(()=>{this.notifyFinished()}).catch(Jn),this.pendingTimeline&&(this.stopTimeline=_.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=_}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),VL()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}function GM(e,t,n,r=0,s=1){const o=Array.from(e).sort((h,m)=>h.sortNodePosition(m)).indexOf(t),u=e.size,f=(u-1)*r;return typeof n=="function"?n(o,u):s===1?o*r:f-o*r}const r8=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function i8(e){const t=r8.exec(e);if(!t)return[,];const[,n,r,s]=t;return[`--${n??r}`,s]}function WM(e,t,n=1){const[r,s]=i8(e);if(!r)return;const o=window.getComputedStyle(t).getPropertyValue(r);if(o){const u=o.trim();return dM(u)?parseFloat(u):u}return S0(s)?WM(s,t,n+1):s}const a8={type:"spring",stiffness:500,damping:25,restSpeed:10},s8=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),o8={type:"keyframes",duration:.8},l8={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},u8=(e,{keyframes:t})=>t.length>2?o8:xo.has(e)?e.startsWith("scale")?s8(t[1]):a8:l8,c8=e=>e!==null;function f8(e,{repeat:t,repeatType:n="loop"},r){const s=e.filter(c8),o=t&&n!=="loop"&&t%2===1?0:s.length-1;return s[o]}function ZM(e,t){if(e?.inherit&&t){const{inherit:n,...r}=e;return{...t,...r}}return e}function C0(e,t){const n=e?.[t]??e?.default??e;return n!==e?ZM(n,e):n}function d8({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:s,repeat:o,repeatType:u,repeatDelay:f,from:d,elapsed:h,...m}){return!!Object.keys(m).length}const D0=(e,t,n,r={},s,o)=>u=>{const f=C0(r,e)||{},d=f.delay||r.delay||0;let{elapsed:h=0}=r;h=h-fr(d);const m={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...f,delay:-h,onUpdate:v=>{t.set(v),f.onUpdate&&f.onUpdate(v)},onComplete:()=>{u(),f.onComplete&&f.onComplete()},name:e,motionValue:t,element:o?void 0:s};d8(f)||Object.assign(m,u8(e,m)),m.duration&&(m.duration=fr(m.duration)),m.repeatDelay&&(m.repeatDelay=fr(m.repeatDelay)),m.from!==void 0&&(m.keyframes[0]=m.from);let p=!1;if((m.type===!1||m.duration===0&&!m.repeatDelay)&&(ov(m),m.delay===0&&(p=!0)),(si.instantAnimations||si.skipAnimations||s?.shouldSkipAnimations)&&(p=!0,ov(m),m.delay=0),m.allowFlatten=!f.type&&!f.ease,p&&!o&&t.get()!==void 0){const v=f8(m.keyframes,f);if(v!==void 0){Ge.update(()=>{m.onUpdate(v),m.onComplete()});return}}return f.isSync?new N0(m):new n8(m)};function tA(e){const t=[{},{}];return e?.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function P0(e,t,n,r){if(typeof t=="function"){const[s,o]=tA(r);t=t(n!==void 0?n:e.custom,s,o)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[s,o]=tA(r);t=t(n!==void 0?n:e.custom,s,o)}return t}function ao(e,t,n){const r=e.getProps();return P0(r,t,n!==void 0?n:r.custom,e)}const QM=new Set(["width","height","top","left","right","bottom",...bo]),nA=30,h8=e=>!isNaN(parseFloat(e));class m8{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=r=>{const s=tn.now();if(this.updatedAt!==s&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(r),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=tn.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=h8(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new x0);const r=this.events[t].add(n);return t==="change"?()=>{r(),Ge.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,r){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-r}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=tn.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>nA)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,nA);return gM(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function uo(e,t){return new m8(e,t)}const lv=e=>Array.isArray(e);function p8(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,uo(n))}function g8(e){return lv(e)?e[e.length-1]||0:e}function y8(e,t){const n=ao(e,t);let{transitionEnd:r={},transition:s={},...o}=n||{};o={...o,...r};for(const u in o){const f=g8(o[u]);p8(e,u,f)}}const Zt=e=>!!(e&&e.getVelocity);function v8(e){return!!(Zt(e)&&e.add)}function uv(e,t){const n=e.getValue("willChange");if(v8(n))return n.add(t);if(!n&&si.WillChange){const r=new si.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function R0(e){return e.replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}const b8="framerAppearId",JM="data-"+R0(b8);function eN(e){return e.props[JM]}function x8({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function tN(e,t,{delay:n=0,transitionOverride:r,type:s}={}){let{transition:o,transitionEnd:u,...f}=t;const d=e.getDefaultTransition();o=o?ZM(o,d):d;const h=o?.reduceMotion;r&&(o=r);const m=[],p=s&&e.animationState&&e.animationState.getState()[s];for(const v in f){const x=e.getValue(v,e.latestValues[v]??null),w=f[v];if(w===void 0||p&&x8(p,v))continue;const _={delay:n,...C0(o||{},v)},S=x.get();if(S!==void 0&&!x.isAnimating&&!Array.isArray(w)&&w===S&&!_.velocity)continue;let O=!1;if(window.MotionHandoffAnimation){const N=eN(e);if(N){const k=window.MotionHandoffAnimation(N,v,Ge);k!==null&&(_.startTime=k,O=!0)}}uv(e,v);const M=h??e.shouldReduceMotion;x.start(D0(v,x,w,M&&QM.has(v)?{type:!1}:_,e,O));const j=x.animation;j&&m.push(j)}if(u){const v=()=>Ge.update(()=>{u&&y8(e,u)});m.length?Promise.all(m).then(v):v()}return m}function cv(e,t,n={}){const r=ao(e,t,n.type==="exit"?e.presenceContext?.custom:void 0);let{transition:s=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(s=n.transitionOverride);const o=r?()=>Promise.all(tN(e,r,n)):()=>Promise.resolve(),u=e.variantChildren&&e.variantChildren.size?(d=0)=>{const{delayChildren:h=0,staggerChildren:m,staggerDirection:p}=s;return w8(e,t,d,h,m,p,n)}:()=>Promise.resolve(),{when:f}=s;if(f){const[d,h]=f==="beforeChildren"?[o,u]:[u,o];return d().then(()=>h())}else return Promise.all([o(),u(n.delay)])}function w8(e,t,n=0,r=0,s=0,o=1,u){const f=[];for(const d of e.variantChildren)d.notify("AnimationStart",t),f.push(cv(d,t,{...u,delay:n+(typeof r=="function"?0:r)+GM(e.variantChildren,d,r,s,o)}).then(()=>d.notify("AnimationComplete",t)));return Promise.all(f)}function _8(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const s=t.map(o=>cv(e,o,n));r=Promise.all(s)}else if(typeof t=="string")r=cv(e,t,n);else{const s=typeof t=="function"?ao(e,t,n.custom):t;r=Promise.all(tN(e,s,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}const S8={test:e=>e==="auto",parse:e=>e},nN=e=>t=>t.test(e),rN=[vo,de,Or,Yi,J6,Q6,S8],rA=e=>rN.find(nN(e));function A8(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||mM(e):!0}const T8=new Set(["brightness","contrast","saturate","opacity"]);function O8(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(A0)||[];if(!r)return e;const s=n.replace(r,"");let o=T8.has(t)?1:0;return r!==n&&(o*=100),t+"("+o+s+")"}const E8=/\b([a-z-]*)\(.*?\)/gu,fv={...dr,getAnimatableNone:e=>{const t=e.match(E8);return t?t.map(O8).join(" "):e}},dv={...dr,getAnimatableNone:e=>{const t=dr.parse(e);return dr.createTransformer(e)(t.map(r=>typeof r=="number"?0:typeof r=="object"?{...r,alpha:1}:r))}},iA={...vo,transform:Math.round},j8={rotate:Yi,rotateX:Yi,rotateY:Yi,rotateZ:Yi,scale:ff,scaleX:ff,scaleY:ff,scaleZ:ff,skew:Yi,skewX:Yi,skewY:Yi,distance:de,translateX:de,translateY:de,translateZ:de,x:de,y:de,z:de,perspective:de,transformPerspective:de,opacity:tu,originX:FS,originY:FS,originZ:de},L0={borderWidth:de,borderTopWidth:de,borderRightWidth:de,borderBottomWidth:de,borderLeftWidth:de,borderRadius:de,borderTopLeftRadius:de,borderTopRightRadius:de,borderBottomRightRadius:de,borderBottomLeftRadius:de,width:de,maxWidth:de,height:de,maxHeight:de,top:de,right:de,bottom:de,left:de,inset:de,insetBlock:de,insetBlockStart:de,insetBlockEnd:de,insetInline:de,insetInlineStart:de,insetInlineEnd:de,padding:de,paddingTop:de,paddingRight:de,paddingBottom:de,paddingLeft:de,paddingBlock:de,paddingBlockStart:de,paddingBlockEnd:de,paddingInline:de,paddingInlineStart:de,paddingInlineEnd:de,margin:de,marginTop:de,marginRight:de,marginBottom:de,marginLeft:de,marginBlock:de,marginBlockStart:de,marginBlockEnd:de,marginInline:de,marginInlineStart:de,marginInlineEnd:de,fontSize:de,backgroundPositionX:de,backgroundPositionY:de,...j8,zIndex:iA,fillOpacity:tu,strokeOpacity:tu,numOctaves:iA},M8={...L0,color:vt,backgroundColor:vt,outlineColor:vt,fill:vt,stroke:vt,borderColor:vt,borderTopColor:vt,borderRightColor:vt,borderBottomColor:vt,borderLeftColor:vt,filter:fv,WebkitFilter:fv,mask:dv,WebkitMask:dv},iN=e=>M8[e],N8=new Set([fv,dv]);function aN(e,t){let n=iN(e);return N8.has(n)||(n=dr),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const k8=new Set(["auto","none","0"]);function C8(e,t,n){let r=0,s;for(;r{t.getValue(f).set(d)}),this.resolveNoneKeyframes()}}const P8=new Set(["opacity","clipPath","filter","transform"]);function sN(e,t,n){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e=="string"){let r=document;const s=n?.[e]??r.querySelectorAll(e);return s?Array.from(s):[]}return Array.from(e).filter(r=>r!=null)}const oN=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function hv(e){return hM(e)&&"offsetHeight"in e}const{schedule:z0}=EM(queueMicrotask,!1),or={x:!1,y:!1};function lN(){return or.x||or.y}function R8(e){return e==="x"||e==="y"?or[e]?null:(or[e]=!0,()=>{or[e]=!1}):or.x||or.y?null:(or.x=or.y=!0,()=>{or.x=or.y=!1})}function uN(e,t){const n=sN(e),r=new AbortController,s={passive:!0,...t,signal:r.signal};return[n,s,()=>r.abort()]}function L8(e){return!(e.pointerType==="touch"||lN())}function z8(e,t,n={}){const[r,s,o]=uN(e,n);return r.forEach(u=>{let f=!1,d=!1,h;const m=()=>{u.removeEventListener("pointerleave",w)},p=S=>{h&&(h(S),h=void 0),m()},v=S=>{f=!1,window.removeEventListener("pointerup",v),window.removeEventListener("pointercancel",v),d&&(d=!1,p(S))},x=()=>{f=!0,window.addEventListener("pointerup",v,s),window.addEventListener("pointercancel",v,s)},w=S=>{if(S.pointerType!=="touch"){if(f){d=!0;return}p(S)}},_=S=>{if(!L8(S))return;d=!1;const O=t(u,S);typeof O=="function"&&(h=O,u.addEventListener("pointerleave",w,s))};u.addEventListener("pointerenter",_,s),u.addEventListener("pointerdown",x,s)}),o}const cN=(e,t)=>t?e===t?!0:cN(e,t.parentElement):!1,I0=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,I8=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function B8(e){return I8.has(e.tagName)||e.isContentEditable===!0}const U8=new Set(["INPUT","SELECT","TEXTAREA"]);function V8(e){return U8.has(e.tagName)||e.isContentEditable===!0}const Df=new WeakSet;function aA(e){return t=>{t.key==="Enter"&&e(t)}}function ag(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const q8=(e,t)=>{const n=e.currentTarget;if(!n)return;const r=aA(()=>{if(Df.has(n))return;ag(n,"down");const s=aA(()=>{ag(n,"up")}),o=()=>ag(n,"cancel");n.addEventListener("keyup",s,t),n.addEventListener("blur",o,t)});n.addEventListener("keydown",r,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",r),t)};function sA(e){return I0(e)&&!lN()}const oA=new WeakSet;function $8(e,t,n={}){const[r,s,o]=uN(e,n),u=f=>{const d=f.currentTarget;if(!sA(f)||oA.has(f))return;Df.add(d),n.stopPropagation&&oA.add(f);const h=t(d,f),m=(x,w)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",v),Df.has(d)&&Df.delete(d),sA(x)&&typeof h=="function"&&h(x,{success:w})},p=x=>{m(x,d===window||d===document||n.useGlobalTarget||cN(d,x.target))},v=x=>{m(x,!1)};window.addEventListener("pointerup",p,s),window.addEventListener("pointercancel",v,s)};return r.forEach(f=>{(n.useGlobalTarget?window:f).addEventListener("pointerdown",u,s),hv(f)&&(f.addEventListener("focus",h=>q8(h,s)),!B8(f)&&!f.hasAttribute("tabindex")&&(f.tabIndex=0))}),o}function B0(e){return hM(e)&&"ownerSVGElement"in e}const Pf=new WeakMap;let Rf;const fN=(e,t,n)=>(r,s)=>s&&s[0]?s[0][e+"Size"]:B0(r)&&"getBBox"in r?r.getBBox()[t]:r[n],F8=fN("inline","width","offsetWidth"),H8=fN("block","height","offsetHeight");function K8({target:e,borderBoxSize:t}){Pf.get(e)?.forEach(n=>{n(e,{get width(){return F8(e,t)},get height(){return H8(e,t)}})})}function X8(e){e.forEach(K8)}function Y8(){typeof ResizeObserver>"u"||(Rf=new ResizeObserver(X8))}function G8(e,t){Rf||Y8();const n=sN(e);return n.forEach(r=>{let s=Pf.get(r);s||(s=new Set,Pf.set(r,s)),s.add(t),Rf?.observe(r)}),()=>{n.forEach(r=>{const s=Pf.get(r);s?.delete(t),s?.size||Rf?.unobserve(r)})}}const Lf=new Set;let Js;function W8(){Js=()=>{const e={get width(){return window.innerWidth},get height(){return window.innerHeight}};Lf.forEach(t=>t(e))},window.addEventListener("resize",Js)}function Z8(e){return Lf.add(e),Js||W8(),()=>{Lf.delete(e),!Lf.size&&typeof Js=="function"&&(window.removeEventListener("resize",Js),Js=void 0)}}function lA(e,t){return typeof e=="function"?Z8(e):G8(e,t)}function Q8(e){return B0(e)&&e.tagName==="svg"}const J8=[...rN,vt,dr],ez=e=>J8.find(nN(e)),uA=()=>({translate:0,scale:1,origin:0,originPoint:0}),eo=()=>({x:uA(),y:uA()}),cA=()=>({min:0,max:0}),St=()=>({x:cA(),y:cA()}),tz=new WeakMap;function Hd(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function ru(e){return typeof e=="string"||Array.isArray(e)}const U0=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],V0=["initial",...U0];function Kd(e){return Hd(e.animate)||V0.some(t=>ru(e[t]))}function dN(e){return!!(Kd(e)||e.variants)}function nz(e,t,n){for(const r in t){const s=t[r],o=n[r];if(Zt(s))e.addValue(r,s);else if(Zt(o))e.addValue(r,uo(s,{owner:e}));else if(o!==s)if(e.hasValue(r)){const u=e.getValue(r);u.liveStyle===!0?u.jump(s):u.hasAnimated||u.set(s)}else{const u=e.getStaticValue(r);e.addValue(r,uo(u!==void 0?u:s,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const mv={current:null},hN={current:!1},rz=typeof window<"u";function iz(){if(hN.current=!0,!!rz)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>mv.current=e.matches;e.addEventListener("change",t),t()}else mv.current=!1}const fA=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Yf={};function mN(e){Yf=e}function az(){return Yf}class sz{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:s,skipAnimations:o,blockInitialAnimation:u,visualState:f},d={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=k0,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const x=tn.now();this.renderScheduledAtthis.bindToMotionValue(r,n)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(hN.current||iz(),this.shouldReduceMotion=mv.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),na(this.notifyUpdate),na(this.render),this.valueSubscriptions.forEach(t=>t()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const t in this.events)this.events[t].clear();for(const t in this.features){const n=this.features[t];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),n.accelerate&&P8.has(t)&&this.current instanceof HTMLElement){const{factory:u,keyframes:f,times:d,ease:h,duration:m}=n.accelerate,p=new XM({element:this.current,name:t,keyframes:f,times:d,ease:h,duration:fr(m)}),v=u(p);this.valueSubscriptions.set(t,()=>{v(),p.cancel()});return}const r=xo.has(t);r&&this.onBindTransform&&this.onBindTransform();const s=n.on("change",u=>{this.latestValues[t]=u,this.props.onUpdate&&Ge.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;typeof window<"u"&&window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{s(),o&&o(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Yf){const n=Yf[t];if(!n)continue;const{isEnabled:r,Feature:s}=n;if(!this.features[t]&&s&&r(this.props)&&(this.features[t]=new s(this)),this.features[t]){const o=this.features[t];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):St()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;rn.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=uo(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(dM(r)||mM(r))?r=parseFloat(r):!ez(r)&&dr.test(n)&&(r=aN(t,n)),this.setBaseTarget(t,Zt(r)?r.get():r)),Zt(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const o=P0(this.props,n,this.presenceContext?.custom);o&&(r=o[t])}if(n&&r!==void 0)return r;const s=this.getBaseTargetFromProps(this.props,t);return s!==void 0&&!Zt(s)?s:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new x0),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){z0.render(this.render)}}class pN extends sz{constructor(){super(...arguments),this.KeyframeResolver=D8}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){const r=t.style;return r?r[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;Zt(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}class aa{constructor(t){this.isMounted=!1,this.node=t}update(){}}function gN({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function oz({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function lz(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function sg(e){return e===void 0||e===1}function pv({scale:e,scaleX:t,scaleY:n}){return!sg(e)||!sg(t)||!sg(n)}function Pa(e){return pv(e)||yN(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function yN(e){return dA(e.x)||dA(e.y)}function dA(e){return e&&e!=="0%"}function Gf(e,t,n){const r=e-n,s=t*r;return n+s}function hA(e,t,n,r,s){return s!==void 0&&(e=Gf(e,s,r)),Gf(e,n,r)+t}function gv(e,t=0,n=1,r,s){e.min=hA(e.min,t,n,r,s),e.max=hA(e.max,t,n,r,s)}function vN(e,{x:t,y:n}){gv(e.x,t.translate,t.scale,t.originPoint),gv(e.y,n.translate,n.scale,n.originPoint)}const mA=.999999999999,pA=1.0000000000001;function uz(e,t,n,r=!1){const s=n.length;if(!s)return;t.x=t.y=1;let o,u;for(let f=0;fmA&&(t.x=1),t.ymA&&(t.y=1)}function to(e,t){e.min=e.min+t,e.max=e.max+t}function gA(e,t,n,r,s=.5){const o=rt(e.min,e.max,s);gv(e,t,n,o,r)}function yA(e,t){return typeof e=="string"?parseFloat(e)/100*(t.max-t.min):e}function no(e,t){gA(e.x,yA(t.x,e.x),t.scaleX,t.scale,t.originX),gA(e.y,yA(t.y,e.y),t.scaleY,t.scale,t.originY)}function bN(e,t){return gN(lz(e.getBoundingClientRect(),t))}function cz(e,t,n){const r=bN(e,n),{scroll:s}=t;return s&&(to(r.x,s.offset.x),to(r.y,s.offset.y)),r}const fz={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},dz=bo.length;function hz(e,t,n){let r="",s=!0;for(let o=0;o{if(!t.target)return e;if(typeof e=="string")if(de.test(e))e=parseFloat(e);else return e;const n=vA(e,t.target.x),r=vA(e,t.target.y);return`${n}% ${r}%`}},mz={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,s=dr.parse(e);if(s.length>5)return r;const o=dr.createTransformer(e),u=typeof s[0]!="number"?1:0,f=n.x.scale*t.x,d=n.y.scale*t.y;s[0+u]/=f,s[1+u]/=d;const h=rt(f,d,.5);return typeof s[2+u]=="number"&&(s[2+u]/=h),typeof s[3+u]=="number"&&(s[3+u]/=h),o(s)}},yv={borderRadius:{...jl,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:jl,borderTopRightRadius:jl,borderBottomLeftRadius:jl,borderBottomRightRadius:jl,boxShadow:mz};function wN(e,{layout:t,layoutId:n}){return xo.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!yv[e]||e==="opacity")}function $0(e,t,n){const r=e.style,s=t?.style,o={};if(!r)return o;for(const u in r)(Zt(r[u])||s&&Zt(s[u])||wN(u,e)||n?.getValue(u)?.liveStyle!==void 0)&&(o[u]=r[u]);return o}function pz(e){return window.getComputedStyle(e)}class gz extends pN{constructor(){super(...arguments),this.type="html",this.renderInstance=xN}readValueFromInstance(t,n){if(xo.has(n))return this.projection?.isProjecting?nv(n):LL(t,n);{const r=pz(t),s=(MM(n)?r.getPropertyValue(n):r[n])||0;return typeof s=="string"?s.trim():s}}measureInstanceViewportBox(t,{transformPagePoint:n}){return bN(t,n)}build(t,n,r){q0(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return $0(t,n,r)}}const yz={offset:"stroke-dashoffset",array:"stroke-dasharray"},vz={offset:"strokeDashoffset",array:"strokeDasharray"};function bz(e,t,n=1,r=0,s=!0){e.pathLength=1;const o=s?yz:vz;e[o.offset]=`${-r}`,e[o.array]=`${t} ${n}`}const xz=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function _N(e,{attrX:t,attrY:n,attrScale:r,pathLength:s,pathSpacing:o=1,pathOffset:u=0,...f},d,h,m){if(q0(e,f,h),d){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:p,style:v}=e;p.transform&&(v.transform=p.transform,delete p.transform),(v.transform||p.transformOrigin)&&(v.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),v.transform&&(v.transformBox=m?.transformBox??"fill-box",delete p.transformBox);for(const x of xz)p[x]!==void 0&&(v[x]=p[x],delete p[x]);t!==void 0&&(p.x=t),n!==void 0&&(p.y=n),r!==void 0&&(p.scale=r),s!==void 0&&bz(p,s,o,u,!1)}const SN=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),AN=e=>typeof e=="string"&&e.toLowerCase()==="svg";function wz(e,t,n,r){xN(e,t,void 0,r);for(const s in t.attrs)e.setAttribute(SN.has(s)?s:R0(s),t.attrs[s])}function TN(e,t,n){const r=$0(e,t,n);for(const s in e)if(Zt(e[s])||Zt(t[s])){const o=bo.indexOf(s)!==-1?"attr"+s.charAt(0).toUpperCase()+s.substring(1):s;r[o]=e[s]}return r}class _z extends pN{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=St}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(xo.has(n)){const r=iN(n);return r&&r.default||0}return n=SN.has(n)?n:R0(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return TN(t,n,r)}build(t,n,r){_N(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,s){wz(t,n,r,s)}mount(t){this.isSVGTag=AN(t.tagName),super.mount(t)}}const Sz=V0.length;function ON(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?ON(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;nPromise.all(t.map(({animation:n,options:r})=>_8(e,n,r)))}function Ez(e){let t=Oz(e),n=bA(),r=!0,s=!1;const o=h=>(m,p)=>{const v=ao(e,p,h==="exit"?e.presenceContext?.custom:void 0);if(v){const{transition:x,transitionEnd:w,..._}=v;m={...m,..._,...w}}return m};function u(h){t=h(e)}function f(h){const{props:m}=e,p=ON(e.parent)||{},v=[],x=new Set;let w={},_=1/0;for(let O=0;O_&&k,te=!1;const ie=Array.isArray(N)?N:[N];let K=ie.reduce(o(M),{});C===!1&&(K={});const{prevResolvedValues:be={}}=j,pe={...be,...K},xe=ne=>{Y=!0,x.has(ne)&&(te=!0,x.delete(ne)),j.needsAnimating[ne]=!0;const le=e.getValue(ne);le&&(le.liveStyle=!1)};for(const ne in pe){const le=K[ne],ue=be[ne];if(w.hasOwnProperty(ne))continue;let P=!1;lv(le)&&lv(ue)?P=!EN(le,ue):P=le!==ue,P?le!=null?xe(ne):x.add(ne):le!==void 0&&x.has(ne)?xe(ne):j.protectedKeys[ne]=!0}j.prevProp=N,j.prevResolvedValues=K,j.isActive&&(w={...w,...K}),(r||s)&&e.blockInitialAnimation&&(Y=!1);const V=L&&I;Y&&(!V||te)&&v.push(...ie.map(ne=>{const le={type:M};if(typeof ne=="string"&&(r||s)&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:ue}=e,P=ao(ue,ne);if(ue.enteringChildren&&P){const{delayChildren:H}=P.transition||{};le.delay=GM(ue.enteringChildren,e,H)}}return{animation:ne,options:le}}))}if(x.size){const O={};if(typeof m.initial!="boolean"){const M=ao(e,Array.isArray(m.initial)?m.initial[0]:m.initial);M&&M.transition&&(O.transition=M.transition)}x.forEach(M=>{const j=e.getBaseTarget(M),N=e.getValue(M);N&&(N.liveStyle=!0),O[M]=j??null}),v.push({animation:O})}let S=!!v.length;return r&&(m.initial===!1||m.initial===m.animate)&&!e.manuallyAnimateOnMount&&(S=!1),r=!1,s=!1,S?t(v):Promise.resolve()}function d(h,m){if(n[h].isActive===m)return Promise.resolve();e.variantChildren?.forEach(v=>v.animationState?.setActive(h,m)),n[h].isActive=m;const p=f(h);for(const v in n)n[v].protectedKeys={};return p}return{animateChanges:f,setActive:d,setAnimateFunction:u,getState:()=>n,reset:()=>{n=bA(),s=!0}}}function jz(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!EN(t,e):!1}function Ma(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function bA(){return{animate:Ma(!0),whileInView:Ma(),whileHover:Ma(),whileTap:Ma(),whileDrag:Ma(),whileFocus:Ma(),exit:Ma()}}function xA(e,t){e.min=t.min,e.max=t.max}function sr(e,t){xA(e.x,t.x),xA(e.y,t.y)}function wA(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}const jN=1e-4,Mz=1-jN,Nz=1+jN,MN=.01,kz=0-MN,Cz=0+MN;function nn(e){return e.max-e.min}function Dz(e,t,n){return Math.abs(e-t)<=n}function _A(e,t,n,r=.5){e.origin=r,e.originPoint=rt(t.min,t.max,e.origin),e.scale=nn(n)/nn(t),e.translate=rt(n.min,n.max,e.origin)-e.originPoint,(e.scale>=Mz&&e.scale<=Nz||isNaN(e.scale))&&(e.scale=1),(e.translate>=kz&&e.translate<=Cz||isNaN(e.translate))&&(e.translate=0)}function Gl(e,t,n,r){_A(e.x,t.x,n.x,r?r.originX:void 0),_A(e.y,t.y,n.y,r?r.originY:void 0)}function SA(e,t,n){e.min=n.min+t.min,e.max=e.min+nn(t)}function Pz(e,t,n){SA(e.x,t.x,n.x),SA(e.y,t.y,n.y)}function AA(e,t,n){e.min=t.min-n.min,e.max=e.min+nn(t)}function Wf(e,t,n){AA(e.x,t.x,n.x),AA(e.y,t.y,n.y)}function TA(e,t,n,r,s){return e-=t,e=Gf(e,1/n,r),s!==void 0&&(e=Gf(e,1/s,r)),e}function Rz(e,t=0,n=1,r=.5,s,o=e,u=e){if(Or.test(t)&&(t=parseFloat(t),t=rt(u.min,u.max,t/100)-u.min),typeof t!="number")return;let f=rt(o.min,o.max,r);e===o&&(f-=t),e.min=TA(e.min,t,n,f,s),e.max=TA(e.max,t,n,f,s)}function OA(e,t,[n,r,s],o,u){Rz(e,t[n],t[r],t[s],t.scale,o,u)}const Lz=["x","scaleX","originX"],zz=["y","scaleY","originY"];function EA(e,t,n,r){OA(e.x,t,Lz,n?n.x:void 0,r?r.x:void 0),OA(e.y,t,zz,n?n.y:void 0,r?r.y:void 0)}function jA(e){return e.translate===0&&e.scale===1}function NN(e){return jA(e.x)&&jA(e.y)}function MA(e,t){return e.min===t.min&&e.max===t.max}function Iz(e,t){return MA(e.x,t.x)&&MA(e.y,t.y)}function NA(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function kN(e,t){return NA(e.x,t.x)&&NA(e.y,t.y)}function kA(e){return nn(e.x)/nn(e.y)}function CA(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function Sr(e){return[e("x"),e("y")]}function Bz(e,t,n){let r="";const s=e.x.translate/t.x,o=e.y.translate/t.y,u=n?.z||0;if((s||o||u)&&(r=`translate3d(${s}px, ${o}px, ${u}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:h,rotate:m,rotateX:p,rotateY:v,skewX:x,skewY:w}=n;h&&(r=`perspective(${h}px) ${r}`),m&&(r+=`rotate(${m}deg) `),p&&(r+=`rotateX(${p}deg) `),v&&(r+=`rotateY(${v}deg) `),x&&(r+=`skewX(${x}deg) `),w&&(r+=`skewY(${w}deg) `)}const f=e.x.scale*t.x,d=e.y.scale*t.y;return(f!==1||d!==1)&&(r+=`scale(${f}, ${d})`),r||"none"}const CN=["TopLeft","TopRight","BottomLeft","BottomRight"],Uz=CN.length,DA=e=>typeof e=="string"?parseFloat(e):e,PA=e=>typeof e=="number"||de.test(e);function Vz(e,t,n,r,s,o){s?(e.opacity=rt(0,n.opacity??1,qz(r)),e.opacityExit=rt(t.opacity??1,0,$z(r))):o&&(e.opacity=rt(t.opacity??1,n.opacity??1,r));for(let u=0;urt?1:n(eu(e,t,r))}function Fz(e,t,n){const r=Zt(e)?e:uo(e);return r.start(D0("",r,t,n)),r.animation}function iu(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const Hz=(e,t)=>e.depth-t.depth;class Kz{constructor(){this.children=[],this.isDirty=!1}add(t){v0(this.children,t),this.isDirty=!0}remove(t){Ff(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(Hz),this.isDirty=!1,this.children.forEach(t)}}function Xz(e,t){const n=tn.now(),r=({timestamp:s})=>{const o=s-n;o>=t&&(na(r),e(o-t))};return Ge.setup(r,!0),()=>na(r)}function zf(e){return Zt(e)?e.get():e}class Yz{constructor(){this.members=[]}add(t){v0(this.members,t);for(let n=this.members.length-1;n>=0;n--){const r=this.members[n];if(r===t||r===this.lead||r===this.prevLead)continue;const s=r.instance;(!s||s.isConnected===!1)&&!r.snapshot&&(Ff(this.members,r),r.unmount())}t.scheduleRender()}remove(t){if(Ff(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){for(let n=this.members.indexOf(t)-1;n>=0;n--){const r=this.members[n];if(r.isPresent!==!1&&r.instance?.isConnected!==!1)return this.promote(r),!0}return!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.updateSnapshot(),t.scheduleRender();const{layoutDependency:s}=r.options,{layoutDependency:o}=t.options;(s===void 0||s!==o)&&(t.resumeFrom=r,n&&(r.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root?.isUpdating&&(t.isLayoutDirty=!0)),t.options.crossfade===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{t.options.onExitComplete?.(),t.resumingFrom?.options.onExitComplete?.()})}scheduleRender(){this.members.forEach(t=>t.instance&&t.scheduleRender(!1))}removeLeadSnapshot(){this.lead?.snapshot&&(this.lead.snapshot=void 0)}}const If={hasAnimatedSinceResize:!0,hasEverUpdated:!1},og=["","X","Y","Z"],Gz=1e3;let Wz=0;function lg(e,t,n,r){const{latestValues:s}=t;s[e]&&(n[e]=s[e],t.setStaticValue(e,0),r&&(r[e]=0))}function PN(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=eN(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:s,layoutId:o}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Ge,!(s||o))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&PN(r)}function RN({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:s}){return class{constructor(u={},f=t?.()){this.id=Wz++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(Jz),this.nodes.forEach(rI),this.nodes.forEach(iI),this.nodes.forEach(eI)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=u,this.root=f?f.root||f:this,this.path=f?[...f.path,f]:[],this.parent=f,this.depth=f?f.depth+1:0;for(let d=0;dthis.root.updateBlockedByResize=!1;Ge.read(()=>{p=window.innerWidth}),e(u,()=>{const x=window.innerWidth;x!==p&&(p=x,this.root.updateBlockedByResize=!0,m&&m(),m=Xz(v,250),If.hasAnimatedSinceResize&&(If.hasAnimatedSinceResize=!1,this.nodes.forEach(IA)))})}f&&this.root.registerSharedNode(f,this),this.options.animate!==!1&&h&&(f||d)&&this.addEventListener("didUpdate",({delta:m,hasLayoutChanged:p,hasRelativeLayoutChanged:v,layout:x})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const w=this.options.transition||h.getDefaultTransition()||uI,{onLayoutAnimationStart:_,onLayoutAnimationComplete:S}=h.getProps(),O=!this.targetLayout||!kN(this.targetLayout,x),M=!p&&v;if(this.options.layoutRoot||this.resumeFrom||M||p&&(O||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const j={...C0(w,"layout"),onPlay:_,onComplete:S};(h.shouldReduceMotion||this.options.layoutRoot)&&(j.delay=0,j.type=!1),this.startAnimation(j),this.setAnimationOrigin(m,M)}else p||IA(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=x})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const u=this.getStack();u&&u.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),na(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(aI),this.animationId++)}getTransformTemplate(){const{visualElement:u}=this.options;return u&&u.getProps().transformTemplate}willUpdate(u=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&PN(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let m=0;m{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!nn(this.snapshot.measuredBox.x)&&!nn(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let d=0;d{const k=N/1e3;BA(p.x,u.x,k),BA(p.y,u.y,k),this.setTargetDelta(p),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Wf(v,this.layout.layoutBox,this.relativeParent.layout.layoutBox),oI(this.relativeTarget,this.relativeTargetOrigin,v,k),j&&Iz(this.relativeTarget,j)&&(this.isProjectionDirty=!1),j||(j=St()),sr(j,this.relativeTarget)),_&&(this.animationValues=m,Vz(m,h,this.latestValues,k,M,O)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=k},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(u){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(na(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Ge.update(()=>{If.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=uo(0)),this.motionValue.jump(0,!1),this.currentAnimation=Fz(this.motionValue,[0,1e3],{...u,velocity:0,isSync:!0,onUpdate:f=>{this.mixTargetDelta(f),u.onUpdate&&u.onUpdate(f)},onStop:()=>{},onComplete:()=>{u.onComplete&&u.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const u=this.getStack();u&&u.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Gz),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const u=this.getLead();let{targetWithTransforms:f,target:d,layout:h,latestValues:m}=u;if(!(!f||!d||!h)){if(this!==u&&this.layout&&h&&LN(this.options.animationType,this.layout.layoutBox,h.layoutBox)){d=this.target||St();const p=nn(this.layout.layoutBox.x);d.x.min=u.target.x.min,d.x.max=d.x.min+p;const v=nn(this.layout.layoutBox.y);d.y.min=u.target.y.min,d.y.max=d.y.min+v}sr(f,d),no(f,m),Gl(this.projectionDeltaWithTransform,this.layoutCorrected,f,m)}}registerSharedNode(u,f){this.sharedNodes.has(u)||this.sharedNodes.set(u,new Yz),this.sharedNodes.get(u).add(f);const h=f.options.initialPromotionConfig;f.promote({transition:h?h.transition:void 0,preserveFollowOpacity:h&&h.shouldPreserveFollowOpacity?h.shouldPreserveFollowOpacity(f):void 0})}isLead(){const u=this.getStack();return u?u.lead===this:!0}getLead(){const{layoutId:u}=this.options;return u?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:u}=this.options;return u?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:u}=this.options;if(u)return this.root.sharedNodes.get(u)}promote({needsReset:u,transition:f,preserveFollowOpacity:d}={}){const h=this.getStack();h&&h.promote(this,d),u&&(this.projectionDelta=void 0,this.needsReset=!0),f&&this.setOptions({transition:f})}relegate(){const u=this.getStack();return u?u.relegate(this):!1}resetSkewAndRotation(){const{visualElement:u}=this.options;if(!u)return;let f=!1;const{latestValues:d}=u;if((d.z||d.rotate||d.rotateX||d.rotateY||d.rotateZ||d.skewX||d.skewY)&&(f=!0),!f)return;const h={};d.z&&lg("z",u,h,this.animationValues);for(let m=0;mu.currentAnimation?.stop()),this.root.nodes.forEach(LA),this.root.sharedNodes.clear()}}}function Zz(e){e.updateLayout()}function Qz(e){const t=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:r}=e.layout,{animationType:s}=e.options,o=t.source!==e.layout.source;s==="size"?Sr(m=>{const p=o?t.measuredBox[m]:t.layoutBox[m],v=nn(p);p.min=n[m].min,p.max=p.min+v}):LN(s,t.layoutBox,n)&&Sr(m=>{const p=o?t.measuredBox[m]:t.layoutBox[m],v=nn(n[m]);p.max=p.min+v,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[m].max=e.relativeTarget[m].min+v)});const u=eo();Gl(u,n,t.layoutBox);const f=eo();o?Gl(f,e.applyTransform(r,!0),t.measuredBox):Gl(f,n,t.layoutBox);const d=!NN(u);let h=!1;if(!e.resumeFrom){const m=e.getClosestProjectingParent();if(m&&!m.resumeFrom){const{snapshot:p,layout:v}=m;if(p&&v){const x=St();Wf(x,t.layoutBox,p.layoutBox);const w=St();Wf(w,n,v.layoutBox),kN(x,w)||(h=!0),m.options.layoutRoot&&(e.relativeTarget=w,e.relativeTargetOrigin=x,e.relativeParent=m)}}}e.notifyListeners("didUpdate",{layout:n,snapshot:t,delta:f,layoutDelta:u,hasLayoutChanged:d,hasRelativeLayoutChanged:h})}else if(e.isLead()){const{onExitComplete:n}=e.options;n&&n()}e.options.transition=void 0}function Jz(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function eI(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function tI(e){e.clearSnapshot()}function LA(e){e.clearMeasurements()}function zA(e){e.isLayoutDirty=!1}function nI(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function IA(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function rI(e){e.resolveTargetDelta()}function iI(e){e.calcProjection()}function aI(e){e.resetSkewAndRotation()}function sI(e){e.removeLeadSnapshot()}function BA(e,t,n){e.translate=rt(t.translate,0,n),e.scale=rt(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function UA(e,t,n,r){e.min=rt(t.min,n.min,r),e.max=rt(t.max,n.max,r)}function oI(e,t,n,r){UA(e.x,t.x,n.x,r),UA(e.y,t.y,n.y,r)}function lI(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const uI={duration:.45,ease:[.4,0,.1,1]},VA=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),qA=VA("applewebkit/")&&!VA("chrome/")?Math.round:Jn;function $A(e){e.min=qA(e.min),e.max=qA(e.max)}function cI(e){$A(e.x),$A(e.y)}function LN(e,t,n){return e==="position"||e==="preserve-aspect"&&!Dz(kA(t),kA(n),.2)}function fI(e){return e!==e.root&&e.scroll?.wasRoot}const dI=RN({attachResizeListener:(e,t)=>iu(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),ug={current:void 0},zN=RN({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!ug.current){const e=new dI({});e.mount(window),e.setOptions({layoutScroll:!0}),ug.current=e}return ug.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),F0=A.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function FA(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function hI(...e){return t=>{let n=!1;const r=e.map(s=>{const o=FA(s,t);return!n&&typeof o=="function"&&(n=!0),o});if(n)return()=>{for(let s=0;s{const{width:v,height:x,top:w,left:_,right:S,bottom:O}=d.current;if(t||o===!1||!f.current||!v||!x)return;const M=n==="left"?`left: ${_}`:`right: ${S}`,j=r==="bottom"?`bottom: ${O}`:`top: ${w}`;f.current.dataset.motionPopId=u;const N=document.createElement("style");h&&(N.nonce=h);const k=s??document.head;return k.appendChild(N),N.sheet&&N.sheet.insertRule(` [data-motion-pop-id="${u}"] { position: absolute !important; width: ${v}px !important; @@ -14,7 +14,7 @@ Error generating stack: `+c.message+` ${M}px !important; ${j}px !important; } - `),()=>{N.contains(k)&&N.removeChild(k)}},[t]),b.jsx(pI,{isPresent:t,childRef:f,sizeRef:d,pop:o,children:o===!1?e:A.cloneElement(e,{ref:p})})}const yI=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:s,presenceAffectsLayout:o,mode:u,anchorX:f,anchorY:d,root:h})=>{const m=y0(vI),p=A.useId();let v=!0,x=A.useMemo(()=>(v=!1,{id:p,initial:t,isPresent:n,custom:s,onExitComplete:w=>{m.set(w,!0);for(const _ of m.values())if(!_)return;r&&r()},register:w=>(m.set(w,!1),()=>m.delete(w))}),[n,m,r]);return o&&v&&(x={...x}),A.useMemo(()=>{m.forEach((w,_)=>m.set(_,!1))},[n]),A.useEffect(()=>{!n&&!m.size&&r&&r()},[n]),e=b.jsx(gI,{pop:u==="popLayout",isPresent:n,anchorX:f,anchorY:d,root:h,children:e}),b.jsx(Fd.Provider,{value:x,children:e})};function vI(){return new Map}function zk(e=!0){const t=A.useContext(Fd);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:s}=t,o=A.useId();A.useEffect(()=>{if(e)return s(o)},[e]);const u=A.useCallback(()=>e&&r&&r(o),[o,r,e]);return!n&&r?[!1,u]:[!0]}const df=e=>e.key||"";function HA(e){const t=[];return A.Children.forEach(e,n=>{A.isValidElement(n)&&t.push(n)}),t}const KA=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:s=!0,mode:o="sync",propagate:u=!1,anchorX:f="left",anchorY:d="top",root:h})=>{const[m,p]=zk(u),v=A.useMemo(()=>HA(e),[e]),x=u&&!m?[]:v.map(df),w=A.useRef(!0),_=A.useRef(v),S=y0(()=>new Map),O=A.useRef(new Set),[M,j]=A.useState(v),[k,N]=A.useState(v);cM(()=>{w.current=!1,_.current=v;for(let I=0;I{const Y=df(I),te=u&&!m?!1:v===k||x.includes(Y),ie=()=>{if(O.current.has(Y))return;if(O.current.add(Y),S.has(Y))S.set(Y,!0);else return;let K=!0;S.forEach(be=>{be||(K=!1)}),K&&(L?.(),N(_.current),u&&p?.(),r&&r())};return b.jsx(yI,{isPresent:te,initial:!w.current||n?void 0:!1,custom:t,presenceAffectsLayout:s,mode:o,root:h,onExitComplete:te?void 0:ie,anchorX:f,anchorY:d,children:I},Y)})})},Ik=A.createContext({strict:!1}),XA={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let YA=!1;function bI(){if(YA)return;const e={};for(const t in XA)e[t]={isEnabled:n=>XA[t].some(r=>!!n[r])};hk(e),YA=!0}function Bk(){return bI(),az()}function xI(e){const t=Bk();for(const n in e)t[n]={...t[n],...e[n]};hk(t)}const wI=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function Zf(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||wI.has(e)}let Uk=e=>!Zf(e);function _I(e){typeof e=="function"&&(Uk=t=>t.startsWith("on")?!Zf(t):e(t))}try{_I(require("@emotion/is-prop-valid").default)}catch{}function SI(e,t,n){const r={};for(const s in e)s==="values"&&typeof e.values=="object"||(Uk(s)||n===!0&&Zf(s)||!t&&!Zf(s)||e.draggable&&s.startsWith("onDrag"))&&(r[s]=e[s]);return r}const Xd=A.createContext({});function AI(e,t){if(Kd(e)){const{initial:n,animate:r}=e;return{initial:n===!1||ru(n)?n:void 0,animate:ru(r)?r:void 0}}return e.inherit!==!1?t:{}}function TI(e){const{initial:t,animate:n}=AI(e,A.useContext(Xd));return A.useMemo(()=>({initial:t,animate:n}),[GA(t),GA(n)])}function GA(e){return Array.isArray(e)?e.join(" "):e}const H0=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function Vk(e,t,n){for(const r in t)!Zt(t[r])&&!xk(r,n)&&(e[r]=t[r])}function OI({transformTemplate:e},t){return A.useMemo(()=>{const n=H0();return q0(n,t,e),Object.assign({},n.vars,n.style)},[t])}function EI(e,t){const n=e.style||{},r={};return Vk(r,n,e),Object.assign(r,OI(e,t)),r}function jI(e,t){const n={},r=EI(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const qk=()=>({...H0(),attrs:{}});function MI(e,t,n,r){const s=A.useMemo(()=>{const o=qk();return wk(o,t,Sk(r),e.transformTemplate,e.style),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};Vk(o,e.style,e),s.style={...o,...s.style}}return s}const kI=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function K0(e){return typeof e!="string"||e.includes("-")?!1:!!(kI.indexOf(e)>-1||/[A-Z]/u.test(e))}function NI(e,t,n,{latestValues:r},s,o=!1,u){const d=(u??K0(e)?MI:jI)(t,r,s,e),h=SI(t,typeof e=="string",o),m=e!==A.Fragment?{...h,...d,ref:n}:{},{children:p}=t,v=A.useMemo(()=>Zt(p)?p.get():p,[p]);return A.createElement(e,{...m,children:v})}function CI({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,s){return{latestValues:DI(n,r,s,e),renderState:t()}}function DI(e,t,n,r){const s={},o=r(e,{});for(const v in o)s[v]=zf(o[v]);let{initial:u,animate:f}=e;const d=Kd(e),h=fk(e);t&&h&&!d&&e.inherit!==!1&&(u===void 0&&(u=t.initial),f===void 0&&(f=t.animate));let m=n?n.initial===!1:!1;m=m||u===!1;const p=m?f:u;if(p&&typeof p!="boolean"&&!Hd(p)){const v=Array.isArray(p)?p:[p];for(let x=0;x(t,n)=>{const r=A.useContext(Xd),s=A.useContext(Fd),o=()=>CI(e,t,r,s);return n?o():y0(o)},PI=$k({scrapeMotionValuesFromProps:$0,createRenderState:H0}),RI=$k({scrapeMotionValuesFromProps:Ak,createRenderState:qk}),LI=Symbol.for("motionComponentSymbol");function zI(e,t,n){const r=A.useRef(n);A.useInsertionEffect(()=>{r.current=n});const s=A.useRef(null);return A.useCallback(o=>{o&&e.onMount?.(o);const u=r.current;if(typeof u=="function")if(o){const f=u(o);typeof f=="function"&&(s.current=f)}else s.current?(s.current(),s.current=null):u(o);else u&&(u.current=o);t&&(o?t.mount(o):t.unmount())},[t])}const Fk=A.createContext({});function Gs(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function II(e,t,n,r,s,o){const{visualElement:u}=A.useContext(Xd),f=A.useContext(Ik),d=A.useContext(Fd),h=A.useContext(F0),m=h.reducedMotion,p=h.skipAnimations,v=A.useRef(null),x=A.useRef(!1);r=r||f.renderer,!v.current&&r&&(v.current=r(e,{visualState:t,parent:u,props:n,presenceContext:d,blockInitialAnimation:d?d.initial===!1:!1,reducedMotionConfig:m,skipAnimations:p,isSVG:o}),x.current&&v.current&&(v.current.manuallyAnimateOnMount=!0));const w=v.current,_=A.useContext(Fk);w&&!w.projection&&s&&(w.type==="html"||w.type==="svg")&&BI(v.current,n,s,_);const S=A.useRef(!1);A.useInsertionEffect(()=>{w&&S.current&&w.update(n,d)});const O=n[QM],M=A.useRef(!!O&&typeof window<"u"&&!window.MotionHandoffIsComplete?.(O)&&window.MotionHasOptimisedAnimation?.(O));return cM(()=>{x.current=!0,w&&(S.current=!0,window.MotionIsMounted=!0,w.updateFeatures(),w.scheduleRenderMicrotask(),M.current&&w.animationState&&w.animationState.animateChanges())}),A.useEffect(()=>{w&&(!M.current&&w.animationState&&w.animationState.animateChanges(),M.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(O)}),M.current=!1),w.enteringChildren=void 0)}),w}function BI(e,t,n,r){const{layoutId:s,layout:o,drag:u,dragConstraints:f,layoutScroll:d,layoutRoot:h,layoutCrossfade:m}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:Hk(e.parent)),e.projection.setOptions({layoutId:s,layout:o,alwaysMeasureLayout:!!u||f&&Gs(f),visualElement:e,animationType:typeof o=="string"?o:"both",initialPromotionConfig:r,crossfade:m,layoutScroll:d,layoutRoot:h})}function Hk(e){if(e)return e.options.allowProjection!==!1?e.projection:Hk(e.parent)}function cg(e,{forwardMotionProps:t=!1,type:n}={},r,s){r&&xI(r);const o=n?n==="svg":K0(e),u=o?RI:PI;function f(h,m){let p;const v={...A.useContext(F0),...h,layoutId:UI(h)},{isStatic:x}=v,w=TI(h),_=u(h,x);if(!x&&typeof window<"u"){VI();const S=qI(v);p=S.MeasureLayout,w.visualElement=II(e,_,v,s,S.ProjectionNode,o)}return b.jsxs(Xd.Provider,{value:w,children:[p&&w.visualElement?b.jsx(p,{visualElement:w.visualElement,...v}):null,NI(e,h,zI(_,w.visualElement,m),_,x,t,o)]})}f.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const d=A.forwardRef(f);return d[LI]=e,d}function UI({layoutId:e}){const t=A.useContext(g0).id;return t&&e!==void 0?t+"-"+e:e}function VI(e,t){A.useContext(Ik).strict}function qI(e){const t=Bk(),{drag:n,layout:r}=t;if(!n&&!r)return{};const s={...n,...r};return{MeasureLayout:n?.isEnabled(e)||r?.isEnabled(e)?s.MeasureLayout:void 0,ProjectionNode:s.ProjectionNode}}function $I(e,t){if(typeof Proxy>"u")return cg;const n=new Map,r=(o,u)=>cg(o,u,e,t),s=(o,u)=>r(o,u);return new Proxy(s,{get:(o,u)=>u==="create"?r:(n.has(u)||n.set(u,cg(u,void 0,e,t)),n.get(u))})}const FI=(e,t)=>t.isSVG??K0(e)?new _z(t):new gz(t,{allowProjection:e!==A.Fragment});class HI extends aa{constructor(t){super(t),t.animationState||(t.animationState=Ez(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();Hd(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let KI=0;class XI extends aa{constructor(){super(...arguments),this.id=KI++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;const s=this.node.animationState.setActive("exit",!t);n&&!t&&s.then(()=>{n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const YI={animation:{Feature:HI},exit:{Feature:XI}};function Au(e){return{point:{x:e.pageX,y:e.pageY}}}const GI=e=>t=>I0(t)&&e(t,Au(t));function Wl(e,t,n,r){return iu(e,t,GI(n),r)}const Kk=({current:e})=>e?e.ownerDocument.defaultView:null,WA=(e,t)=>Math.abs(e-t);function WI(e,t){const n=WA(e.x,t.x),r=WA(e.y,t.y);return Math.sqrt(n**2+r**2)}const ZA=new Set(["auto","scroll"]);class Xk{constructor(t,n,{transformPagePoint:r,contextWindow:s=window,dragSnapToOrigin:o=!1,distanceThreshold:u=3,element:f}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=x=>{this.handleScroll(x.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const x=dg(this.lastMoveEventInfo,this.history),w=this.startEvent!==null,_=WI(x.offset,{x:0,y:0})>=this.distanceThreshold;if(!w&&!_)return;const{point:S}=x,{timestamp:O}=Ft;this.history.push({...S,timestamp:O});const{onStart:M,onMove:j}=this.handlers;w||(M&&M(this.lastMoveEvent,x),this.startEvent=this.lastMoveEvent),j&&j(this.lastMoveEvent,x)},this.handlePointerMove=(x,w)=>{this.lastMoveEvent=x,this.lastMoveEventInfo=fg(w,this.transformPagePoint),Ge.update(this.updatePoint,!0)},this.handlePointerUp=(x,w)=>{this.end();const{onEnd:_,onSessionEnd:S,resumeAnimation:O}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&O&&O(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const M=dg(x.type==="pointercancel"?this.lastMoveEventInfo:fg(w,this.transformPagePoint),this.history);this.startEvent&&_&&_(x,M),S&&S(x,M)},!I0(t))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=u,this.contextWindow=s||window;const d=Au(t),h=fg(d,this.transformPagePoint),{point:m}=h,{timestamp:p}=Ft;this.history=[{...m,timestamp:p}];const{onSessionStart:v}=n;v&&v(t,dg(h,this.history)),this.removeListeners=wu(Wl(this.contextWindow,"pointermove",this.handlePointerMove),Wl(this.contextWindow,"pointerup",this.handlePointerUp),Wl(this.contextWindow,"pointercancel",this.handlePointerUp)),f&&this.startScrollTracking(f)}startScrollTracking(t){let n=t.parentElement;for(;n;){const r=getComputedStyle(n);(ZA.has(r.overflowX)||ZA.has(r.overflowY))&&this.scrollPositions.set(n,{x:n.scrollLeft,y:n.scrollTop}),n=n.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0}),window.addEventListener("scroll",this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(t){const n=this.scrollPositions.get(t);if(!n)return;const r=t===window,s=r?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop},o={x:s.x-n.x,y:s.y-n.y};o.x===0&&o.y===0||(r?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=o.x,this.lastMoveEventInfo.point.y+=o.y):this.history.length>0&&(this.history[0].x-=o.x,this.history[0].y-=o.y),this.scrollPositions.set(t,s),Ge.update(this.updatePoint,!0))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),na(this.updatePoint)}}function fg(e,t){return t?{point:t(e.point)}:e}function QA(e,t){return{x:e.x-t.x,y:e.y-t.y}}function dg({point:e},t){return{point:e,delta:QA(e,Yk(t)),offset:QA(e,ZI(t)),velocity:QI(t,.1)}}function ZI(e){return e[0]}function Yk(e){return e[e.length-1]}function QI(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const s=Yk(e);for(;n>=0&&(r=e[n],!(s.timestamp-r.timestamp>fr(t)));)n--;if(!r)return{x:0,y:0};r===e[0]&&e.length>2&&s.timestamp-r.timestamp>fr(t)*2&&(r=e[1]);const o=Gn(s.timestamp-r.timestamp);if(o===0)return{x:0,y:0};const u={x:(s.x-r.x)/o,y:(s.y-r.y)/o};return u.x===1/0&&(u.x=0),u.y===1/0&&(u.y=0),u}function JI(e,{min:t,max:n},r){return t!==void 0&&en&&(e=r?rt(n,e,r.max):Math.min(e,n)),e}function JA(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function eB(e,{top:t,left:n,bottom:r,right:s}){return{x:JA(e.x,n,s),y:JA(e.y,t,r)}}function eT(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.minr?n=eu(t.min,t.max-r,e.min):r>s&&(n=eu(e.min,e.max-s,t.min)),Mr(0,1,n)}function rB(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const vv=.35;function iB(e=vv){return e===!1?e=0:e===!0&&(e=vv),{x:tT(e,"left","right"),y:tT(e,"top","bottom")}}function tT(e,t,n){return{min:nT(e,t),max:nT(e,n)}}function nT(e,t){return typeof e=="number"?e:e[t]||0}const aB=new WeakMap;class sB{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=St(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:s}=this.visualElement;if(s&&s.isPresent===!1)return;const o=p=>{n&&this.snapToCursor(Au(p).point),this.stopAnimation()},u=(p,v)=>{const{drag:x,dragPropagation:w,onDragStart:_}=this.getProps();if(x&&!w&&(this.openDragLock&&this.openDragLock(),this.openDragLock=R8(x),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=v,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Sr(O=>{let M=this.getAxisMotionValue(O).get()||0;if(Or.test(M)){const{projection:j}=this.visualElement;if(j&&j.layout){const k=j.layout.layoutBox[O];k&&(M=nn(k)*(parseFloat(M)/100))}}this.originPoint[O]=M}),_&&Ge.update(()=>_(p,v),!1,!0),uv(this.visualElement,"transform");const{animationState:S}=this.visualElement;S&&S.setActive("whileDrag",!0)},f=(p,v)=>{this.latestPointerEvent=p,this.latestPanInfo=v;const{dragPropagation:x,dragDirectionLock:w,onDirectionLock:_,onDrag:S}=this.getProps();if(!x&&!this.openDragLock)return;const{offset:O}=v;if(w&&this.currentDirection===null){this.currentDirection=lB(O),this.currentDirection!==null&&_&&_(this.currentDirection);return}this.updateAxis("x",v.point,O),this.updateAxis("y",v.point,O),this.visualElement.render(),S&&Ge.update(()=>S(p,v),!1,!0)},d=(p,v)=>{this.latestPointerEvent=p,this.latestPanInfo=v,this.stop(p,v),this.latestPointerEvent=null,this.latestPanInfo=null},h=()=>{const{dragSnapToOrigin:p}=this.getProps();(p||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:m}=this.getProps();this.panSession=new Xk(t,{onSessionStart:o,onStart:u,onMove:f,onSessionEnd:d,resumeAnimation:h},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:m,distanceThreshold:r,contextWindow:Kk(this.visualElement),element:this.visualElement.current})}stop(t,n){const r=t||this.latestPointerEvent,s=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!s||!r)return;const{velocity:u}=s;this.startAnimation(u);const{onDragEnd:f}=this.getProps();f&&Ge.postRender(()=>f(r,s))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(t,n,r){const{drag:s}=this.getProps();if(!r||!hf(t,s,this.currentDirection))return;const o=this.getAxisMotionValue(t);let u=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(u=JI(u,this.constraints[t],this.elastic[t])),o.set(u)}resolveConstraints(){const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,s=this.constraints;t&&Gs(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=eB(r.layoutBox,t):this.constraints=!1,this.elastic=iB(n),s!==this.constraints&&!Gs(t)&&r&&this.constraints&&!this.hasMutatedConstraints&&Sr(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=rB(r.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Gs(t))return!1;const r=t.current,{projection:s}=this.visualElement;if(!s||!s.layout)return!1;const o=cz(r,s.root,this.visualElement.getTransformPagePoint());let u=tB(s.layout.layoutBox,o);if(n){const f=n(oz(u));this.hasMutatedConstraints=!!f,f&&(u=pk(f))}return u}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:s,dragTransition:o,dragSnapToOrigin:u,onDragTransitionEnd:f}=this.getProps(),d=this.constraints||{},h=Sr(m=>{if(!hf(m,n,this.currentDirection))return;let p=d&&d[m]||{};u&&(p={min:0,max:0});const v=s?200:1e6,x=s?40:1e7,w={type:"inertia",velocity:r?t[m]:0,bounceStiffness:v,bounceDamping:x,timeConstant:750,restDelta:1,restSpeed:10,...o,...p};return this.startAxisValueAnimation(m,w)});return Promise.all(h).then(f)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return uv(this.visualElement,t),r.start(D0(t,r,0,n,this.visualElement,!1))}stopAnimation(){Sr(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),s=r[n];return s||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){Sr(n=>{const{drag:r}=this.getProps();if(!hf(n,r,this.currentDirection))return;const{projection:s}=this.visualElement,o=this.getAxisMotionValue(n);if(s&&s.layout){const{min:u,max:f}=s.layout.layoutBox[n],d=o.get()||0;o.set(t[n]-rt(u,f,.5)+d)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!Gs(n)||!r||!this.constraints)return;this.stopAnimation();const s={x:0,y:0};Sr(u=>{const f=this.getAxisMotionValue(u);if(f&&this.constraints!==!1){const d=f.get();s[u]=nB({min:d,max:d},this.constraints[u])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.constraints=!1,this.resolveConstraints(),Sr(u=>{if(!hf(u,t,null))return;const f=this.getAxisMotionValue(u),{min:d,max:h}=this.constraints[u];f.set(rt(d,h,s[u]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;aB.set(this.visualElement,this);const t=this.visualElement.current,n=Wl(t,"pointerdown",h=>{const{drag:m,dragListener:p=!0}=this.getProps(),v=h.target,x=v!==t&&V8(v);m&&p&&!x&&this.start(h)});let r;const s=()=>{const{dragConstraints:h}=this.getProps();Gs(h)&&h.current&&(this.constraints=this.resolveRefConstraints(),r||(r=oB(t,h.current,()=>this.scalePositionWithinConstraints())))},{projection:o}=this.visualElement,u=o.addEventListener("measure",s);o&&!o.layout&&(o.root&&o.root.updateScroll(),o.updateLayout()),Ge.read(s);const f=iu(window,"resize",()=>this.scalePositionWithinConstraints()),d=o.addEventListener("didUpdate",(({delta:h,hasLayoutChanged:m})=>{this.isDragging&&m&&(Sr(p=>{const v=this.getAxisMotionValue(p);v&&(this.originPoint[p]+=h[p].translate,v.set(v.get()+h[p].translate))}),this.visualElement.render())}));return()=>{f(),n(),u(),d&&d(),r&&r()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:s=!1,dragConstraints:o=!1,dragElastic:u=vv,dragMomentum:f=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:s,dragConstraints:o,dragElastic:u,dragMomentum:f}}}function rT(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function oB(e,t,n){const r=lA(e,rT(n)),s=lA(t,rT(n));return()=>{r(),s()}}function hf(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function lB(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class uB extends aa{constructor(t){super(t),this.removeGroupControls=Jn,this.removeListeners=Jn,this.controls=new sB(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Jn}update(){const{dragControls:t}=this.node.getProps(),{dragControls:n}=this.node.prevProps||{};t!==n&&(this.removeGroupControls(),t&&(this.removeGroupControls=t.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}const hg=e=>(t,n)=>{e&&Ge.update(()=>e(t,n),!1,!0)};class cB extends aa{constructor(){super(...arguments),this.removePointerDownListener=Jn}onPointerDown(t){this.session=new Xk(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Kk(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:s}=this.node.getProps();return{onSessionStart:hg(t),onStart:hg(n),onMove:hg(r),onEnd:(o,u)=>{delete this.session,s&&Ge.postRender(()=>s(o,u))}}}mount(){this.removePointerDownListener=Wl(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let mg=!1;class fB extends A.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:s}=this.props,{projection:o}=t;o&&(n.group&&n.group.add(o),r&&r.register&&s&&r.register(o),mg&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),If.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:s,isPresent:o}=this.props,{projection:u}=r;return u&&(u.isPresent=o,t.layoutDependency!==n&&u.setOptions({...u.options,layoutDependency:n}),mg=!0,s||t.layoutDependency!==n||n===void 0||t.isPresent!==o?u.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?u.promote():u.relegate()||Ge.postRender(()=>{const f=u.getStack();(!f||!f.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),z0.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:s}=t;mg=!0,s&&(s.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(s),r&&r.deregister&&r.deregister(s))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function Gk(e){const[t,n]=zk(),r=A.useContext(g0);return b.jsx(fB,{...e,layoutGroup:r,switchLayoutGroup:A.useContext(Fk),isPresent:t,safeToRemove:n})}const dB={pan:{Feature:cB},drag:{Feature:uB,ProjectionNode:Lk,MeasureLayout:Gk}};function iT(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const s="onHover"+n,o=r[s];o&&Ge.postRender(()=>o(t,Au(t)))}class hB extends aa{mount(){const{current:t}=this.node;t&&(this.unmount=z8(t,(n,r)=>(iT(this.node,r,"Start"),s=>iT(this.node,s,"End"))))}unmount(){}}class mB extends aa{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=wu(iu(this.node.current,"focus",()=>this.onFocus()),iu(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function aT(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const s="onTap"+(n==="End"?"":n),o=r[s];o&&Ge.postRender(()=>o(t,Au(t)))}class pB extends aa{mount(){const{current:t}=this.node;if(!t)return;const{globalTapTarget:n,propagate:r}=this.node.props;this.unmount=$8(t,(s,o)=>(aT(this.node,o,"Start"),(u,{success:f})=>aT(this.node,u,f?"End":"Cancel")),{useGlobalTarget:n,stopPropagation:r?.tap===!1})}unmount(){}}const bv=new WeakMap,pg=new WeakMap,gB=e=>{const t=bv.get(e.target);t&&t(e)},yB=e=>{e.forEach(gB)};function vB({root:e,...t}){const n=e||document;pg.has(n)||pg.set(n,{});const r=pg.get(n),s=JSON.stringify(t);return r[s]||(r[s]=new IntersectionObserver(yB,{root:e,...t})),r[s]}function bB(e,t,n){const r=vB(t);return bv.set(e,n),r.observe(e),()=>{bv.delete(e),r.unobserve(e)}}const xB={some:0,all:1};class wB extends aa{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:s="some",once:o}=t,u={root:n?n.current:void 0,rootMargin:r,threshold:typeof s=="number"?s:xB[s]},f=d=>{const{isIntersecting:h}=d;if(this.isInView===h||(this.isInView=h,o&&!h&&this.hasEnteredView))return;h&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",h);const{onViewportEnter:m,onViewportLeave:p}=this.node.getProps(),v=h?m:p;v&&v(d)};return bB(this.node.current,u,f)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(_B(t,n))&&this.startObserver()}unmount(){}}function _B({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const SB={inView:{Feature:wB},tap:{Feature:pB},focus:{Feature:mB},hover:{Feature:hB}},AB={layout:{ProjectionNode:Lk,MeasureLayout:Gk}},TB={...YI,...SB,...dB,...AB},Tt=$I(TB,FI);function wo({id:e,title:t,subtitle:n,children:r,className:s="",wide:o=!1}){return b.jsx("section",{id:e,className:`pt-28 pb-20 px-4 sm:px-6 lg:px-8 ${s}`,children:b.jsxs("div",{className:`${o?"max-w-[1600px]":"max-w-7xl"} mx-auto`,children:[t&&b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0,margin:"-100px"},transition:{duration:.5},className:"text-center mb-12",children:[b.jsx("h2",{className:"text-3xl sm:text-4xl font-bold text-text-primary mb-3",children:t}),n&&b.jsx("p",{className:"text-lg text-text-secondary max-w-3xl mx-auto",children:n})]}),r]})})}function OB(){return b.jsx(wo,{id:"acknowledgements",title:"Contributions & Acknowledgements",subtitle:"",children:b.jsxs("div",{className:"max-w-3xl mx-auto space-y-8",children:[b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5},children:b.jsxs("div",{className:"rounded-xl border border-purple/30 bg-purple/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-purple-light mb-3",children:"Core Contributors"}),b.jsx("p",{className:"text-sm font-semibold text-text-primary",children:"Tara Bogavelli, Gabrielle Gauthier Melançon, Katrina Stankiewicz, Oluwanifemi Bamgbose, Hoang Nguyen, Raghav Mehndiratta, Hari Subramani"})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:b.jsxs("div",{className:"rounded-xl border border-blue/30 bg-blue/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-blue-light mb-2",children:"Secondary Contributors"}),b.jsx("p",{className:"text-sm text-text-secondary mb-3",children:"We thank the following individuals for their careful data review and thoughtful contributions to the framework."}),b.jsx("p",{className:"text-sm font-semibold text-text-primary",children:"Lindsay Brin, Akshay Kalkunte, Joseph Marinier, Jishnu Nair, Aman Tiwari"})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.2},children:b.jsxs("div",{className:"rounded-xl border border-amber/30 bg-amber/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-amber mb-2",children:"Management and Leadership"}),b.jsx("p",{className:"text-sm text-text-secondary mb-4",children:"We are grateful to the following individuals for their management, leadership, and support."}),b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Fanny Riols"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Research Scientist Manager"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Anil Madamala"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Director, Machine Learning Engineering Management"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Sridhar Nemala"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Senior Director, Machine Learning Engineering"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Srinivas Sunkara"}),b.jsx("span",{className:"text-xs text-text-muted",children:"VP, Research Engineering Management"})]})]})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.3},children:b.jsxs("div",{className:"rounded-xl border border-cyan/30 bg-cyan/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-cyan mb-2",children:"Upstream Contributors"}),b.jsxs("p",{className:"text-sm text-text-secondary",children:["We extend our thanks to the ",b.jsx("span",{className:"font-bold text-text-primary",children:"PAVA"})," and ",b.jsx("span",{className:"font-bold text-text-primary",children:"CLAE"})," teams whose prior work on evaluations and voice agents provided valuable inspiration for this project."]})]})}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.4},className:"rounded-xl border border-border-default bg-bg-secondary p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-text-primary mb-3",children:"Citation"}),b.jsx("pre",{className:"text-xs text-text-muted bg-bg-primary rounded-lg p-4 overflow-x-auto font-mono",children:`@misc{eva-2026, + `),()=>{k.contains(N)&&k.removeChild(N)}},[t]),b.jsx(pI,{isPresent:t,childRef:f,sizeRef:d,pop:o,children:o===!1?e:A.cloneElement(e,{ref:p})})}const yI=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:s,presenceAffectsLayout:o,mode:u,anchorX:f,anchorY:d,root:h})=>{const m=y0(vI),p=A.useId();let v=!0,x=A.useMemo(()=>(v=!1,{id:p,initial:t,isPresent:n,custom:s,onExitComplete:w=>{m.set(w,!0);for(const _ of m.values())if(!_)return;r&&r()},register:w=>(m.set(w,!1),()=>m.delete(w))}),[n,m,r]);return o&&v&&(x={...x}),A.useMemo(()=>{m.forEach((w,_)=>m.set(_,!1))},[n]),A.useEffect(()=>{!n&&!m.size&&r&&r()},[n]),e=b.jsx(gI,{pop:u==="popLayout",isPresent:n,anchorX:f,anchorY:d,root:h,children:e}),b.jsx(Fd.Provider,{value:x,children:e})};function vI(){return new Map}function IN(e=!0){const t=A.useContext(Fd);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:s}=t,o=A.useId();A.useEffect(()=>{if(e)return s(o)},[e]);const u=A.useCallback(()=>e&&r&&r(o),[o,r,e]);return!n&&r?[!1,u]:[!0]}const df=e=>e.key||"";function HA(e){const t=[];return A.Children.forEach(e,n=>{A.isValidElement(n)&&t.push(n)}),t}const KA=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:s=!0,mode:o="sync",propagate:u=!1,anchorX:f="left",anchorY:d="top",root:h})=>{const[m,p]=IN(u),v=A.useMemo(()=>HA(e),[e]),x=u&&!m?[]:v.map(df),w=A.useRef(!0),_=A.useRef(v),S=y0(()=>new Map),O=A.useRef(new Set),[M,j]=A.useState(v),[N,k]=A.useState(v);fM(()=>{w.current=!1,_.current=v;for(let I=0;I{const Y=df(I),te=u&&!m?!1:v===N||x.includes(Y),ie=()=>{if(O.current.has(Y))return;if(O.current.add(Y),S.has(Y))S.set(Y,!0);else return;let K=!0;S.forEach(be=>{be||(K=!1)}),K&&(L?.(),k(_.current),u&&p?.(),r&&r())};return b.jsx(yI,{isPresent:te,initial:!w.current||n?void 0:!1,custom:t,presenceAffectsLayout:s,mode:o,root:h,onExitComplete:te?void 0:ie,anchorX:f,anchorY:d,children:I},Y)})})},BN=A.createContext({strict:!1}),XA={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let YA=!1;function bI(){if(YA)return;const e={};for(const t in XA)e[t]={isEnabled:n=>XA[t].some(r=>!!n[r])};mN(e),YA=!0}function UN(){return bI(),az()}function xI(e){const t=UN();for(const n in e)t[n]={...t[n],...e[n]};mN(t)}const wI=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function Zf(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||wI.has(e)}let VN=e=>!Zf(e);function _I(e){typeof e=="function"&&(VN=t=>t.startsWith("on")?!Zf(t):e(t))}try{_I(require("@emotion/is-prop-valid").default)}catch{}function SI(e,t,n){const r={};for(const s in e)s==="values"&&typeof e.values=="object"||(VN(s)||n===!0&&Zf(s)||!t&&!Zf(s)||e.draggable&&s.startsWith("onDrag"))&&(r[s]=e[s]);return r}const Xd=A.createContext({});function AI(e,t){if(Kd(e)){const{initial:n,animate:r}=e;return{initial:n===!1||ru(n)?n:void 0,animate:ru(r)?r:void 0}}return e.inherit!==!1?t:{}}function TI(e){const{initial:t,animate:n}=AI(e,A.useContext(Xd));return A.useMemo(()=>({initial:t,animate:n}),[GA(t),GA(n)])}function GA(e){return Array.isArray(e)?e.join(" "):e}const H0=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function qN(e,t,n){for(const r in t)!Zt(t[r])&&!wN(r,n)&&(e[r]=t[r])}function OI({transformTemplate:e},t){return A.useMemo(()=>{const n=H0();return q0(n,t,e),Object.assign({},n.vars,n.style)},[t])}function EI(e,t){const n=e.style||{},r={};return qN(r,n,e),Object.assign(r,OI(e,t)),r}function jI(e,t){const n={},r=EI(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const $N=()=>({...H0(),attrs:{}});function MI(e,t,n,r){const s=A.useMemo(()=>{const o=$N();return _N(o,t,AN(r),e.transformTemplate,e.style),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};qN(o,e.style,e),s.style={...o,...s.style}}return s}const NI=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function K0(e){return typeof e!="string"||e.includes("-")?!1:!!(NI.indexOf(e)>-1||/[A-Z]/u.test(e))}function kI(e,t,n,{latestValues:r},s,o=!1,u){const d=(u??K0(e)?MI:jI)(t,r,s,e),h=SI(t,typeof e=="string",o),m=e!==A.Fragment?{...h,...d,ref:n}:{},{children:p}=t,v=A.useMemo(()=>Zt(p)?p.get():p,[p]);return A.createElement(e,{...m,children:v})}function CI({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,s){return{latestValues:DI(n,r,s,e),renderState:t()}}function DI(e,t,n,r){const s={},o=r(e,{});for(const v in o)s[v]=zf(o[v]);let{initial:u,animate:f}=e;const d=Kd(e),h=dN(e);t&&h&&!d&&e.inherit!==!1&&(u===void 0&&(u=t.initial),f===void 0&&(f=t.animate));let m=n?n.initial===!1:!1;m=m||u===!1;const p=m?f:u;if(p&&typeof p!="boolean"&&!Hd(p)){const v=Array.isArray(p)?p:[p];for(let x=0;x(t,n)=>{const r=A.useContext(Xd),s=A.useContext(Fd),o=()=>CI(e,t,r,s);return n?o():y0(o)},PI=FN({scrapeMotionValuesFromProps:$0,createRenderState:H0}),RI=FN({scrapeMotionValuesFromProps:TN,createRenderState:$N}),LI=Symbol.for("motionComponentSymbol");function zI(e,t,n){const r=A.useRef(n);A.useInsertionEffect(()=>{r.current=n});const s=A.useRef(null);return A.useCallback(o=>{o&&e.onMount?.(o);const u=r.current;if(typeof u=="function")if(o){const f=u(o);typeof f=="function"&&(s.current=f)}else s.current?(s.current(),s.current=null):u(o);else u&&(u.current=o);t&&(o?t.mount(o):t.unmount())},[t])}const HN=A.createContext({});function Gs(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function II(e,t,n,r,s,o){const{visualElement:u}=A.useContext(Xd),f=A.useContext(BN),d=A.useContext(Fd),h=A.useContext(F0),m=h.reducedMotion,p=h.skipAnimations,v=A.useRef(null),x=A.useRef(!1);r=r||f.renderer,!v.current&&r&&(v.current=r(e,{visualState:t,parent:u,props:n,presenceContext:d,blockInitialAnimation:d?d.initial===!1:!1,reducedMotionConfig:m,skipAnimations:p,isSVG:o}),x.current&&v.current&&(v.current.manuallyAnimateOnMount=!0));const w=v.current,_=A.useContext(HN);w&&!w.projection&&s&&(w.type==="html"||w.type==="svg")&&BI(v.current,n,s,_);const S=A.useRef(!1);A.useInsertionEffect(()=>{w&&S.current&&w.update(n,d)});const O=n[JM],M=A.useRef(!!O&&typeof window<"u"&&!window.MotionHandoffIsComplete?.(O)&&window.MotionHasOptimisedAnimation?.(O));return fM(()=>{x.current=!0,w&&(S.current=!0,window.MotionIsMounted=!0,w.updateFeatures(),w.scheduleRenderMicrotask(),M.current&&w.animationState&&w.animationState.animateChanges())}),A.useEffect(()=>{w&&(!M.current&&w.animationState&&w.animationState.animateChanges(),M.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(O)}),M.current=!1),w.enteringChildren=void 0)}),w}function BI(e,t,n,r){const{layoutId:s,layout:o,drag:u,dragConstraints:f,layoutScroll:d,layoutRoot:h,layoutCrossfade:m}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:KN(e.parent)),e.projection.setOptions({layoutId:s,layout:o,alwaysMeasureLayout:!!u||f&&Gs(f),visualElement:e,animationType:typeof o=="string"?o:"both",initialPromotionConfig:r,crossfade:m,layoutScroll:d,layoutRoot:h})}function KN(e){if(e)return e.options.allowProjection!==!1?e.projection:KN(e.parent)}function cg(e,{forwardMotionProps:t=!1,type:n}={},r,s){r&&xI(r);const o=n?n==="svg":K0(e),u=o?RI:PI;function f(h,m){let p;const v={...A.useContext(F0),...h,layoutId:UI(h)},{isStatic:x}=v,w=TI(h),_=u(h,x);if(!x&&typeof window<"u"){VI();const S=qI(v);p=S.MeasureLayout,w.visualElement=II(e,_,v,s,S.ProjectionNode,o)}return b.jsxs(Xd.Provider,{value:w,children:[p&&w.visualElement?b.jsx(p,{visualElement:w.visualElement,...v}):null,kI(e,h,zI(_,w.visualElement,m),_,x,t,o)]})}f.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const d=A.forwardRef(f);return d[LI]=e,d}function UI({layoutId:e}){const t=A.useContext(g0).id;return t&&e!==void 0?t+"-"+e:e}function VI(e,t){A.useContext(BN).strict}function qI(e){const t=UN(),{drag:n,layout:r}=t;if(!n&&!r)return{};const s={...n,...r};return{MeasureLayout:n?.isEnabled(e)||r?.isEnabled(e)?s.MeasureLayout:void 0,ProjectionNode:s.ProjectionNode}}function $I(e,t){if(typeof Proxy>"u")return cg;const n=new Map,r=(o,u)=>cg(o,u,e,t),s=(o,u)=>r(o,u);return new Proxy(s,{get:(o,u)=>u==="create"?r:(n.has(u)||n.set(u,cg(u,void 0,e,t)),n.get(u))})}const FI=(e,t)=>t.isSVG??K0(e)?new _z(t):new gz(t,{allowProjection:e!==A.Fragment});class HI extends aa{constructor(t){super(t),t.animationState||(t.animationState=Ez(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();Hd(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let KI=0;class XI extends aa{constructor(){super(...arguments),this.id=KI++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;const s=this.node.animationState.setActive("exit",!t);n&&!t&&s.then(()=>{n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const YI={animation:{Feature:HI},exit:{Feature:XI}};function Au(e){return{point:{x:e.pageX,y:e.pageY}}}const GI=e=>t=>I0(t)&&e(t,Au(t));function Wl(e,t,n,r){return iu(e,t,GI(n),r)}const XN=({current:e})=>e?e.ownerDocument.defaultView:null,WA=(e,t)=>Math.abs(e-t);function WI(e,t){const n=WA(e.x,t.x),r=WA(e.y,t.y);return Math.sqrt(n**2+r**2)}const ZA=new Set(["auto","scroll"]);class YN{constructor(t,n,{transformPagePoint:r,contextWindow:s=window,dragSnapToOrigin:o=!1,distanceThreshold:u=3,element:f}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=x=>{this.handleScroll(x.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const x=dg(this.lastMoveEventInfo,this.history),w=this.startEvent!==null,_=WI(x.offset,{x:0,y:0})>=this.distanceThreshold;if(!w&&!_)return;const{point:S}=x,{timestamp:O}=Ft;this.history.push({...S,timestamp:O});const{onStart:M,onMove:j}=this.handlers;w||(M&&M(this.lastMoveEvent,x),this.startEvent=this.lastMoveEvent),j&&j(this.lastMoveEvent,x)},this.handlePointerMove=(x,w)=>{this.lastMoveEvent=x,this.lastMoveEventInfo=fg(w,this.transformPagePoint),Ge.update(this.updatePoint,!0)},this.handlePointerUp=(x,w)=>{this.end();const{onEnd:_,onSessionEnd:S,resumeAnimation:O}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&O&&O(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const M=dg(x.type==="pointercancel"?this.lastMoveEventInfo:fg(w,this.transformPagePoint),this.history);this.startEvent&&_&&_(x,M),S&&S(x,M)},!I0(t))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=u,this.contextWindow=s||window;const d=Au(t),h=fg(d,this.transformPagePoint),{point:m}=h,{timestamp:p}=Ft;this.history=[{...m,timestamp:p}];const{onSessionStart:v}=n;v&&v(t,dg(h,this.history)),this.removeListeners=wu(Wl(this.contextWindow,"pointermove",this.handlePointerMove),Wl(this.contextWindow,"pointerup",this.handlePointerUp),Wl(this.contextWindow,"pointercancel",this.handlePointerUp)),f&&this.startScrollTracking(f)}startScrollTracking(t){let n=t.parentElement;for(;n;){const r=getComputedStyle(n);(ZA.has(r.overflowX)||ZA.has(r.overflowY))&&this.scrollPositions.set(n,{x:n.scrollLeft,y:n.scrollTop}),n=n.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0}),window.addEventListener("scroll",this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(t){const n=this.scrollPositions.get(t);if(!n)return;const r=t===window,s=r?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop},o={x:s.x-n.x,y:s.y-n.y};o.x===0&&o.y===0||(r?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=o.x,this.lastMoveEventInfo.point.y+=o.y):this.history.length>0&&(this.history[0].x-=o.x,this.history[0].y-=o.y),this.scrollPositions.set(t,s),Ge.update(this.updatePoint,!0))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),na(this.updatePoint)}}function fg(e,t){return t?{point:t(e.point)}:e}function QA(e,t){return{x:e.x-t.x,y:e.y-t.y}}function dg({point:e},t){return{point:e,delta:QA(e,GN(t)),offset:QA(e,ZI(t)),velocity:QI(t,.1)}}function ZI(e){return e[0]}function GN(e){return e[e.length-1]}function QI(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const s=GN(e);for(;n>=0&&(r=e[n],!(s.timestamp-r.timestamp>fr(t)));)n--;if(!r)return{x:0,y:0};r===e[0]&&e.length>2&&s.timestamp-r.timestamp>fr(t)*2&&(r=e[1]);const o=Gn(s.timestamp-r.timestamp);if(o===0)return{x:0,y:0};const u={x:(s.x-r.x)/o,y:(s.y-r.y)/o};return u.x===1/0&&(u.x=0),u.y===1/0&&(u.y=0),u}function JI(e,{min:t,max:n},r){return t!==void 0&&en&&(e=r?rt(n,e,r.max):Math.min(e,n)),e}function JA(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function eB(e,{top:t,left:n,bottom:r,right:s}){return{x:JA(e.x,n,s),y:JA(e.y,t,r)}}function e2(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.minr?n=eu(t.min,t.max-r,e.min):r>s&&(n=eu(e.min,e.max-s,t.min)),Mr(0,1,n)}function rB(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const vv=.35;function iB(e=vv){return e===!1?e=0:e===!0&&(e=vv),{x:t2(e,"left","right"),y:t2(e,"top","bottom")}}function t2(e,t,n){return{min:n2(e,t),max:n2(e,n)}}function n2(e,t){return typeof e=="number"?e:e[t]||0}const aB=new WeakMap;class sB{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=St(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:s}=this.visualElement;if(s&&s.isPresent===!1)return;const o=p=>{n&&this.snapToCursor(Au(p).point),this.stopAnimation()},u=(p,v)=>{const{drag:x,dragPropagation:w,onDragStart:_}=this.getProps();if(x&&!w&&(this.openDragLock&&this.openDragLock(),this.openDragLock=R8(x),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=v,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Sr(O=>{let M=this.getAxisMotionValue(O).get()||0;if(Or.test(M)){const{projection:j}=this.visualElement;if(j&&j.layout){const N=j.layout.layoutBox[O];N&&(M=nn(N)*(parseFloat(M)/100))}}this.originPoint[O]=M}),_&&Ge.update(()=>_(p,v),!1,!0),uv(this.visualElement,"transform");const{animationState:S}=this.visualElement;S&&S.setActive("whileDrag",!0)},f=(p,v)=>{this.latestPointerEvent=p,this.latestPanInfo=v;const{dragPropagation:x,dragDirectionLock:w,onDirectionLock:_,onDrag:S}=this.getProps();if(!x&&!this.openDragLock)return;const{offset:O}=v;if(w&&this.currentDirection===null){this.currentDirection=lB(O),this.currentDirection!==null&&_&&_(this.currentDirection);return}this.updateAxis("x",v.point,O),this.updateAxis("y",v.point,O),this.visualElement.render(),S&&Ge.update(()=>S(p,v),!1,!0)},d=(p,v)=>{this.latestPointerEvent=p,this.latestPanInfo=v,this.stop(p,v),this.latestPointerEvent=null,this.latestPanInfo=null},h=()=>{const{dragSnapToOrigin:p}=this.getProps();(p||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:m}=this.getProps();this.panSession=new YN(t,{onSessionStart:o,onStart:u,onMove:f,onSessionEnd:d,resumeAnimation:h},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:m,distanceThreshold:r,contextWindow:XN(this.visualElement),element:this.visualElement.current})}stop(t,n){const r=t||this.latestPointerEvent,s=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!s||!r)return;const{velocity:u}=s;this.startAnimation(u);const{onDragEnd:f}=this.getProps();f&&Ge.postRender(()=>f(r,s))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(t,n,r){const{drag:s}=this.getProps();if(!r||!hf(t,s,this.currentDirection))return;const o=this.getAxisMotionValue(t);let u=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(u=JI(u,this.constraints[t],this.elastic[t])),o.set(u)}resolveConstraints(){const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,s=this.constraints;t&&Gs(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=eB(r.layoutBox,t):this.constraints=!1,this.elastic=iB(n),s!==this.constraints&&!Gs(t)&&r&&this.constraints&&!this.hasMutatedConstraints&&Sr(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=rB(r.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Gs(t))return!1;const r=t.current,{projection:s}=this.visualElement;if(!s||!s.layout)return!1;const o=cz(r,s.root,this.visualElement.getTransformPagePoint());let u=tB(s.layout.layoutBox,o);if(n){const f=n(oz(u));this.hasMutatedConstraints=!!f,f&&(u=gN(f))}return u}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:s,dragTransition:o,dragSnapToOrigin:u,onDragTransitionEnd:f}=this.getProps(),d=this.constraints||{},h=Sr(m=>{if(!hf(m,n,this.currentDirection))return;let p=d&&d[m]||{};u&&(p={min:0,max:0});const v=s?200:1e6,x=s?40:1e7,w={type:"inertia",velocity:r?t[m]:0,bounceStiffness:v,bounceDamping:x,timeConstant:750,restDelta:1,restSpeed:10,...o,...p};return this.startAxisValueAnimation(m,w)});return Promise.all(h).then(f)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return uv(this.visualElement,t),r.start(D0(t,r,0,n,this.visualElement,!1))}stopAnimation(){Sr(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),s=r[n];return s||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){Sr(n=>{const{drag:r}=this.getProps();if(!hf(n,r,this.currentDirection))return;const{projection:s}=this.visualElement,o=this.getAxisMotionValue(n);if(s&&s.layout){const{min:u,max:f}=s.layout.layoutBox[n],d=o.get()||0;o.set(t[n]-rt(u,f,.5)+d)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!Gs(n)||!r||!this.constraints)return;this.stopAnimation();const s={x:0,y:0};Sr(u=>{const f=this.getAxisMotionValue(u);if(f&&this.constraints!==!1){const d=f.get();s[u]=nB({min:d,max:d},this.constraints[u])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.constraints=!1,this.resolveConstraints(),Sr(u=>{if(!hf(u,t,null))return;const f=this.getAxisMotionValue(u),{min:d,max:h}=this.constraints[u];f.set(rt(d,h,s[u]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;aB.set(this.visualElement,this);const t=this.visualElement.current,n=Wl(t,"pointerdown",h=>{const{drag:m,dragListener:p=!0}=this.getProps(),v=h.target,x=v!==t&&V8(v);m&&p&&!x&&this.start(h)});let r;const s=()=>{const{dragConstraints:h}=this.getProps();Gs(h)&&h.current&&(this.constraints=this.resolveRefConstraints(),r||(r=oB(t,h.current,()=>this.scalePositionWithinConstraints())))},{projection:o}=this.visualElement,u=o.addEventListener("measure",s);o&&!o.layout&&(o.root&&o.root.updateScroll(),o.updateLayout()),Ge.read(s);const f=iu(window,"resize",()=>this.scalePositionWithinConstraints()),d=o.addEventListener("didUpdate",(({delta:h,hasLayoutChanged:m})=>{this.isDragging&&m&&(Sr(p=>{const v=this.getAxisMotionValue(p);v&&(this.originPoint[p]+=h[p].translate,v.set(v.get()+h[p].translate))}),this.visualElement.render())}));return()=>{f(),n(),u(),d&&d(),r&&r()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:s=!1,dragConstraints:o=!1,dragElastic:u=vv,dragMomentum:f=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:s,dragConstraints:o,dragElastic:u,dragMomentum:f}}}function r2(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function oB(e,t,n){const r=lA(e,r2(n)),s=lA(t,r2(n));return()=>{r(),s()}}function hf(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function lB(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class uB extends aa{constructor(t){super(t),this.removeGroupControls=Jn,this.removeListeners=Jn,this.controls=new sB(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Jn}update(){const{dragControls:t}=this.node.getProps(),{dragControls:n}=this.node.prevProps||{};t!==n&&(this.removeGroupControls(),t&&(this.removeGroupControls=t.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}const hg=e=>(t,n)=>{e&&Ge.update(()=>e(t,n),!1,!0)};class cB extends aa{constructor(){super(...arguments),this.removePointerDownListener=Jn}onPointerDown(t){this.session=new YN(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:XN(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:s}=this.node.getProps();return{onSessionStart:hg(t),onStart:hg(n),onMove:hg(r),onEnd:(o,u)=>{delete this.session,s&&Ge.postRender(()=>s(o,u))}}}mount(){this.removePointerDownListener=Wl(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let mg=!1;class fB extends A.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:s}=this.props,{projection:o}=t;o&&(n.group&&n.group.add(o),r&&r.register&&s&&r.register(o),mg&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),If.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:s,isPresent:o}=this.props,{projection:u}=r;return u&&(u.isPresent=o,t.layoutDependency!==n&&u.setOptions({...u.options,layoutDependency:n}),mg=!0,s||t.layoutDependency!==n||n===void 0||t.isPresent!==o?u.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?u.promote():u.relegate()||Ge.postRender(()=>{const f=u.getStack();(!f||!f.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),z0.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:s}=t;mg=!0,s&&(s.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(s),r&&r.deregister&&r.deregister(s))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function WN(e){const[t,n]=IN(),r=A.useContext(g0);return b.jsx(fB,{...e,layoutGroup:r,switchLayoutGroup:A.useContext(HN),isPresent:t,safeToRemove:n})}const dB={pan:{Feature:cB},drag:{Feature:uB,ProjectionNode:zN,MeasureLayout:WN}};function i2(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const s="onHover"+n,o=r[s];o&&Ge.postRender(()=>o(t,Au(t)))}class hB extends aa{mount(){const{current:t}=this.node;t&&(this.unmount=z8(t,(n,r)=>(i2(this.node,r,"Start"),s=>i2(this.node,s,"End"))))}unmount(){}}class mB extends aa{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=wu(iu(this.node.current,"focus",()=>this.onFocus()),iu(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function a2(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const s="onTap"+(n==="End"?"":n),o=r[s];o&&Ge.postRender(()=>o(t,Au(t)))}class pB extends aa{mount(){const{current:t}=this.node;if(!t)return;const{globalTapTarget:n,propagate:r}=this.node.props;this.unmount=$8(t,(s,o)=>(a2(this.node,o,"Start"),(u,{success:f})=>a2(this.node,u,f?"End":"Cancel")),{useGlobalTarget:n,stopPropagation:r?.tap===!1})}unmount(){}}const bv=new WeakMap,pg=new WeakMap,gB=e=>{const t=bv.get(e.target);t&&t(e)},yB=e=>{e.forEach(gB)};function vB({root:e,...t}){const n=e||document;pg.has(n)||pg.set(n,{});const r=pg.get(n),s=JSON.stringify(t);return r[s]||(r[s]=new IntersectionObserver(yB,{root:e,...t})),r[s]}function bB(e,t,n){const r=vB(t);return bv.set(e,n),r.observe(e),()=>{bv.delete(e),r.unobserve(e)}}const xB={some:0,all:1};class wB extends aa{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:s="some",once:o}=t,u={root:n?n.current:void 0,rootMargin:r,threshold:typeof s=="number"?s:xB[s]},f=d=>{const{isIntersecting:h}=d;if(this.isInView===h||(this.isInView=h,o&&!h&&this.hasEnteredView))return;h&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",h);const{onViewportEnter:m,onViewportLeave:p}=this.node.getProps(),v=h?m:p;v&&v(d)};return bB(this.node.current,u,f)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(_B(t,n))&&this.startObserver()}unmount(){}}function _B({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const SB={inView:{Feature:wB},tap:{Feature:pB},focus:{Feature:mB},hover:{Feature:hB}},AB={layout:{ProjectionNode:zN,MeasureLayout:WN}},TB={...YI,...SB,...dB,...AB},Tt=$I(TB,FI);function wo({id:e,title:t,subtitle:n,children:r,className:s="",wide:o=!1}){return b.jsx("section",{id:e,className:`pt-28 pb-20 px-4 sm:px-6 lg:px-8 ${s}`,children:b.jsxs("div",{className:`${o?"max-w-[1600px]":"max-w-7xl"} mx-auto`,children:[t&&b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0,margin:"-100px"},transition:{duration:.5},className:"text-center mb-12",children:[b.jsx("h2",{className:"text-3xl sm:text-4xl font-bold text-text-primary mb-3",children:t}),n&&b.jsx("p",{className:"text-lg text-text-secondary max-w-3xl mx-auto",children:n})]}),r]})})}function OB(){return b.jsx(wo,{id:"acknowledgements",title:"Contributions & Acknowledgements",subtitle:"",children:b.jsxs("div",{className:"max-w-3xl mx-auto space-y-8",children:[b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5},children:b.jsxs("div",{className:"rounded-xl border border-purple/30 bg-purple/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-purple-light mb-3",children:"Core Contributors"}),b.jsx("p",{className:"text-sm font-semibold text-text-primary",children:"Tara Bogavelli, Gabrielle Gauthier Melançon, Katrina Stankiewicz, Oluwanifemi Bamgbose, Hoang Nguyen, Raghav Mehndiratta, Hari Subramani"})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:b.jsxs("div",{className:"rounded-xl border border-blue/30 bg-blue/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-blue-light mb-2",children:"Secondary Contributors"}),b.jsx("p",{className:"text-sm text-text-secondary mb-3",children:"We thank the following individuals for their careful data review and thoughtful contributions to the framework."}),b.jsx("p",{className:"text-sm font-semibold text-text-primary",children:"Lindsay Brin, Akshay Kalkunte, Joseph Marinier, Jishnu Nair, Aman Tiwari"})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.2},children:b.jsxs("div",{className:"rounded-xl border border-amber/30 bg-amber/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-amber mb-2",children:"Management and Leadership"}),b.jsx("p",{className:"text-sm text-text-secondary mb-4",children:"We are grateful to the following individuals for their management, leadership, and support."}),b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Fanny Riols"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Research Scientist Manager"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Anil Madamala"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Director, Machine Learning Engineering Management"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Sridhar Nemala"}),b.jsx("span",{className:"text-xs text-text-muted",children:"Senior Director, Machine Learning Engineering"})]}),b.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline sm:justify-between gap-1",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Srinivas Sunkara"}),b.jsx("span",{className:"text-xs text-text-muted",children:"VP, Research Engineering Management"})]})]})]})}),b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.3},children:b.jsxs("div",{className:"rounded-xl border border-cyan/30 bg-cyan/5 p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-cyan mb-2",children:"Upstream Contributors"}),b.jsxs("p",{className:"text-sm text-text-secondary",children:["We extend our thanks to the ",b.jsx("span",{className:"font-bold text-text-primary",children:"PAVA"})," and ",b.jsx("span",{className:"font-bold text-text-primary",children:"CLAE"})," teams whose prior work on evaluations and voice agents provided valuable inspiration for this project."]})]})}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.4},className:"rounded-xl border border-border-default bg-bg-secondary p-6",children:[b.jsx("h3",{className:"text-base font-semibold text-text-primary mb-3",children:"Citation"}),b.jsx("pre",{className:"text-xs text-text-muted bg-bg-primary rounded-lg p-4 overflow-x-auto font-mono",children:`@misc{eva-2026, title={EVA: A New End-to-end Framework for Evaluating Voice Agents}, author={Bogavelli, Tara and Gauthier Melançon, Gabrielle and Stankiewicz, Katrina and Bamgbose, Oluwanifemi @@ -22,8 +22,9 @@ Error generating stack: `+c.message+` and Subramani, Hari}, year={2026}, url={https://github.com/ServiceNow/eva} -}`})]})]})})}function EB(){return b.jsx("section",{id:"hero",className:"pt-32 pb-20 px-4 sm:px-6 lg:px-8",children:b.jsxs("div",{className:"max-w-5xl mx-auto text-center",children:[b.jsxs("div",{children:[b.jsxs("h1",{className:"text-3xl sm:text-4xl lg:text-[2.75rem] font-extrabold mb-2 leading-tight bg-clip-text text-transparent",style:{backgroundImage:"linear-gradient(to right, #7C3AED, #818CF8, #60A5FA)"},children:["A New End-to-end Framework for",b.jsx("br",{}),"Evaluating Voice Agents (EVA)"]}),b.jsx("p",{className:"text-sm sm:text-base font-bold text-[#A78BFA] max-w-3xl mx-auto mb-2.5",children:"Tara Bogavelli, Gabrielle Gauthier Melançon, Katrina Stankiewicz, Oluwanifemi Bamgbose, Hoang Nguyen, Raghav Mehndiratta, Hari Subramani*"}),b.jsx("p",{className:"text-base sm:text-lg font-semibold text-text-secondary max-w-3xl mx-auto mb-4",children:"ServiceNow AI Research"}),b.jsx("p",{className:"text-base sm:text-lg text-text-muted max-w-3xl mx-auto mb-14 leading-relaxed",children:"An open-source evaluation framework that measures voice agents over complete, multi-turn spoken conversations using a realistic bot-to-bot architecture. EVA captures the compounding failure modes that component-level benchmarks miss."})]}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.6,delay:.2},className:"grid grid-cols-1 sm:grid-cols-2 gap-10 max-w-5xl mx-auto mb-14",children:[b.jsxs("div",{className:"flex flex-col",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary text-center mb-5",children:"Data"}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-7 flex-1 flex flex-col",children:[b.jsxs("div",{className:"flex items-center justify-center gap-3 mb-4",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg bg-amber/10 flex items-center justify-center flex-shrink-0",children:b.jsx(h6,{className:"w-5 h-5 text-amber"})}),b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"Airline"})]}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed mb-4 text-center",children:"Passengers calling to rebook disrupted flights — IRROPS rebooking, voluntary changes, cancellations, and vouchers."}),b.jsx("div",{className:"flex flex-wrap justify-center gap-1.5 mb-6",children:["IRROPS Rebooking","Voluntary Changes","Cancellations","Vouchers","Standby"].map(e=>b.jsx("span",{className:"px-2 py-0.5 rounded-full bg-amber/10 text-amber text-xs font-medium",children:e},e))}),b.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-3 mt-auto",children:[b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"15"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Tools"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"50"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Scenarios"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"3"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Trials each"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 flex flex-col items-center justify-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"150"}),b.jsxs("div",{className:"text-xs text-text-muted leading-tight text-center",children:["Simulated",b.jsx("br",{}),"Conversations"]})]})]}),b.jsx("p",{className:"text-sm font-bold text-text-primary text-center mt-4",children:"More domains coming soon!"})]})]}),b.jsxs("div",{className:"flex flex-col",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary text-center mb-5",children:"Evaluation Dimensions"}),b.jsxs("div",{className:"space-y-4 flex-1 flex flex-col",children:[b.jsxs("div",{className:"rounded-xl border border-purple/30 bg-purple/5 p-7 flex-1 flex flex-col items-center justify-center text-center",children:[b.jsx("div",{className:"text-sm font-semibold text-purple-light tracking-wide uppercase mb-1",children:"EVA-A"}),b.jsx("div",{className:"text-xl font-bold text-text-primary",children:"Accuracy"}),b.jsx("p",{className:"text-sm text-text-secondary mt-2",children:"Did the agent complete the task correctly?"})]}),b.jsxs("div",{className:"rounded-xl border border-blue/30 bg-blue/5 p-7 flex-1 flex flex-col items-center justify-center text-center",children:[b.jsx("div",{className:"text-sm font-semibold text-blue-light tracking-wide uppercase mb-1",children:"EVA-X"}),b.jsx("div",{className:"text-xl font-bold text-text-primary",children:"Experience"}),b.jsx("p",{className:"text-sm text-text-secondary mt-2",children:"Was the conversational experience high quality?"})]})]})]})]}),b.jsxs(Tt.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.6,delay:.4},className:"flex flex-wrap justify-center gap-3",children:[b.jsxs("a",{href:"https://github.com/ServiceNow/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-purple text-white font-medium text-sm hover:bg-purple-dim transition-colors",children:[b.jsx(r6,{className:"w-4 h-4"})," View on GitHub"]}),b.jsxs("a",{href:"https://huggingface.co/datasets/ServiceNow-AI/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-bg-tertiary text-text-primary font-medium text-sm hover:bg-bg-hover border border-border-default transition-colors",children:[b.jsx(JR,{className:"w-4 h-4"})," Dataset"]}),b.jsxs("a",{href:"https://huggingface.co/blog/ServiceNow-AI/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-bg-tertiary text-text-primary font-medium text-sm hover:bg-bg-hover border border-border-default transition-colors",children:[b.jsx(t6,{className:"w-4 h-4"})," Blog Post"]})]}),b.jsx("p",{className:"text-xs text-text-muted mt-6",children:"*Full list of contributors found in the Contributors tab"})]})})}function Fi({label:e,sublabel:t,color:n,delay:r=0}){return b.jsxs(Tt.div,{initial:{opacity:0,scale:.9},whileInView:{opacity:1,scale:1},viewport:{once:!0},transition:{duration:.4,delay:r},className:"relative rounded-xl border bg-bg-secondary px-6 py-5 text-center",style:{borderColor:n+"40"},children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:e}),t&&b.jsx("div",{className:"text-sm text-text-muted mt-1",children:t}),b.jsx("div",{className:"absolute inset-0 rounded-xl opacity-10",style:{background:`radial-gradient(ellipse at center, ${n}, transparent 70%)`}})]})}function Mn({color:e,className:t=""}){return b.jsx("div",{className:`mx-auto ${t}`,style:{width:"2px",background:`repeating-linear-gradient(to bottom, ${e}80 0px, ${e}80 6px, transparent 6px, transparent 10px)`}})}function gg({color:e,className:t=""}){return b.jsx("div",{className:t,style:{height:"2px",background:`repeating-linear-gradient(to right, ${e}80 0px, ${e}80 6px, transparent 6px, transparent 10px)`}})}function jB(){return b.jsx(wo,{id:"architecture",title:"Bot-to-Bot Architecture",subtitle:"EVA evaluates voice agents using realistic bot-to-bot audio conversations over WebSocket, then computes metrics independently on the validated conversations.",children:b.jsxs("div",{className:"max-w-5xl mx-auto relative",children:[b.jsx("div",{className:"flex justify-center px-4",children:b.jsx("div",{className:"w-full max-w-72",children:b.jsx(Fi,{label:"Evaluation Runner",sublabel:"Orchestrates parallel evaluation",color:"#8B5CF6",delay:0})})}),b.jsx(Mn,{color:"#8B5CF6",className:"h-8"}),b.jsx("div",{className:"flex justify-center px-4",children:b.jsx("div",{className:"w-full max-w-64",children:b.jsx(Fi,{label:"Conversation Worker",sublabel:"Per-scenario execution",color:"#8B5CF6",delay:.1})})}),b.jsx("div",{className:"hidden md:flex justify-center",children:b.jsxs("div",{className:"relative w-[60%]",children:[b.jsx(Mn,{color:"#8B5CF6",className:"h-5"}),b.jsx(gg,{color:"#8B5CF6",className:"w-full"}),b.jsxs("div",{className:"flex justify-between",children:[b.jsx(Mn,{color:"#38BDF8",className:"h-5"}),b.jsx(Mn,{color:"#8B5CF6",className:"h-5"})]})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#38BDF8",className:"h-8"})}),b.jsxs("div",{className:"hidden md:grid grid-cols-[1fr_auto_1fr] gap-4 items-start",children:[b.jsxs("div",{children:[b.jsx(Fi,{label:"User Simulator",color:"#38BDF8",delay:.2}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Scenario-specific"})," — Unique goal, specific decision logic, persona & constraints per conversation"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Human-like voice"})," — Conversational TTS"]})]})]}),b.jsxs("div",{className:"flex flex-col items-center justify-center pt-6 px-2",children:[b.jsxs("div",{className:"flex items-center justify-center",children:[b.jsx("span",{className:"text-cyan font-bold",children:"←"}),b.jsx("div",{style:{width:"56px",height:"2px",background:"repeating-linear-gradient(to right, #06B6D480 0px, #06B6D480 6px, transparent 6px, transparent 10px)"}}),b.jsx("span",{className:"text-cyan font-bold",children:"→"})]}),b.jsx("div",{className:"mt-2 px-3 py-1.5 rounded-full bg-cyan/10 border border-cyan/30 text-cyan text-xs font-medium whitespace-nowrap",children:"WebSocket Audio"})]}),b.jsxs("div",{children:[b.jsx(Fi,{label:"Voice Agent",sublabel:"Pipecat Server",color:"#8B5CF6",delay:.3}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Cascade Pipeline"})," — STT + LLM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Audio-native models"})," — S2S, LALM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Turn Detection"})," — Built-in Pipecat Silero VAD + Smart Turn Analyzer (unless overridden by external VAD)"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Tool Executor"})," — Dynamic python tools"]})]})]})]}),b.jsxs("div",{className:"md:hidden flex flex-col items-center gap-4",children:[b.jsxs("div",{className:"w-full max-w-sm",children:[b.jsx(Fi,{label:"User Simulator",color:"#38BDF8",delay:.2}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Scenario-specific"})," — Unique goal, decision logic, persona & constraints"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Human-like voice"})," — Conversational TTS"]})]})]}),b.jsxs("div",{className:"flex flex-col items-center py-2",children:[b.jsxs("div",{className:"flex flex-col items-center",children:[b.jsx("span",{className:"text-cyan font-bold",children:"↑"}),b.jsx("div",{style:{width:"2px",height:"36px",background:"repeating-linear-gradient(to bottom, #06B6D480 0px, #06B6D480 6px, transparent 6px, transparent 10px)"}}),b.jsx("span",{className:"text-cyan font-bold",children:"↓"})]}),b.jsx("div",{className:"mt-2 px-3 py-1.5 rounded-full bg-cyan/10 border border-cyan/30 text-cyan text-xs font-medium whitespace-nowrap",children:"WebSocket Audio"})]}),b.jsxs("div",{className:"w-full max-w-sm",children:[b.jsx(Fi,{label:"Voice Agent",sublabel:"Pipecat Server",color:"#8B5CF6",delay:.3}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Cascade Pipeline"})," — STT + LLM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Audio-native models"})," — S2S, LALM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Turn Detection"})," — VAD + Smart Turn Analyzer"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Tool Executor"})," — Dynamic python tools"]})]})]})]}),b.jsx("div",{className:"hidden md:flex justify-center mt-3",children:b.jsxs("div",{className:"relative w-[60%]",children:[b.jsxs("div",{className:"flex justify-between",children:[b.jsx(Mn,{color:"#F59E0B",className:"h-5"}),b.jsx(Mn,{color:"#F59E0B",className:"h-5"})]}),b.jsx(gg,{color:"#F59E0B",className:"w-full"})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#F59E0B",className:"h-8"})}),b.jsx("div",{className:"flex justify-center px-4 my-4 w-full",children:b.jsxs("div",{className:"flex flex-col md:flex-row items-stretch justify-center gap-4 md:gap-6 w-full max-w-md md:max-w-none md:w-auto",children:[b.jsxs("div",{className:"md:w-[250px] py-3 rounded-lg bg-bg-tertiary border border-border-default text-center",children:[b.jsx("div",{className:"text-sm font-medium text-text-primary",children:"Audio Files"}),b.jsx("div",{className:"text-xs text-text-muted mt-1",children:"WAV recordings (assistant, user, mixed)"})]}),b.jsxs("div",{className:"md:w-[250px] py-3 rounded-lg bg-bg-tertiary border border-border-default text-center",children:[b.jsx("div",{className:"text-sm font-medium text-text-primary",children:"Logs & Transcripts"}),b.jsx("div",{className:"text-xs text-text-muted mt-1",children:"audit_log.json, transcript.jsonl, events"})]})]})}),b.jsx("div",{className:"hidden md:flex justify-center",children:b.jsxs("div",{className:"relative",style:{width:"524px"},children:[b.jsxs("div",{className:"flex justify-between",style:{padding:"0 80px"},children:[b.jsx(Mn,{color:"#F59E0B",className:"h-5"}),b.jsx(Mn,{color:"#F59E0B",className:"h-5"})]}),b.jsx(gg,{color:"#F59E0B",className:"w-full"}),b.jsx(Mn,{color:"#F59E0B",className:"h-8"})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#F59E0B",className:"h-8"})}),b.jsx("div",{className:"flex justify-center px-4 -mt-2",children:b.jsx("div",{className:"w-full max-w-80",children:b.jsx(Fi,{label:"Validators",sublabel:"Reruns invalid conversations",color:"#F59E0B",delay:.4})})}),b.jsx(Mn,{color:"#F59E0B",className:"h-8"}),b.jsx("div",{className:"flex justify-center px-4",children:b.jsxs("div",{className:"w-full max-w-[28rem]",children:[b.jsx(Fi,{label:"Metrics Suite",sublabel:"Independent post-execution evaluation",color:"#F59E0B",delay:.5}),b.jsxs("div",{className:"grid grid-cols-3 gap-4 mt-5",children:[b.jsxs("div",{className:"rounded-xl border border-purple/25 bg-purple/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-purple-light",children:"EVA-A"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"3 accuracy metrics"})]}),b.jsxs("div",{className:"rounded-xl border border-blue/25 bg-blue/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-blue-light",children:"EVA-X"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"3 experience metrics"})]}),b.jsxs("div",{className:"rounded-xl border border-amber/25 bg-amber/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-amber",children:"Diagnostic"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"5 diagnostic metrics"})]})]})]})})]})})}const MB={deterministic:"Deterministic",llm_judge:"LLM Judge",lalm_judge:"Audio LLM Judge"},kB={deterministic:"#06B6D4",llm_judge:"#8B5CF6",lalm_judge:"#F59E0B"},Tu=[{id:"task_completion",displayName:"Task Completion",category:"eva-a",type:"deterministic",description:"Evaluates whether the agent correctly completed the task by comparing the expected end state of the scenario database against the actual end state after the conversation. This is a strict, deterministic comparison inspired by tau-bench-style evaluation.",inputs:"Initial scenario database state, final scenario database state, expected end state database",outputRange:"Binary: 0 (fail) or 1 (pass)",passThreshold:"1.0"},{id:"agent_tts_fidelity",displayName:"Agent Speech Fidelity",badge:"beta",category:"eva-a",type:"lalm_judge",judgeModel:"Gemini 3.1 Pro",judgeAccuracy:.8957,judgeScores:[{label:"accuracy",value:.8957,std:.0258},{label:"macro_f1_classes_0_1",value:.856,std:.024}],description:"Measures whether the agent correctly spoke the information it intended to communicate. TTS systems can mispronounce, skip, or distort words — in a voice context, if a confirmation code is not spoken correctly, the user cannot act on it regardless of whether the LLM produced the right answer.",inputs:"Agent audio recording, intended assistant text (what LLM generated)",outputRange:"Binary per turn (0=low fidelity, 1=high fidelity), aggregated as mean across turns",passThreshold:"≥ 0.95",judgePrompt:`You are an expert evaluator judging the fidelity of text-to-speech (TTS) audio against the intended text. You will listen to one audio clip and verify that the spoken content faithfully reproduces the intended text, with special attention to TTS-critical entities. - +}`})]})]})})}function EB(){return b.jsx("section",{id:"hero",className:"pt-32 pb-20 px-4 sm:px-6 lg:px-8",children:b.jsxs("div",{className:"max-w-5xl mx-auto text-center",children:[b.jsxs("div",{children:[b.jsxs("h1",{className:"text-3xl sm:text-4xl lg:text-[2.75rem] font-extrabold mb-2 leading-tight bg-clip-text text-transparent",style:{backgroundImage:"linear-gradient(to right, #7C3AED, #818CF8, #60A5FA)"},children:["A New End-to-end Framework for",b.jsx("br",{}),"Evaluating Voice Agents (EVA)"]}),b.jsx("p",{className:"text-sm sm:text-base font-bold text-[#A78BFA] max-w-3xl mx-auto mb-2.5",children:"Tara Bogavelli, Gabrielle Gauthier Melançon, Katrina Stankiewicz, Oluwanifemi Bamgbose, Hoang Nguyen, Raghav Mehndiratta, Hari Subramani*"}),b.jsx("p",{className:"text-base sm:text-lg font-semibold text-text-secondary max-w-3xl mx-auto mb-4",children:"ServiceNow AI Research"}),b.jsx("p",{className:"text-base sm:text-lg text-text-muted max-w-3xl mx-auto mb-14 leading-relaxed",children:"An open-source evaluation framework that measures voice agents over complete, multi-turn spoken conversations using a realistic bot-to-bot architecture. EVA captures the compounding failure modes that component-level benchmarks miss."})]}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.6,delay:.2},className:"grid grid-cols-1 sm:grid-cols-2 gap-10 max-w-5xl mx-auto mb-14",children:[b.jsxs("div",{className:"flex flex-col",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary text-center mb-5",children:"Data"}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-7 flex-1 flex flex-col",children:[b.jsxs("div",{className:"flex items-center justify-center gap-3 mb-4",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg bg-amber/10 flex items-center justify-center flex-shrink-0",children:b.jsx(h6,{className:"w-5 h-5 text-amber"})}),b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"Airline"})]}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed mb-4 text-center",children:"Passengers calling to rebook disrupted flights — IRROPS rebooking, voluntary changes, cancellations, and vouchers."}),b.jsx("div",{className:"flex flex-wrap justify-center gap-1.5 mb-6",children:["IRROPS Rebooking","Voluntary Changes","Cancellations","Vouchers","Standby"].map(e=>b.jsx("span",{className:"px-2 py-0.5 rounded-full bg-amber/10 text-amber text-xs font-medium",children:e},e))}),b.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-3 mt-auto",children:[b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"15"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Tools"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"50"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Scenarios"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 text-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"3"}),b.jsx("div",{className:"text-xs text-text-muted",children:"Trials each"})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary px-3 py-3 flex flex-col items-center justify-center",children:[b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"150"}),b.jsxs("div",{className:"text-xs text-text-muted leading-tight text-center",children:["Simulated",b.jsx("br",{}),"Conversations"]})]})]}),b.jsx("p",{className:"text-sm font-bold text-text-primary text-center mt-4",children:"More domains coming soon!"})]})]}),b.jsxs("div",{className:"flex flex-col",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary text-center mb-5",children:"Evaluation Dimensions"}),b.jsxs("div",{className:"space-y-4 flex-1 flex flex-col",children:[b.jsxs("div",{className:"rounded-xl border border-purple/30 bg-purple/5 p-7 flex-1 flex flex-col items-center justify-center text-center",children:[b.jsx("div",{className:"text-sm font-semibold text-purple-light tracking-wide uppercase mb-1",children:"EVA-A"}),b.jsx("div",{className:"text-xl font-bold text-text-primary",children:"Accuracy"}),b.jsx("p",{className:"text-sm text-text-secondary mt-2",children:"Did the agent complete the task correctly?"})]}),b.jsxs("div",{className:"rounded-xl border border-blue/30 bg-blue/5 p-7 flex-1 flex flex-col items-center justify-center text-center",children:[b.jsx("div",{className:"text-sm font-semibold text-blue-light tracking-wide uppercase mb-1",children:"EVA-X"}),b.jsx("div",{className:"text-xl font-bold text-text-primary",children:"Experience"}),b.jsx("p",{className:"text-sm text-text-secondary mt-2",children:"Was the conversational experience high quality?"})]})]})]})]}),b.jsxs(Tt.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.6,delay:.4},className:"flex flex-wrap justify-center gap-3",children:[b.jsxs("a",{href:"https://github.com/ServiceNow/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-purple text-white font-medium text-sm hover:bg-purple-dim transition-colors",children:[b.jsx(r6,{className:"w-4 h-4"})," View on GitHub"]}),b.jsxs("a",{href:"https://huggingface.co/datasets/ServiceNow-AI/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-bg-tertiary text-text-primary font-medium text-sm hover:bg-bg-hover border border-border-default transition-colors",children:[b.jsx(e6,{className:"w-4 h-4"})," Dataset"]}),b.jsxs("a",{href:"https://huggingface.co/blog/ServiceNow-AI/eva",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-lg bg-bg-tertiary text-text-primary font-medium text-sm hover:bg-bg-hover border border-border-default transition-colors",children:[b.jsx(oM,{className:"w-4 h-4"})," Blog Post"]})]}),b.jsx("p",{className:"text-xs text-text-muted mt-6",children:"*Full list of contributors found in the Contributors tab"})]})})}function Fi({label:e,sublabel:t,color:n,delay:r=0}){return b.jsxs(Tt.div,{initial:{opacity:0,scale:.9},whileInView:{opacity:1,scale:1},viewport:{once:!0},transition:{duration:.4,delay:r},className:"relative rounded-xl border bg-bg-secondary px-6 py-5 text-center",style:{borderColor:n+"40"},children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:e}),t&&b.jsx("div",{className:"text-sm text-text-muted mt-1",children:t}),b.jsx("div",{className:"absolute inset-0 rounded-xl opacity-10",style:{background:`radial-gradient(ellipse at center, ${n}, transparent 70%)`}})]})}function Mn({color:e,className:t=""}){return b.jsx("div",{className:`mx-auto ${t}`,style:{width:"2px",background:`repeating-linear-gradient(to bottom, ${e}80 0px, ${e}80 6px, transparent 6px, transparent 10px)`}})}function gg({color:e,className:t=""}){return b.jsx("div",{className:t,style:{height:"2px",background:`repeating-linear-gradient(to right, ${e}80 0px, ${e}80 6px, transparent 6px, transparent 10px)`}})}function jB(){return b.jsx(wo,{id:"architecture",title:"Bot-to-Bot Architecture",subtitle:"EVA evaluates voice agents using realistic bot-to-bot audio conversations over WebSocket, then computes metrics independently on the validated conversations.",children:b.jsxs("div",{className:"max-w-5xl mx-auto relative",children:[b.jsx("div",{className:"flex justify-center px-4",children:b.jsx("div",{className:"w-full max-w-72",children:b.jsx(Fi,{label:"Evaluation Runner",sublabel:"Orchestrates parallel evaluation",color:"#8B5CF6",delay:0})})}),b.jsx(Mn,{color:"#8B5CF6",className:"h-8"}),b.jsx("div",{className:"flex justify-center px-4",children:b.jsx("div",{className:"w-full max-w-64",children:b.jsx(Fi,{label:"Conversation Worker",sublabel:"Per-scenario execution",color:"#8B5CF6",delay:.1})})}),b.jsx("div",{className:"hidden md:flex justify-center",children:b.jsxs("div",{className:"relative w-[60%]",children:[b.jsx(Mn,{color:"#8B5CF6",className:"h-5"}),b.jsx(gg,{color:"#8B5CF6",className:"w-full"}),b.jsxs("div",{className:"flex justify-between",children:[b.jsx(Mn,{color:"#38BDF8",className:"h-5"}),b.jsx(Mn,{color:"#8B5CF6",className:"h-5"})]})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#38BDF8",className:"h-8"})}),b.jsxs("div",{className:"hidden md:grid grid-cols-[1fr_auto_1fr] gap-4 items-start",children:[b.jsxs("div",{children:[b.jsx(Fi,{label:"User Simulator",color:"#38BDF8",delay:.2}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Scenario-specific"})," — Unique goal, specific decision logic, persona & constraints per conversation"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Human-like voice"})," — Conversational TTS"]})]})]}),b.jsxs("div",{className:"flex flex-col items-center justify-center pt-6 px-2",children:[b.jsxs("div",{className:"flex items-center justify-center",children:[b.jsx("span",{className:"text-cyan font-bold",children:"←"}),b.jsx("div",{style:{width:"56px",height:"2px",background:"repeating-linear-gradient(to right, #06B6D480 0px, #06B6D480 6px, transparent 6px, transparent 10px)"}}),b.jsx("span",{className:"text-cyan font-bold",children:"→"})]}),b.jsx("div",{className:"mt-2 px-3 py-1.5 rounded-full bg-cyan/10 border border-cyan/30 text-cyan text-xs font-medium whitespace-nowrap",children:"WebSocket Audio"})]}),b.jsxs("div",{children:[b.jsx(Fi,{label:"Voice Agent",sublabel:"Pipecat Server",color:"#8B5CF6",delay:.3}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Cascade Pipeline"})," — STT + LLM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Audio-native models"})," — S2S, LALM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Turn Detection"})," — Built-in Pipecat Silero VAD + Smart Turn Analyzer (unless overridden by external VAD)"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Tool Executor"})," — Dynamic python tools"]})]})]})]}),b.jsxs("div",{className:"md:hidden flex flex-col items-center gap-4",children:[b.jsxs("div",{className:"w-full max-w-sm",children:[b.jsx(Fi,{label:"User Simulator",color:"#38BDF8",delay:.2}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Scenario-specific"})," — Unique goal, decision logic, persona & constraints"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-blue/30 pl-3 py-1",children:[b.jsx("span",{className:"text-blue-light font-medium",children:"Human-like voice"})," — Conversational TTS"]})]})]}),b.jsxs("div",{className:"flex flex-col items-center py-2",children:[b.jsxs("div",{className:"flex flex-col items-center",children:[b.jsx("span",{className:"text-cyan font-bold",children:"↑"}),b.jsx("div",{style:{width:"2px",height:"36px",background:"repeating-linear-gradient(to bottom, #06B6D480 0px, #06B6D480 6px, transparent 6px, transparent 10px)"}}),b.jsx("span",{className:"text-cyan font-bold",children:"↓"})]}),b.jsx("div",{className:"mt-2 px-3 py-1.5 rounded-full bg-cyan/10 border border-cyan/30 text-cyan text-xs font-medium whitespace-nowrap",children:"WebSocket Audio"})]}),b.jsxs("div",{className:"w-full max-w-sm",children:[b.jsx(Fi,{label:"Voice Agent",sublabel:"Pipecat Server",color:"#8B5CF6",delay:.3}),b.jsxs("div",{className:"mt-4 space-y-2.5 pl-4",children:[b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Cascade Pipeline"})," — STT + LLM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Audio-native models"})," — S2S, LALM + TTS"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Turn Detection"})," — VAD + Smart Turn Analyzer"]}),b.jsxs("div",{className:"text-sm text-text-muted border-l-2 border-purple/30 pl-3 py-1",children:[b.jsx("span",{className:"text-purple-light font-medium",children:"Tool Executor"})," — Dynamic python tools"]})]})]})]}),b.jsx("div",{className:"hidden md:flex justify-center mt-3",children:b.jsxs("div",{className:"relative w-[60%]",children:[b.jsxs("div",{className:"flex justify-between",children:[b.jsx(Mn,{color:"#F59E0B",className:"h-5"}),b.jsx(Mn,{color:"#F59E0B",className:"h-5"})]}),b.jsx(gg,{color:"#F59E0B",className:"w-full"})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#F59E0B",className:"h-8"})}),b.jsx("div",{className:"flex justify-center px-4 my-4 w-full",children:b.jsxs("div",{className:"flex flex-col md:flex-row items-stretch justify-center gap-4 md:gap-6 w-full max-w-md md:max-w-none md:w-auto",children:[b.jsxs("div",{className:"md:w-[250px] py-3 rounded-lg bg-bg-tertiary border border-border-default text-center",children:[b.jsx("div",{className:"text-sm font-medium text-text-primary",children:"Audio Files"}),b.jsx("div",{className:"text-xs text-text-muted mt-1",children:"WAV recordings (assistant, user, mixed)"})]}),b.jsxs("div",{className:"md:w-[250px] py-3 rounded-lg bg-bg-tertiary border border-border-default text-center",children:[b.jsx("div",{className:"text-sm font-medium text-text-primary",children:"Logs & Transcripts"}),b.jsx("div",{className:"text-xs text-text-muted mt-1",children:"audit_log.json, transcript.jsonl, events"})]})]})}),b.jsx("div",{className:"hidden md:flex justify-center",children:b.jsxs("div",{className:"relative",style:{width:"524px"},children:[b.jsxs("div",{className:"flex justify-between",style:{padding:"0 80px"},children:[b.jsx(Mn,{color:"#F59E0B",className:"h-5"}),b.jsx(Mn,{color:"#F59E0B",className:"h-5"})]}),b.jsx(gg,{color:"#F59E0B",className:"w-full"}),b.jsx(Mn,{color:"#F59E0B",className:"h-8"})]})}),b.jsx("div",{className:"md:hidden",children:b.jsx(Mn,{color:"#F59E0B",className:"h-8"})}),b.jsx("div",{className:"flex justify-center px-4 -mt-2",children:b.jsx("div",{className:"w-full max-w-80",children:b.jsx(Fi,{label:"Validators",sublabel:"Reruns invalid conversations",color:"#F59E0B",delay:.4})})}),b.jsx(Mn,{color:"#F59E0B",className:"h-8"}),b.jsx("div",{className:"flex justify-center px-4",children:b.jsxs("div",{className:"w-full max-w-[28rem]",children:[b.jsx(Fi,{label:"Metrics Suite",sublabel:"Independent post-execution evaluation",color:"#F59E0B",delay:.5}),b.jsxs("div",{className:"grid grid-cols-3 gap-4 mt-5",children:[b.jsxs("div",{className:"rounded-xl border border-purple/25 bg-purple/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-purple-light",children:"EVA-A"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"3 accuracy metrics"})]}),b.jsxs("div",{className:"rounded-xl border border-blue/25 bg-blue/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-blue-light",children:"EVA-X"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"3 experience metrics"})]}),b.jsxs("div",{className:"rounded-xl border border-amber/25 bg-amber/5 px-4 py-5 text-center",children:[b.jsx("div",{className:"text-base font-bold text-amber",children:"Diagnostic"}),b.jsx("div",{className:"text-sm text-text-muted mt-1.5",children:"5 diagnostic metrics"})]})]})]})})]})})}const MB={deterministic:"Deterministic",llm_judge:"LLM Judge",lalm_judge:"Audio LLM Judge"},NB={deterministic:"#06B6D4",llm_judge:"#8B5CF6",lalm_judge:"#F59E0B"},Tu=[{id:"task_completion",displayName:"Task Completion",category:"eva-a",type:"deterministic",description:"Evaluates whether the agent correctly completed the task by comparing the expected end state of the scenario database against the actual end state after the conversation. This is a strict, deterministic comparison inspired by tau-bench-style evaluation.",inputs:"Initial scenario database state, final scenario database state, expected end state database",outputRange:"Binary: 0 (fail) or 1 (pass)",passThreshold:"1.0"},{id:"agent_tts_fidelity",displayName:"Agent Speech Fidelity",badge:"beta",category:"eva-a",type:"lalm_judge",judgeModel:"Gemini 3.1 Pro",judgeAccuracy:.8957,judgeScores:[{label:"accuracy",value:.8957,std:.0258},{label:"macro_f1",value:.856,std:.024}],description:"Measures whether the agent correctly spoke the information it intended to communicate. TTS systems can mispronounce, skip, or distort words — in a voice context, if a confirmation code is not spoken correctly, the user cannot act on it regardless of whether the LLM produced the right answer.",inputs:"Agent audio recording, intended assistant text (what LLM generated)",outputRange:"Binary per turn (0=low fidelity, 1=high fidelity), aggregated as mean across turns",passThreshold:"≥ 0.95",judgePrompt:`You are an expert evaluator judging the fidelity of this audio file against the intended text. +You will listen to one audio clip and verify that the spoken content faithfully reproduces the intended text, with special attention to TTS-critical entities. +The audio provided is a recording of the agent's side of a conversation, and contains only the agent responses, not the user. ## Intended Turns {intended_turns_formatted} @@ -40,16 +41,9 @@ The intended text may contain non-spoken tags and markers. You must understand t Tags like [slow], [firm], [annoyed] describe how the words were meant to be spoken. They are NOT spoken aloud and should never be expected in the audio. ### Interruption Tags -These are metadata markers inserted during post-processing to describe what happened in the conversation. They are NOT spoken aloud. Never penalize the audio for not containing these tags. -The tags also tell you that certain portions of the intended text were likely never spoken, because the speaker was interrupted or cut themselves off. Do NOT penalize for missing words that fall in a region the tags indicate was not spoken. +{interruption_tags_reference} -Tag definitions: -• [assistant interrupts] — The agent started speaking over the user. Text after this tag in the user's intended text may have been partially or fully drowned out by the agent speaking. Expect that some words after this tag may be missing or garbled in the audio. -• [user interrupts] — The user started speaking over the agent. Text after this tag in the agent's intended text may have been partially or fully spoken before the agent yielded the floor. Expect that some words after this tag may be missing. -• [likely cut off by user] — In agent intended text, marks approximately where the agent's speech was cut off by the user. Text BEFORE this tag was likely cut off at some point — the speaker may not have finished everything before it. Text AFTER this tag was most likely said (the agent resumed after the interruption). Do not penalize for missing words before this tag. -• [speaker likely cut itself off] — The agent stopped talking on its own, probably because it detected the user was speaking. Words before this tag were probably not all said. The text after this tag is what the agent said after resuming. Do not penalize for missing words before this tag. -• [likely interruption] — An unexplained break in the speaker's audio. Words around this boundary may be missing or fragmented. -• [assistant starts replying - user interrupts] — In user intended text, the user was speaking, the agent began to reply, and the user interrupted the agent. Text around this boundary may have overlapping speech. Some words near this tag may be missing or garbled. +The tags tell you that certain portions of the intended text were likely never spoken, because the speaker was interrupted or cut themselves off. Do NOT penalize for missing words that fall in a region the tags indicate was not spoken. **Key principle:** If a tag indicates that a section of text was likely not spoken aloud (due to interruption or cut-off), do NOT penalize for those words being missing from the audio. Only evaluate fidelity for words that were reasonably expected to have been spoken. @@ -82,8 +76,6 @@ For each intended turn, compare what you hear in the audio against the intended - Non-spoken tags: [slow], [firm], [annoyed], and all interruption tags listed above - Words in regions flagged by interruption tags as likely not spoken -**IMPORTANT: Only rate what you clearly hear.** If you cannot clearly make out a word or entity, note the uncertainty in your explanation rather than guessing. Do not fabricate or assume what was spoken. - ## Rating Scale (per turn) - **1 (High Fidelity)**: All entities are spoken correctly. Non-entity words are faithfully reproduced with no meaningful omissions or additions. - **0 (Low Fidelity)**: One or more entity errors, OR significant non-entity word errors that change the meaning of the turn. @@ -94,12 +86,13 @@ Respond with a JSON object. Each turn entry must include the turn_id matching th "turns": [ {{ "turn_id": , + "transcript": "explanation": "", "rating": <0 or 1> }} ], "explanation": "" -}}`},{id:"faithfulness",displayName:"Faithfulness",category:"eva-a",type:"llm_judge",judgeModel:"Claude Opus 4.6",judgeAccuracy:.7672,judgeScores:[{label:"accuracy",value:.8394,std:.0292},{label:"macro_f1",value:.8065,std:.0286}],description:"Measures whether the agent's responses were consistent with its instructions, provided policy, user inputs, and tool call results. Evaluates across 5 dimensions: fabricating tool parameters, misrepresenting tool results, violating policies, failing to disambiguate, and hallucination.",inputs:"Agent role, agent instructions, available tools, current date/time, full conversation trace with tool calls",outputRange:"1-3 scale, normalized to 0-1 (1=unfaithful, 2=partially faithful, 3=fully faithful)",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator analyzing whether a voice assistant remains faithful to information, policies, and instructions throughout a conversation. You will evaluate the conversation across five dimensions, each scored as a binary flag (true = issue present, false = no issue). +}}`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/agent_speech_fidelity_development.md"},{id:"faithfulness",displayName:"Faithfulness",category:"eva-a",type:"llm_judge",judgeModel:"Claude Opus 4.6",judgeAccuracy:.7672,judgeScores:[{label:"accuracy",value:.8394,std:.0292},{label:"macro_f1",value:.8065,std:.0286}],description:"Measures whether the agent's responses were consistent with its instructions, provided policy, user inputs, and tool call results. Evaluates across 5 dimensions: fabricating tool parameters, misrepresenting tool results, violating policies, failing to disambiguate, and hallucination.",inputs:"Agent role, agent instructions, available tools, current date/time, full conversation trace with tool calls",outputRange:"1-3 scale, normalized to 0-1 (1=unfaithful, 2=partially faithful, 3=fully faithful)",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator analyzing whether a voice assistant remains faithful to information, policies, and instructions throughout a conversation. You will evaluate the conversation across five dimensions, each scored as a binary flag (true = issue present, false = no issue). Each dimension evaluates a **different type of faithfulness violation**. Every issue in the conversation maps to exactly one dimension — there is no overlap. @@ -288,7 +281,7 @@ Respond in JSON format: }} }}, "rating": -}}`},{id:"turn_taking",displayName:"Turn Taking",badge:"beta",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",description:"Measures whether the agent spoke at the right time — not interrupting the user during speech, but also not introducing excessive silence. Early responses cut off users; late responses make interactions feel unresponsive.",inputs:"Segment transitions with latencies, interruption flags, user/assistant transcripts (expected + heard)",outputRange:"-1 to +1 per turn (-1=early/interrupting, 0=on-time, +1=late), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`ROLE +}}`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/faithfulness_development.md"},{id:"turn_taking",displayName:"Turn Taking",badge:"beta",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",description:"Measures whether the agent spoke at the right time — not interrupting the user during speech, but also not introducing excessive silence. Early responses cut off users; late responses make interactions feel unresponsive.",inputs:"Segment transitions with latencies, interruption flags, user/assistant transcripts (expected + heard)",outputRange:"-1 to +1 per turn (-1=early/interrupting, 0=on-time, +1=late), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`ROLE You are a judge evaluating a voice agent conversation transcript for turn-taking accuracy: Did the agent take the floor at the correct time after the user finished? You will work from text transcripts, timestamps, and metadata tags — not audio. @@ -460,7 +453,7 @@ Return a JSON array with one object per turn: {{"turn_id": 2, "explanation": "...", "label": "Early / Interrupting", "rating": -1}} ] Make sure to use the same turn ids as provided in the conversation context. It typically starts at 1. -The length of the array must equal the number of assistant turns in the conversation.`},{id:"conciseness",displayName:"Conciseness",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.9226,judgeScores:[{label:"accuracy",value:.9226,std:.0076},{label:"macro_f1",value:.8375,std:.0112}],description:"Measures whether the agent's responses were appropriately brief and focused for spoken delivery. In voice, users cannot skim, re-read, or scroll back — presenting too many options, asking multiple questions per turn, or including unnecessary hedging degrades the interaction.",inputs:"Full conversation trace with all turns",outputRange:"1-3 per turn (1=verbose, 2=adequate, 3=concise), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator judging the conciseness and voice-appropriateness of assistant responses in a voice conversation. +The length of the array must equal the number of assistant turns in the conversation.`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/turn_taking_development.md"},{id:"conciseness",displayName:"Conciseness",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.9226,judgeScores:[{label:"accuracy",value:.9226,std:.0076},{label:"macro_f1",value:.8375,std:.0112}],description:"Measures whether the agent's responses were appropriately brief and focused for spoken delivery. In voice, users cannot skim, re-read, or scroll back — presenting too many options, asking multiple questions per turn, or including unnecessary hedging degrades the interaction.",inputs:"Full conversation trace with all turns",outputRange:"1-3 per turn (1=verbose, 2=adequate, 3=concise), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator judging the conciseness and voice-appropriateness of assistant responses in a voice conversation. ## Conversation {conversation_turns} @@ -563,7 +556,7 @@ Provide your response as a valid JSON array, one entry per turn. Each entry must }} ] -If the turn is rated 3 or null, failure_modes must be an empty list: [].`},{id:"conversation_progression",displayName:"Conversation Progression",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.799,judgeScores:[{label:"accuracy",value:.799,std:.0112},{label:"macro_f1",value:.7817,std:.0128}],description:"Measures whether the agent moved the conversation forward effectively — avoiding unnecessary repetition, retaining context across turns, and driving toward task completion without stalling.",inputs:"Full conversation trace",outputRange:"1-3 (1=clear progression issues, 2=minor issues, 3=smooth progression), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator analyzing whether a voice assistant effectively moved a conversation forward. You will evaluate the conversation across four dimensions, each scored as a binary flag (true = issue present, false = no issue). +If the turn is rated 3 or null, failure_modes must be an empty list: [].`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/conciseness_development.md"},{id:"conversation_progression",displayName:"Conversation Progression",category:"eva-x",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.799,judgeScores:[{label:"accuracy",value:.799,std:.0112},{label:"macro_f1",value:.7817,std:.0128}],description:"Measures whether the agent moved the conversation forward effectively — avoiding unnecessary repetition, retaining context across turns, and driving toward task completion without stalling.",inputs:"Full conversation trace",outputRange:"1-3 (1=clear progression issues, 2=minor issues, 3=smooth progression), normalized to 0-1",passThreshold:"≥ 0.5",judgePrompt:`You are an expert evaluator analyzing whether a voice assistant effectively moved a conversation forward. You will evaluate the conversation across four dimensions, each scored as a binary flag (true = issue present, false = no issue). Each dimension evaluates a **different type of action**. Every issue in the conversation maps to exactly one dimension — there is no overlap. Ensure to consider both the assistant agent instructions and the following agent dimensions when evaluating the conversation. @@ -718,7 +711,7 @@ Respond in JSON format. The "evidence" field must ALWAYS contain 1-2 sentences r }} }}, "rating": -}}`},{id:"authentication_success",displayName:"Authentication Success",category:"debug",type:"deterministic",description:"Checks whether the agent successfully authenticated the user by verifying identity through required credentials (e.g., confirmation number, last name).",inputs:"Audit log tool calls, expected authentication parameters",outputRange:"Binary: 0 (fail) or 1 (pass)"},{id:"response_speed",displayName:"Response Speed",category:"debug",type:"deterministic",description:"Measures the elapsed time in seconds between the user's last audio and the agent's first audio response. A direct measurement of end-to-end latency.",inputs:"Audio timestamp data from pipeline events",outputRange:"Seconds (lower is better). Normalized: (5.0 - clamped_speed) / 3.0 for scores in 0-1 range"},{id:"stt_wer",displayName:"STT Accuracy (WER)",category:"debug",type:"deterministic",description:"Speech-to-Text Word Error Rate computed using jiwer. Measures overall transcription quality by comparing what the user intended to say against what the agent's STT system actually transcribed. Score is reported as accuracy (1 - WER, clamped to 0-1).",inputs:"Intended user turns (TTS text), transcribed user turns (STT output)",outputRange:"Accuracy 0-1 (1.0 = perfect transcription, 0.0 = completely wrong)"},{id:"tool_call_validity",displayName:"Tool Call Validity",category:"debug",type:"deterministic",description:"Checks whether all tool calls made by the agent used valid tool names and provided required parameters according to the tool schema.",inputs:"Audit log tool calls, agent tool definitions",outputRange:"Binary: 0 (invalid calls present) or 1 (all calls valid)"},{id:"transcription_accuracy_key_entities",displayName:"Key Entity Transcription",category:"debug",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.9453,judgeScores:[{label:"entity_f1_lenient",value:.9453,std:.0031},{label:"correctness_with_penalty",value:.8623,std:.0081}],description:"Evaluates whether the agent correctly transcribed key named entities from user speech — confirmation codes, names, flight numbers, dates, and similar entities where transcription errors are conversation-ending rather than merely cosmetic.",inputs:"User intended speech text (what TTS was asked to say), agent's transcription of user speech",outputRange:"Ratio 0-1 (proportion of correctly transcribed entities across all turns)",judgePrompt:`You are an expert evaluator analyzing Speech-to-Text (STT) transcription accuracy for key entities across an entire conversation. +}}`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/conversation_progression_development.md"},{id:"authentication_success",displayName:"Authentication Success",category:"debug",type:"deterministic",description:"Checks whether the agent successfully authenticated the user by verifying identity through required credentials (e.g., confirmation number, last name).",inputs:"Audit log tool calls, expected authentication parameters",outputRange:"Binary: 0 (fail) or 1 (pass)"},{id:"response_speed",displayName:"Response Speed",category:"debug",type:"deterministic",description:"Measures the elapsed time in seconds between the user's last audio and the agent's first audio response. A direct measurement of end-to-end latency.",inputs:"Audio timestamp data from pipeline events",outputRange:"Seconds (lower is better). Normalized: (5.0 - clamped_speed) / 3.0 for scores in 0-1 range"},{id:"stt_wer",displayName:"STT Accuracy (WER)",category:"debug",type:"deterministic",description:"Speech-to-Text Word Error Rate computed using jiwer. Measures overall transcription quality by comparing what the user intended to say against what the agent's STT system actually transcribed. Score is reported as accuracy (1 - WER, clamped to 0-1).",inputs:"Intended user turns (TTS text), transcribed user turns (STT output)",outputRange:"Accuracy 0-1 (1.0 = perfect transcription, 0.0 = completely wrong)"},{id:"tool_call_validity",displayName:"Tool Call Validity",category:"debug",type:"deterministic",description:"Checks whether all tool calls made by the agent used valid tool names and provided required parameters according to the tool schema.",inputs:"Audit log tool calls, agent tool definitions",outputRange:"Binary: 0 (invalid calls present) or 1 (all calls valid)"},{id:"transcription_accuracy_key_entities",displayName:"Key Entity Transcription",category:"debug",type:"llm_judge",judgeModel:"GPT-5.2",judgeAccuracy:.9453,judgeScores:[{label:"entity_f1_lenient",value:.9453,std:.0031},{label:"correctness_with_penalty",value:.8623,std:.0081}],description:"Evaluates whether the agent correctly transcribed key named entities from user speech — confirmation codes, names, flight numbers, dates, and similar entities where transcription errors are conversation-ending rather than merely cosmetic.",inputs:"User intended speech text (what TTS was asked to say), agent's transcription of user speech",outputRange:"Ratio 0-1 (proportion of correctly transcribed entities across all turns)",judgePrompt:`You are an expert evaluator analyzing Speech-to-Text (STT) transcription accuracy for key entities across an entire conversation. Your task: 1. For EACH user turn, identify all key entities in the EXPECTED text @@ -879,7 +872,7 @@ Transcribed: \`My phone number is 404-555.\` ], "summary": "<1-2 sentence summary for this turn>" }} -]`},{id:"user_behavioral_fidelity",displayName:"User Behavioral Fidelity",category:"validation",type:"llm_judge",judgeModel:"GPT-5.2",description:"Determines whether the simulated user's behavior corrupted the voice agent evaluation — specifically, whether the user's actions led to the database being in a different state than it should be, or prevented the agent from completing actions it otherwise would have.",inputs:"Agent-side transcript with tool calls, user-side text (ground truth), user goal, user persona, modification tools list",outputRange:"Binary: 0 (corrupted) or 1 (clean)",judgePrompt:`You are an expert evaluator determining whether a simulated user's behavior has corrupted the voice agent evaluation. +]`,developmentDocUrl:"https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/transcription_accuracy_key_entities.md"},{id:"user_behavioral_fidelity",displayName:"User Behavioral Fidelity",category:"validation",type:"llm_judge",judgeModel:"GPT-5.2",description:"Determines whether the simulated user's behavior corrupted the voice agent evaluation — specifically, whether the user's actions led to the database being in a different state than it should be, or prevented the agent from completing actions it otherwise would have.",inputs:"Agent-side transcript with tool calls, user-side text (ground truth), user goal, user persona, modification tools list",outputRange:"Binary: 0 (corrupted) or 1 (clean)",judgePrompt:`You are an expert evaluator determining whether a simulated user's behavior has corrupted the voice agent evaluation. Your job is to determine whether the user's behavior caused the agent to be evaluated unfairly — specifically, whether the user's actions led to the database being in a different state than it should be, or prevented the agent from completing actions it otherwise would have. @@ -1031,10 +1024,10 @@ Respond with a JSON object. Each turn entry must include the turn_id matching th "rating": <1, 2, 3> }} ] -}}`}],NB=Tu.filter(e=>e.category==="eva-a"),CB=Tu.filter(e=>e.category==="eva-x"),sT=Tu.filter(e=>e.category==="debug"),oT=Tu.filter(e=>e.category==="validation");Tu.filter(e=>e.type==="llm_judge"||e.type==="lalm_judge");function DB({prompt:e,model:t}){const[n,r]=A.useState(!1),s=A.useCallback(()=>r(!1),[]);return A.useEffect(()=>{if(!n)return;const o=u=>{u.key==="Escape"&&s()};return document.addEventListener("keydown",o),document.body.style.overflow="hidden",()=>{document.removeEventListener("keydown",o),document.body.style.overflow=""}},[n,s]),b.jsxs(b.Fragment,{children:[b.jsxs("button",{onClick:()=>r(!0),className:"mt-3 flex items-center gap-1.5 text-xs font-medium text-purple-light hover:text-purple transition-colors",children:["View Judge Prompt",t&&b.jsxs("span",{className:"text-text-muted",children:["(",t,")"]})]}),n&&b.jsxs("div",{className:"fixed inset-0 z-[100] flex items-center justify-center p-4",onClick:o=>{o.target===o.currentTarget&&s()},children:[b.jsx("div",{className:"absolute inset-0 bg-black/70 backdrop-blur-sm"}),b.jsxs("div",{className:"relative w-full max-w-4xl max-h-[85vh] flex flex-col rounded-xl border border-border-default bg-bg-primary shadow-2xl",children:[b.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-border-default flex-shrink-0",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary",children:"Judge Prompt"}),t&&b.jsxs("div",{className:"text-xs text-text-muted mt-0.5",children:["Model: ",t]})]}),b.jsx("button",{onClick:s,className:"p-1.5 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(uM,{className:"w-5 h-5"})})]}),b.jsx("div",{className:"overflow-y-auto flex-1",children:b.jsx("pre",{className:"px-6 py-5 text-[13px] leading-relaxed text-text-primary font-mono whitespace-pre-wrap break-words",children:e})})]})]})]})}const PB={deterministic:ZR,llm_judge:oM,lalm_judge:Gy};function mf({metric:e}){const[t,n]=A.useState(!1),[r,s]=A.useState(!1),o=PB[e.type],u=kB[e.type];return b.jsxs(Tt.div,{layout:!0,className:"rounded-xl border border-border-default bg-bg-secondary overflow-hidden",children:[b.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center justify-between p-5 text-left hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{className:"flex items-center gap-3",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center flex-shrink-0",style:{backgroundColor:u+"20"},children:b.jsx(o,{className:"w-5 h-5",style:{color:u}})}),b.jsxs("div",{children:[b.jsxs("div",{className:"text-base font-semibold text-text-primary",children:[e.displayName,e.badge&&b.jsx("span",{className:"ml-2 text-[10px] px-1.5 py-0.5 rounded-full bg-amber/10 text-amber border border-amber/20 font-medium uppercase align-middle",children:e.badge})]}),b.jsxs("div",{className:"text-xs font-medium mt-0.5",style:{color:u},children:[MB[e.type],e.judgeModel&&b.jsxs("span",{className:"text-text-muted",children:[" · ",e.judgeModel]})]})]})]}),b.jsx(ai,{className:`w-5 h-5 text-text-muted transition-transform ${t?"rotate-180":""}`})]}),b.jsx(KA,{children:t&&b.jsx(Tt.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:b.jsxs("div",{className:"px-5 pb-5 space-y-4",children:[b.jsx("div",{className:"border-t border-border-default pt-4",children:b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:e.description})}),b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Inputs"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.inputs})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Output"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.outputRange})]}),e.passThreshold&&b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Pass Threshold"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.passThreshold})]})]}),e.judgePrompt&&b.jsx(DB,{prompt:e.judgePrompt,model:e.judgeModel}),e.judgeScores&&e.judgeScores.length>0&&b.jsxs("div",{className:"rounded-lg border border-border-default overflow-hidden",children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center justify-between px-4 py-3 text-left hover:bg-bg-hover/30 transition-colors",children:[b.jsx("div",{className:"text-sm font-semibold text-text-secondary",children:"Judge Accuracy"}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${r?"rotate-180":""}`})]}),b.jsx(KA,{children:r&&b.jsx(Tt.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.15},className:"overflow-hidden",children:b.jsxs("div",{className:"px-4 pb-4 space-y-3",children:[b.jsx("div",{className:"border-t border-border-default pt-3",children:b.jsx("div",{className:"flex flex-wrap gap-3",children:e.judgeScores.map(({label:f,value:d,std:h})=>b.jsxs("div",{className:"flex items-center gap-2 rounded-lg bg-bg-primary px-3 py-2",children:[b.jsx("span",{className:"text-xs text-text-muted font-mono",children:f}),b.jsxs("span",{className:"text-sm font-semibold text-text-primary",children:[(d*100).toFixed(1),"%",h!=null&&b.jsxs("span",{className:"text-text-muted font-normal text-xs ml-1",children:["(±",(h*100).toFixed(1),"%)"]})]})]},f))})}),e.judgeDevelopmentNotes?b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:e.judgeDevelopmentNotes}):b.jsx("p",{className:"text-sm text-text-muted italic"})]})})})]})]})})})]})}function RB(){const[e,t]=A.useState(!1);return b.jsxs(wo,{id:"metrics",title:"Evaluation Methodology",subtitle:"EVA produces two fundamental scores composed of multiple sub-metrics. Click any metric to explore what it measures, its inputs, and the judge prompt.",children:[b.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-8",children:[b.jsxs(Tt.div,{initial:{opacity:0,x:-20},whileInView:{opacity:1,x:0},viewport:{once:!0},transition:{duration:.5},children:[b.jsxs("div",{className:"rounded-xl border-2 border-purple/30 bg-purple/5 p-5 text-center",children:[b.jsx("div",{className:"text-sm font-bold text-purple-light tracking-widest uppercase mb-1",children:"EVA-A"}),b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"Accuracy"}),b.jsx("p",{className:"text-sm text-text-secondary mt-1.5",children:"Did the agent complete the task correctly?"})]}),b.jsx("div",{className:"flex justify-center",children:b.jsx("div",{className:"w-px h-5 bg-purple/30"})}),b.jsx("div",{className:"space-y-3 pt-0",children:NB.map(n=>b.jsx(mf,{metric:n},n.id))})]}),b.jsxs(Tt.div,{initial:{opacity:0,x:20},whileInView:{opacity:1,x:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:[b.jsxs("div",{className:"rounded-xl border-2 border-blue/30 bg-blue/5 p-5 text-center",children:[b.jsx("div",{className:"text-sm font-bold text-blue-light tracking-widest uppercase mb-1",children:"EVA-X"}),b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"Experience"}),b.jsx("p",{className:"text-sm text-text-secondary mt-1.5",children:"Was the conversational experience high quality?"})]}),b.jsx("div",{className:"flex justify-center",children:b.jsx("div",{className:"w-px h-5 bg-blue/30"})}),b.jsx("div",{className:"space-y-3 pt-0",children:CB.map(n=>b.jsx(mf,{metric:n},n.id))})]})]}),b.jsxs("div",{className:"mt-10",children:[b.jsxs("div",{className:"mb-6",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary mb-2",children:"Aggregate Metrics"}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:"EVA aggregates per-trial metric scores into four aggregate metrics, each capturing a different aspect of success and reliability."})]}),b.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-6",children:[b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass@1"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, the proportion of trials where ",b.jsx("em",{children:"all"})," metric thresholds are met (",b.jsx("em",{children:"c"}),"/",b.jsx("em",{children:"n"}),"), where ",b.jsx("em",{children:"c"})," is the number of passing trials and ",b.jsx("em",{children:"n"})," is the total number of trials (n=3), then averaged across all scenarios."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass@k (k=3)"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, 1 if at least one of the k (3) trials meets pass criteria for all metrics, otherwise 0, then averaged across all scenarios. Measures whether the system ",b.jsx("em",{children:"can"})," succeed."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass^k (k=3)"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, we estimate the theoretical probability of passing k = 3 consecutive independent trials as (",b.jsx("em",{children:"c"}),"/",b.jsx("em",{children:"n"}),")",b.jsx("sup",{children:"k"})," where c is the number of passing trials out of n = 3 total. We then average this value across all scenarios to measure consistency and reliability."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"Mean"}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:"For each sample, we average sub-metric scores per dimension, then average across all 150 samples. Raw scores avoid binarizing near-boundary differences into a full pass/fail gap, capturing more nuanced system comparisons."})]})]})]}),b.jsxs("div",{className:"mt-10",children:[b.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center justify-between rounded-xl border border-border-default bg-bg-secondary px-6 py-5 hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-base font-semibold text-text-secondary text-left",children:"Diagnostic & Validation Metrics"}),b.jsxs("div",{className:"text-sm text-text-muted mt-1 text-left",children:[sT.length+oT.length," additional metrics for diagnostics and quality control"]})]}),b.jsx(ai,{className:`w-5 h-5 text-text-muted transition-transform ${e?"rotate-180":""}`})]}),e&&b.jsxs("div",{className:"mt-4 grid grid-cols-1 lg:grid-cols-2 gap-8 opacity-80",children:[b.jsxs("div",{children:[b.jsxs("div",{className:"px-1 mb-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-muted uppercase tracking-wider mb-1",children:"Diagnostic Metrics"}),b.jsxs("p",{className:"text-sm text-text-muted leading-relaxed",children:["Diagnostic metrics for understanding ",b.jsx("em",{children:"why"})," the core scores look the way they do. These help identify which pipeline component (STT, LLM, TTS) is contributing to failures but are not part of the EVA-A or EVA-X scores."]})]}),b.jsx("div",{className:"space-y-3",children:sT.map(n=>b.jsx(mf,{metric:n},n.id))})]}),b.jsxs("div",{children:[b.jsxs("div",{className:"px-1 mb-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-muted uppercase tracking-wider mb-1",children:"Validation Metrics"}),b.jsx("p",{className:"text-sm text-text-muted leading-relaxed",children:"Validators run before evaluation. Any conversation that fails validation is regenerated so that core metrics are only computed on conversations with a well-behaved user simulator and properly completed interactions."})]}),b.jsx("div",{className:"space-y-3",children:oT.map(n=>b.jsx(mf,{metric:n},n.id))})]})]})]}),b.jsxs("div",{className:"flex flex-wrap justify-center gap-6 mt-8",children:[b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-cyan/20 border border-cyan/40"}),"Deterministic (Code)"]}),b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-purple/20 border border-purple/40"}),"LLM Judge (Text)"]}),b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-amber/20 border border-amber/40"}),"Audio LLM Judge (LALM)"]})]})]})}function Wk(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(t=0;t{var{children:n,width:r,height:s,viewBox:o,className:u,style:f,title:d,desc:h}=e,m=UB(e,BB),p=o||{width:r,height:s,x:0,y:0},v=et("recharts-surface",u);return A.createElement("svg",xv({},er(m),{className:v,width:r,height:s,style:f,viewBox:"".concat(p.x," ").concat(p.y," ").concat(p.width," ").concat(p.height),ref:t}),A.createElement("title",null,d),A.createElement("desc",null,h),n)}),qB=["children","className"];function wv(){return wv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:n,className:r}=e,s=$B(e,qB),o=et("recharts-layer",r);return A.createElement("g",wv({className:o},er(s),{ref:t}),n)}),G0=iM(),HB=A.createContext(null);function Ye(e){return function(){return e}}const eN=Math.cos,Qf=Math.sin,pr=Math.sqrt,Jf=Math.PI,Yd=2*Jf,_v=Math.PI,Sv=2*_v,Ra=1e-6,KB=Sv-Ra;function tN(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return tN;const n=10**t;return function(r){this._+=r[0];for(let s=1,o=r.length;sRa)if(!(Math.abs(p*d-h*m)>Ra)||!o)this._append`L${this._x1=t},${this._y1=n}`;else{let x=r-u,w=s-f,_=d*d+h*h,S=x*x+w*w,O=Math.sqrt(_),M=Math.sqrt(v),j=o*Math.tan((_v-Math.acos((_+v-S)/(2*O*M)))/2),k=j/M,N=j/O;Math.abs(k-1)>Ra&&this._append`L${t+k*m},${n+k*p}`,this._append`A${o},${o},0,0,${+(p*x>m*w)},${this._x1=t+N*d},${this._y1=n+N*h}`}}arc(t,n,r,s,o,u){if(t=+t,n=+n,r=+r,u=!!u,r<0)throw new Error(`negative radius: ${r}`);let f=r*Math.cos(s),d=r*Math.sin(s),h=t+f,m=n+d,p=1^u,v=u?s-o:o-s;this._x1===null?this._append`M${h},${m}`:(Math.abs(this._x1-h)>Ra||Math.abs(this._y1-m)>Ra)&&this._append`L${h},${m}`,r&&(v<0&&(v=v%Sv+Sv),v>KB?this._append`A${r},${r},0,1,${p},${t-f},${n-d}A${r},${r},0,1,${p},${this._x1=h},${this._y1=m}`:v>Ra&&this._append`A${r},${r},0,${+(v>=_v)},${p},${this._x1=t+r*Math.cos(o)},${this._y1=n+r*Math.sin(o)}`)}rect(t,n,r,s){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+s}h${-r}Z`}toString(){return this._}}function W0(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new YB(t)}function Z0(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function nN(e){this._context=e}nN.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);break}}};function Gd(e){return new nN(e)}function rN(e){return e[0]}function iN(e){return e[1]}function aN(e,t){var n=Ye(!0),r=null,s=Gd,o=null,u=W0(f);e=typeof e=="function"?e:e===void 0?rN:Ye(e),t=typeof t=="function"?t:t===void 0?iN:Ye(t);function f(d){var h,m=(d=Z0(d)).length,p,v=!1,x;for(r==null&&(o=s(x=u())),h=0;h<=m;++h)!(h=x;--w)f.point(j[w],k[w]);f.lineEnd(),f.areaEnd()}O&&(j[v]=+e(S,v,p),k[v]=+t(S,v,p),f.point(r?+r(S,v,p):j[v],n?+n(S,v,p):k[v]))}if(M)return f=null,M+""||null}function m(){return aN().defined(s).curve(u).context(o)}return h.x=function(p){return arguments.length?(e=typeof p=="function"?p:Ye(+p),r=null,h):e},h.x0=function(p){return arguments.length?(e=typeof p=="function"?p:Ye(+p),h):e},h.x1=function(p){return arguments.length?(r=p==null?null:typeof p=="function"?p:Ye(+p),h):r},h.y=function(p){return arguments.length?(t=typeof p=="function"?p:Ye(+p),n=null,h):t},h.y0=function(p){return arguments.length?(t=typeof p=="function"?p:Ye(+p),h):t},h.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:Ye(+p),h):n},h.lineX0=h.lineY0=function(){return m().x(e).y(t)},h.lineY1=function(){return m().x(e).y(n)},h.lineX1=function(){return m().x(r).y(t)},h.defined=function(p){return arguments.length?(s=typeof p=="function"?p:Ye(!!p),h):s},h.curve=function(p){return arguments.length?(u=p,o!=null&&(f=u(o)),h):u},h.context=function(p){return arguments.length?(p==null?o=f=null:f=u(o=p),h):o},h}class sN{constructor(t,n){this._context=t,this._x=n}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(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function GB(e){return new sN(e,!0)}function WB(e){return new sN(e,!1)}const Q0={draw(e,t){const n=pr(t/Jf);e.moveTo(n,0),e.arc(0,0,n,0,Yd)}},ZB={draw(e,t){const n=pr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},oN=pr(1/3),QB=oN*2,JB={draw(e,t){const n=pr(t/QB),r=n*oN;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},e9={draw(e,t){const n=pr(t),r=-n/2;e.rect(r,r,n,n)}},t9=.8908130915292852,lN=Qf(Jf/10)/Qf(7*Jf/10),n9=Qf(Yd/10)*lN,r9=-eN(Yd/10)*lN,i9={draw(e,t){const n=pr(t*t9),r=n9*n,s=r9*n;e.moveTo(0,-n),e.lineTo(r,s);for(let o=1;o<5;++o){const u=Yd*o/5,f=eN(u),d=Qf(u);e.lineTo(d*n,-f*n),e.lineTo(f*r-d*s,d*r+f*s)}e.closePath()}},yg=pr(3),a9={draw(e,t){const n=-pr(t/(yg*3));e.moveTo(0,n*2),e.lineTo(-yg*n,-n),e.lineTo(yg*n,-n),e.closePath()}},Kn=-.5,Xn=pr(3)/2,Av=1/pr(12),s9=(Av/2+1)*3,o9={draw(e,t){const n=pr(t/s9),r=n/2,s=n*Av,o=r,u=n*Av+n,f=-o,d=u;e.moveTo(r,s),e.lineTo(o,u),e.lineTo(f,d),e.lineTo(Kn*r-Xn*s,Xn*r+Kn*s),e.lineTo(Kn*o-Xn*u,Xn*o+Kn*u),e.lineTo(Kn*f-Xn*d,Xn*f+Kn*d),e.lineTo(Kn*r+Xn*s,Kn*s-Xn*r),e.lineTo(Kn*o+Xn*u,Kn*u-Xn*o),e.lineTo(Kn*f+Xn*d,Kn*d-Xn*f),e.closePath()}};function l9(e,t){let n=null,r=W0(s);e=typeof e=="function"?e:Ye(e||Q0),t=typeof t=="function"?t:Ye(t===void 0?64:+t);function s(){let o;if(n||(n=o=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),o)return n=null,o+""||null}return s.type=function(o){return arguments.length?(e=typeof o=="function"?o:Ye(o),s):e},s.size=function(o){return arguments.length?(t=typeof o=="function"?o:Ye(+o),s):t},s.context=function(o){return arguments.length?(n=o??null,s):n},s}function ed(){}function td(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 uN(e){this._context=e}uN.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:td(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function u9(e){return new uN(e)}function cN(e){this._context=e}cN.prototype={areaStart:ed,areaEnd:ed,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);break}}},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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function c9(e){return new cN(e)}function fN(e){this._context=e}fN.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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function f9(e){return new fN(e)}function dN(e){this._context=e}dN.prototype={areaStart:ed,areaEnd:ed,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 d9(e){return new dN(e)}function lT(e){return e<0?-1:1}function uT(e,t,n){var r=e._x1-e._x0,s=t-e._x1,o=(e._y1-e._y0)/(r||s<0&&-0),u=(n-e._y1)/(s||r<0&&-0),f=(o*s+u*r)/(r+s);return(lT(o)+lT(u))*Math.min(Math.abs(o),Math.abs(u),.5*Math.abs(f))||0}function cT(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function vg(e,t,n){var r=e._x0,s=e._y0,o=e._x1,u=e._y1,f=(o-r)/3;e._context.bezierCurveTo(r+f,s+f*t,o-f,u-f*n,o,u)}function nd(e){this._context=e}nd.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:vg(this,this._t0,cT(this,this._t0));break}(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,vg(this,cT(this,n=uT(this,e,t)),n);break;default:vg(this,this._t0,n=uT(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function hN(e){this._context=new mN(e)}(hN.prototype=Object.create(nd.prototype)).point=function(e,t){nd.prototype.point.call(this,t,e)};function mN(e){this._context=e}mN.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,s,o){this._context.bezierCurveTo(t,e,r,n,o,s)}};function h9(e){return new nd(e)}function m9(e){return new hN(e)}function pN(e){this._context=e}pN.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=fT(e),s=fT(t),o=0,u=1;u=0;--t)s[t]=(u[t]-s[t+1])/o[t];for(o[n-1]=(e[n]+s[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)}break}}this._x=e,this._y=t}};function g9(e){return new Wd(e,.5)}function y9(e){return new Wd(e,0)}function v9(e){return new Wd(e,1)}function Ya(e,t){if((u=e.length)>1)for(var n=1,r,s,o=e[t[0]],u,f=o.length;n=0;)n[t]=t;return n}function b9(e,t){return e[t]}function x9(e){const t=[];return t.key=e,t}function w9(){var e=Ye([]),t=Tv,n=Ya,r=b9;function s(o){var u=Array.from(e.apply(this,arguments),x9),f,d=u.length,h=-1,m;for(const p of o)for(f=0,++h;f0){for(var n,r,s=0,o=e[0].length,u;s0){for(var n=0,r=e[t[0]],s,o=r.length;n0)||!((o=(s=e[t[0]]).length)>0))){for(var n=0,r=1,s,o,u;r1&&arguments[1]!==void 0?arguments[1]:M9,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function ut(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var f=n[u-1];return typeof f=="string"?s+f+o:f!==void 0?s+Ji(f)+o:s+o},"")}var Wn=e=>e===0?0:e>0?1:-1,oi=e=>typeof e=="number"&&e!=+e,Ga=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,ye=e=>(typeof e=="number"||e instanceof Number)&&!oi(e),Nr=e=>ye(e)||typeof e=="string",k9=0,au=e=>{var t=++k9;return"".concat(e||"").concat(t)},ra=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ye(t)&&typeof t!="string")return r;var o;if(Ga(t)){if(n==null)return r;var u=t.indexOf("%");o=n*parseFloat(t.slice(0,u))/100}else o=+t;return oi(o)&&(o=r),s&&n!=null&&o>n&&(o=n),o},yN=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):co(r,t))===n)}var N9=e=>{for(var t=e.length,n=0,r=0,s=0,o=0,u=1/0,f=-1/0,d=0,h=0,m=0;me===null||typeof e>"u",Ou=e=>dt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function mn(e){return e!=null}function _o(){}var C9=["type","size","sizeType"];function Ov(){return Ov=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(Ou(e));return bN[t]||Q0},U9=(e,t,n)=>{if(t==="area")return e;switch(n){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var r=18*I9;return 1.25*e*e*(Math.tan(r)-Math.tan(r*2)*Math.tan(r)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},V9=(e,t)=>{bN["symbol".concat(Ou(e))]=t},nb=e=>{var{type:t="circle",size:n=64,sizeType:r="area"}=e,s=L9(e,C9),o=xT(xT({},s),{},{type:t,size:n,sizeType:r}),u="circle";typeof t=="string"&&(u=t);var f=()=>{var v=B9(u),x=l9().type(v).size(U9(n,r,u)),w=x();if(w!==null)return w},{className:d,cx:h,cy:m}=o,p=er(o);return ye(h)&&ye(m)&&ye(n)?A.createElement("path",Ov({},p,{className:et("recharts-symbols",d),transform:"translate(".concat(h,", ").concat(m,")"),d:f()})):null};nb.registerSymbol=V9;var xN=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,q9=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(A.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(s=>{X0(s)&&typeof n[s]=="function"&&(r[s]=(o=>n[s](n,o)))}),r},$9=(e,t,n)=>r=>(e(t,n,r),null),wN=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(s=>{var o=e[s];X0(s)&&typeof o=="function"&&(r||(r={}),r[s]=$9(o,t,n))}),r},F9=e=>Array.isArray(e)&&e.length>0;function wT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function H9(e){for(var t=1;t(u[f]===void 0&&r[f]!==void 0&&(u[f]=r[f]),u),n);return o}var Og={},Eg={},_T;function G9(){return _T||(_T=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){const s=new Map;for(let o=0;o=0}e.isLength=t})(Cg)),Cg}var OT;function SN(){return OT||(OT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Z9();function n(r){return r!=null&&typeof r!="function"&&t.isLength(r.length)}e.isArrayLike=n})(Ng)),Ng}var Dg={},ET;function Q9(){return ET||(ET=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="object"&&n!==null}e.isObjectLike=t})(Dg)),Dg}var jT;function J9(){return jT||(jT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=SN(),n=Q9();function r(s){return n.isObjectLike(s)&&t.isArrayLike(s)}e.isArrayLikeObject=r})(kg)),kg}var Pg={},Rg={},MT;function e7(){return MT||(MT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=tb();function n(r){return function(s){return t.get(s,r)}}e.property=n})(Rg)),Rg}var Lg={},zg={},Ig={},Bg={},kT;function AN(){return kT||(kT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n!==null&&(typeof n=="object"||typeof n=="function")}e.isObject=t})(Bg)),Bg}var Ug={},NT;function TN(){return NT||(NT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null||typeof n!="object"&&typeof n!="function"}e.isPrimitive=t})(Ug)),Ug}var Vg={},CT;function ON(){return CT||(CT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){return n===r||Number.isNaN(n)&&Number.isNaN(r)}e.isEqualsSameValueZero=t})(Vg)),Vg}var DT;function t7(){return DT||(DT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=AN(),n=TN(),r=ON();function s(m,p,v){return typeof v!="function"?s(m,p,()=>{}):o(m,p,function x(w,_,S,O,M,j){const k=v(w,_,S,O,M,j);return k!==void 0?!!k:o(w,_,x,j)},new Map)}function o(m,p,v,x){if(p===m)return!0;switch(typeof p){case"object":return u(m,p,v,x);case"function":return Object.keys(p).length>0?o(m,{...p},v,x):r.isEqualsSameValueZero(m,p);default:return t.isObject(m)?typeof p=="string"?p==="":!0:r.isEqualsSameValueZero(m,p)}}function u(m,p,v,x){if(p==null)return!0;if(Array.isArray(p))return d(m,p,v,x);if(p instanceof Map)return f(m,p,v,x);if(p instanceof Set)return h(m,p,v,x);const w=Object.keys(p);if(m==null||n.isPrimitive(m))return w.length===0;if(w.length===0)return!0;if(x?.has(p))return x.get(p)===m;x?.set(p,m);try{for(let _=0;_{})}e.isMatch=n})(zg)),zg}var qg={},$g={},Fg={},RT;function n7(){return RT||(RT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Object.getOwnPropertySymbols(n).filter(r=>Object.prototype.propertyIsEnumerable.call(n,r))}e.getSymbols=t})(Fg)),Fg}var Hg={},LT;function rb(){return LT||(LT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null?n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(n)}e.getTag=t})(Hg)),Hg}var Kg={},zT;function jN(){return zT||(zT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",n="[object String]",r="[object Number]",s="[object Boolean]",o="[object Arguments]",u="[object Symbol]",f="[object Date]",d="[object Map]",h="[object Set]",m="[object Array]",p="[object Function]",v="[object ArrayBuffer]",x="[object Object]",w="[object Error]",_="[object DataView]",S="[object Uint8Array]",O="[object Uint8ClampedArray]",M="[object Uint16Array]",j="[object Uint32Array]",k="[object BigUint64Array]",N="[object Int8Array]",C="[object Int16Array]",L="[object Int32Array]",I="[object BigInt64Array]",Y="[object Float32Array]",te="[object Float64Array]";e.argumentsTag=o,e.arrayBufferTag=v,e.arrayTag=m,e.bigInt64ArrayTag=I,e.bigUint64ArrayTag=k,e.booleanTag=s,e.dataViewTag=_,e.dateTag=f,e.errorTag=w,e.float32ArrayTag=Y,e.float64ArrayTag=te,e.functionTag=p,e.int16ArrayTag=C,e.int32ArrayTag=L,e.int8ArrayTag=N,e.mapTag=d,e.numberTag=r,e.objectTag=x,e.regexpTag=t,e.setTag=h,e.stringTag=n,e.symbolTag=u,e.uint16ArrayTag=M,e.uint32ArrayTag=j,e.uint8ArrayTag=S,e.uint8ClampedArrayTag=O})(Kg)),Kg}var Xg={},IT;function r7(){return IT||(IT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}e.isTypedArray=t})(Xg)),Xg}var BT;function MN(){return BT||(BT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=n7(),n=rb(),r=jN(),s=TN(),o=r7();function u(m,p){return f(m,void 0,m,new Map,p)}function f(m,p,v,x=new Map,w=void 0){const _=w?.(m,p,v,x);if(_!==void 0)return _;if(s.isPrimitive(m))return m;if(x.has(m))return x.get(m);if(Array.isArray(m)){const S=new Array(m.length);x.set(m,S);for(let O=0;Ot.isMatch(o,s)}e.matches=r})(Lg)),Lg}var Yg={},Gg={},Wg={},qT;function s7(){return qT||(qT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=MN(),n=rb(),r=jN();function s(o,u){return t.cloneDeepWith(o,(f,d,h,m)=>{const p=u?.(f,d,h,m);if(p!==void 0)return p;if(typeof o=="object"){if(n.getTag(o)===r.objectTag&&typeof o.constructor!="function"){const v={};return m.set(o,v),t.copyProperties(v,o,h,m),v}switch(Object.prototype.toString.call(o)){case r.numberTag:case r.stringTag:case r.booleanTag:{const v=new o.constructor(o?.valueOf());return t.copyProperties(v,o),v}case r.argumentsTag:{const v={};return t.copyProperties(v,o),v.length=o.length,v[Symbol.iterator]=o[Symbol.iterator],v}default:return}}})}e.cloneDeepWith=s})(Wg)),Wg}var $T;function o7(){return $T||($T=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=s7();function n(r){return t.cloneDeepWith(r)}e.cloneDeep=n})(Gg)),Gg}var Zg={},Qg={},FT;function kN(){return FT||(FT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function n(r,s=Number.MAX_SAFE_INTEGER){switch(typeof r){case"number":return Number.isInteger(r)&&r>=0&&r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?h:f;return iy.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:m,iy}var JT;function y7(){return JT||(JT=1,ry.exports=g7()),ry.exports}var e2;function v7(){if(e2)return ny;e2=1;var e=yo(),t=y7();function n(h,m){return h===m&&(h!==0||1/h===1/m)||h!==h&&m!==m}var r=typeof Object.is=="function"?Object.is:n,s=t.useSyncExternalStore,o=e.useRef,u=e.useEffect,f=e.useMemo,d=e.useDebugValue;return ny.useSyncExternalStoreWithSelector=function(h,m,p,v,x){var w=o(null);if(w.current===null){var _={hasValue:!1,value:null};w.current=_}else _=w.current;w=f(function(){function O(C){if(!M){if(M=!0,j=C,C=v(C),x!==void 0&&_.hasValue){var L=_.value;if(x(L,C))return k=L}return k=C}if(L=k,r(j,C))return L;var I=v(C);return x!==void 0&&x(L,I)?(j=C,L):(j=C,k=I)}var M=!1,j,k,N=p===void 0?null:p;return[function(){return O(m())},N===null?void 0:function(){return O(N())}]},[m,p,v,x]);var S=s(h,w[0],w[1]);return u(function(){_.hasValue=!0,_.value=S},[S]),d(S),S},ny}var t2;function b7(){return t2||(t2=1,ty.exports=v7()),ty.exports}var x7=b7(),ib=A.createContext(null),w7=e=>e,it=()=>{var e=A.useContext(ib);return e?e.store.dispatch:w7},Bf=()=>{},_7=()=>Bf,S7=(e,t)=>e===t;function ve(e){var t=A.useContext(ib),n=A.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Bf,[t,e]);return x7.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:_7,t?t.store.getState:Bf,t?t.store.getState:Bf,n,S7)}function A7(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function T7(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function O7(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var n2=e=>Array.isArray(e)?e:[e];function E7(e){const t=Array.isArray(e[0])?e[0]:e;return O7(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function j7(e,t){const n=[],{length:r}=e;for(let s=0;s{n=gf(),u.resetResultsCount()},u.resultsCount=()=>o,u.resetResultsCount=()=>{o=0},u}function C7(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...s)=>{let o=0,u=0,f,d={},h=s.pop();typeof h=="object"&&(d=h,h=s.pop()),A7(h,`createSelector expects an output function after the inputs, but received: [${typeof h}]`);const m={...n,...d},{memoize:p,memoizeOptions:v=[],argsMemoize:x=NN,argsMemoizeOptions:w=[]}=m,_=n2(v),S=n2(w),O=E7(s),M=p(function(){return o++,h.apply(null,arguments)},..._),j=x(function(){u++;const N=j7(O,arguments);return f=M.apply(null,N),f},...S);return Object.assign(j,{resultFunc:h,memoizedResultFunc:M,dependencies:O,dependencyRecomputations:()=>u,resetDependencyRecomputations:()=>{u=0},lastResult:()=>f,recomputations:()=>o,resetRecomputations:()=>{o=0},memoize:p,argsMemoize:x})};return Object.assign(r,{withTypes:()=>r}),r}var $=C7(NN),D7=Object.assign((e,t=$)=>{T7(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),r=n.map(o=>e[o]);return t(r,(...o)=>o.reduce((u,f,d)=>(u[n[d]]=f,u),{}))},{withTypes:()=>D7}),ay={},sy={},oy={},i2;function P7(){return i2||(i2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"?1:r===null?2:r===void 0?3:r!==r?4:0}const n=(r,s,o)=>{if(r!==s){const u=t(r),f=t(s);if(u===f&&u===0){if(rs)return o==="desc"?-1:1}return o==="desc"?f-u:u-f}return 0};e.compareValues=n})(oy)),oy}var ly={},uy={},a2;function CN(){return a2||(a2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"||n instanceof Symbol}e.isSymbol=t})(uy)),uy}var s2;function R7(){return s2||(s2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=CN(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function s(o,u){return Array.isArray(o)?!1:typeof o=="number"||typeof o=="boolean"||o==null||t.isSymbol(o)?!0:typeof o=="string"&&(r.test(o)||!n.test(o))||u!=null&&Object.hasOwn(u,o)}e.isKey=s})(ly)),ly}var o2;function L7(){return o2||(o2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=P7(),n=R7(),r=eb();function s(o,u,f,d){if(o==null)return[];f=d?void 0:f,Array.isArray(o)||(o=Object.values(o)),Array.isArray(u)||(u=u==null?[null]:[u]),u.length===0&&(u=[null]),Array.isArray(f)||(f=f==null?[]:[f]),f=f.map(x=>String(x));const h=(x,w)=>{let _=x;for(let S=0;Sw==null||x==null?w:typeof x=="object"&&"key"in x?Object.hasOwn(w,x.key)?w[x.key]:h(w,x.path):typeof x=="function"?x(w):Array.isArray(x)?h(w,x):typeof w=="object"?w[x]:w,p=u.map(x=>(Array.isArray(x)&&x.length===1&&(x=x[0]),x==null||typeof x=="function"||Array.isArray(x)||n.isKey(x)?x:{key:x,path:r.toPath(x)}));return o.map(x=>({original:x,criteria:p.map(w=>m(w,x))})).slice().sort((x,w)=>{for(let _=0;_x.original)}e.orderBy=s})(sy)),sy}var cy={},l2;function z7(){return l2||(l2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r=1){const s=[],o=Math.floor(r),u=(f,d)=>{for(let h=0;h1&&r.isIterateeCall(o,u[0],u[1])?u=[]:f>2&&r.isIterateeCall(u[0],u[1],u[2])&&(u=[u[0]]),t.orderBy(o,n.flatten(u),["asc"])}e.sortBy=s})(ay)),ay}var dy,f2;function B7(){return f2||(f2=1,dy=I7().sortBy),dy}var U7=B7();const Zd=ia(U7);var PN=e=>e.legend.settings,V7=e=>e.legend.size,q7=e=>e.legend.payload;$([q7,PN],(e,t)=>{var{itemSorter:n}=t,r=e.flat(1);return n?Zd(r,n):r});var yf=1;function $7(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,n]=A.useState({height:0,left:0,top:0,width:0}),r=A.useCallback(s=>{if(s!=null){var o=s.getBoundingClientRect(),u={height:o.height,left:o.left,top:o.top,width:o.width};(Math.abs(u.height-t.height)>yf||Math.abs(u.left-t.left)>yf||Math.abs(u.top-t.top)>yf||Math.abs(u.width-t.width)>yf)&&n({height:u.height,left:u.left,top:u.top,width:u.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,r]}function $t(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 F7=typeof Symbol=="function"&&Symbol.observable||"@@observable",d2=F7,hy=()=>Math.random().toString(36).substring(7).split("").join("."),H7={INIT:`@@redux/INIT${hy()}`,REPLACE:`@@redux/REPLACE${hy()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${hy()}`},rd=H7;function ab(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function RN(e,t,n){if(typeof e!="function")throw new Error($t(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error($t(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error($t(1));return n(RN)(e,t)}let r=e,s=t,o=new Map,u=o,f=0,d=!1;function h(){u===o&&(u=new Map,o.forEach((S,O)=>{u.set(O,S)}))}function m(){if(d)throw new Error($t(3));return s}function p(S){if(typeof S!="function")throw new Error($t(4));if(d)throw new Error($t(5));let O=!0;h();const M=f++;return u.set(M,S),function(){if(O){if(d)throw new Error($t(6));O=!1,h(),u.delete(M),o=null}}}function v(S){if(!ab(S))throw new Error($t(7));if(typeof S.type>"u")throw new Error($t(8));if(typeof S.type!="string")throw new Error($t(17));if(d)throw new Error($t(9));try{d=!0,s=r(s,S)}finally{d=!1}return(o=u).forEach(M=>{M()}),S}function x(S){if(typeof S!="function")throw new Error($t(10));r=S,v({type:rd.REPLACE})}function w(){const S=p;return{subscribe(O){if(typeof O!="object"||O===null)throw new Error($t(11));function M(){const k=O;k.next&&k.next(m())}return M(),{unsubscribe:S(M)}},[d2](){return this}}}return v({type:rd.INIT}),{dispatch:v,subscribe:p,getState:m,replaceReducer:x,[d2]:w}}function K7(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:rd.INIT})>"u")throw new Error($t(12));if(typeof n(void 0,{type:rd.PROBE_UNKNOWN_ACTION()})>"u")throw new Error($t(13))})}function LN(e){const t=Object.keys(e),n={};for(let o=0;o"u")throw f&&f.type,new Error($t(14));h[p]=w,d=d||w!==x}return d=d||r.length!==Object.keys(u).length,d?h:u}}function id(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function X7(...e){return t=>(n,r)=>{const s=t(n,r);let o=()=>{throw new Error($t(15))};const u={getState:s.getState,dispatch:(d,...h)=>o(d,...h)},f=e.map(d=>d(u));return o=id(...f)(s.dispatch),{...s,dispatch:o}}}function zN(e){return ab(e)&&"type"in e&&typeof e.type=="string"}var IN=Symbol.for("immer-nothing"),h2=Symbol.for("immer-draftable"),an=Symbol.for("immer-state");function lr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Cn=Object,fo=Cn.getPrototypeOf,ad="constructor",Qd="prototype",Ev="configurable",sd="enumerable",Uf="writable",su="value",li=e=>!!e&&!!e[an];function mr(e){return e?BN(e)||eh(e)||!!e[h2]||!!e[ad]?.[h2]||th(e)||nh(e):!1}var Y7=Cn[Qd][ad].toString(),m2=new WeakMap;function BN(e){if(!e||!sb(e))return!1;const t=fo(e);if(t===null||t===Cn[Qd])return!0;const n=Cn.hasOwnProperty.call(t,ad)&&t[ad];if(n===Object)return!0;if(!Ws(n))return!1;let r=m2.get(n);return r===void 0&&(r=Function.toString.call(n),m2.set(n,r)),r===Y7}function Jd(e,t,n=!0){Eu(e)===0?(n?Reflect.ownKeys(e):Cn.keys(e)).forEach(s=>{t(s,e[s],e)}):e.forEach((r,s)=>t(s,r,e))}function Eu(e){const t=e[an];return t?t.type_:eh(e)?1:th(e)?2:nh(e)?3:0}var p2=(e,t,n=Eu(e))=>n===2?e.has(t):Cn[Qd].hasOwnProperty.call(e,t),jv=(e,t,n=Eu(e))=>n===2?e.get(t):e[t],od=(e,t,n,r=Eu(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function G7(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var eh=Array.isArray,th=e=>e instanceof Map,nh=e=>e instanceof Set,sb=e=>typeof e=="object",Ws=e=>typeof e=="function",my=e=>typeof e=="boolean";function W7(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Jr=e=>e.copy_||e.base_,ob=e=>e.modified_?e.copy_:e.base_;function Mv(e,t){if(th(e))return new Map(e);if(nh(e))return new Set(e);if(eh(e))return Array[Qd].slice.call(e);const n=BN(e);if(t===!0||t==="class_only"&&!n){const r=Cn.getOwnPropertyDescriptors(e);delete r[an];let s=Reflect.ownKeys(r);for(let o=0;o1&&Cn.defineProperties(e,{set:vf,add:vf,clear:vf,delete:vf}),Cn.freeze(e),t&&Jd(e,(n,r)=>{lb(r,!0)},!1)),e}function Z7(){lr(2)}var vf={[su]:Z7};function rh(e){return e===null||!sb(e)?!0:Cn.isFrozen(e)}var ld="MapSet",kv="Patches",g2="ArrayMethods",UN={};function Wa(e){const t=UN[e];return t||lr(0,e),t}var y2=e=>!!UN[e],ou,VN=()=>ou,Q7=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:y2(ld)?Wa(ld):void 0,arrayMethodsPlugin_:y2(g2)?Wa(g2):void 0});function v2(e,t){t&&(e.patchPlugin_=Wa(kv),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Nv(e){Cv(e),e.drafts_.forEach(J7),e.drafts_=null}function Cv(e){e===ou&&(ou=e.parent_)}var b2=e=>ou=Q7(ou,e);function J7(e){const t=e[an];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function x2(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[an].modified_&&(Nv(t),lr(4)),mr(e)&&(e=w2(t,e));const{patchPlugin_:s}=t;s&&s.generateReplacementPatches_(n[an].base_,e,t)}else e=w2(t,n);return eU(t,e,!0),Nv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==IN?e:void 0}function w2(e,t){if(rh(t))return t;const n=t[an];if(!n)return ud(t,e.handledSet_,e);if(!ih(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);FN(n,e)}return n.copy_}function eU(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&lb(t,n)}function qN(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var ih=(e,t)=>e.scope_===t,tU=[];function $N(e,t,n,r){const s=Jr(e),o=e.type_;if(r!==void 0&&jv(s,r,o)===t){od(s,r,n,o);return}if(!e.draftLocations_){const f=e.draftLocations_=new Map;Jd(s,(d,h)=>{if(li(h)){const m=f.get(h)||[];m.push(d),f.set(h,m)}})}const u=e.draftLocations_.get(t)??tU;for(const f of u)od(s,f,n,o)}function nU(e,t,n){e.callbacks_.push(function(s){const o=t;if(!o||!ih(o,s))return;s.mapSetPlugin_?.fixSetContents(o);const u=ob(o);$N(e,o.draft_??o,u,n),FN(o,s)})}function FN(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:r}=t;if(r){const s=r.getPath(e);s&&r.generatePatches_(e,s,t)}qN(e)}}function rU(e,t,n){const{scope_:r}=e;if(li(n)){const s=n[an];ih(s,r)&&s.callbacks_.push(function(){Vf(e);const u=ob(s);$N(e,n,u,t)})}else mr(n)&&e.callbacks_.push(function(){const o=Jr(e);e.type_===3?o.has(n)&&ud(n,r.handledSet_,r):jv(o,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ud(jv(e.copy_,t,e.type_),r.handledSet_,r)})}function ud(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||li(e)||t.has(e)||!mr(e)||rh(e)||(t.add(e),Jd(e,(r,s)=>{if(li(s)){const o=s[an];if(ih(o,n)){const u=ob(o);od(e,r,u,e.type_),qN(o)}}else mr(s)&&ud(s,t,n)})),e}function iU(e,t){const n=eh(e),r={type_:n?1:0,scope_:t?t.scope_:VN(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let s=r,o=cd;n&&(s=[r],o=lu);const{revoke:u,proxy:f}=Proxy.revocable(s,o);return r.draft_=f,r.revoke_=u,[f,r]}var cd={get(e,t){if(t===an)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const s=Jr(e);if(!p2(s,t,e.type_))return aU(e,s,t);const o=s[t];if(e.finalized_||!mr(o)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&W7(t))return o;if(o===py(e.base_,t)){Vf(e);const u=e.type_===1?+t:t,f=Pv(e.scope_,o,e,u);return e.copy_[u]=f}return o},has(e,t){return t in Jr(e)},ownKeys(e){return Reflect.ownKeys(Jr(e))},set(e,t,n){const r=HN(Jr(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const s=py(Jr(e),t),o=s?.[an];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(G7(n,s)&&(n!==void 0||p2(e.base_,t,e.type_)))return!0;Vf(e),Dv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),rU(e,t,n)),!0},deleteProperty(e,t){return Vf(e),py(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Dv(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Jr(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Uf]:!0,[Ev]:e.type_!==1||t!=="length",[sd]:r[sd],[su]:n[t]}},defineProperty(){lr(11)},getPrototypeOf(e){return fo(e.base_)},setPrototypeOf(){lr(12)}},lu={};for(let e in cd){let t=cd[e];lu[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}lu.deleteProperty=function(e,t){return lu.set.call(this,e,t,void 0)};lu.set=function(e,t,n){return cd.set.call(this,e[0],t,n,e[0])};function py(e,t){const n=e[an];return(n?Jr(n):e)[t]}function aU(e,t,n){const r=HN(t,n);return r?su in r?r[su]:r.get?.call(e.draft_):void 0}function HN(e,t){if(!(t in e))return;let n=fo(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=fo(n)}}function Dv(e){e.modified_||(e.modified_=!0,e.parent_&&Dv(e.parent_))}function Vf(e){e.copy_||(e.assigned_=new Map,e.copy_=Mv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var sU=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,s)=>{if(Ws(n)&&!Ws(r)){const u=r;r=n;const f=this;return function(h=u,...m){return f.produce(h,p=>r.call(this,p,...m))}}Ws(r)||lr(6),s!==void 0&&!Ws(s)&&lr(7);let o;if(mr(n)){const u=b2(this),f=Pv(u,n,void 0);let d=!0;try{o=r(f),d=!1}finally{d?Nv(u):Cv(u)}return v2(u,s),x2(o,u)}else if(!n||!sb(n)){if(o=r(n),o===void 0&&(o=n),o===IN&&(o=void 0),this.autoFreeze_&&lb(o,!0),s){const u=[],f=[];Wa(kv).generateReplacementPatches_(n,o,{patches_:u,inversePatches_:f}),s(u,f)}return o}else lr(1,n)},this.produceWithPatches=(n,r)=>{if(Ws(n))return(f,...d)=>this.produceWithPatches(f,h=>n(h,...d));let s,o;return[this.produce(n,r,(f,d)=>{s=f,o=d}),s,o]},my(t?.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),my(t?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),my(t?.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){mr(t)||lr(8),li(t)&&(t=Zn(t));const n=b2(this),r=Pv(n,t,void 0);return r[an].isManual_=!0,Cv(n),r}finishDraft(t,n){const r=t&&t[an];(!r||!r.isManual_)&&lr(9);const{scope_:s}=r;return v2(s,n),x2(void 0,s)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,n){let r;for(r=n.length-1;r>=0;r--){const o=n[r];if(o.path.length===0&&o.op==="replace"){t=o.value;break}}r>-1&&(n=n.slice(r+1));const s=Wa(kv).applyPatches_;return li(t)?s(t,n):this.produce(t,o=>s(o,n))}};function Pv(e,t,n,r){const[s,o]=th(t)?Wa(ld).proxyMap_(t,n):nh(t)?Wa(ld).proxySet_(t,n):iU(t,n);return(n?.scope_??VN()).drafts_.push(s),o.callbacks_=n?.callbacks_??[],o.key_=r,n&&r!==void 0?nU(n,o,r):o.callbacks_.push(function(d){d.mapSetPlugin_?.fixSetContents(o);const{patchPlugin_:h}=d;o.modified_&&h&&h.generatePatches_(o,[],d)}),s}function Zn(e){return li(e)||lr(10,e),KN(e)}function KN(e){if(!mr(e)||rh(e))return e;const t=e[an];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Mv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Mv(e,!0);return Jd(n,(s,o)=>{od(n,s,KN(o))},r),t&&(t.finalized_=!1),n}var oU=new sU,XN=oU.produce;function YN(e){return({dispatch:n,getState:r})=>s=>o=>typeof o=="function"?o(n,r,e):s(o)}var lU=YN(),uU=YN,cU=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?id:id.apply(null,arguments)};function Pn(e,t){function n(...r){if(t){let s=t(...r);if(!s)throw new Error(Dn(0));return{type:e,payload:s.payload,..."meta"in s&&{meta:s.meta},..."error"in s&&{error:s.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>zN(r)&&r.type===e,n}var GN=class Fl extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Fl.prototype)}static get[Symbol.species](){return Fl}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Fl(...t[0].concat(this)):new Fl(...t.concat(this))}};function _2(e){return mr(e)?XN(e,()=>{}):e}function bf(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function fU(e){return typeof e=="boolean"}var dU=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:s=!0,actionCreatorCheck:o=!0}=t??{};let u=new GN;return n&&(fU(n)?u.push(lU):u.push(uU(n.extraArgument))),u},WN="RTK_autoBatch",Qe=()=>e=>({payload:e,meta:{[WN]:!0}}),S2=e=>t=>{setTimeout(t,e)},ZN=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let s=!0,o=!1,u=!1;const f=new Set,d=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:S2(10):e.type==="callback"?e.queueNotification:S2(e.timeout),h=()=>{u=!1,o&&(o=!1,f.forEach(m=>m()))};return Object.assign({},r,{subscribe(m){const p=()=>s&&m(),v=r.subscribe(p);return f.add(m),()=>{v(),f.delete(m)}},dispatch(m){try{return s=!m?.meta?.[WN],o=!s,o&&(u||(u=!0,d(h))),r.dispatch(m)}finally{s=!0}}})},hU=e=>function(n){const{autoBatch:r=!0}=n??{};let s=new GN(e);return r&&s.push(ZN(typeof r=="object"?r:void 0)),s};function mU(e){const t=dU(),{reducer:n=void 0,middleware:r,devTools:s=!0,preloadedState:o=void 0,enhancers:u=void 0}=e||{};let f;if(typeof n=="function")f=n;else if(ab(n))f=LN(n);else throw new Error(Dn(1));let d;typeof r=="function"?d=r(t):d=t();let h=id;s&&(h=cU({trace:!1,...typeof s=="object"&&s}));const m=X7(...d),p=hU(m);let v=typeof u=="function"?u(p):p();const x=h(...v);return RN(f,o,x)}function QN(e){const t={},n=[];let r;const s={addCase(o,u){const f=typeof o=="string"?o:o.type;if(!f)throw new Error(Dn(28));if(f in t)throw new Error(Dn(29));return t[f]=u,s},addAsyncThunk(o,u){return u.pending&&(t[o.pending.type]=u.pending),u.rejected&&(t[o.rejected.type]=u.rejected),u.fulfilled&&(t[o.fulfilled.type]=u.fulfilled),u.settled&&n.push({matcher:o.settled,reducer:u.settled}),s},addMatcher(o,u){return n.push({matcher:o,reducer:u}),s},addDefaultCase(o){return r=o,s}};return e(s),[t,n,r]}function pU(e){return typeof e=="function"}function gU(e,t){let[n,r,s]=QN(t),o;if(pU(e))o=()=>_2(e());else{const f=_2(e);o=()=>f}function u(f=o(),d){let h=[n[d.type],...r.filter(({matcher:m})=>m(d)).map(({reducer:m})=>m)];return h.filter(m=>!!m).length===0&&(h=[s]),h.reduce((m,p)=>{if(p)if(li(m)){const x=p(m,d);return x===void 0?m:x}else{if(mr(m))return XN(m,v=>p(v,d));{const v=p(m,d);if(v===void 0){if(m===null)return m;throw Error("A case reducer on a non-draftable value must not return undefined")}return v}}return m},f)}return u.getInitialState=o,u}var yU="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",vU=(e=21)=>{let t="",n=e;for(;n--;)t+=yU[Math.random()*64|0];return t},bU=Symbol.for("rtk-slice-createasyncthunk");function xU(e,t){return`${e}/${t}`}function wU({creators:e}={}){const t=e?.asyncThunk?.[bU];return function(r){const{name:s,reducerPath:o=s}=r;if(!s)throw new Error(Dn(11));const u=(typeof r.reducers=="function"?r.reducers(SU()):r.reducers)||{},f=Object.keys(u),d={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},h={addCase(j,k){const N=typeof j=="string"?j:j.type;if(!N)throw new Error(Dn(12));if(N in d.sliceCaseReducersByType)throw new Error(Dn(13));return d.sliceCaseReducersByType[N]=k,h},addMatcher(j,k){return d.sliceMatchers.push({matcher:j,reducer:k}),h},exposeAction(j,k){return d.actionCreators[j]=k,h},exposeCaseReducer(j,k){return d.sliceCaseReducersByName[j]=k,h}};f.forEach(j=>{const k=u[j],N={reducerName:j,type:xU(s,j),createNotation:typeof r.reducers=="function"};TU(k)?EU(N,k,h,t):AU(N,k,h)});function m(){const[j={},k=[],N=void 0]=typeof r.extraReducers=="function"?QN(r.extraReducers):[r.extraReducers],C={...j,...d.sliceCaseReducersByType};return gU(r.initialState,L=>{for(let I in C)L.addCase(I,C[I]);for(let I of d.sliceMatchers)L.addMatcher(I.matcher,I.reducer);for(let I of k)L.addMatcher(I.matcher,I.reducer);N&&L.addDefaultCase(N)})}const p=j=>j,v=new Map,x=new WeakMap;let w;function _(j,k){return w||(w=m()),w(j,k)}function S(){return w||(w=m()),w.getInitialState()}function O(j,k=!1){function N(L){let I=L[j];return typeof I>"u"&&k&&(I=bf(x,N,S)),I}function C(L=p){const I=bf(v,k,()=>new WeakMap);return bf(I,L,()=>{const Y={};for(const[te,ie]of Object.entries(r.selectors??{}))Y[te]=_U(ie,L,()=>bf(x,L,S),k);return Y})}return{reducerPath:j,getSelectors:C,get selectors(){return C(N)},selectSlice:N}}const M={name:s,reducer:_,actions:d.actionCreators,caseReducers:d.sliceCaseReducersByName,getInitialState:S,...O(o),injectInto(j,{reducerPath:k,...N}={}){const C=k??o;return j.inject({reducerPath:C,reducer:_},N),{...M,...O(C,!0)}}};return M}}function _U(e,t,n,r){function s(o,...u){let f=t(o);return typeof f>"u"&&r&&(f=n()),e(f,...u)}return s.unwrapped=e,s}var Qt=wU();function SU(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function AU({type:e,reducerName:t,createNotation:n},r,s){let o,u;if("reducer"in r){if(n&&!OU(r))throw new Error(Dn(17));o=r.reducer,u=r.prepare}else o=r;s.addCase(e,o).exposeCaseReducer(t,o).exposeAction(t,u?Pn(e,u):Pn(e))}function TU(e){return e._reducerDefinitionType==="asyncThunk"}function OU(e){return e._reducerDefinitionType==="reducerWithPrepare"}function EU({type:e,reducerName:t},n,r,s){if(!s)throw new Error(Dn(18));const{payloadCreator:o,fulfilled:u,pending:f,rejected:d,settled:h,options:m}=n,p=s(e,o,m);r.exposeAction(t,p),u&&r.addCase(p.fulfilled,u),f&&r.addCase(p.pending,f),d&&r.addCase(p.rejected,d),h&&r.addMatcher(p.settled,h),r.exposeCaseReducer(t,{fulfilled:u||xf,pending:f||xf,rejected:d||xf,settled:h||xf})}function xf(){}var jU="task",JN="listener",eC="completed",ub="cancelled",MU=`task-${ub}`,kU=`task-${eC}`,Rv=`${JN}-${ub}`,NU=`${JN}-${eC}`,ah=class{constructor(e){this.code=e,this.message=`${jU} ${ub} (reason: ${e})`}name="TaskAbortError";message},cb=(e,t)=>{if(typeof e!="function")throw new TypeError(Dn(32))},fd=()=>{},tC=(e,t=fd)=>(e.catch(t),e),nC=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Ha=e=>{if(e.aborted)throw new ah(e.reason)};function rC(e,t){let n=fd;return new Promise((r,s)=>{const o=()=>s(new ah(e.reason));if(e.aborted){o();return}n=nC(e,o),t.finally(()=>n()).then(r,s)}).finally(()=>{n=fd})}var CU=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof ah?"cancelled":"rejected",error:n}}finally{t?.()}},dd=e=>t=>tC(rC(e,t).then(n=>(Ha(e),n))),iC=e=>{const t=dd(e);return n=>t(new Promise(r=>setTimeout(r,n)))},{assign:so}=Object,A2={},sh="listenerMiddleware",DU=(e,t)=>{const n=r=>nC(e,()=>r.abort(e.reason));return(r,s)=>{cb(r);const o=new AbortController;n(o);const u=CU(async()=>{Ha(e),Ha(o.signal);const f=await r({pause:dd(o.signal),delay:iC(o.signal),signal:o.signal});return Ha(o.signal),f},()=>o.abort(kU));return s?.autoJoin&&t.push(u.catch(fd)),{result:dd(e)(u),cancel(){o.abort(MU)}}}},PU=(e,t)=>{const n=async(r,s)=>{Ha(t);let o=()=>{};const f=[new Promise((d,h)=>{let m=e({predicate:r,effect:(p,v)=>{v.unsubscribe(),d([p,v.getState(),v.getOriginalState()])}});o=()=>{m(),h()}})];s!=null&&f.push(new Promise(d=>setTimeout(d,s,null)));try{const d=await rC(t,Promise.race(f));return Ha(t),d}finally{o()}};return(r,s)=>tC(n(r,s))},aC=e=>{let{type:t,actionCreator:n,matcher:r,predicate:s,effect:o}=e;if(t)s=Pn(t).match;else if(n)t=n.type,s=n.match;else if(r)s=r;else if(!s)throw new Error(Dn(21));return cb(o),{predicate:s,type:t,effect:o}},sC=so(e=>{const{type:t,predicate:n,effect:r}=aC(e);return{id:vU(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(Dn(22))}}},{withTypes:()=>sC}),T2=(e,t)=>{const{type:n,effect:r,predicate:s}=aC(t);return Array.from(e.values()).find(o=>(typeof n=="string"?o.type===n:o.predicate===s)&&o.effect===r)},Lv=e=>{e.pending.forEach(t=>{t.abort(Rv)})},RU=(e,t)=>()=>{for(const n of t.keys())Lv(n);e.clear()},O2=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},oC=so(Pn(`${sh}/add`),{withTypes:()=>oC}),LU=Pn(`${sh}/removeAll`),lC=so(Pn(`${sh}/remove`),{withTypes:()=>lC}),zU=(...e)=>{console.error(`${sh}/error`,...e)},ju=(e={})=>{const t=new Map,n=new Map,r=x=>{const w=n.get(x)??0;n.set(x,w+1)},s=x=>{const w=n.get(x)??1;w===1?n.delete(x):n.set(x,w-1)},{extra:o,onError:u=zU}=e;cb(u);const f=x=>(x.unsubscribe=()=>t.delete(x.id),t.set(x.id,x),w=>{x.unsubscribe(),w?.cancelActive&&Lv(x)}),d=x=>{const w=T2(t,x)??sC(x);return f(w)};so(d,{withTypes:()=>d});const h=x=>{const w=T2(t,x);return w&&(w.unsubscribe(),x.cancelActive&&Lv(w)),!!w};so(h,{withTypes:()=>h});const m=async(x,w,_,S)=>{const O=new AbortController,M=PU(d,O.signal),j=[];try{x.pending.add(O),r(x),await Promise.resolve(x.effect(w,so({},_,{getOriginalState:S,condition:(k,N)=>M(k,N).then(Boolean),take:M,delay:iC(O.signal),pause:dd(O.signal),extra:o,signal:O.signal,fork:DU(O.signal,j),unsubscribe:x.unsubscribe,subscribe:()=>{t.set(x.id,x)},cancelActiveListeners:()=>{x.pending.forEach((k,N,C)=>{k!==O&&(k.abort(Rv),C.delete(k))})},cancel:()=>{O.abort(Rv),x.pending.delete(O)},throwIfCancelled:()=>{Ha(O.signal)}})))}catch(k){k instanceof ah||O2(u,k,{raisedBy:"effect"})}finally{await Promise.all(j),O.abort(NU),s(x),x.pending.delete(O)}},p=RU(t,n);return{middleware:x=>w=>_=>{if(!zN(_))return w(_);if(oC.match(_))return d(_.payload);if(LU.match(_)){p();return}if(lC.match(_))return h(_.payload);let S=x.getState();const O=()=>{if(S===A2)throw new Error(Dn(23));return S};let M;try{if(M=w(_),t.size>0){const j=x.getState(),k=Array.from(t.values());for(const N of k){let C=!1;try{C=N.predicate(_,j,S)}catch(L){C=!1,O2(u,L,{raisedBy:"predicate"})}C&&m(N,_,x,O)}}}finally{S=A2}return M},startListening:d,stopListening:h,clearListeners:p}};function Dn(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 IU={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},uC=Qt({name:"chartLayout",initialState:IU,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,s,o;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(s=t.payload.bottom)!==null&&s!==void 0?s:0,e.margin.left=(o=t.payload.left)!==null&&o!==void 0?o:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:BU,setLayout:UU,setChartSize:VU,setScale:qU}=uC.actions,$U=uC.reducer;function cC(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function Le(e){return Number.isFinite(e)}function Cr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function E2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ro(e){for(var t=1;t{if(t&&n){var{width:r,height:s}=n,{align:o,verticalAlign:u,layout:f}=t;if((f==="vertical"||f==="horizontal"&&u==="middle")&&o!=="center"&&ye(e[o]))return ro(ro({},e),{},{[o]:e[o]+(r||0)});if((f==="horizontal"||f==="vertical"&&o==="center")&&u!=="middle"&&ye(e[u]))return ro(ro({},e),{},{[u]:e[u]+(s||0)})}return e},sa=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",fC=(e,t,n,r)=>{if(r)return e.map(f=>f.coordinate);var s,o,u=e.map(f=>(f.coordinate===t&&(s=!0),f.coordinate===n&&(o=!0),f.coordinate));return s||u.push(t),o||u.push(n),u},dC=(e,t,n)=>{if(!e)return null;var{duplicateDomain:r,type:s,range:o,scale:u,realScaleType:f,isCategorical:d,categoricalDomain:h,tickCount:m,ticks:p,niceTicks:v,axisType:x}=e;if(!u)return null;var w=f==="scaleBand"&&u.bandwidth?u.bandwidth()/2:2,_=s==="category"&&u.bandwidth?u.bandwidth()/w:0;if(_=x==="angleAxis"&&o&&o.length>=2?Wn(o[0]-o[1])*2*_:_,p||v){var S=(p||v||[]).map((O,M)=>{var j=r?r.indexOf(O):O,k=u.map(j);return Le(k)?{coordinate:k+_,value:O,offset:_,index:M}:null}).filter(mn);return S}return d&&h?h.map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:O,index:M,offset:_}:null}).filter(mn):u.ticks&&m!=null?u.ticks(m).map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:O,index:M,offset:_}:null}).filter(mn):u.domain().map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:r?r[O]:O,index:M,offset:_}:null}).filter(mn)},YU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var s=0;s=0?(h[0]=o,o+=v,h[1]=o):(h[0]=u,u+=v,h[1]=u)}}}},GU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var s=0;s=0?(d[0]=o,o+=h,d[1]=o):(d[0]=0,d[1]=0)}}}},WU={sign:YU,expand:_9,none:Ya,silhouette:S9,wiggle:A9,positive:GU},ZU=(e,t,n)=>{var r,s=(r=WU[n])!==null&&r!==void 0?r:Ya,o=w9().keys(t).value((f,d)=>Number(Ot(f,d,0))).order(Tv).offset(s),u=o(e);return u.forEach((f,d)=>{f.forEach((h,m)=>{var p=Ot(e[m],t[d],0);Array.isArray(p)&&p.length===2&&ye(p[0])&&ye(p[1])&&(h[0]=p[0],h[1]=p[1])})}),u};function j2(e){var{axis:t,ticks:n,bandSize:r,entry:s,index:o,dataKey:u}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!dt(s[t.dataKey])){var f=vN(n,"value",s[t.dataKey]);if(f)return f.coordinate+r/2}return n!=null&&n[o]?n[o].coordinate+r/2:null}var d=Ot(s,dt(u)?t.dataKey:u),h=t.scale.map(d);return ye(h)?h:null}var QU=e=>{var t=e.flat(2).filter(ye);return[Math.min(...t),Math.max(...t)]},JU=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],eV=(e,t,n)=>{if(e!=null)return JU(Object.keys(e).reduce((r,s)=>{var o=e[s];if(!o)return r;var{stackedData:u}=o,f=u.reduce((d,h)=>{var m=cC(h,t,n),p=QU(m);return!Le(p[0])||!Le(p[1])?d:[Math.min(d[0],p[0]),Math.max(d[1],p[1])]},[1/0,-1/0]);return[Math.min(f[0],r[0]),Math.max(f[1],r[1])]},[1/0,-1/0]))},M2=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,k2=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,N2=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();return r}if(e&&t&&t.length>=2){for(var s=Zd(t,m=>m.coordinate),o=1/0,u=1,f=s.length;u{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},nV=(e,t)=>t==="centric"?e.angle:e.radius,hi=e=>e.layout.width,mi=e=>e.layout.height,rV=e=>e.layout.scale,mC=e=>e.layout.margin,oh=$(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),lh=$(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),iV="data-recharts-item-index",pC="data-recharts-item-id",Mu=60;function D2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function wf(e){for(var t=1;te.brush.height;function uV(e){var t=lh(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var s=typeof r.width=="number"?r.width:Mu;return n+s}return n},0)}function cV(e){var t=lh(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var s=typeof r.width=="number"?r.width:Mu;return n+s}return n},0)}function fV(e){var t=oh(e);return t.reduce((n,r)=>r.orientation==="top"&&!r.mirror&&!r.hide?n+r.height:n,0)}function dV(e){var t=oh(e);return t.reduce((n,r)=>r.orientation==="bottom"&&!r.mirror&&!r.hide?n+r.height:n,0)}var Xt=$([hi,mi,mC,lV,uV,cV,fV,dV,PN,V7],(e,t,n,r,s,o,u,f,d,h)=>{var m={left:(n.left||0)+s,right:(n.right||0)+o},p={top:(n.top||0)+u,bottom:(n.bottom||0)+f},v=wf(wf({},p),m),x=v.bottom;v.bottom+=r,v=XU(v,d,h);var w=e-v.left-v.right,_=t-v.top-v.bottom;return wf(wf({brushBottom:x},v),{},{width:Math.max(w,0),height:Math.max(_,0)})}),hV=$(Xt,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),gC=$(hi,mi,(e,t)=>({x:0,y:0,width:e,height:t})),mV=A.createContext(null),Jt=()=>A.useContext(mV)!=null,uh=e=>e.brush,ch=$([uh,Xt,mC],(e,t,n)=>({height:e.height,x:ye(e.x)?e.x:t.left,y:ye(e.y)?e.y:t.top+t.height+t.brushBottom-(n?.bottom||0),width:ye(e.width)?e.width:t.width})),gy={},yy={},vy={},P2;function pV(){return P2||(P2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r,{signal:s,edges:o}={}){let u,f=null;const d=o!=null&&o.includes("leading"),h=o==null||o.includes("trailing"),m=()=>{f!==null&&(n.apply(u,f),u=void 0,f=null)},p=()=>{h&&m(),_()};let v=null;const x=()=>{v!=null&&clearTimeout(v),v=setTimeout(()=>{v=null,p()},r)},w=()=>{v!==null&&(clearTimeout(v),v=null)},_=()=>{w(),u=void 0,f=null},S=()=>{m()},O=function(...M){if(s?.aborted)return;u=this,f=M;const j=v==null;x(),d&&j&&m()};return O.schedule=x,O.cancel=_,O.flush=S,s?.addEventListener("abort",_,{once:!0}),O}e.debounce=t})(vy)),vy}var R2;function gV(){return R2||(R2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pV();function n(r,s=0,o={}){typeof o!="object"&&(o={});const{leading:u=!1,trailing:f=!0,maxWait:d}=o,h=Array(2);u&&(h[0]="leading"),f&&(h[1]="trailing");let m,p=null;const v=t.debounce(function(..._){m=r.apply(this,_),p=null},s,{edges:h}),x=function(..._){return d!=null&&(p===null&&(p=Date.now()),Date.now()-p>=d)?(m=r.apply(this,_),p=Date.now(),v.cancel(),v.schedule(),m):(v.apply(this,_),m)},w=()=>(v.flush(),m);return x.cancel=v.cancel,x.flush=w,x}e.debounce=n})(yy)),yy}var L2;function yV(){return L2||(L2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=gV();function n(r,s=0,o={}){const{leading:u=!0,trailing:f=!0}=o;return t.debounce(r,s,{leading:u,maxWait:s,trailing:f})}e.throttle=n})(gy)),gy}var by,z2;function vV(){return z2||(z2=1,by=yV().throttle),by}var bV=vV();const xV=ia(bV);var hd=function(t,n){for(var r=arguments.length,s=new Array(r>2?r-2:0),o=2;os[u++]))}},Ar={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},yC=(e,t,n)=>{var{width:r=Ar.width,height:s=Ar.height,aspect:o,maxHeight:u}=n,f=Ga(r)?e:Number(r),d=Ga(s)?t:Number(s);return o&&o>0&&(f?d=f/o:d&&(f=d*o),u&&d!=null&&d>u&&(d=u)),{calculatedWidth:f,calculatedHeight:d}},wV={width:0,height:0,overflow:"visible"},_V={width:0,overflowX:"visible"},SV={height:0,overflowY:"visible"},AV={},TV=e=>{var{width:t,height:n}=e,r=Ga(t),s=Ga(n);return r&&s?wV:r?_V:s?SV:AV};function OV(e){var{width:t,height:n,aspect:r}=e,s=t,o=n;return s===void 0&&o===void 0?(s=Ar.width,o=Ar.height):s===void 0?s=r&&r>0?void 0:Ar.width:o===void 0&&(o=r&&r>0?void 0:Ar.height),{width:s,height:o}}function zv(){return zv=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:n,height:r}),[n,r]);return kV(s)?A.createElement(vC.Provider,{value:s},t):null}var fb=()=>A.useContext(vC),NV=A.forwardRef((e,t)=>{var{aspect:n,initialDimension:r=Ar.initialDimension,width:s,height:o,minWidth:u=Ar.minWidth,minHeight:f,maxHeight:d,children:h,debounce:m=Ar.debounce,id:p,className:v,onResize:x,style:w={}}=e,_=A.useRef(null),S=A.useRef();S.current=x,A.useImperativeHandle(t,()=>_.current);var[O,M]=A.useState({containerWidth:r.width,containerHeight:r.height}),j=A.useCallback((I,Y)=>{M(te=>{var ie=Math.round(I),K=Math.round(Y);return te.containerWidth===ie&&te.containerHeight===K?te:{containerWidth:ie,containerHeight:K}})},[]);A.useEffect(()=>{if(_.current==null||typeof ResizeObserver>"u")return _o;var I=K=>{var be,pe=K[0];if(pe!=null){var{width:xe,height:V}=pe.contentRect;j(xe,V),(be=S.current)===null||be===void 0||be.call(S,xe,V)}};m>0&&(I=xV(I,m,{trailing:!0,leading:!1}));var Y=new ResizeObserver(I),{width:te,height:ie}=_.current.getBoundingClientRect();return j(te,ie),Y.observe(_.current),()=>{Y.disconnect()}},[j,m]);var{containerWidth:k,containerHeight:N}=O;hd(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:C,calculatedHeight:L}=yC(k,N,{width:s,height:o,aspect:n,maxHeight:d});return hd(C!=null&&C>0||L!=null&&L>0,`The width(%s) and height(%s) of chart should be greater than 0, +}}`}],kB=Tu.filter(e=>e.category==="eva-a"),CB=Tu.filter(e=>e.category==="eva-x"),s2=Tu.filter(e=>e.category==="debug"),o2=Tu.filter(e=>e.category==="validation");Tu.filter(e=>e.type==="llm_judge"||e.type==="lalm_judge");function DB({prompt:e,model:t}){const[n,r]=A.useState(!1),s=A.useCallback(()=>r(!1),[]);return A.useEffect(()=>{if(!n)return;const o=u=>{u.key==="Escape"&&s()};return document.addEventListener("keydown",o),document.body.style.overflow="hidden",()=>{document.removeEventListener("keydown",o),document.body.style.overflow=""}},[n,s]),b.jsxs(b.Fragment,{children:[b.jsxs("button",{onClick:()=>r(!0),className:"mt-3 flex items-center gap-1.5 text-xs font-medium text-purple-light hover:text-purple transition-colors",children:["View Judge Prompt",t&&b.jsxs("span",{className:"text-text-muted",children:["(",t,")"]})]}),n&&b.jsxs("div",{className:"fixed inset-0 z-[100] flex items-center justify-center p-4",onClick:o=>{o.target===o.currentTarget&&s()},children:[b.jsx("div",{className:"absolute inset-0 bg-black/70 backdrop-blur-sm"}),b.jsxs("div",{className:"relative w-full max-w-4xl max-h-[85vh] flex flex-col rounded-xl border border-border-default bg-bg-primary shadow-2xl",children:[b.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-border-default flex-shrink-0",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary",children:"Judge Prompt"}),t&&b.jsxs("div",{className:"text-xs text-text-muted mt-0.5",children:["Model: ",t]})]}),b.jsx("button",{onClick:s,className:"p-1.5 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(cM,{className:"w-5 h-5"})})]}),b.jsx("div",{className:"overflow-y-auto flex-1",children:b.jsx("pre",{className:"px-6 py-5 text-[13px] leading-relaxed text-text-primary font-mono whitespace-pre-wrap break-words",children:e})})]})]})]})}const PB={deterministic:QR,llm_judge:lM,lalm_judge:Gy};function mf({metric:e}){const[t,n]=A.useState(!1),[r,s]=A.useState(!1),o=PB[e.type],u=NB[e.type];return b.jsxs(Tt.div,{layout:!0,className:"rounded-xl border border-border-default bg-bg-secondary overflow-hidden",children:[b.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center justify-between p-5 text-left hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{className:"flex items-center gap-3",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center flex-shrink-0",style:{backgroundColor:u+"20"},children:b.jsx(o,{className:"w-5 h-5",style:{color:u}})}),b.jsxs("div",{children:[b.jsxs("div",{className:"text-base font-semibold text-text-primary",children:[e.displayName,e.badge&&b.jsx("span",{className:"ml-2 text-[10px] px-1.5 py-0.5 rounded-full bg-amber/10 text-amber border border-amber/20 font-medium uppercase align-middle",children:e.badge})]}),b.jsxs("div",{className:"text-xs font-medium mt-0.5",style:{color:u},children:[MB[e.type],e.judgeModel&&b.jsxs("span",{className:"text-text-muted",children:[" · ",e.judgeModel]})]})]})]}),b.jsx(ai,{className:`w-5 h-5 text-text-muted transition-transform ${t?"rotate-180":""}`})]}),b.jsx(KA,{children:t&&b.jsx(Tt.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:b.jsxs("div",{className:"px-5 pb-5 space-y-4",children:[b.jsx("div",{className:"border-t border-border-default pt-4",children:b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:e.description})}),b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Inputs"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.inputs})]}),b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Output"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.outputRange})]}),e.passThreshold&&b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Pass Threshold"}),b.jsx("div",{className:"text-sm text-text-secondary leading-relaxed",children:e.passThreshold})]})]}),e.judgePrompt&&b.jsx(DB,{prompt:e.judgePrompt,model:e.judgeModel}),e.judgeScores&&e.judgeScores.length>0&&b.jsxs("div",{className:"rounded-lg border border-border-default overflow-hidden",children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center justify-between px-4 py-3 text-left hover:bg-bg-hover/30 transition-colors",children:[b.jsx("div",{className:"text-sm font-semibold text-text-secondary",children:"Judge Accuracy"}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${r?"rotate-180":""}`})]}),b.jsx(KA,{children:r&&b.jsx(Tt.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.15},className:"overflow-hidden",children:b.jsxs("div",{className:"px-4 pb-4 space-y-3",children:[b.jsx("div",{className:"border-t border-border-default pt-3",children:b.jsx("div",{className:"flex flex-wrap gap-3",children:e.judgeScores.map(({label:f,value:d,std:h})=>b.jsxs("div",{className:"flex items-center gap-2 rounded-lg bg-bg-primary px-3 py-2",children:[b.jsx("span",{className:"text-xs text-text-muted font-mono",children:f}),b.jsxs("span",{className:"text-sm font-semibold text-text-primary",children:[(d*100).toFixed(1),"%",h!=null&&b.jsxs("span",{className:"text-text-muted font-normal text-xs ml-1",children:["(±",(h*100).toFixed(1),"%)"]})]})]},f))})}),e.developmentDocUrl&&b.jsxs("a",{href:e.developmentDocUrl,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1.5 text-sm text-accent-primary hover:text-accent-hover transition-colors",children:["View judge development details",b.jsx(oM,{className:"w-3.5 h-3.5"})]}),e.judgeDevelopmentNotes&&b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:e.judgeDevelopmentNotes})]})})})]})]})})})]})}function RB(){const[e,t]=A.useState(!1);return b.jsxs(wo,{id:"metrics",title:"Evaluation Methodology",subtitle:"EVA produces two fundamental scores composed of multiple sub-metrics. Click any metric to explore what it measures, its inputs, and the judge prompt.",children:[b.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-8",children:[b.jsxs(Tt.div,{initial:{opacity:0,x:-20},whileInView:{opacity:1,x:0},viewport:{once:!0},transition:{duration:.5},children:[b.jsxs("div",{className:"rounded-xl border-2 border-purple/30 bg-purple/5 p-5 text-center",children:[b.jsx("div",{className:"text-sm font-bold text-purple-light tracking-widest uppercase mb-1",children:"EVA-A"}),b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"Accuracy"}),b.jsx("p",{className:"text-sm text-text-secondary mt-1.5",children:"Did the agent complete the task correctly?"})]}),b.jsx("div",{className:"flex justify-center",children:b.jsx("div",{className:"w-px h-5 bg-purple/30"})}),b.jsx("div",{className:"space-y-3 pt-0",children:kB.map(n=>b.jsx(mf,{metric:n},n.id))})]}),b.jsxs(Tt.div,{initial:{opacity:0,x:20},whileInView:{opacity:1,x:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:[b.jsxs("div",{className:"rounded-xl border-2 border-blue/30 bg-blue/5 p-5 text-center",children:[b.jsx("div",{className:"text-sm font-bold text-blue-light tracking-widest uppercase mb-1",children:"EVA-X"}),b.jsx("div",{className:"text-2xl font-bold text-text-primary",children:"Experience"}),b.jsx("p",{className:"text-sm text-text-secondary mt-1.5",children:"Was the conversational experience high quality?"})]}),b.jsx("div",{className:"flex justify-center",children:b.jsx("div",{className:"w-px h-5 bg-blue/30"})}),b.jsx("div",{className:"space-y-3 pt-0",children:CB.map(n=>b.jsx(mf,{metric:n},n.id))})]})]}),b.jsxs("div",{className:"mt-10",children:[b.jsxs("div",{className:"mb-6",children:[b.jsx("h3",{className:"text-xl font-bold text-text-primary mb-2",children:"Aggregate Metrics"}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:"EVA aggregates per-trial metric scores into four aggregate metrics, each capturing a different aspect of success and reliability."})]}),b.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-6",children:[b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass@1"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, the proportion of trials where ",b.jsx("em",{children:"all"})," metric thresholds are met (",b.jsx("em",{children:"c"}),"/",b.jsx("em",{children:"n"}),"), where ",b.jsx("em",{children:"c"})," is the number of passing trials and ",b.jsx("em",{children:"n"})," is the total number of trials (n=3), then averaged across all scenarios."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass@k (k=3)"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, 1 if at least one of the k (3) trials meets pass criteria for all metrics, otherwise 0, then averaged across all scenarios. Measures whether the system ",b.jsx("em",{children:"can"})," succeed."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"pass^k (k=3)"}),b.jsxs("p",{className:"text-sm text-text-secondary leading-relaxed",children:["For each scenario, we estimate the theoretical probability of passing k = 3 consecutive independent trials as (",b.jsx("em",{children:"c"}),"/",b.jsx("em",{children:"n"}),")",b.jsx("sup",{children:"k"})," where c is the number of passing trials out of n = 3 total. We then average this value across all scenarios to measure consistency and reliability."]})]}),b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary mb-2",children:"Mean"}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:"For each sample, we average sub-metric scores per dimension, then average across all 150 samples. Raw scores avoid binarizing near-boundary differences into a full pass/fail gap, capturing more nuanced system comparisons."})]})]})]}),b.jsxs("div",{className:"mt-10",children:[b.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center justify-between rounded-xl border border-border-default bg-bg-secondary px-6 py-5 hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-base font-semibold text-text-secondary text-left",children:"Diagnostic & Validation Metrics"}),b.jsxs("div",{className:"text-sm text-text-muted mt-1 text-left",children:[s2.length+o2.length," additional metrics for diagnostics and quality control"]})]}),b.jsx(ai,{className:`w-5 h-5 text-text-muted transition-transform ${e?"rotate-180":""}`})]}),e&&b.jsxs("div",{className:"mt-4 grid grid-cols-1 lg:grid-cols-2 gap-8 opacity-80",children:[b.jsxs("div",{children:[b.jsxs("div",{className:"px-1 mb-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-muted uppercase tracking-wider mb-1",children:"Diagnostic Metrics"}),b.jsxs("p",{className:"text-sm text-text-muted leading-relaxed",children:["Diagnostic metrics for understanding ",b.jsx("em",{children:"why"})," the core scores look the way they do. These help identify which pipeline component (STT, LLM, TTS) is contributing to failures but are not part of the EVA-A or EVA-X scores."]})]}),b.jsx("div",{className:"space-y-3",children:s2.map(n=>b.jsx(mf,{metric:n},n.id))})]}),b.jsxs("div",{children:[b.jsxs("div",{className:"px-1 mb-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-muted uppercase tracking-wider mb-1",children:"Validation Metrics"}),b.jsx("p",{className:"text-sm text-text-muted leading-relaxed",children:"Validators run before evaluation. Any conversation that fails validation is regenerated so that core metrics are only computed on conversations with a well-behaved user simulator and properly completed interactions."})]}),b.jsx("div",{className:"space-y-3",children:o2.map(n=>b.jsx(mf,{metric:n},n.id))})]})]})]}),b.jsxs("div",{className:"flex flex-wrap justify-center gap-6 mt-8",children:[b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-cyan/20 border border-cyan/40"}),"Deterministic (Code)"]}),b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-purple/20 border border-purple/40"}),"LLM Judge (Text)"]}),b.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3.5 h-3.5 rounded bg-amber/20 border border-amber/40"}),"Audio LLM Judge (LALM)"]})]})]})}function ZN(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(t=0;t{var{children:n,width:r,height:s,viewBox:o,className:u,style:f,title:d,desc:h}=e,m=UB(e,BB),p=o||{width:r,height:s,x:0,y:0},v=et("recharts-surface",u);return A.createElement("svg",xv({},er(m),{className:v,width:r,height:s,style:f,viewBox:"".concat(p.x," ").concat(p.y," ").concat(p.width," ").concat(p.height),ref:t}),A.createElement("title",null,d),A.createElement("desc",null,h),n)}),qB=["children","className"];function wv(){return wv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:n,className:r}=e,s=$B(e,qB),o=et("recharts-layer",r);return A.createElement("g",wv({className:o},er(s),{ref:t}),n)}),G0=iM(),HB=A.createContext(null);function Ye(e){return function(){return e}}const tk=Math.cos,Qf=Math.sin,pr=Math.sqrt,Jf=Math.PI,Yd=2*Jf,_v=Math.PI,Sv=2*_v,Ra=1e-6,KB=Sv-Ra;function nk(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return nk;const n=10**t;return function(r){this._+=r[0];for(let s=1,o=r.length;sRa)if(!(Math.abs(p*d-h*m)>Ra)||!o)this._append`L${this._x1=t},${this._y1=n}`;else{let x=r-u,w=s-f,_=d*d+h*h,S=x*x+w*w,O=Math.sqrt(_),M=Math.sqrt(v),j=o*Math.tan((_v-Math.acos((_+v-S)/(2*O*M)))/2),N=j/M,k=j/O;Math.abs(N-1)>Ra&&this._append`L${t+N*m},${n+N*p}`,this._append`A${o},${o},0,0,${+(p*x>m*w)},${this._x1=t+k*d},${this._y1=n+k*h}`}}arc(t,n,r,s,o,u){if(t=+t,n=+n,r=+r,u=!!u,r<0)throw new Error(`negative radius: ${r}`);let f=r*Math.cos(s),d=r*Math.sin(s),h=t+f,m=n+d,p=1^u,v=u?s-o:o-s;this._x1===null?this._append`M${h},${m}`:(Math.abs(this._x1-h)>Ra||Math.abs(this._y1-m)>Ra)&&this._append`L${h},${m}`,r&&(v<0&&(v=v%Sv+Sv),v>KB?this._append`A${r},${r},0,1,${p},${t-f},${n-d}A${r},${r},0,1,${p},${this._x1=h},${this._y1=m}`:v>Ra&&this._append`A${r},${r},0,${+(v>=_v)},${p},${this._x1=t+r*Math.cos(o)},${this._y1=n+r*Math.sin(o)}`)}rect(t,n,r,s){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+s}h${-r}Z`}toString(){return this._}}function W0(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new YB(t)}function Z0(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function rk(e){this._context=e}rk.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);break}}};function Gd(e){return new rk(e)}function ik(e){return e[0]}function ak(e){return e[1]}function sk(e,t){var n=Ye(!0),r=null,s=Gd,o=null,u=W0(f);e=typeof e=="function"?e:e===void 0?ik:Ye(e),t=typeof t=="function"?t:t===void 0?ak:Ye(t);function f(d){var h,m=(d=Z0(d)).length,p,v=!1,x;for(r==null&&(o=s(x=u())),h=0;h<=m;++h)!(h=x;--w)f.point(j[w],N[w]);f.lineEnd(),f.areaEnd()}O&&(j[v]=+e(S,v,p),N[v]=+t(S,v,p),f.point(r?+r(S,v,p):j[v],n?+n(S,v,p):N[v]))}if(M)return f=null,M+""||null}function m(){return sk().defined(s).curve(u).context(o)}return h.x=function(p){return arguments.length?(e=typeof p=="function"?p:Ye(+p),r=null,h):e},h.x0=function(p){return arguments.length?(e=typeof p=="function"?p:Ye(+p),h):e},h.x1=function(p){return arguments.length?(r=p==null?null:typeof p=="function"?p:Ye(+p),h):r},h.y=function(p){return arguments.length?(t=typeof p=="function"?p:Ye(+p),n=null,h):t},h.y0=function(p){return arguments.length?(t=typeof p=="function"?p:Ye(+p),h):t},h.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:Ye(+p),h):n},h.lineX0=h.lineY0=function(){return m().x(e).y(t)},h.lineY1=function(){return m().x(e).y(n)},h.lineX1=function(){return m().x(r).y(t)},h.defined=function(p){return arguments.length?(s=typeof p=="function"?p:Ye(!!p),h):s},h.curve=function(p){return arguments.length?(u=p,o!=null&&(f=u(o)),h):u},h.context=function(p){return arguments.length?(p==null?o=f=null:f=u(o=p),h):o},h}class ok{constructor(t,n){this._context=t,this._x=n}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(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function GB(e){return new ok(e,!0)}function WB(e){return new ok(e,!1)}const Q0={draw(e,t){const n=pr(t/Jf);e.moveTo(n,0),e.arc(0,0,n,0,Yd)}},ZB={draw(e,t){const n=pr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},lk=pr(1/3),QB=lk*2,JB={draw(e,t){const n=pr(t/QB),r=n*lk;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},e9={draw(e,t){const n=pr(t),r=-n/2;e.rect(r,r,n,n)}},t9=.8908130915292852,uk=Qf(Jf/10)/Qf(7*Jf/10),n9=Qf(Yd/10)*uk,r9=-tk(Yd/10)*uk,i9={draw(e,t){const n=pr(t*t9),r=n9*n,s=r9*n;e.moveTo(0,-n),e.lineTo(r,s);for(let o=1;o<5;++o){const u=Yd*o/5,f=tk(u),d=Qf(u);e.lineTo(d*n,-f*n),e.lineTo(f*r-d*s,d*r+f*s)}e.closePath()}},yg=pr(3),a9={draw(e,t){const n=-pr(t/(yg*3));e.moveTo(0,n*2),e.lineTo(-yg*n,-n),e.lineTo(yg*n,-n),e.closePath()}},Kn=-.5,Xn=pr(3)/2,Av=1/pr(12),s9=(Av/2+1)*3,o9={draw(e,t){const n=pr(t/s9),r=n/2,s=n*Av,o=r,u=n*Av+n,f=-o,d=u;e.moveTo(r,s),e.lineTo(o,u),e.lineTo(f,d),e.lineTo(Kn*r-Xn*s,Xn*r+Kn*s),e.lineTo(Kn*o-Xn*u,Xn*o+Kn*u),e.lineTo(Kn*f-Xn*d,Xn*f+Kn*d),e.lineTo(Kn*r+Xn*s,Kn*s-Xn*r),e.lineTo(Kn*o+Xn*u,Kn*u-Xn*o),e.lineTo(Kn*f+Xn*d,Kn*d-Xn*f),e.closePath()}};function l9(e,t){let n=null,r=W0(s);e=typeof e=="function"?e:Ye(e||Q0),t=typeof t=="function"?t:Ye(t===void 0?64:+t);function s(){let o;if(n||(n=o=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),o)return n=null,o+""||null}return s.type=function(o){return arguments.length?(e=typeof o=="function"?o:Ye(o),s):e},s.size=function(o){return arguments.length?(t=typeof o=="function"?o:Ye(+o),s):t},s.context=function(o){return arguments.length?(n=o??null,s):n},s}function ed(){}function td(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 ck(e){this._context=e}ck.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:td(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function u9(e){return new ck(e)}function fk(e){this._context=e}fk.prototype={areaStart:ed,areaEnd:ed,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);break}}},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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function c9(e){return new fk(e)}function dk(e){this._context=e}dk.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:td(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function f9(e){return new dk(e)}function hk(e){this._context=e}hk.prototype={areaStart:ed,areaEnd:ed,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 d9(e){return new hk(e)}function l2(e){return e<0?-1:1}function u2(e,t,n){var r=e._x1-e._x0,s=t-e._x1,o=(e._y1-e._y0)/(r||s<0&&-0),u=(n-e._y1)/(s||r<0&&-0),f=(o*s+u*r)/(r+s);return(l2(o)+l2(u))*Math.min(Math.abs(o),Math.abs(u),.5*Math.abs(f))||0}function c2(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function vg(e,t,n){var r=e._x0,s=e._y0,o=e._x1,u=e._y1,f=(o-r)/3;e._context.bezierCurveTo(r+f,s+f*t,o-f,u-f*n,o,u)}function nd(e){this._context=e}nd.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:vg(this,this._t0,c2(this,this._t0));break}(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,vg(this,c2(this,n=u2(this,e,t)),n);break;default:vg(this,this._t0,n=u2(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function mk(e){this._context=new pk(e)}(mk.prototype=Object.create(nd.prototype)).point=function(e,t){nd.prototype.point.call(this,t,e)};function pk(e){this._context=e}pk.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,s,o){this._context.bezierCurveTo(t,e,r,n,o,s)}};function h9(e){return new nd(e)}function m9(e){return new mk(e)}function gk(e){this._context=e}gk.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=f2(e),s=f2(t),o=0,u=1;u=0;--t)s[t]=(u[t]-s[t+1])/o[t];for(o[n-1]=(e[n]+s[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)}break}}this._x=e,this._y=t}};function g9(e){return new Wd(e,.5)}function y9(e){return new Wd(e,0)}function v9(e){return new Wd(e,1)}function Ya(e,t){if((u=e.length)>1)for(var n=1,r,s,o=e[t[0]],u,f=o.length;n=0;)n[t]=t;return n}function b9(e,t){return e[t]}function x9(e){const t=[];return t.key=e,t}function w9(){var e=Ye([]),t=Tv,n=Ya,r=b9;function s(o){var u=Array.from(e.apply(this,arguments),x9),f,d=u.length,h=-1,m;for(const p of o)for(f=0,++h;f0){for(var n,r,s=0,o=e[0].length,u;s0){for(var n=0,r=e[t[0]],s,o=r.length;n0)||!((o=(s=e[t[0]]).length)>0))){for(var n=0,r=1,s,o,u;r1&&arguments[1]!==void 0?arguments[1]:M9,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function ut(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var f=n[u-1];return typeof f=="string"?s+f+o:f!==void 0?s+Ji(f)+o:s+o},"")}var Wn=e=>e===0?0:e>0?1:-1,oi=e=>typeof e=="number"&&e!=+e,Ga=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,ye=e=>(typeof e=="number"||e instanceof Number)&&!oi(e),kr=e=>ye(e)||typeof e=="string",N9=0,au=e=>{var t=++N9;return"".concat(e||"").concat(t)},ra=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ye(t)&&typeof t!="string")return r;var o;if(Ga(t)){if(n==null)return r;var u=t.indexOf("%");o=n*parseFloat(t.slice(0,u))/100}else o=+t;return oi(o)&&(o=r),s&&n!=null&&o>n&&(o=n),o},vk=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):co(r,t))===n)}var k9=e=>{for(var t=e.length,n=0,r=0,s=0,o=0,u=1/0,f=-1/0,d=0,h=0,m=0;me===null||typeof e>"u",Ou=e=>dt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function mn(e){return e!=null}function _o(){}var C9=["type","size","sizeType"];function Ov(){return Ov=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(Ou(e));return xk[t]||Q0},U9=(e,t,n)=>{if(t==="area")return e;switch(n){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var r=18*I9;return 1.25*e*e*(Math.tan(r)-Math.tan(r*2)*Math.tan(r)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},V9=(e,t)=>{xk["symbol".concat(Ou(e))]=t},nb=e=>{var{type:t="circle",size:n=64,sizeType:r="area"}=e,s=L9(e,C9),o=x2(x2({},s),{},{type:t,size:n,sizeType:r}),u="circle";typeof t=="string"&&(u=t);var f=()=>{var v=B9(u),x=l9().type(v).size(U9(n,r,u)),w=x();if(w!==null)return w},{className:d,cx:h,cy:m}=o,p=er(o);return ye(h)&&ye(m)&&ye(n)?A.createElement("path",Ov({},p,{className:et("recharts-symbols",d),transform:"translate(".concat(h,", ").concat(m,")"),d:f()})):null};nb.registerSymbol=V9;var wk=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,q9=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(A.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(s=>{X0(s)&&typeof n[s]=="function"&&(r[s]=(o=>n[s](n,o)))}),r},$9=(e,t,n)=>r=>(e(t,n,r),null),_k=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(s=>{var o=e[s];X0(s)&&typeof o=="function"&&(r||(r={}),r[s]=$9(o,t,n))}),r},F9=e=>Array.isArray(e)&&e.length>0;function w2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function H9(e){for(var t=1;t(u[f]===void 0&&r[f]!==void 0&&(u[f]=r[f]),u),n);return o}var Og={},Eg={},_2;function G9(){return _2||(_2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){const s=new Map;for(let o=0;o=0}e.isLength=t})(Cg)),Cg}var O2;function Ak(){return O2||(O2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Z9();function n(r){return r!=null&&typeof r!="function"&&t.isLength(r.length)}e.isArrayLike=n})(kg)),kg}var Dg={},E2;function Q9(){return E2||(E2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="object"&&n!==null}e.isObjectLike=t})(Dg)),Dg}var j2;function J9(){return j2||(j2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Ak(),n=Q9();function r(s){return n.isObjectLike(s)&&t.isArrayLike(s)}e.isArrayLikeObject=r})(Ng)),Ng}var Pg={},Rg={},M2;function e7(){return M2||(M2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=tb();function n(r){return function(s){return t.get(s,r)}}e.property=n})(Rg)),Rg}var Lg={},zg={},Ig={},Bg={},N2;function Tk(){return N2||(N2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n!==null&&(typeof n=="object"||typeof n=="function")}e.isObject=t})(Bg)),Bg}var Ug={},k2;function Ok(){return k2||(k2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null||typeof n!="object"&&typeof n!="function"}e.isPrimitive=t})(Ug)),Ug}var Vg={},C2;function Ek(){return C2||(C2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){return n===r||Number.isNaN(n)&&Number.isNaN(r)}e.isEqualsSameValueZero=t})(Vg)),Vg}var D2;function t7(){return D2||(D2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Tk(),n=Ok(),r=Ek();function s(m,p,v){return typeof v!="function"?s(m,p,()=>{}):o(m,p,function x(w,_,S,O,M,j){const N=v(w,_,S,O,M,j);return N!==void 0?!!N:o(w,_,x,j)},new Map)}function o(m,p,v,x){if(p===m)return!0;switch(typeof p){case"object":return u(m,p,v,x);case"function":return Object.keys(p).length>0?o(m,{...p},v,x):r.isEqualsSameValueZero(m,p);default:return t.isObject(m)?typeof p=="string"?p==="":!0:r.isEqualsSameValueZero(m,p)}}function u(m,p,v,x){if(p==null)return!0;if(Array.isArray(p))return d(m,p,v,x);if(p instanceof Map)return f(m,p,v,x);if(p instanceof Set)return h(m,p,v,x);const w=Object.keys(p);if(m==null||n.isPrimitive(m))return w.length===0;if(w.length===0)return!0;if(x?.has(p))return x.get(p)===m;x?.set(p,m);try{for(let _=0;_{})}e.isMatch=n})(zg)),zg}var qg={},$g={},Fg={},R2;function n7(){return R2||(R2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Object.getOwnPropertySymbols(n).filter(r=>Object.prototype.propertyIsEnumerable.call(n,r))}e.getSymbols=t})(Fg)),Fg}var Hg={},L2;function rb(){return L2||(L2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null?n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(n)}e.getTag=t})(Hg)),Hg}var Kg={},z2;function Mk(){return z2||(z2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",n="[object String]",r="[object Number]",s="[object Boolean]",o="[object Arguments]",u="[object Symbol]",f="[object Date]",d="[object Map]",h="[object Set]",m="[object Array]",p="[object Function]",v="[object ArrayBuffer]",x="[object Object]",w="[object Error]",_="[object DataView]",S="[object Uint8Array]",O="[object Uint8ClampedArray]",M="[object Uint16Array]",j="[object Uint32Array]",N="[object BigUint64Array]",k="[object Int8Array]",C="[object Int16Array]",L="[object Int32Array]",I="[object BigInt64Array]",Y="[object Float32Array]",te="[object Float64Array]";e.argumentsTag=o,e.arrayBufferTag=v,e.arrayTag=m,e.bigInt64ArrayTag=I,e.bigUint64ArrayTag=N,e.booleanTag=s,e.dataViewTag=_,e.dateTag=f,e.errorTag=w,e.float32ArrayTag=Y,e.float64ArrayTag=te,e.functionTag=p,e.int16ArrayTag=C,e.int32ArrayTag=L,e.int8ArrayTag=k,e.mapTag=d,e.numberTag=r,e.objectTag=x,e.regexpTag=t,e.setTag=h,e.stringTag=n,e.symbolTag=u,e.uint16ArrayTag=M,e.uint32ArrayTag=j,e.uint8ArrayTag=S,e.uint8ClampedArrayTag=O})(Kg)),Kg}var Xg={},I2;function r7(){return I2||(I2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}e.isTypedArray=t})(Xg)),Xg}var B2;function Nk(){return B2||(B2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=n7(),n=rb(),r=Mk(),s=Ok(),o=r7();function u(m,p){return f(m,void 0,m,new Map,p)}function f(m,p,v,x=new Map,w=void 0){const _=w?.(m,p,v,x);if(_!==void 0)return _;if(s.isPrimitive(m))return m;if(x.has(m))return x.get(m);if(Array.isArray(m)){const S=new Array(m.length);x.set(m,S);for(let O=0;Ot.isMatch(o,s)}e.matches=r})(Lg)),Lg}var Yg={},Gg={},Wg={},q2;function s7(){return q2||(q2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Nk(),n=rb(),r=Mk();function s(o,u){return t.cloneDeepWith(o,(f,d,h,m)=>{const p=u?.(f,d,h,m);if(p!==void 0)return p;if(typeof o=="object"){if(n.getTag(o)===r.objectTag&&typeof o.constructor!="function"){const v={};return m.set(o,v),t.copyProperties(v,o,h,m),v}switch(Object.prototype.toString.call(o)){case r.numberTag:case r.stringTag:case r.booleanTag:{const v=new o.constructor(o?.valueOf());return t.copyProperties(v,o),v}case r.argumentsTag:{const v={};return t.copyProperties(v,o),v.length=o.length,v[Symbol.iterator]=o[Symbol.iterator],v}default:return}}})}e.cloneDeepWith=s})(Wg)),Wg}var $2;function o7(){return $2||($2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=s7();function n(r){return t.cloneDeepWith(r)}e.cloneDeep=n})(Gg)),Gg}var Zg={},Qg={},F2;function kk(){return F2||(F2=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function n(r,s=Number.MAX_SAFE_INTEGER){switch(typeof r){case"number":return Number.isInteger(r)&&r>=0&&r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?h:f;return iy.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:m,iy}var J2;function y7(){return J2||(J2=1,ry.exports=g7()),ry.exports}var eT;function v7(){if(eT)return ny;eT=1;var e=yo(),t=y7();function n(h,m){return h===m&&(h!==0||1/h===1/m)||h!==h&&m!==m}var r=typeof Object.is=="function"?Object.is:n,s=t.useSyncExternalStore,o=e.useRef,u=e.useEffect,f=e.useMemo,d=e.useDebugValue;return ny.useSyncExternalStoreWithSelector=function(h,m,p,v,x){var w=o(null);if(w.current===null){var _={hasValue:!1,value:null};w.current=_}else _=w.current;w=f(function(){function O(C){if(!M){if(M=!0,j=C,C=v(C),x!==void 0&&_.hasValue){var L=_.value;if(x(L,C))return N=L}return N=C}if(L=N,r(j,C))return L;var I=v(C);return x!==void 0&&x(L,I)?(j=C,L):(j=C,N=I)}var M=!1,j,N,k=p===void 0?null:p;return[function(){return O(m())},k===null?void 0:function(){return O(k())}]},[m,p,v,x]);var S=s(h,w[0],w[1]);return u(function(){_.hasValue=!0,_.value=S},[S]),d(S),S},ny}var tT;function b7(){return tT||(tT=1,ty.exports=v7()),ty.exports}var x7=b7(),ib=A.createContext(null),w7=e=>e,it=()=>{var e=A.useContext(ib);return e?e.store.dispatch:w7},Bf=()=>{},_7=()=>Bf,S7=(e,t)=>e===t;function ve(e){var t=A.useContext(ib),n=A.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Bf,[t,e]);return x7.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:_7,t?t.store.getState:Bf,t?t.store.getState:Bf,n,S7)}function A7(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function T7(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function O7(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var nT=e=>Array.isArray(e)?e:[e];function E7(e){const t=Array.isArray(e[0])?e[0]:e;return O7(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function j7(e,t){const n=[],{length:r}=e;for(let s=0;s{n=gf(),u.resetResultsCount()},u.resultsCount=()=>o,u.resetResultsCount=()=>{o=0},u}function C7(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...s)=>{let o=0,u=0,f,d={},h=s.pop();typeof h=="object"&&(d=h,h=s.pop()),A7(h,`createSelector expects an output function after the inputs, but received: [${typeof h}]`);const m={...n,...d},{memoize:p,memoizeOptions:v=[],argsMemoize:x=Ck,argsMemoizeOptions:w=[]}=m,_=nT(v),S=nT(w),O=E7(s),M=p(function(){return o++,h.apply(null,arguments)},..._),j=x(function(){u++;const k=j7(O,arguments);return f=M.apply(null,k),f},...S);return Object.assign(j,{resultFunc:h,memoizedResultFunc:M,dependencies:O,dependencyRecomputations:()=>u,resetDependencyRecomputations:()=>{u=0},lastResult:()=>f,recomputations:()=>o,resetRecomputations:()=>{o=0},memoize:p,argsMemoize:x})};return Object.assign(r,{withTypes:()=>r}),r}var $=C7(Ck),D7=Object.assign((e,t=$)=>{T7(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),r=n.map(o=>e[o]);return t(r,(...o)=>o.reduce((u,f,d)=>(u[n[d]]=f,u),{}))},{withTypes:()=>D7}),ay={},sy={},oy={},iT;function P7(){return iT||(iT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"?1:r===null?2:r===void 0?3:r!==r?4:0}const n=(r,s,o)=>{if(r!==s){const u=t(r),f=t(s);if(u===f&&u===0){if(rs)return o==="desc"?-1:1}return o==="desc"?f-u:u-f}return 0};e.compareValues=n})(oy)),oy}var ly={},uy={},aT;function Dk(){return aT||(aT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"||n instanceof Symbol}e.isSymbol=t})(uy)),uy}var sT;function R7(){return sT||(sT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Dk(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function s(o,u){return Array.isArray(o)?!1:typeof o=="number"||typeof o=="boolean"||o==null||t.isSymbol(o)?!0:typeof o=="string"&&(r.test(o)||!n.test(o))||u!=null&&Object.hasOwn(u,o)}e.isKey=s})(ly)),ly}var oT;function L7(){return oT||(oT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=P7(),n=R7(),r=eb();function s(o,u,f,d){if(o==null)return[];f=d?void 0:f,Array.isArray(o)||(o=Object.values(o)),Array.isArray(u)||(u=u==null?[null]:[u]),u.length===0&&(u=[null]),Array.isArray(f)||(f=f==null?[]:[f]),f=f.map(x=>String(x));const h=(x,w)=>{let _=x;for(let S=0;Sw==null||x==null?w:typeof x=="object"&&"key"in x?Object.hasOwn(w,x.key)?w[x.key]:h(w,x.path):typeof x=="function"?x(w):Array.isArray(x)?h(w,x):typeof w=="object"?w[x]:w,p=u.map(x=>(Array.isArray(x)&&x.length===1&&(x=x[0]),x==null||typeof x=="function"||Array.isArray(x)||n.isKey(x)?x:{key:x,path:r.toPath(x)}));return o.map(x=>({original:x,criteria:p.map(w=>m(w,x))})).slice().sort((x,w)=>{for(let _=0;_x.original)}e.orderBy=s})(sy)),sy}var cy={},lT;function z7(){return lT||(lT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r=1){const s=[],o=Math.floor(r),u=(f,d)=>{for(let h=0;h1&&r.isIterateeCall(o,u[0],u[1])?u=[]:f>2&&r.isIterateeCall(u[0],u[1],u[2])&&(u=[u[0]]),t.orderBy(o,n.flatten(u),["asc"])}e.sortBy=s})(ay)),ay}var dy,fT;function B7(){return fT||(fT=1,dy=I7().sortBy),dy}var U7=B7();const Zd=ia(U7);var Rk=e=>e.legend.settings,V7=e=>e.legend.size,q7=e=>e.legend.payload;$([q7,Rk],(e,t)=>{var{itemSorter:n}=t,r=e.flat(1);return n?Zd(r,n):r});var yf=1;function $7(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,n]=A.useState({height:0,left:0,top:0,width:0}),r=A.useCallback(s=>{if(s!=null){var o=s.getBoundingClientRect(),u={height:o.height,left:o.left,top:o.top,width:o.width};(Math.abs(u.height-t.height)>yf||Math.abs(u.left-t.left)>yf||Math.abs(u.top-t.top)>yf||Math.abs(u.width-t.width)>yf)&&n({height:u.height,left:u.left,top:u.top,width:u.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,r]}function $t(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 F7=typeof Symbol=="function"&&Symbol.observable||"@@observable",dT=F7,hy=()=>Math.random().toString(36).substring(7).split("").join("."),H7={INIT:`@@redux/INIT${hy()}`,REPLACE:`@@redux/REPLACE${hy()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${hy()}`},rd=H7;function ab(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function Lk(e,t,n){if(typeof e!="function")throw new Error($t(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error($t(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error($t(1));return n(Lk)(e,t)}let r=e,s=t,o=new Map,u=o,f=0,d=!1;function h(){u===o&&(u=new Map,o.forEach((S,O)=>{u.set(O,S)}))}function m(){if(d)throw new Error($t(3));return s}function p(S){if(typeof S!="function")throw new Error($t(4));if(d)throw new Error($t(5));let O=!0;h();const M=f++;return u.set(M,S),function(){if(O){if(d)throw new Error($t(6));O=!1,h(),u.delete(M),o=null}}}function v(S){if(!ab(S))throw new Error($t(7));if(typeof S.type>"u")throw new Error($t(8));if(typeof S.type!="string")throw new Error($t(17));if(d)throw new Error($t(9));try{d=!0,s=r(s,S)}finally{d=!1}return(o=u).forEach(M=>{M()}),S}function x(S){if(typeof S!="function")throw new Error($t(10));r=S,v({type:rd.REPLACE})}function w(){const S=p;return{subscribe(O){if(typeof O!="object"||O===null)throw new Error($t(11));function M(){const N=O;N.next&&N.next(m())}return M(),{unsubscribe:S(M)}},[dT](){return this}}}return v({type:rd.INIT}),{dispatch:v,subscribe:p,getState:m,replaceReducer:x,[dT]:w}}function K7(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:rd.INIT})>"u")throw new Error($t(12));if(typeof n(void 0,{type:rd.PROBE_UNKNOWN_ACTION()})>"u")throw new Error($t(13))})}function zk(e){const t=Object.keys(e),n={};for(let o=0;o"u")throw f&&f.type,new Error($t(14));h[p]=w,d=d||w!==x}return d=d||r.length!==Object.keys(u).length,d?h:u}}function id(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function X7(...e){return t=>(n,r)=>{const s=t(n,r);let o=()=>{throw new Error($t(15))};const u={getState:s.getState,dispatch:(d,...h)=>o(d,...h)},f=e.map(d=>d(u));return o=id(...f)(s.dispatch),{...s,dispatch:o}}}function Ik(e){return ab(e)&&"type"in e&&typeof e.type=="string"}var Bk=Symbol.for("immer-nothing"),hT=Symbol.for("immer-draftable"),an=Symbol.for("immer-state");function lr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Cn=Object,fo=Cn.getPrototypeOf,ad="constructor",Qd="prototype",Ev="configurable",sd="enumerable",Uf="writable",su="value",li=e=>!!e&&!!e[an];function mr(e){return e?Uk(e)||eh(e)||!!e[hT]||!!e[ad]?.[hT]||th(e)||nh(e):!1}var Y7=Cn[Qd][ad].toString(),mT=new WeakMap;function Uk(e){if(!e||!sb(e))return!1;const t=fo(e);if(t===null||t===Cn[Qd])return!0;const n=Cn.hasOwnProperty.call(t,ad)&&t[ad];if(n===Object)return!0;if(!Ws(n))return!1;let r=mT.get(n);return r===void 0&&(r=Function.toString.call(n),mT.set(n,r)),r===Y7}function Jd(e,t,n=!0){Eu(e)===0?(n?Reflect.ownKeys(e):Cn.keys(e)).forEach(s=>{t(s,e[s],e)}):e.forEach((r,s)=>t(s,r,e))}function Eu(e){const t=e[an];return t?t.type_:eh(e)?1:th(e)?2:nh(e)?3:0}var pT=(e,t,n=Eu(e))=>n===2?e.has(t):Cn[Qd].hasOwnProperty.call(e,t),jv=(e,t,n=Eu(e))=>n===2?e.get(t):e[t],od=(e,t,n,r=Eu(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function G7(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var eh=Array.isArray,th=e=>e instanceof Map,nh=e=>e instanceof Set,sb=e=>typeof e=="object",Ws=e=>typeof e=="function",my=e=>typeof e=="boolean";function W7(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Jr=e=>e.copy_||e.base_,ob=e=>e.modified_?e.copy_:e.base_;function Mv(e,t){if(th(e))return new Map(e);if(nh(e))return new Set(e);if(eh(e))return Array[Qd].slice.call(e);const n=Uk(e);if(t===!0||t==="class_only"&&!n){const r=Cn.getOwnPropertyDescriptors(e);delete r[an];let s=Reflect.ownKeys(r);for(let o=0;o1&&Cn.defineProperties(e,{set:vf,add:vf,clear:vf,delete:vf}),Cn.freeze(e),t&&Jd(e,(n,r)=>{lb(r,!0)},!1)),e}function Z7(){lr(2)}var vf={[su]:Z7};function rh(e){return e===null||!sb(e)?!0:Cn.isFrozen(e)}var ld="MapSet",Nv="Patches",gT="ArrayMethods",Vk={};function Wa(e){const t=Vk[e];return t||lr(0,e),t}var yT=e=>!!Vk[e],ou,qk=()=>ou,Q7=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:yT(ld)?Wa(ld):void 0,arrayMethodsPlugin_:yT(gT)?Wa(gT):void 0});function vT(e,t){t&&(e.patchPlugin_=Wa(Nv),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function kv(e){Cv(e),e.drafts_.forEach(J7),e.drafts_=null}function Cv(e){e===ou&&(ou=e.parent_)}var bT=e=>ou=Q7(ou,e);function J7(e){const t=e[an];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function xT(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[an].modified_&&(kv(t),lr(4)),mr(e)&&(e=wT(t,e));const{patchPlugin_:s}=t;s&&s.generateReplacementPatches_(n[an].base_,e,t)}else e=wT(t,n);return eU(t,e,!0),kv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==Bk?e:void 0}function wT(e,t){if(rh(t))return t;const n=t[an];if(!n)return ud(t,e.handledSet_,e);if(!ih(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);Hk(n,e)}return n.copy_}function eU(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&lb(t,n)}function $k(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var ih=(e,t)=>e.scope_===t,tU=[];function Fk(e,t,n,r){const s=Jr(e),o=e.type_;if(r!==void 0&&jv(s,r,o)===t){od(s,r,n,o);return}if(!e.draftLocations_){const f=e.draftLocations_=new Map;Jd(s,(d,h)=>{if(li(h)){const m=f.get(h)||[];m.push(d),f.set(h,m)}})}const u=e.draftLocations_.get(t)??tU;for(const f of u)od(s,f,n,o)}function nU(e,t,n){e.callbacks_.push(function(s){const o=t;if(!o||!ih(o,s))return;s.mapSetPlugin_?.fixSetContents(o);const u=ob(o);Fk(e,o.draft_??o,u,n),Hk(o,s)})}function Hk(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:r}=t;if(r){const s=r.getPath(e);s&&r.generatePatches_(e,s,t)}$k(e)}}function rU(e,t,n){const{scope_:r}=e;if(li(n)){const s=n[an];ih(s,r)&&s.callbacks_.push(function(){Vf(e);const u=ob(s);Fk(e,n,u,t)})}else mr(n)&&e.callbacks_.push(function(){const o=Jr(e);e.type_===3?o.has(n)&&ud(n,r.handledSet_,r):jv(o,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ud(jv(e.copy_,t,e.type_),r.handledSet_,r)})}function ud(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||li(e)||t.has(e)||!mr(e)||rh(e)||(t.add(e),Jd(e,(r,s)=>{if(li(s)){const o=s[an];if(ih(o,n)){const u=ob(o);od(e,r,u,e.type_),$k(o)}}else mr(s)&&ud(s,t,n)})),e}function iU(e,t){const n=eh(e),r={type_:n?1:0,scope_:t?t.scope_:qk(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let s=r,o=cd;n&&(s=[r],o=lu);const{revoke:u,proxy:f}=Proxy.revocable(s,o);return r.draft_=f,r.revoke_=u,[f,r]}var cd={get(e,t){if(t===an)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const s=Jr(e);if(!pT(s,t,e.type_))return aU(e,s,t);const o=s[t];if(e.finalized_||!mr(o)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&W7(t))return o;if(o===py(e.base_,t)){Vf(e);const u=e.type_===1?+t:t,f=Pv(e.scope_,o,e,u);return e.copy_[u]=f}return o},has(e,t){return t in Jr(e)},ownKeys(e){return Reflect.ownKeys(Jr(e))},set(e,t,n){const r=Kk(Jr(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const s=py(Jr(e),t),o=s?.[an];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(G7(n,s)&&(n!==void 0||pT(e.base_,t,e.type_)))return!0;Vf(e),Dv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),rU(e,t,n)),!0},deleteProperty(e,t){return Vf(e),py(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Dv(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Jr(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Uf]:!0,[Ev]:e.type_!==1||t!=="length",[sd]:r[sd],[su]:n[t]}},defineProperty(){lr(11)},getPrototypeOf(e){return fo(e.base_)},setPrototypeOf(){lr(12)}},lu={};for(let e in cd){let t=cd[e];lu[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}lu.deleteProperty=function(e,t){return lu.set.call(this,e,t,void 0)};lu.set=function(e,t,n){return cd.set.call(this,e[0],t,n,e[0])};function py(e,t){const n=e[an];return(n?Jr(n):e)[t]}function aU(e,t,n){const r=Kk(t,n);return r?su in r?r[su]:r.get?.call(e.draft_):void 0}function Kk(e,t){if(!(t in e))return;let n=fo(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=fo(n)}}function Dv(e){e.modified_||(e.modified_=!0,e.parent_&&Dv(e.parent_))}function Vf(e){e.copy_||(e.assigned_=new Map,e.copy_=Mv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var sU=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,s)=>{if(Ws(n)&&!Ws(r)){const u=r;r=n;const f=this;return function(h=u,...m){return f.produce(h,p=>r.call(this,p,...m))}}Ws(r)||lr(6),s!==void 0&&!Ws(s)&&lr(7);let o;if(mr(n)){const u=bT(this),f=Pv(u,n,void 0);let d=!0;try{o=r(f),d=!1}finally{d?kv(u):Cv(u)}return vT(u,s),xT(o,u)}else if(!n||!sb(n)){if(o=r(n),o===void 0&&(o=n),o===Bk&&(o=void 0),this.autoFreeze_&&lb(o,!0),s){const u=[],f=[];Wa(Nv).generateReplacementPatches_(n,o,{patches_:u,inversePatches_:f}),s(u,f)}return o}else lr(1,n)},this.produceWithPatches=(n,r)=>{if(Ws(n))return(f,...d)=>this.produceWithPatches(f,h=>n(h,...d));let s,o;return[this.produce(n,r,(f,d)=>{s=f,o=d}),s,o]},my(t?.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),my(t?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),my(t?.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){mr(t)||lr(8),li(t)&&(t=Zn(t));const n=bT(this),r=Pv(n,t,void 0);return r[an].isManual_=!0,Cv(n),r}finishDraft(t,n){const r=t&&t[an];(!r||!r.isManual_)&&lr(9);const{scope_:s}=r;return vT(s,n),xT(void 0,s)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,n){let r;for(r=n.length-1;r>=0;r--){const o=n[r];if(o.path.length===0&&o.op==="replace"){t=o.value;break}}r>-1&&(n=n.slice(r+1));const s=Wa(Nv).applyPatches_;return li(t)?s(t,n):this.produce(t,o=>s(o,n))}};function Pv(e,t,n,r){const[s,o]=th(t)?Wa(ld).proxyMap_(t,n):nh(t)?Wa(ld).proxySet_(t,n):iU(t,n);return(n?.scope_??qk()).drafts_.push(s),o.callbacks_=n?.callbacks_??[],o.key_=r,n&&r!==void 0?nU(n,o,r):o.callbacks_.push(function(d){d.mapSetPlugin_?.fixSetContents(o);const{patchPlugin_:h}=d;o.modified_&&h&&h.generatePatches_(o,[],d)}),s}function Zn(e){return li(e)||lr(10,e),Xk(e)}function Xk(e){if(!mr(e)||rh(e))return e;const t=e[an];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Mv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Mv(e,!0);return Jd(n,(s,o)=>{od(n,s,Xk(o))},r),t&&(t.finalized_=!1),n}var oU=new sU,Yk=oU.produce;function Gk(e){return({dispatch:n,getState:r})=>s=>o=>typeof o=="function"?o(n,r,e):s(o)}var lU=Gk(),uU=Gk,cU=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?id:id.apply(null,arguments)};function Pn(e,t){function n(...r){if(t){let s=t(...r);if(!s)throw new Error(Dn(0));return{type:e,payload:s.payload,..."meta"in s&&{meta:s.meta},..."error"in s&&{error:s.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>Ik(r)&&r.type===e,n}var Wk=class Fl extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Fl.prototype)}static get[Symbol.species](){return Fl}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Fl(...t[0].concat(this)):new Fl(...t.concat(this))}};function _T(e){return mr(e)?Yk(e,()=>{}):e}function bf(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function fU(e){return typeof e=="boolean"}var dU=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:s=!0,actionCreatorCheck:o=!0}=t??{};let u=new Wk;return n&&(fU(n)?u.push(lU):u.push(uU(n.extraArgument))),u},Zk="RTK_autoBatch",Qe=()=>e=>({payload:e,meta:{[Zk]:!0}}),ST=e=>t=>{setTimeout(t,e)},Qk=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let s=!0,o=!1,u=!1;const f=new Set,d=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:ST(10):e.type==="callback"?e.queueNotification:ST(e.timeout),h=()=>{u=!1,o&&(o=!1,f.forEach(m=>m()))};return Object.assign({},r,{subscribe(m){const p=()=>s&&m(),v=r.subscribe(p);return f.add(m),()=>{v(),f.delete(m)}},dispatch(m){try{return s=!m?.meta?.[Zk],o=!s,o&&(u||(u=!0,d(h))),r.dispatch(m)}finally{s=!0}}})},hU=e=>function(n){const{autoBatch:r=!0}=n??{};let s=new Wk(e);return r&&s.push(Qk(typeof r=="object"?r:void 0)),s};function mU(e){const t=dU(),{reducer:n=void 0,middleware:r,devTools:s=!0,preloadedState:o=void 0,enhancers:u=void 0}=e||{};let f;if(typeof n=="function")f=n;else if(ab(n))f=zk(n);else throw new Error(Dn(1));let d;typeof r=="function"?d=r(t):d=t();let h=id;s&&(h=cU({trace:!1,...typeof s=="object"&&s}));const m=X7(...d),p=hU(m);let v=typeof u=="function"?u(p):p();const x=h(...v);return Lk(f,o,x)}function Jk(e){const t={},n=[];let r;const s={addCase(o,u){const f=typeof o=="string"?o:o.type;if(!f)throw new Error(Dn(28));if(f in t)throw new Error(Dn(29));return t[f]=u,s},addAsyncThunk(o,u){return u.pending&&(t[o.pending.type]=u.pending),u.rejected&&(t[o.rejected.type]=u.rejected),u.fulfilled&&(t[o.fulfilled.type]=u.fulfilled),u.settled&&n.push({matcher:o.settled,reducer:u.settled}),s},addMatcher(o,u){return n.push({matcher:o,reducer:u}),s},addDefaultCase(o){return r=o,s}};return e(s),[t,n,r]}function pU(e){return typeof e=="function"}function gU(e,t){let[n,r,s]=Jk(t),o;if(pU(e))o=()=>_T(e());else{const f=_T(e);o=()=>f}function u(f=o(),d){let h=[n[d.type],...r.filter(({matcher:m})=>m(d)).map(({reducer:m})=>m)];return h.filter(m=>!!m).length===0&&(h=[s]),h.reduce((m,p)=>{if(p)if(li(m)){const x=p(m,d);return x===void 0?m:x}else{if(mr(m))return Yk(m,v=>p(v,d));{const v=p(m,d);if(v===void 0){if(m===null)return m;throw Error("A case reducer on a non-draftable value must not return undefined")}return v}}return m},f)}return u.getInitialState=o,u}var yU="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",vU=(e=21)=>{let t="",n=e;for(;n--;)t+=yU[Math.random()*64|0];return t},bU=Symbol.for("rtk-slice-createasyncthunk");function xU(e,t){return`${e}/${t}`}function wU({creators:e}={}){const t=e?.asyncThunk?.[bU];return function(r){const{name:s,reducerPath:o=s}=r;if(!s)throw new Error(Dn(11));const u=(typeof r.reducers=="function"?r.reducers(SU()):r.reducers)||{},f=Object.keys(u),d={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},h={addCase(j,N){const k=typeof j=="string"?j:j.type;if(!k)throw new Error(Dn(12));if(k in d.sliceCaseReducersByType)throw new Error(Dn(13));return d.sliceCaseReducersByType[k]=N,h},addMatcher(j,N){return d.sliceMatchers.push({matcher:j,reducer:N}),h},exposeAction(j,N){return d.actionCreators[j]=N,h},exposeCaseReducer(j,N){return d.sliceCaseReducersByName[j]=N,h}};f.forEach(j=>{const N=u[j],k={reducerName:j,type:xU(s,j),createNotation:typeof r.reducers=="function"};TU(N)?EU(k,N,h,t):AU(k,N,h)});function m(){const[j={},N=[],k=void 0]=typeof r.extraReducers=="function"?Jk(r.extraReducers):[r.extraReducers],C={...j,...d.sliceCaseReducersByType};return gU(r.initialState,L=>{for(let I in C)L.addCase(I,C[I]);for(let I of d.sliceMatchers)L.addMatcher(I.matcher,I.reducer);for(let I of N)L.addMatcher(I.matcher,I.reducer);k&&L.addDefaultCase(k)})}const p=j=>j,v=new Map,x=new WeakMap;let w;function _(j,N){return w||(w=m()),w(j,N)}function S(){return w||(w=m()),w.getInitialState()}function O(j,N=!1){function k(L){let I=L[j];return typeof I>"u"&&N&&(I=bf(x,k,S)),I}function C(L=p){const I=bf(v,N,()=>new WeakMap);return bf(I,L,()=>{const Y={};for(const[te,ie]of Object.entries(r.selectors??{}))Y[te]=_U(ie,L,()=>bf(x,L,S),N);return Y})}return{reducerPath:j,getSelectors:C,get selectors(){return C(k)},selectSlice:k}}const M={name:s,reducer:_,actions:d.actionCreators,caseReducers:d.sliceCaseReducersByName,getInitialState:S,...O(o),injectInto(j,{reducerPath:N,...k}={}){const C=N??o;return j.inject({reducerPath:C,reducer:_},k),{...M,...O(C,!0)}}};return M}}function _U(e,t,n,r){function s(o,...u){let f=t(o);return typeof f>"u"&&r&&(f=n()),e(f,...u)}return s.unwrapped=e,s}var Qt=wU();function SU(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function AU({type:e,reducerName:t,createNotation:n},r,s){let o,u;if("reducer"in r){if(n&&!OU(r))throw new Error(Dn(17));o=r.reducer,u=r.prepare}else o=r;s.addCase(e,o).exposeCaseReducer(t,o).exposeAction(t,u?Pn(e,u):Pn(e))}function TU(e){return e._reducerDefinitionType==="asyncThunk"}function OU(e){return e._reducerDefinitionType==="reducerWithPrepare"}function EU({type:e,reducerName:t},n,r,s){if(!s)throw new Error(Dn(18));const{payloadCreator:o,fulfilled:u,pending:f,rejected:d,settled:h,options:m}=n,p=s(e,o,m);r.exposeAction(t,p),u&&r.addCase(p.fulfilled,u),f&&r.addCase(p.pending,f),d&&r.addCase(p.rejected,d),h&&r.addMatcher(p.settled,h),r.exposeCaseReducer(t,{fulfilled:u||xf,pending:f||xf,rejected:d||xf,settled:h||xf})}function xf(){}var jU="task",eC="listener",tC="completed",ub="cancelled",MU=`task-${ub}`,NU=`task-${tC}`,Rv=`${eC}-${ub}`,kU=`${eC}-${tC}`,ah=class{constructor(e){this.code=e,this.message=`${jU} ${ub} (reason: ${e})`}name="TaskAbortError";message},cb=(e,t)=>{if(typeof e!="function")throw new TypeError(Dn(32))},fd=()=>{},nC=(e,t=fd)=>(e.catch(t),e),rC=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Ha=e=>{if(e.aborted)throw new ah(e.reason)};function iC(e,t){let n=fd;return new Promise((r,s)=>{const o=()=>s(new ah(e.reason));if(e.aborted){o();return}n=rC(e,o),t.finally(()=>n()).then(r,s)}).finally(()=>{n=fd})}var CU=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof ah?"cancelled":"rejected",error:n}}finally{t?.()}},dd=e=>t=>nC(iC(e,t).then(n=>(Ha(e),n))),aC=e=>{const t=dd(e);return n=>t(new Promise(r=>setTimeout(r,n)))},{assign:so}=Object,AT={},sh="listenerMiddleware",DU=(e,t)=>{const n=r=>rC(e,()=>r.abort(e.reason));return(r,s)=>{cb(r);const o=new AbortController;n(o);const u=CU(async()=>{Ha(e),Ha(o.signal);const f=await r({pause:dd(o.signal),delay:aC(o.signal),signal:o.signal});return Ha(o.signal),f},()=>o.abort(NU));return s?.autoJoin&&t.push(u.catch(fd)),{result:dd(e)(u),cancel(){o.abort(MU)}}}},PU=(e,t)=>{const n=async(r,s)=>{Ha(t);let o=()=>{};const f=[new Promise((d,h)=>{let m=e({predicate:r,effect:(p,v)=>{v.unsubscribe(),d([p,v.getState(),v.getOriginalState()])}});o=()=>{m(),h()}})];s!=null&&f.push(new Promise(d=>setTimeout(d,s,null)));try{const d=await iC(t,Promise.race(f));return Ha(t),d}finally{o()}};return(r,s)=>nC(n(r,s))},sC=e=>{let{type:t,actionCreator:n,matcher:r,predicate:s,effect:o}=e;if(t)s=Pn(t).match;else if(n)t=n.type,s=n.match;else if(r)s=r;else if(!s)throw new Error(Dn(21));return cb(o),{predicate:s,type:t,effect:o}},oC=so(e=>{const{type:t,predicate:n,effect:r}=sC(e);return{id:vU(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(Dn(22))}}},{withTypes:()=>oC}),TT=(e,t)=>{const{type:n,effect:r,predicate:s}=sC(t);return Array.from(e.values()).find(o=>(typeof n=="string"?o.type===n:o.predicate===s)&&o.effect===r)},Lv=e=>{e.pending.forEach(t=>{t.abort(Rv)})},RU=(e,t)=>()=>{for(const n of t.keys())Lv(n);e.clear()},OT=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},lC=so(Pn(`${sh}/add`),{withTypes:()=>lC}),LU=Pn(`${sh}/removeAll`),uC=so(Pn(`${sh}/remove`),{withTypes:()=>uC}),zU=(...e)=>{console.error(`${sh}/error`,...e)},ju=(e={})=>{const t=new Map,n=new Map,r=x=>{const w=n.get(x)??0;n.set(x,w+1)},s=x=>{const w=n.get(x)??1;w===1?n.delete(x):n.set(x,w-1)},{extra:o,onError:u=zU}=e;cb(u);const f=x=>(x.unsubscribe=()=>t.delete(x.id),t.set(x.id,x),w=>{x.unsubscribe(),w?.cancelActive&&Lv(x)}),d=x=>{const w=TT(t,x)??oC(x);return f(w)};so(d,{withTypes:()=>d});const h=x=>{const w=TT(t,x);return w&&(w.unsubscribe(),x.cancelActive&&Lv(w)),!!w};so(h,{withTypes:()=>h});const m=async(x,w,_,S)=>{const O=new AbortController,M=PU(d,O.signal),j=[];try{x.pending.add(O),r(x),await Promise.resolve(x.effect(w,so({},_,{getOriginalState:S,condition:(N,k)=>M(N,k).then(Boolean),take:M,delay:aC(O.signal),pause:dd(O.signal),extra:o,signal:O.signal,fork:DU(O.signal,j),unsubscribe:x.unsubscribe,subscribe:()=>{t.set(x.id,x)},cancelActiveListeners:()=>{x.pending.forEach((N,k,C)=>{N!==O&&(N.abort(Rv),C.delete(N))})},cancel:()=>{O.abort(Rv),x.pending.delete(O)},throwIfCancelled:()=>{Ha(O.signal)}})))}catch(N){N instanceof ah||OT(u,N,{raisedBy:"effect"})}finally{await Promise.all(j),O.abort(kU),s(x),x.pending.delete(O)}},p=RU(t,n);return{middleware:x=>w=>_=>{if(!Ik(_))return w(_);if(lC.match(_))return d(_.payload);if(LU.match(_)){p();return}if(uC.match(_))return h(_.payload);let S=x.getState();const O=()=>{if(S===AT)throw new Error(Dn(23));return S};let M;try{if(M=w(_),t.size>0){const j=x.getState(),N=Array.from(t.values());for(const k of N){let C=!1;try{C=k.predicate(_,j,S)}catch(L){C=!1,OT(u,L,{raisedBy:"predicate"})}C&&m(k,_,x,O)}}}finally{S=AT}return M},startListening:d,stopListening:h,clearListeners:p}};function Dn(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 IU={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},cC=Qt({name:"chartLayout",initialState:IU,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,s,o;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(s=t.payload.bottom)!==null&&s!==void 0?s:0,e.margin.left=(o=t.payload.left)!==null&&o!==void 0?o:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:BU,setLayout:UU,setChartSize:VU,setScale:qU}=cC.actions,$U=cC.reducer;function fC(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function Le(e){return Number.isFinite(e)}function Cr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function ET(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ro(e){for(var t=1;t{if(t&&n){var{width:r,height:s}=n,{align:o,verticalAlign:u,layout:f}=t;if((f==="vertical"||f==="horizontal"&&u==="middle")&&o!=="center"&&ye(e[o]))return ro(ro({},e),{},{[o]:e[o]+(r||0)});if((f==="horizontal"||f==="vertical"&&o==="center")&&u!=="middle"&&ye(e[u]))return ro(ro({},e),{},{[u]:e[u]+(s||0)})}return e},sa=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",dC=(e,t,n,r)=>{if(r)return e.map(f=>f.coordinate);var s,o,u=e.map(f=>(f.coordinate===t&&(s=!0),f.coordinate===n&&(o=!0),f.coordinate));return s||u.push(t),o||u.push(n),u},hC=(e,t,n)=>{if(!e)return null;var{duplicateDomain:r,type:s,range:o,scale:u,realScaleType:f,isCategorical:d,categoricalDomain:h,tickCount:m,ticks:p,niceTicks:v,axisType:x}=e;if(!u)return null;var w=f==="scaleBand"&&u.bandwidth?u.bandwidth()/2:2,_=s==="category"&&u.bandwidth?u.bandwidth()/w:0;if(_=x==="angleAxis"&&o&&o.length>=2?Wn(o[0]-o[1])*2*_:_,p||v){var S=(p||v||[]).map((O,M)=>{var j=r?r.indexOf(O):O,N=u.map(j);return Le(N)?{coordinate:N+_,value:O,offset:_,index:M}:null}).filter(mn);return S}return d&&h?h.map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:O,index:M,offset:_}:null}).filter(mn):u.ticks&&m!=null?u.ticks(m).map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:O,index:M,offset:_}:null}).filter(mn):u.domain().map((O,M)=>{var j=u.map(O);return Le(j)?{coordinate:j+_,value:r?r[O]:O,index:M,offset:_}:null}).filter(mn)},YU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var s=0;s=0?(h[0]=o,o+=v,h[1]=o):(h[0]=u,u+=v,h[1]=u)}}}},GU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var s=0;s=0?(d[0]=o,o+=h,d[1]=o):(d[0]=0,d[1]=0)}}}},WU={sign:YU,expand:_9,none:Ya,silhouette:S9,wiggle:A9,positive:GU},ZU=(e,t,n)=>{var r,s=(r=WU[n])!==null&&r!==void 0?r:Ya,o=w9().keys(t).value((f,d)=>Number(Ot(f,d,0))).order(Tv).offset(s),u=o(e);return u.forEach((f,d)=>{f.forEach((h,m)=>{var p=Ot(e[m],t[d],0);Array.isArray(p)&&p.length===2&&ye(p[0])&&ye(p[1])&&(h[0]=p[0],h[1]=p[1])})}),u};function jT(e){var{axis:t,ticks:n,bandSize:r,entry:s,index:o,dataKey:u}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!dt(s[t.dataKey])){var f=bk(n,"value",s[t.dataKey]);if(f)return f.coordinate+r/2}return n!=null&&n[o]?n[o].coordinate+r/2:null}var d=Ot(s,dt(u)?t.dataKey:u),h=t.scale.map(d);return ye(h)?h:null}var QU=e=>{var t=e.flat(2).filter(ye);return[Math.min(...t),Math.max(...t)]},JU=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],eV=(e,t,n)=>{if(e!=null)return JU(Object.keys(e).reduce((r,s)=>{var o=e[s];if(!o)return r;var{stackedData:u}=o,f=u.reduce((d,h)=>{var m=fC(h,t,n),p=QU(m);return!Le(p[0])||!Le(p[1])?d:[Math.min(d[0],p[0]),Math.max(d[1],p[1])]},[1/0,-1/0]);return[Math.min(f[0],r[0]),Math.max(f[1],r[1])]},[1/0,-1/0]))},MT=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,NT=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,kT=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();return r}if(e&&t&&t.length>=2){for(var s=Zd(t,m=>m.coordinate),o=1/0,u=1,f=s.length;u{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},nV=(e,t)=>t==="centric"?e.angle:e.radius,hi=e=>e.layout.width,mi=e=>e.layout.height,rV=e=>e.layout.scale,pC=e=>e.layout.margin,oh=$(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),lh=$(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),iV="data-recharts-item-index",gC="data-recharts-item-id",Mu=60;function DT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function wf(e){for(var t=1;te.brush.height;function uV(e){var t=lh(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var s=typeof r.width=="number"?r.width:Mu;return n+s}return n},0)}function cV(e){var t=lh(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var s=typeof r.width=="number"?r.width:Mu;return n+s}return n},0)}function fV(e){var t=oh(e);return t.reduce((n,r)=>r.orientation==="top"&&!r.mirror&&!r.hide?n+r.height:n,0)}function dV(e){var t=oh(e);return t.reduce((n,r)=>r.orientation==="bottom"&&!r.mirror&&!r.hide?n+r.height:n,0)}var Xt=$([hi,mi,pC,lV,uV,cV,fV,dV,Rk,V7],(e,t,n,r,s,o,u,f,d,h)=>{var m={left:(n.left||0)+s,right:(n.right||0)+o},p={top:(n.top||0)+u,bottom:(n.bottom||0)+f},v=wf(wf({},p),m),x=v.bottom;v.bottom+=r,v=XU(v,d,h);var w=e-v.left-v.right,_=t-v.top-v.bottom;return wf(wf({brushBottom:x},v),{},{width:Math.max(w,0),height:Math.max(_,0)})}),hV=$(Xt,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),yC=$(hi,mi,(e,t)=>({x:0,y:0,width:e,height:t})),mV=A.createContext(null),Jt=()=>A.useContext(mV)!=null,uh=e=>e.brush,ch=$([uh,Xt,pC],(e,t,n)=>({height:e.height,x:ye(e.x)?e.x:t.left,y:ye(e.y)?e.y:t.top+t.height+t.brushBottom-(n?.bottom||0),width:ye(e.width)?e.width:t.width})),gy={},yy={},vy={},PT;function pV(){return PT||(PT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r,{signal:s,edges:o}={}){let u,f=null;const d=o!=null&&o.includes("leading"),h=o==null||o.includes("trailing"),m=()=>{f!==null&&(n.apply(u,f),u=void 0,f=null)},p=()=>{h&&m(),_()};let v=null;const x=()=>{v!=null&&clearTimeout(v),v=setTimeout(()=>{v=null,p()},r)},w=()=>{v!==null&&(clearTimeout(v),v=null)},_=()=>{w(),u=void 0,f=null},S=()=>{m()},O=function(...M){if(s?.aborted)return;u=this,f=M;const j=v==null;x(),d&&j&&m()};return O.schedule=x,O.cancel=_,O.flush=S,s?.addEventListener("abort",_,{once:!0}),O}e.debounce=t})(vy)),vy}var RT;function gV(){return RT||(RT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pV();function n(r,s=0,o={}){typeof o!="object"&&(o={});const{leading:u=!1,trailing:f=!0,maxWait:d}=o,h=Array(2);u&&(h[0]="leading"),f&&(h[1]="trailing");let m,p=null;const v=t.debounce(function(..._){m=r.apply(this,_),p=null},s,{edges:h}),x=function(..._){return d!=null&&(p===null&&(p=Date.now()),Date.now()-p>=d)?(m=r.apply(this,_),p=Date.now(),v.cancel(),v.schedule(),m):(v.apply(this,_),m)},w=()=>(v.flush(),m);return x.cancel=v.cancel,x.flush=w,x}e.debounce=n})(yy)),yy}var LT;function yV(){return LT||(LT=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=gV();function n(r,s=0,o={}){const{leading:u=!0,trailing:f=!0}=o;return t.debounce(r,s,{leading:u,maxWait:s,trailing:f})}e.throttle=n})(gy)),gy}var by,zT;function vV(){return zT||(zT=1,by=yV().throttle),by}var bV=vV();const xV=ia(bV);var hd=function(t,n){for(var r=arguments.length,s=new Array(r>2?r-2:0),o=2;os[u++]))}},Ar={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},vC=(e,t,n)=>{var{width:r=Ar.width,height:s=Ar.height,aspect:o,maxHeight:u}=n,f=Ga(r)?e:Number(r),d=Ga(s)?t:Number(s);return o&&o>0&&(f?d=f/o:d&&(f=d*o),u&&d!=null&&d>u&&(d=u)),{calculatedWidth:f,calculatedHeight:d}},wV={width:0,height:0,overflow:"visible"},_V={width:0,overflowX:"visible"},SV={height:0,overflowY:"visible"},AV={},TV=e=>{var{width:t,height:n}=e,r=Ga(t),s=Ga(n);return r&&s?wV:r?_V:s?SV:AV};function OV(e){var{width:t,height:n,aspect:r}=e,s=t,o=n;return s===void 0&&o===void 0?(s=Ar.width,o=Ar.height):s===void 0?s=r&&r>0?void 0:Ar.width:o===void 0&&(o=r&&r>0?void 0:Ar.height),{width:s,height:o}}function zv(){return zv=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:n,height:r}),[n,r]);return NV(s)?A.createElement(bC.Provider,{value:s},t):null}var fb=()=>A.useContext(bC),kV=A.forwardRef((e,t)=>{var{aspect:n,initialDimension:r=Ar.initialDimension,width:s,height:o,minWidth:u=Ar.minWidth,minHeight:f,maxHeight:d,children:h,debounce:m=Ar.debounce,id:p,className:v,onResize:x,style:w={}}=e,_=A.useRef(null),S=A.useRef();S.current=x,A.useImperativeHandle(t,()=>_.current);var[O,M]=A.useState({containerWidth:r.width,containerHeight:r.height}),j=A.useCallback((I,Y)=>{M(te=>{var ie=Math.round(I),K=Math.round(Y);return te.containerWidth===ie&&te.containerHeight===K?te:{containerWidth:ie,containerHeight:K}})},[]);A.useEffect(()=>{if(_.current==null||typeof ResizeObserver>"u")return _o;var I=K=>{var be,pe=K[0];if(pe!=null){var{width:xe,height:V}=pe.contentRect;j(xe,V),(be=S.current)===null||be===void 0||be.call(S,xe,V)}};m>0&&(I=xV(I,m,{trailing:!0,leading:!1}));var Y=new ResizeObserver(I),{width:te,height:ie}=_.current.getBoundingClientRect();return j(te,ie),Y.observe(_.current),()=>{Y.disconnect()}},[j,m]);var{containerWidth:N,containerHeight:k}=O;hd(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:C,calculatedHeight:L}=vC(N,k,{width:s,height:o,aspect:n,maxHeight:d});return hd(C!=null&&C>0||L!=null&&L>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.`,C,L,s,o,u,f,n),A.createElement("div",{id:p?"".concat(p):void 0,className:et("recharts-responsive-container",v),style:B2(B2({},w),{},{width:s,height:o,minWidth:u,minHeight:f,maxHeight:d}),ref:_},A.createElement("div",{style:TV({width:s,height:o})},A.createElement(bC,{width:C,height:L},h)))}),CV=A.forwardRef((e,t)=>{var n=fb();if(Cr(n.width)&&Cr(n.height))return e.children;var{width:r,height:s}=OV({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:o,calculatedHeight:u}=yC(void 0,void 0,{width:r,height:s,aspect:e.aspect,maxHeight:e.maxHeight});return ye(o)&&ye(u)?A.createElement(bC,{width:o,height:u},e.children):A.createElement(NV,zv({},e,{width:r,height:s,ref:t}))});function db(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}}var ku=()=>{var e,t=Jt(),n=ve(hV),r=ve(ch),s=(e=ve(uh))===null||e===void 0?void 0:e.padding;return!t||!r||!s?n:{width:r.width-s.left-s.right,height:r.height-s.top-s.bottom,x:s.left,y:s.top}},DV={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},xC=()=>{var e;return(e=ve(Xt))!==null&&e!==void 0?e:DV},wC=()=>ve(hi),_C=()=>ve(mi),ht=e=>e.layout.layoutType,Nu=()=>ve(ht),SC=()=>{var e=Nu();if(e==="horizontal"||e==="vertical")return e},AC=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},PV=()=>{var e=Nu();return e!==void 0},Cu=e=>{var t=it(),n=Jt(),{width:r,height:s}=e,o=fb(),u=r,f=s;return o&&(u=o.width>0?o.width:r,f=o.height>0?o.height:s),A.useEffect(()=>{!n&&Cr(u)&&Cr(f)&&t(VU({width:u,height:f}))},[t,n,u,f]),null},TC=Symbol.for("immer-nothing"),U2=Symbol.for("immer-draftable"),Rn=Symbol.for("immer-state");function ur(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var uu=Object.getPrototypeOf;function ho(e){return!!e&&!!e[Rn]}function Za(e){return e?OC(e)||Array.isArray(e)||!!e[U2]||!!e.constructor?.[U2]||Du(e)||dh(e):!1}var RV=Object.prototype.constructor.toString(),V2=new WeakMap;function OC(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let r=V2.get(n);return r===void 0&&(r=Function.toString.call(n),V2.set(n,r)),r===RV}function md(e,t,n=!0){fh(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(s=>{t(s,e[s],e)}):e.forEach((r,s)=>t(s,r,e))}function fh(e){const t=e[Rn];return t?t.type_:Array.isArray(e)?1:Du(e)?2:dh(e)?3:0}function Iv(e,t){return fh(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function EC(e,t,n){const r=fh(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function LV(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Du(e){return e instanceof Map}function dh(e){return e instanceof Set}function La(e){return e.copy_||e.base_}function Bv(e,t){if(Du(e))return new Map(e);if(dh(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=OC(e);if(t===!0||t==="class_only"&&!n){const r=Object.getOwnPropertyDescriptors(e);delete r[Rn];let s=Reflect.ownKeys(r);for(let o=0;o1&&Object.defineProperties(e,{set:_f,add:_f,clear:_f,delete:_f}),Object.freeze(e),t&&Object.values(e).forEach(n=>hb(n,!0))),e}function zV(){ur(2)}var _f={value:zV};function hh(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var IV={};function Qa(e){const t=IV[e];return t||ur(0,e),t}var cu;function jC(){return cu}function BV(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function q2(e,t){t&&(Qa("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Uv(e){Vv(e),e.drafts_.forEach(UV),e.drafts_=null}function Vv(e){e===cu&&(cu=e.parent_)}function $2(e){return cu=BV(cu,e)}function UV(e){const t=e[Rn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function F2(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return e!==void 0&&e!==n?(n[Rn].modified_&&(Uv(t),ur(4)),Za(e)&&(e=pd(t,e),t.parent_||gd(t,e)),t.patches_&&Qa("Patches").generateReplacementPatches_(n[Rn].base_,e,t.patches_,t.inversePatches_)):e=pd(t,n,[]),Uv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==TC?e:void 0}function pd(e,t,n){if(hh(t))return t;const r=e.immer_.shouldUseStrictIteration(),s=t[Rn];if(!s)return md(t,(o,u)=>H2(e,s,t,o,u,n),r),t;if(s.scope_!==e)return t;if(!s.modified_)return gd(e,s.base_,!0),s.base_;if(!s.finalized_){s.finalized_=!0,s.scope_.unfinalizedDrafts_--;const o=s.copy_;let u=o,f=!1;s.type_===3&&(u=new Set(o),o.clear(),f=!0),md(u,(d,h)=>H2(e,s,o,d,h,n,f),r),gd(e,o,!1),n&&e.patches_&&Qa("Patches").generatePatches_(s,n,e.patches_,e.inversePatches_)}return s.copy_}function H2(e,t,n,r,s,o,u){if(s==null||typeof s!="object"&&!u)return;const f=hh(s);if(!(f&&!u)){if(ho(s)){const d=o&&t&&t.type_!==3&&!Iv(t.assigned_,r)?o.concat(r):void 0,h=pd(e,s,d);if(EC(n,r,h),ho(h))e.canAutoFreeze_=!1;else return}else u&&n.add(s);if(Za(s)&&!f){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[r]===s&&f)return;pd(e,s),(!t||!t.scope_.parent_)&&typeof r!="symbol"&&(Du(n)?n.has(r):Object.prototype.propertyIsEnumerable.call(n,r))&&gd(e,s)}}}function gd(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&hb(t,n)}function VV(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:jC(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let s=r,o=mb;n&&(s=[r],o=fu);const{revoke:u,proxy:f}=Proxy.revocable(s,o);return r.draft_=f,r.revoke_=u,f}var mb={get(e,t){if(t===Rn)return e;const n=La(e);if(!Iv(n,t))return qV(e,n,t);const r=n[t];return e.finalized_||!Za(r)?r:r===xy(e.base_,t)?(wy(e),e.copy_[t]=$v(r,e)):r},has(e,t){return t in La(e)},ownKeys(e){return Reflect.ownKeys(La(e))},set(e,t,n){const r=MC(La(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const s=xy(La(e),t),o=s?.[Rn];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(LV(n,s)&&(n!==void 0||Iv(e.base_,t)))return!0;wy(e),qv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty(e,t){return xy(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,wy(e),qv(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=La(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:r.enumerable,value:n[t]}},defineProperty(){ur(11)},getPrototypeOf(e){return uu(e.base_)},setPrototypeOf(){ur(12)}},fu={};md(mb,(e,t)=>{fu[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});fu.deleteProperty=function(e,t){return fu.set.call(this,e,t,void 0)};fu.set=function(e,t,n){return mb.set.call(this,e[0],t,n,e[0])};function xy(e,t){const n=e[Rn];return(n?La(n):e)[t]}function qV(e,t,n){const r=MC(t,n);return r?"value"in r?r.value:r.get?.call(e.draft_):void 0}function MC(e,t){if(!(t in e))return;let n=uu(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=uu(n)}}function qv(e){e.modified_||(e.modified_=!0,e.parent_&&qv(e.parent_))}function wy(e){e.copy_||(e.copy_=Bv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var $V=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,n,r)=>{if(typeof t=="function"&&typeof n!="function"){const o=n;n=t;const u=this;return function(d=o,...h){return u.produce(d,m=>n.call(this,m,...h))}}typeof n!="function"&&ur(6),r!==void 0&&typeof r!="function"&&ur(7);let s;if(Za(t)){const o=$2(this),u=$v(t,void 0);let f=!0;try{s=n(u),f=!1}finally{f?Uv(o):Vv(o)}return q2(o,r),F2(s,o)}else if(!t||typeof t!="object"){if(s=n(t),s===void 0&&(s=t),s===TC&&(s=void 0),this.autoFreeze_&&hb(s,!0),r){const o=[],u=[];Qa("Patches").generateReplacementPatches_(t,s,o,u),r(o,u)}return s}else ur(1,t)},this.produceWithPatches=(t,n)=>{if(typeof t=="function")return(u,...f)=>this.produceWithPatches(u,d=>t(d,...f));let r,s;return[this.produce(t,n,(u,f)=>{r=u,s=f}),r,s]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof e?.useStrictIteration=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Za(e)||ur(8),ho(e)&&(e=FV(e));const t=$2(this),n=$v(e,void 0);return n[Rn].isManual_=!0,Vv(t),n}finishDraft(e,t){const n=e&&e[Rn];(!n||!n.isManual_)&&ur(9);const{scope_:r}=n;return q2(r,t),F2(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--){const s=t[n];if(s.path.length===0&&s.op==="replace"){e=s.value;break}}n>-1&&(t=t.slice(n+1));const r=Qa("Patches").applyPatches_;return ho(e)?r(e,t):this.produce(e,s=>r(s,t))}};function $v(e,t){const n=Du(e)?Qa("MapSet").proxyMap_(e,t):dh(e)?Qa("MapSet").proxySet_(e,t):VV(e,t);return(t?t.scope_:jC()).drafts_.push(n),n}function FV(e){return ho(e)||ur(10,e),kC(e)}function kC(e){if(!Za(e)||hh(e))return e;const t=e[Rn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Bv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Bv(e,!0);return md(n,(s,o)=>{EC(n,s,kC(o))},r),t&&(t.finalized_=!1),n}var HV=new $V;HV.produce;var KV={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},NC=Qt({name:"legend",initialState:KV,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},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:Qe()},replaceLegendPayload:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).payload.indexOf(n);s>-1&&(e.payload[s]=r)},prepare:Qe()},removeLegendPayload:{reducer(e,t){var n=Zn(e).payload.indexOf(t.payload);n>-1&&e.payload.splice(n,1)},prepare:Qe()}}}),{setLegendSize:Ene,setLegendSettings:jne,addLegendPayload:XV,replaceLegendPayload:YV,removeLegendPayload:GV}=NC.actions,WV=NC.reducer,_y={exports:{}},Sy={};var K2;function ZV(){if(K2)return Sy;K2=1;var e=yo();function t(d,h){return d===h&&(d!==0||1/d===1/h)||d!==d&&h!==h}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,s=e.useRef,o=e.useEffect,u=e.useMemo,f=e.useDebugValue;return Sy.useSyncExternalStoreWithSelector=function(d,h,m,p,v){var x=s(null);if(x.current===null){var w={hasValue:!1,value:null};x.current=w}else w=x.current;x=u(function(){function S(N){if(!O){if(O=!0,M=N,N=p(N),v!==void 0&&w.hasValue){var C=w.value;if(v(C,N))return j=C}return j=N}if(C=j,n(M,N))return C;var L=p(N);return v!==void 0&&v(C,L)?(M=N,C):(M=N,j=L)}var O=!1,M,j,k=m===void 0?null:m;return[function(){return S(h())},k===null?void 0:function(){return S(k())}]},[h,m,p,v]);var _=r(d,x[0],x[1]);return o(function(){w.hasValue=!0,w.value=_},[_]),f(_),_},Sy}var X2;function QV(){return X2||(X2=1,_y.exports=ZV()),_y.exports}QV();function JV(e){e()}function eq(){let e=null,t=null;return{clear(){e=null,t=null},notify(){JV(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const s=t={callback:n,next:null,prev:t};return s.prev?s.prev.next=s:e=s,function(){!r||e===null||(r=!1,s.next?s.next.prev=s.prev:t=s.prev,s.prev?s.prev.next=s.next:e=s.next)}}}}var Y2={notify(){},get:()=>[]};function tq(e,t){let n,r=Y2,s=0,o=!1;function u(_){m();const S=r.subscribe(_);let O=!1;return()=>{O||(O=!0,S(),p())}}function f(){r.notify()}function d(){w.onStateChange&&w.onStateChange()}function h(){return o}function m(){s++,n||(n=e.subscribe(d),r=eq())}function p(){s--,n&&s===0&&(n(),n=void 0,r.clear(),r=Y2)}function v(){o||(o=!0,m())}function x(){o&&(o=!1,p())}const w={addNestedSub:u,notifyNestedSubs:f,handleChangeWrapper:d,isSubscribed:h,trySubscribe:v,tryUnsubscribe:x,getListeners:()=>r};return w}var nq=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",rq=nq(),iq=()=>typeof navigator<"u"&&navigator.product==="ReactNative",aq=iq(),sq=()=>rq||aq?A.useLayoutEffect:A.useEffect,oq=sq();function G2(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function lq(e,t){if(G2(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let s=0;s{const d=tq(s);return{store:s,subscription:d,getServerState:r?()=>r:void 0}},[s,r]),u=A.useMemo(()=>s.getState(),[s]);oq(()=>{const{subscription:d}=o;return d.onStateChange=d.notifyNestedSubs,d.trySubscribe(),u!==s.getState()&&d.notifyNestedSubs(),()=>{d.tryUnsubscribe(),d.onStateChange=void 0}},[o,u]);const f=n||dq;return A.createElement(f.Provider,{value:o},t)}var mq=hq,pq=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius","throttledEvents"]);function gq(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function mh(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(pq.has(r)){if(e[r]==null&&t[r]==null)continue;if(!lq(e[r],t[r]))return!1}else if(!gq(e[r],t[r]))return!1;return!0}function Fv(){return Fv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=qs.separator,contentStyle:n,itemStyle:r,labelStyle:s=qs.labelStyle,payload:o,formatter:u,itemSorter:f,wrapperClassName:d,labelClassName:h,label:m,labelFormatter:p,accessibilityLayer:v=qs.accessibilityLayer}=e,x=()=>{if(o&&o.length){var N={padding:0,margin:0},C=wq(o,f),L=C.map((I,Y)=>{if(I.type==="none")return null;var te=I.formatter||u||xq,{value:ie,name:K}=I,be=ie,pe=K;if(te){var xe=te(ie,K,I,Y,o);if(Array.isArray(xe))[be,pe]=xe;else if(xe!=null)be=xe;else return null}var V=Ml(Ml({},qs.itemStyle),{},{color:I.color||qs.itemStyle.color},r);return A.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(Y),style:V},Nr(pe)?A.createElement("span",{className:"recharts-tooltip-item-name"},pe):null,Nr(pe)?A.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,A.createElement("span",{className:"recharts-tooltip-item-value"},be),A.createElement("span",{className:"recharts-tooltip-item-unit"},I.unit||""))});return A.createElement("ul",{className:"recharts-tooltip-item-list",style:N},L)}return null},w=Ml(Ml({},qs.contentStyle),n),_=Ml({margin:0},s),S=!dt(m),O=S?m:"",M=et("recharts-default-tooltip",d),j=et("recharts-tooltip-label",h);S&&p&&o!==void 0&&o!==null&&(O=p(m,o));var k=v?{role:"status","aria-live":"assertive"}:{};return A.createElement("div",Fv({className:M,style:w},k),A.createElement("p",{className:j,style:_},A.isValidElement(O)?O:"".concat(O)),x())},kl="recharts-tooltip-wrapper",Sq={visibility:"hidden"};function Aq(e){var{coordinate:t,translateX:n,translateY:r}=e;return et(kl,{["".concat(kl,"-right")]:ye(n)&&t&&ye(t.x)&&n>=t.x,["".concat(kl,"-left")]:ye(n)&&t&&ye(t.x)&&n=t.y,["".concat(kl,"-top")]:ye(r)&&t&&ye(t.y)&&r0?s:0),p=n[r]+s;if(t[r])return u[r]?m:p;var v=d[r];if(v==null)return 0;if(u[r]){var x=m,w=v;return xS?Math.max(m,v):Math.max(p,v)}function Tq(e){var{translateX:t,translateY:n,useTranslate3d:r}=e;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function Oq(e){var{allowEscapeViewBox:t,coordinate:n,offsetTop:r,offsetLeft:s,position:o,reverseDirection:u,tooltipBox:f,useTranslate3d:d,viewBox:h}=e,m,p,v;return f.height>0&&f.width>0&&n?(p=Z2({allowEscapeViewBox:t,coordinate:n,key:"x",offset:s,position:o,reverseDirection:u,tooltipDimension:f.width,viewBox:h,viewBoxDimension:h.width}),v=Z2({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:o,reverseDirection:u,tooltipDimension:f.height,viewBox:h,viewBoxDimension:h.height}),m=Tq({translateX:p,translateY:v,useTranslate3d:d})):m=Sq,{cssProperties:m,cssClasses:Aq({translateX:p,translateY:v,coordinate:n})}}var Eq=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Pu={isSsr:Eq()};function CC(){var[e,t]=A.useState(()=>Pu.isSsr||!window.matchMedia?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches);return A.useEffect(()=>{if(window.matchMedia){var n=window.matchMedia("(prefers-reduced-motion: reduce)"),r=()=>{t(n.matches)};return n.addEventListener("change",r),()=>{n.removeEventListener("change",r)}}},[]),e}function Q2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function $s(e){for(var t=1;t({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}}));A.useEffect(()=>{var w=_=>{if(_.key==="Escape"){var S,O,M,j;h({dismissed:!0,dismissedAtCoordinate:{x:(S=(O=e.coordinate)===null||O===void 0?void 0:O.x)!==null&&S!==void 0?S:0,y:(M=(j=e.coordinate)===null||j===void 0?void 0:j.y)!==null&&M!==void 0?M:0}})}};return document.addEventListener("keydown",w),()=>{document.removeEventListener("keydown",w)}},[(t=e.coordinate)===null||t===void 0?void 0:t.x,(n=e.coordinate)===null||n===void 0?void 0:n.y]),d.dismissed&&(((r=(s=e.coordinate)===null||s===void 0?void 0:s.x)!==null&&r!==void 0?r:0)!==d.dismissedAtCoordinate.x||((o=(u=e.coordinate)===null||u===void 0?void 0:u.y)!==null&&o!==void 0?o:0)!==d.dismissedAtCoordinate.y)&&h($s($s({},d),{},{dismissed:!1}));var{cssClasses:m,cssProperties:p}=Oq({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:{height:e.lastBoundingBox.height,width:e.lastBoundingBox.width},useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),v=e.hasPortalFromProps?{}:$s($s({transition:Nq({prefersReducedMotion:f,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},p),{},{pointerEvents:"none",position:"absolute",top:0,left:0}),x=$s($s({},v),{},{visibility:!d.dismissed&&e.active&&e.hasPayload?"visible":"hidden"},e.wrapperStyle);return A.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:m,style:x,ref:e.innerRef},e.children)}var Dq=A.memo(Cq),DC=()=>{var e;return(e=ve(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function Hv(){return Hv=Object.assign?Object.assign.bind():function(e){for(var t=1;tLe(e.x)&&Le(e.y),nO=e=>e.base!=null&&yd(e.base)&&yd(e),Nl=e=>e.x,Cl=e=>e.y,zq=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(Ou(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=tO["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return tO[n]||Gd},rO={connectNulls:!1,type:"linear"},Iq=e=>{var{type:t=rO.type,points:n=[],baseLine:r,layout:s,connectNulls:o=rO.connectNulls}=e,u=zq(t,s),f=o?n.filter(yd):n;if(Array.isArray(r)){var d,h=n.map((w,_)=>eO(eO({},w),{},{base:r[_]}));s==="vertical"?d=pf().y(Cl).x1(Nl).x0(w=>w.base.x):d=pf().x(Nl).y1(Cl).y0(w=>w.base.y);var m=d.defined(nO).curve(u),p=o?h.filter(nO):h;return m(p)}var v;s==="vertical"&&ye(r)?v=pf().y(Cl).x1(Nl).x0(r):ye(r)?v=pf().x(Nl).y1(Cl).y0(r):v=aN().x(Nl).y(Cl);var x=v.defined(yd).curve(u);return x(f)},pb=e=>{var{className:t,points:n,path:r,pathRef:s}=e,o=Nu();if((!n||!n.length)&&!r)return null;var u={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||o,connectNulls:e.connectNulls},f=n&&n.length?Iq(u):r;return A.createElement("path",Hv({},kr(e),q9(e),{className:et("recharts-curve",t),d:f===null?void 0:f,ref:s}))},Bq=["x","y","top","left","width","height","className"];function Kv(){return Kv=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(s,"v").concat(r,"M").concat(o,",").concat(t,"h").concat(n),Xq=e=>{var{x:t=0,y:n=0,top:r=0,left:s=0,width:o=0,height:u=0,className:f}=e,d=Fq(e,Bq),h=Uq({x:t,y:n,top:r,left:s,width:o,height:u},d);return!ye(t)||!ye(n)||!ye(o)||!ye(u)||!ye(r)||!ye(s)?null:A.createElement("path",Kv({},er(h),{className:et("recharts-cross",f),d:Kq(t,n,o,u,r,s)}))};function Yq(e,t,n,r){var s=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-s:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-s,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function aO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function sO(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),PC=(e,t,n)=>e.map(r=>"".concat(Qq(r)," ").concat(t,"ms ").concat(n)).join(","),Jq=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((n,r)=>n.filter(s=>r.includes(s))),du=(e,t)=>Object.keys(t).reduce((n,r)=>sO(sO({},n),{},{[r]:e(r,t[r])}),{});function oO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function At(e){for(var t=1;te+(t-e)*n,Xv=e=>{var{from:t,to:n}=e;return t!==n},RC=(e,t,n)=>{var r=du((s,o)=>{if(Xv(o)){var[u,f]=e(o.from,o.to,o.velocity);return At(At({},o),{},{from:u,velocity:f})}return o},t);return n<1?du((s,o)=>Xv(o)&&r[s]!=null?At(At({},o),{},{velocity:vd(o.velocity,r[s].velocity,n),from:vd(o.from,r[s].from,n)}):o,t):RC(e,r,n-1)};function r$(e,t,n,r,s,o){var u,f=r.reduce((v,x)=>At(At({},v),{},{[x]:{from:e[x],velocity:0,to:t[x]}}),{}),d=()=>du((v,x)=>x.from,f),h=()=>!Object.values(f).filter(Xv).length,m=null,p=v=>{u||(u=v);var x=v-u,w=x/n.dt;f=RC(n,f,w),s(At(At(At({},e),t),d())),u=v,h()||(m=o.setTimeout(p))};return()=>(m=o.setTimeout(p),()=>{var v;(v=m)===null||v===void 0||v()})}function i$(e,t,n,r,s,o,u){var f=null,d=s.reduce((p,v)=>{var x=e[v],w=t[v];return x==null||w==null?p:At(At({},p),{},{[v]:[x,w]})},{}),h,m=p=>{h||(h=p);var v=(p-h)/r,x=du((_,S)=>vd(...S,n(v)),d);if(o(At(At(At({},e),t),x)),v<1)f=u.setTimeout(m);else{var w=du((_,S)=>vd(...S,n(1)),d);o(At(At(At({},e),t),w))}};return()=>(f=u.setTimeout(m),()=>{var p;(p=f)===null||p===void 0||p()})}const a$=(e,t,n,r,s,o)=>{var u=Jq(e,t);return n==null?()=>(s(At(At({},e),t)),()=>{}):n.isStepper===!0?r$(e,t,n,u,s,o):i$(e,t,n,r,u,s,o)};var bd=1e-4,LC=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],zC=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),lO=(e,t)=>n=>{var r=LC(e,t);return zC(r,n)},s$=(e,t)=>n=>{var r=LC(e,t),s=[...r.map((o,u)=>o*u).slice(1),0];return zC(s,n)},o$=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var s=r.map(o=>parseFloat(o));return[s[0],s[1],s[2],s[3]]},l$=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var s=lO(e,n),o=lO(t,r),u=s$(e,n),f=h=>h>1?1:h<0?0:h,d=h=>{for(var m=h>1?1:h,p=m,v=0;v<8;++v){var x=s(p)-m,w=u(p);if(Math.abs(x-m)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:n=100,damping:r=8,dt:s=17}=t,o=(u,f,d)=>{var h=-(u-f)*n,m=d*r,p=d+(h-m)*s/1e3,v=d*s/1e3+u;return Math.abs(v-f){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return uO(e);case"spring":return c$();default:if(e.split("(")[0]==="cubic-bezier")return uO(e)}return typeof e=="function"?e:null};function d$(e){var t,n=()=>null,r=!1,s=null,o=u=>{if(!r){if(Array.isArray(u)){if(!u.length)return;var f=u,[d,...h]=f;if(typeof d=="number"){s=e.setTimeout(o.bind(null,h),d);return}o(d),s=e.setTimeout(o.bind(null,h));return}typeof u=="string"&&(t=u,n(t)),typeof u=="object"&&(t=u,n(t)),typeof u=="function"&&u()}};return{stop:()=>{r=!0},start:u=>{r=!1,s&&(s(),s=null),o(u)},subscribe:u=>(n=u,()=>{n=()=>null}),getTimeoutController:()=>e}}class h${setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),s=null,o=u=>{u-r>=n?t(u):typeof requestAnimationFrame=="function"&&(s=requestAnimationFrame(o))};return s=requestAnimationFrame(o),()=>{s!=null&&cancelAnimationFrame(s)}}}function m$(){return d$(new h$)}var p$=A.createContext(m$);function g$(e,t){var n=A.useContext(p$);return A.useMemo(()=>t??n(e),[e,t,n])}var y$={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},cO={t:0},Ay={t:1};function gb(e){var t=vn(e,y$),{isActive:n,canBegin:r,duration:s,easing:o,begin:u,onAnimationEnd:f,onAnimationStart:d,children:h}=t,m=CC(),p=n==="auto"?!Pu.isSsr&&!m:n,v=g$(t.animationId,t.animationManager),[x,w]=A.useState(p?cO:Ay),_=A.useRef(null);return A.useEffect(()=>{p||w(Ay)},[p]),A.useEffect(()=>{if(!p||!r)return _o;var S=a$(cO,Ay,f$(o),s,w,v.getTimeoutController()),O=()=>{_.current=S()};return v.start([d,u,O,s,f]),()=>{v.stop(),_.current&&_.current(),f()}},[p,r,s,o,u,d,f,v]),h(x.t)}function yb(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=A.useRef(au(t)),r=A.useRef(e);return r.current!==e&&(n.current=au(t),r.current=e),n.current}var v$=["radius"],b$=["radius"],fO,dO,hO,mO,pO,gO,yO,vO,bO,xO;function wO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function _O(e){for(var t=1;t{var o=Ji(n),u=Ji(r),f=Math.min(Math.abs(o)/2,Math.abs(u)/2),d=u>=0?1:-1,h=o>=0?1:-1,m=u>=0&&o>=0||u<0&&o<0?1:0,p;if(f>0&&Array.isArray(s)){for(var v=[0,0,0,0],x=0,w=4;xf?f:S}p=ut(fO||(fO=xr(["M",",",""])),e,t+d*v[0]),v[0]>0&&(p+=ut(dO||(dO=xr(["A ",",",",0,0,",",",",",""])),v[0],v[0],m,e+h*v[0],t)),p+=ut(hO||(hO=xr(["L ",",",""])),e+n-h*v[1],t),v[1]>0&&(p+=ut(mO||(mO=xr(["A ",",",",0,0,",`, + height and width.`,C,L,s,o,u,f,n),A.createElement("div",{id:p?"".concat(p):void 0,className:et("recharts-responsive-container",v),style:BT(BT({},w),{},{width:s,height:o,minWidth:u,minHeight:f,maxHeight:d}),ref:_},A.createElement("div",{style:TV({width:s,height:o})},A.createElement(xC,{width:C,height:L},h)))}),CV=A.forwardRef((e,t)=>{var n=fb();if(Cr(n.width)&&Cr(n.height))return e.children;var{width:r,height:s}=OV({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:o,calculatedHeight:u}=vC(void 0,void 0,{width:r,height:s,aspect:e.aspect,maxHeight:e.maxHeight});return ye(o)&&ye(u)?A.createElement(xC,{width:o,height:u},e.children):A.createElement(kV,zv({},e,{width:r,height:s,ref:t}))});function db(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}}var Nu=()=>{var e,t=Jt(),n=ve(hV),r=ve(ch),s=(e=ve(uh))===null||e===void 0?void 0:e.padding;return!t||!r||!s?n:{width:r.width-s.left-s.right,height:r.height-s.top-s.bottom,x:s.left,y:s.top}},DV={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},wC=()=>{var e;return(e=ve(Xt))!==null&&e!==void 0?e:DV},_C=()=>ve(hi),SC=()=>ve(mi),ht=e=>e.layout.layoutType,ku=()=>ve(ht),AC=()=>{var e=ku();if(e==="horizontal"||e==="vertical")return e},TC=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},PV=()=>{var e=ku();return e!==void 0},Cu=e=>{var t=it(),n=Jt(),{width:r,height:s}=e,o=fb(),u=r,f=s;return o&&(u=o.width>0?o.width:r,f=o.height>0?o.height:s),A.useEffect(()=>{!n&&Cr(u)&&Cr(f)&&t(VU({width:u,height:f}))},[t,n,u,f]),null},OC=Symbol.for("immer-nothing"),UT=Symbol.for("immer-draftable"),Rn=Symbol.for("immer-state");function ur(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var uu=Object.getPrototypeOf;function ho(e){return!!e&&!!e[Rn]}function Za(e){return e?EC(e)||Array.isArray(e)||!!e[UT]||!!e.constructor?.[UT]||Du(e)||dh(e):!1}var RV=Object.prototype.constructor.toString(),VT=new WeakMap;function EC(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let r=VT.get(n);return r===void 0&&(r=Function.toString.call(n),VT.set(n,r)),r===RV}function md(e,t,n=!0){fh(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(s=>{t(s,e[s],e)}):e.forEach((r,s)=>t(s,r,e))}function fh(e){const t=e[Rn];return t?t.type_:Array.isArray(e)?1:Du(e)?2:dh(e)?3:0}function Iv(e,t){return fh(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function jC(e,t,n){const r=fh(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function LV(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Du(e){return e instanceof Map}function dh(e){return e instanceof Set}function La(e){return e.copy_||e.base_}function Bv(e,t){if(Du(e))return new Map(e);if(dh(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=EC(e);if(t===!0||t==="class_only"&&!n){const r=Object.getOwnPropertyDescriptors(e);delete r[Rn];let s=Reflect.ownKeys(r);for(let o=0;o1&&Object.defineProperties(e,{set:_f,add:_f,clear:_f,delete:_f}),Object.freeze(e),t&&Object.values(e).forEach(n=>hb(n,!0))),e}function zV(){ur(2)}var _f={value:zV};function hh(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var IV={};function Qa(e){const t=IV[e];return t||ur(0,e),t}var cu;function MC(){return cu}function BV(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function qT(e,t){t&&(Qa("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Uv(e){Vv(e),e.drafts_.forEach(UV),e.drafts_=null}function Vv(e){e===cu&&(cu=e.parent_)}function $T(e){return cu=BV(cu,e)}function UV(e){const t=e[Rn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function FT(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return e!==void 0&&e!==n?(n[Rn].modified_&&(Uv(t),ur(4)),Za(e)&&(e=pd(t,e),t.parent_||gd(t,e)),t.patches_&&Qa("Patches").generateReplacementPatches_(n[Rn].base_,e,t.patches_,t.inversePatches_)):e=pd(t,n,[]),Uv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==OC?e:void 0}function pd(e,t,n){if(hh(t))return t;const r=e.immer_.shouldUseStrictIteration(),s=t[Rn];if(!s)return md(t,(o,u)=>HT(e,s,t,o,u,n),r),t;if(s.scope_!==e)return t;if(!s.modified_)return gd(e,s.base_,!0),s.base_;if(!s.finalized_){s.finalized_=!0,s.scope_.unfinalizedDrafts_--;const o=s.copy_;let u=o,f=!1;s.type_===3&&(u=new Set(o),o.clear(),f=!0),md(u,(d,h)=>HT(e,s,o,d,h,n,f),r),gd(e,o,!1),n&&e.patches_&&Qa("Patches").generatePatches_(s,n,e.patches_,e.inversePatches_)}return s.copy_}function HT(e,t,n,r,s,o,u){if(s==null||typeof s!="object"&&!u)return;const f=hh(s);if(!(f&&!u)){if(ho(s)){const d=o&&t&&t.type_!==3&&!Iv(t.assigned_,r)?o.concat(r):void 0,h=pd(e,s,d);if(jC(n,r,h),ho(h))e.canAutoFreeze_=!1;else return}else u&&n.add(s);if(Za(s)&&!f){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[r]===s&&f)return;pd(e,s),(!t||!t.scope_.parent_)&&typeof r!="symbol"&&(Du(n)?n.has(r):Object.prototype.propertyIsEnumerable.call(n,r))&&gd(e,s)}}}function gd(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&hb(t,n)}function VV(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:MC(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let s=r,o=mb;n&&(s=[r],o=fu);const{revoke:u,proxy:f}=Proxy.revocable(s,o);return r.draft_=f,r.revoke_=u,f}var mb={get(e,t){if(t===Rn)return e;const n=La(e);if(!Iv(n,t))return qV(e,n,t);const r=n[t];return e.finalized_||!Za(r)?r:r===xy(e.base_,t)?(wy(e),e.copy_[t]=$v(r,e)):r},has(e,t){return t in La(e)},ownKeys(e){return Reflect.ownKeys(La(e))},set(e,t,n){const r=NC(La(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const s=xy(La(e),t),o=s?.[Rn];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(LV(n,s)&&(n!==void 0||Iv(e.base_,t)))return!0;wy(e),qv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty(e,t){return xy(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,wy(e),qv(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=La(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:r.enumerable,value:n[t]}},defineProperty(){ur(11)},getPrototypeOf(e){return uu(e.base_)},setPrototypeOf(){ur(12)}},fu={};md(mb,(e,t)=>{fu[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});fu.deleteProperty=function(e,t){return fu.set.call(this,e,t,void 0)};fu.set=function(e,t,n){return mb.set.call(this,e[0],t,n,e[0])};function xy(e,t){const n=e[Rn];return(n?La(n):e)[t]}function qV(e,t,n){const r=NC(t,n);return r?"value"in r?r.value:r.get?.call(e.draft_):void 0}function NC(e,t){if(!(t in e))return;let n=uu(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=uu(n)}}function qv(e){e.modified_||(e.modified_=!0,e.parent_&&qv(e.parent_))}function wy(e){e.copy_||(e.copy_=Bv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var $V=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,n,r)=>{if(typeof t=="function"&&typeof n!="function"){const o=n;n=t;const u=this;return function(d=o,...h){return u.produce(d,m=>n.call(this,m,...h))}}typeof n!="function"&&ur(6),r!==void 0&&typeof r!="function"&&ur(7);let s;if(Za(t)){const o=$T(this),u=$v(t,void 0);let f=!0;try{s=n(u),f=!1}finally{f?Uv(o):Vv(o)}return qT(o,r),FT(s,o)}else if(!t||typeof t!="object"){if(s=n(t),s===void 0&&(s=t),s===OC&&(s=void 0),this.autoFreeze_&&hb(s,!0),r){const o=[],u=[];Qa("Patches").generateReplacementPatches_(t,s,o,u),r(o,u)}return s}else ur(1,t)},this.produceWithPatches=(t,n)=>{if(typeof t=="function")return(u,...f)=>this.produceWithPatches(u,d=>t(d,...f));let r,s;return[this.produce(t,n,(u,f)=>{r=u,s=f}),r,s]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof e?.useStrictIteration=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Za(e)||ur(8),ho(e)&&(e=FV(e));const t=$T(this),n=$v(e,void 0);return n[Rn].isManual_=!0,Vv(t),n}finishDraft(e,t){const n=e&&e[Rn];(!n||!n.isManual_)&&ur(9);const{scope_:r}=n;return qT(r,t),FT(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--){const s=t[n];if(s.path.length===0&&s.op==="replace"){e=s.value;break}}n>-1&&(t=t.slice(n+1));const r=Qa("Patches").applyPatches_;return ho(e)?r(e,t):this.produce(e,s=>r(s,t))}};function $v(e,t){const n=Du(e)?Qa("MapSet").proxyMap_(e,t):dh(e)?Qa("MapSet").proxySet_(e,t):VV(e,t);return(t?t.scope_:MC()).drafts_.push(n),n}function FV(e){return ho(e)||ur(10,e),kC(e)}function kC(e){if(!Za(e)||hh(e))return e;const t=e[Rn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Bv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Bv(e,!0);return md(n,(s,o)=>{jC(n,s,kC(o))},r),t&&(t.finalized_=!1),n}var HV=new $V;HV.produce;var KV={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},CC=Qt({name:"legend",initialState:KV,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},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:Qe()},replaceLegendPayload:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).payload.indexOf(n);s>-1&&(e.payload[s]=r)},prepare:Qe()},removeLegendPayload:{reducer(e,t){var n=Zn(e).payload.indexOf(t.payload);n>-1&&e.payload.splice(n,1)},prepare:Qe()}}}),{setLegendSize:Ene,setLegendSettings:jne,addLegendPayload:XV,replaceLegendPayload:YV,removeLegendPayload:GV}=CC.actions,WV=CC.reducer,_y={exports:{}},Sy={};var KT;function ZV(){if(KT)return Sy;KT=1;var e=yo();function t(d,h){return d===h&&(d!==0||1/d===1/h)||d!==d&&h!==h}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,s=e.useRef,o=e.useEffect,u=e.useMemo,f=e.useDebugValue;return Sy.useSyncExternalStoreWithSelector=function(d,h,m,p,v){var x=s(null);if(x.current===null){var w={hasValue:!1,value:null};x.current=w}else w=x.current;x=u(function(){function S(k){if(!O){if(O=!0,M=k,k=p(k),v!==void 0&&w.hasValue){var C=w.value;if(v(C,k))return j=C}return j=k}if(C=j,n(M,k))return C;var L=p(k);return v!==void 0&&v(C,L)?(M=k,C):(M=k,j=L)}var O=!1,M,j,N=m===void 0?null:m;return[function(){return S(h())},N===null?void 0:function(){return S(N())}]},[h,m,p,v]);var _=r(d,x[0],x[1]);return o(function(){w.hasValue=!0,w.value=_},[_]),f(_),_},Sy}var XT;function QV(){return XT||(XT=1,_y.exports=ZV()),_y.exports}QV();function JV(e){e()}function eq(){let e=null,t=null;return{clear(){e=null,t=null},notify(){JV(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const s=t={callback:n,next:null,prev:t};return s.prev?s.prev.next=s:e=s,function(){!r||e===null||(r=!1,s.next?s.next.prev=s.prev:t=s.prev,s.prev?s.prev.next=s.next:e=s.next)}}}}var YT={notify(){},get:()=>[]};function tq(e,t){let n,r=YT,s=0,o=!1;function u(_){m();const S=r.subscribe(_);let O=!1;return()=>{O||(O=!0,S(),p())}}function f(){r.notify()}function d(){w.onStateChange&&w.onStateChange()}function h(){return o}function m(){s++,n||(n=e.subscribe(d),r=eq())}function p(){s--,n&&s===0&&(n(),n=void 0,r.clear(),r=YT)}function v(){o||(o=!0,m())}function x(){o&&(o=!1,p())}const w={addNestedSub:u,notifyNestedSubs:f,handleChangeWrapper:d,isSubscribed:h,trySubscribe:v,tryUnsubscribe:x,getListeners:()=>r};return w}var nq=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",rq=nq(),iq=()=>typeof navigator<"u"&&navigator.product==="ReactNative",aq=iq(),sq=()=>rq||aq?A.useLayoutEffect:A.useEffect,oq=sq();function GT(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function lq(e,t){if(GT(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let s=0;s{const d=tq(s);return{store:s,subscription:d,getServerState:r?()=>r:void 0}},[s,r]),u=A.useMemo(()=>s.getState(),[s]);oq(()=>{const{subscription:d}=o;return d.onStateChange=d.notifyNestedSubs,d.trySubscribe(),u!==s.getState()&&d.notifyNestedSubs(),()=>{d.tryUnsubscribe(),d.onStateChange=void 0}},[o,u]);const f=n||dq;return A.createElement(f.Provider,{value:o},t)}var mq=hq,pq=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius","throttledEvents"]);function gq(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function mh(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(pq.has(r)){if(e[r]==null&&t[r]==null)continue;if(!lq(e[r],t[r]))return!1}else if(!gq(e[r],t[r]))return!1;return!0}function Fv(){return Fv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=qs.separator,contentStyle:n,itemStyle:r,labelStyle:s=qs.labelStyle,payload:o,formatter:u,itemSorter:f,wrapperClassName:d,labelClassName:h,label:m,labelFormatter:p,accessibilityLayer:v=qs.accessibilityLayer}=e,x=()=>{if(o&&o.length){var k={padding:0,margin:0},C=wq(o,f),L=C.map((I,Y)=>{if(I.type==="none")return null;var te=I.formatter||u||xq,{value:ie,name:K}=I,be=ie,pe=K;if(te){var xe=te(ie,K,I,Y,o);if(Array.isArray(xe))[be,pe]=xe;else if(xe!=null)be=xe;else return null}var V=Ml(Ml({},qs.itemStyle),{},{color:I.color||qs.itemStyle.color},r);return A.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(Y),style:V},kr(pe)?A.createElement("span",{className:"recharts-tooltip-item-name"},pe):null,kr(pe)?A.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,A.createElement("span",{className:"recharts-tooltip-item-value"},be),A.createElement("span",{className:"recharts-tooltip-item-unit"},I.unit||""))});return A.createElement("ul",{className:"recharts-tooltip-item-list",style:k},L)}return null},w=Ml(Ml({},qs.contentStyle),n),_=Ml({margin:0},s),S=!dt(m),O=S?m:"",M=et("recharts-default-tooltip",d),j=et("recharts-tooltip-label",h);S&&p&&o!==void 0&&o!==null&&(O=p(m,o));var N=v?{role:"status","aria-live":"assertive"}:{};return A.createElement("div",Fv({className:M,style:w},N),A.createElement("p",{className:j,style:_},A.isValidElement(O)?O:"".concat(O)),x())},Nl="recharts-tooltip-wrapper",Sq={visibility:"hidden"};function Aq(e){var{coordinate:t,translateX:n,translateY:r}=e;return et(Nl,{["".concat(Nl,"-right")]:ye(n)&&t&&ye(t.x)&&n>=t.x,["".concat(Nl,"-left")]:ye(n)&&t&&ye(t.x)&&n=t.y,["".concat(Nl,"-top")]:ye(r)&&t&&ye(t.y)&&r0?s:0),p=n[r]+s;if(t[r])return u[r]?m:p;var v=d[r];if(v==null)return 0;if(u[r]){var x=m,w=v;return xS?Math.max(m,v):Math.max(p,v)}function Tq(e){var{translateX:t,translateY:n,useTranslate3d:r}=e;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function Oq(e){var{allowEscapeViewBox:t,coordinate:n,offsetTop:r,offsetLeft:s,position:o,reverseDirection:u,tooltipBox:f,useTranslate3d:d,viewBox:h}=e,m,p,v;return f.height>0&&f.width>0&&n?(p=ZT({allowEscapeViewBox:t,coordinate:n,key:"x",offset:s,position:o,reverseDirection:u,tooltipDimension:f.width,viewBox:h,viewBoxDimension:h.width}),v=ZT({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:o,reverseDirection:u,tooltipDimension:f.height,viewBox:h,viewBoxDimension:h.height}),m=Tq({translateX:p,translateY:v,useTranslate3d:d})):m=Sq,{cssProperties:m,cssClasses:Aq({translateX:p,translateY:v,coordinate:n})}}var Eq=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Pu={isSsr:Eq()};function DC(){var[e,t]=A.useState(()=>Pu.isSsr||!window.matchMedia?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches);return A.useEffect(()=>{if(window.matchMedia){var n=window.matchMedia("(prefers-reduced-motion: reduce)"),r=()=>{t(n.matches)};return n.addEventListener("change",r),()=>{n.removeEventListener("change",r)}}},[]),e}function QT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function $s(e){for(var t=1;t({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}}));A.useEffect(()=>{var w=_=>{if(_.key==="Escape"){var S,O,M,j;h({dismissed:!0,dismissedAtCoordinate:{x:(S=(O=e.coordinate)===null||O===void 0?void 0:O.x)!==null&&S!==void 0?S:0,y:(M=(j=e.coordinate)===null||j===void 0?void 0:j.y)!==null&&M!==void 0?M:0}})}};return document.addEventListener("keydown",w),()=>{document.removeEventListener("keydown",w)}},[(t=e.coordinate)===null||t===void 0?void 0:t.x,(n=e.coordinate)===null||n===void 0?void 0:n.y]),d.dismissed&&(((r=(s=e.coordinate)===null||s===void 0?void 0:s.x)!==null&&r!==void 0?r:0)!==d.dismissedAtCoordinate.x||((o=(u=e.coordinate)===null||u===void 0?void 0:u.y)!==null&&o!==void 0?o:0)!==d.dismissedAtCoordinate.y)&&h($s($s({},d),{},{dismissed:!1}));var{cssClasses:m,cssProperties:p}=Oq({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:{height:e.lastBoundingBox.height,width:e.lastBoundingBox.width},useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),v=e.hasPortalFromProps?{}:$s($s({transition:kq({prefersReducedMotion:f,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},p),{},{pointerEvents:"none",position:"absolute",top:0,left:0}),x=$s($s({},v),{},{visibility:!d.dismissed&&e.active&&e.hasPayload?"visible":"hidden"},e.wrapperStyle);return A.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:m,style:x,ref:e.innerRef},e.children)}var Dq=A.memo(Cq),PC=()=>{var e;return(e=ve(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function Hv(){return Hv=Object.assign?Object.assign.bind():function(e){for(var t=1;tLe(e.x)&&Le(e.y),nO=e=>e.base!=null&&yd(e.base)&&yd(e),kl=e=>e.x,Cl=e=>e.y,zq=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(Ou(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=tO["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return tO[n]||Gd},rO={connectNulls:!1,type:"linear"},Iq=e=>{var{type:t=rO.type,points:n=[],baseLine:r,layout:s,connectNulls:o=rO.connectNulls}=e,u=zq(t,s),f=o?n.filter(yd):n;if(Array.isArray(r)){var d,h=n.map((w,_)=>eO(eO({},w),{},{base:r[_]}));s==="vertical"?d=pf().y(Cl).x1(kl).x0(w=>w.base.x):d=pf().x(kl).y1(Cl).y0(w=>w.base.y);var m=d.defined(nO).curve(u),p=o?h.filter(nO):h;return m(p)}var v;s==="vertical"&&ye(r)?v=pf().y(Cl).x1(kl).x0(r):ye(r)?v=pf().x(kl).y1(Cl).y0(r):v=sk().x(kl).y(Cl);var x=v.defined(yd).curve(u);return x(f)},pb=e=>{var{className:t,points:n,path:r,pathRef:s}=e,o=ku();if((!n||!n.length)&&!r)return null;var u={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||o,connectNulls:e.connectNulls},f=n&&n.length?Iq(u):r;return A.createElement("path",Hv({},Nr(e),q9(e),{className:et("recharts-curve",t),d:f===null?void 0:f,ref:s}))},Bq=["x","y","top","left","width","height","className"];function Kv(){return Kv=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(s,"v").concat(r,"M").concat(o,",").concat(t,"h").concat(n),Xq=e=>{var{x:t=0,y:n=0,top:r=0,left:s=0,width:o=0,height:u=0,className:f}=e,d=Fq(e,Bq),h=Uq({x:t,y:n,top:r,left:s,width:o,height:u},d);return!ye(t)||!ye(n)||!ye(o)||!ye(u)||!ye(r)||!ye(s)?null:A.createElement("path",Kv({},er(h),{className:et("recharts-cross",f),d:Kq(t,n,o,u,r,s)}))};function Yq(e,t,n,r){var s=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-s:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-s,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function aO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function sO(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),RC=(e,t,n)=>e.map(r=>"".concat(Qq(r)," ").concat(t,"ms ").concat(n)).join(","),Jq=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((n,r)=>n.filter(s=>r.includes(s))),du=(e,t)=>Object.keys(t).reduce((n,r)=>sO(sO({},n),{},{[r]:e(r,t[r])}),{});function oO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function At(e){for(var t=1;te+(t-e)*n,Xv=e=>{var{from:t,to:n}=e;return t!==n},LC=(e,t,n)=>{var r=du((s,o)=>{if(Xv(o)){var[u,f]=e(o.from,o.to,o.velocity);return At(At({},o),{},{from:u,velocity:f})}return o},t);return n<1?du((s,o)=>Xv(o)&&r[s]!=null?At(At({},o),{},{velocity:vd(o.velocity,r[s].velocity,n),from:vd(o.from,r[s].from,n)}):o,t):LC(e,r,n-1)};function r$(e,t,n,r,s,o){var u,f=r.reduce((v,x)=>At(At({},v),{},{[x]:{from:e[x],velocity:0,to:t[x]}}),{}),d=()=>du((v,x)=>x.from,f),h=()=>!Object.values(f).filter(Xv).length,m=null,p=v=>{u||(u=v);var x=v-u,w=x/n.dt;f=LC(n,f,w),s(At(At(At({},e),t),d())),u=v,h()||(m=o.setTimeout(p))};return()=>(m=o.setTimeout(p),()=>{var v;(v=m)===null||v===void 0||v()})}function i$(e,t,n,r,s,o,u){var f=null,d=s.reduce((p,v)=>{var x=e[v],w=t[v];return x==null||w==null?p:At(At({},p),{},{[v]:[x,w]})},{}),h,m=p=>{h||(h=p);var v=(p-h)/r,x=du((_,S)=>vd(...S,n(v)),d);if(o(At(At(At({},e),t),x)),v<1)f=u.setTimeout(m);else{var w=du((_,S)=>vd(...S,n(1)),d);o(At(At(At({},e),t),w))}};return()=>(f=u.setTimeout(m),()=>{var p;(p=f)===null||p===void 0||p()})}const a$=(e,t,n,r,s,o)=>{var u=Jq(e,t);return n==null?()=>(s(At(At({},e),t)),()=>{}):n.isStepper===!0?r$(e,t,n,u,s,o):i$(e,t,n,r,u,s,o)};var bd=1e-4,zC=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],IC=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),lO=(e,t)=>n=>{var r=zC(e,t);return IC(r,n)},s$=(e,t)=>n=>{var r=zC(e,t),s=[...r.map((o,u)=>o*u).slice(1),0];return IC(s,n)},o$=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var s=r.map(o=>parseFloat(o));return[s[0],s[1],s[2],s[3]]},l$=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var s=lO(e,n),o=lO(t,r),u=s$(e,n),f=h=>h>1?1:h<0?0:h,d=h=>{for(var m=h>1?1:h,p=m,v=0;v<8;++v){var x=s(p)-m,w=u(p);if(Math.abs(x-m)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:n=100,damping:r=8,dt:s=17}=t,o=(u,f,d)=>{var h=-(u-f)*n,m=d*r,p=d+(h-m)*s/1e3,v=d*s/1e3+u;return Math.abs(v-f){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return uO(e);case"spring":return c$();default:if(e.split("(")[0]==="cubic-bezier")return uO(e)}return typeof e=="function"?e:null};function d$(e){var t,n=()=>null,r=!1,s=null,o=u=>{if(!r){if(Array.isArray(u)){if(!u.length)return;var f=u,[d,...h]=f;if(typeof d=="number"){s=e.setTimeout(o.bind(null,h),d);return}o(d),s=e.setTimeout(o.bind(null,h));return}typeof u=="string"&&(t=u,n(t)),typeof u=="object"&&(t=u,n(t)),typeof u=="function"&&u()}};return{stop:()=>{r=!0},start:u=>{r=!1,s&&(s(),s=null),o(u)},subscribe:u=>(n=u,()=>{n=()=>null}),getTimeoutController:()=>e}}class h${setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),s=null,o=u=>{u-r>=n?t(u):typeof requestAnimationFrame=="function"&&(s=requestAnimationFrame(o))};return s=requestAnimationFrame(o),()=>{s!=null&&cancelAnimationFrame(s)}}}function m$(){return d$(new h$)}var p$=A.createContext(m$);function g$(e,t){var n=A.useContext(p$);return A.useMemo(()=>t??n(e),[e,t,n])}var y$={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},cO={t:0},Ay={t:1};function gb(e){var t=vn(e,y$),{isActive:n,canBegin:r,duration:s,easing:o,begin:u,onAnimationEnd:f,onAnimationStart:d,children:h}=t,m=DC(),p=n==="auto"?!Pu.isSsr&&!m:n,v=g$(t.animationId,t.animationManager),[x,w]=A.useState(p?cO:Ay),_=A.useRef(null);return A.useEffect(()=>{p||w(Ay)},[p]),A.useEffect(()=>{if(!p||!r)return _o;var S=a$(cO,Ay,f$(o),s,w,v.getTimeoutController()),O=()=>{_.current=S()};return v.start([d,u,O,s,f]),()=>{v.stop(),_.current&&_.current(),f()}},[p,r,s,o,u,d,f,v]),h(x.t)}function yb(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=A.useRef(au(t)),r=A.useRef(e);return r.current!==e&&(n.current=au(t),r.current=e),n.current}var v$=["radius"],b$=["radius"],fO,dO,hO,mO,pO,gO,yO,vO,bO,xO;function wO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function _O(e){for(var t=1;t{var o=Ji(n),u=Ji(r),f=Math.min(Math.abs(o)/2,Math.abs(u)/2),d=u>=0?1:-1,h=o>=0?1:-1,m=u>=0&&o>=0||u<0&&o<0?1:0,p;if(f>0&&Array.isArray(s)){for(var v=[0,0,0,0],x=0,w=4;xf?f:S}p=ut(fO||(fO=xr(["M",",",""])),e,t+d*v[0]),v[0]>0&&(p+=ut(dO||(dO=xr(["A ",",",",0,0,",",",",",""])),v[0],v[0],m,e+h*v[0],t)),p+=ut(hO||(hO=xr(["L ",",",""])),e+n-h*v[1],t),v[1]>0&&(p+=ut(mO||(mO=xr(["A ",",",",0,0,",`, `,",",""])),v[1],v[1],m,e+n,t+d*v[1])),p+=ut(pO||(pO=xr(["L ",",",""])),e+n,t+r-d*v[2]),v[2]>0&&(p+=ut(gO||(gO=xr(["A ",",",",0,0,",`, `,",",""])),v[2],v[2],m,e+n-h*v[2],t+r)),p+=ut(yO||(yO=xr(["L ",",",""])),e+h*v[3],t+r),v[3]>0&&(p+=ut(vO||(vO=xr(["A ",",",",0,0,",`, `,",",""])),v[3],v[3],m,e,t+r-d*v[3])),p+="Z"}else if(f>0&&s===+s&&s>0){var O=Math.min(f,s);p=ut(bO||(bO=xr(["M ",",",` @@ -1044,23 +1037,23 @@ Respond with a JSON object. Each turn entry must include the turn_id matching th L `,",",` A `,",",",0,0,",",",",",` L `,",",` - A `,",",",0,0,",",",","," Z"])),e,t+d*O,O,O,m,e+h*O,t,e+n-h*O,t,O,O,m,e+n,t+d*O,e+n,t+r-d*O,O,O,m,e+n-h*O,t+r,e+h*O,t+r,O,O,m,e,t+r-d*O)}else p=ut(xO||(xO=xr(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return p},TO={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},IC=e=>{var t=vn(e,TO),n=A.useRef(null),[r,s]=A.useState(-1);A.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var Q=n.current.getTotalLength();Q&&s(Q)}catch{}},[]);var{x:o,y:u,width:f,height:d,radius:h,className:m}=t,{animationEasing:p,animationDuration:v,animationBegin:x,isAnimationActive:w,isUpdateAnimationActive:_}=t,S=A.useRef(f),O=A.useRef(d),M=A.useRef(o),j=A.useRef(u),k=A.useMemo(()=>({x:o,y:u,width:f,height:d,radius:h}),[o,u,f,d,h]),N=yb(k,"rectangle-");if(o!==+o||u!==+u||f!==+f||d!==+d||f===0||d===0)return null;var C=et("recharts-rectangle",m);if(!_){var L=er(t),{radius:I}=L,Y=SO(L,v$);return A.createElement("path",xd({},Y,{x:Ji(o),y:Ji(u),width:Ji(f),height:Ji(d),radius:typeof h=="number"?h:void 0,className:C,d:AO(o,u,f,d,h)}))}var te=S.current,ie=O.current,K=M.current,be=j.current,pe="0px ".concat(r===-1?1:r,"px"),xe="".concat(r,"px ").concat(r,"px"),V=PC(["strokeDasharray"],v,typeof p=="string"?p:TO.animationEasing);return A.createElement(gb,{animationId:N,key:N,canBegin:r>0,duration:v,easing:p,isActive:_,begin:x},Q=>{var ne=kn(te,f,Q),le=kn(ie,d,Q),ue=kn(K,o,Q),P=kn(be,u,Q);n.current&&(S.current=ne,O.current=le,M.current=ue,j.current=P);var H;w?Q>0?H={transition:V,strokeDasharray:xe}:H={strokeDasharray:pe}:H={strokeDasharray:xe};var ae=er(t),{radius:se}=ae,Z=SO(ae,b$);return A.createElement("path",xd({},Z,{radius:typeof h=="number"?h:void 0,className:C,d:AO(ue,P,ne,le,h),ref:n,style:_O(_O({},H),t.style)}))})};function OO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function EO(e){for(var t=1;te*180/Math.PI,Kt=(e,t,n,r)=>({x:e+Math.cos(-wd*r)*n,y:t+Math.sin(-wd*r)*n}),j$=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},M$=(e,t)=>{var{x:n,y:r}=e,{x:s,y:o}=t;return Math.sqrt((n-s)**2+(r-o)**2)},k$=(e,t)=>{var{x:n,y:r}=e,{cx:s,cy:o}=t,u=M$({x:n,y:r},{x:s,y:o});if(u<=0)return{radius:u,angle:0};var f=(n-s)/u,d=Math.acos(f);return r>o&&(d=2*Math.PI-d),{radius:u,angle:E$(d),angleInRadian:d}},N$=e=>{var{startAngle:t,endAngle:n}=e,r=Math.floor(t/360),s=Math.floor(n/360),o=Math.min(r,s);return{startAngle:t-o*360,endAngle:n-o*360}},C$=(e,t)=>{var{startAngle:n,endAngle:r}=t,s=Math.floor(n/360),o=Math.floor(r/360),u=Math.min(s,o);return e+u*360},D$=(e,t)=>{var{relativeX:n,relativeY:r}=e,{radius:s,angle:o}=k$({x:n,y:r},t),{innerRadius:u,outerRadius:f}=t;if(sf||s===0)return null;var{startAngle:d,endAngle:h}=N$(t),m=o,p;if(d<=h){for(;m>h;)m-=360;for(;m=d&&m<=h}else{for(;m>d;)m-=360;for(;m=h&&m<=d}return p?EO(EO({},t),{},{radius:s,angle:C$(m,t)}):null};function BC(e){var{cx:t,cy:n,radius:r,startAngle:s,endAngle:o}=e,u=Kt(t,n,r,s),f=Kt(t,n,r,o);return{points:[u,f],cx:t,cy:n,radius:r,startAngle:s,endAngle:o}}var jO,MO,kO,NO,CO,DO,PO;function Yv(){return Yv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=Wn(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},Sf=e=>{var{cx:t,cy:n,radius:r,angle:s,sign:o,isExternal:u,cornerRadius:f,cornerIsExternal:d}=e,h=f*(u?1:-1)+r,m=Math.asin(f/h)/wd,p=d?s:s+o*m,v=Kt(t,n,h,p),x=Kt(t,n,r,p),w=d?s-o*m:s,_=Kt(t,n,h*Math.cos(m*wd),w);return{center:v,circleTangency:x,lineTangency:_,theta:m}},UC=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:s,startAngle:o,endAngle:u}=e,f=P$(o,u),d=o+f,h=Kt(t,n,s,o),m=Kt(t,n,s,d),p=ut(jO||(jO=Ua(["M ",",",` + A `,",",",0,0,",",",","," Z"])),e,t+d*O,O,O,m,e+h*O,t,e+n-h*O,t,O,O,m,e+n,t+d*O,e+n,t+r-d*O,O,O,m,e+n-h*O,t+r,e+h*O,t+r,O,O,m,e,t+r-d*O)}else p=ut(xO||(xO=xr(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return p},TO={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},BC=e=>{var t=vn(e,TO),n=A.useRef(null),[r,s]=A.useState(-1);A.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var Q=n.current.getTotalLength();Q&&s(Q)}catch{}},[]);var{x:o,y:u,width:f,height:d,radius:h,className:m}=t,{animationEasing:p,animationDuration:v,animationBegin:x,isAnimationActive:w,isUpdateAnimationActive:_}=t,S=A.useRef(f),O=A.useRef(d),M=A.useRef(o),j=A.useRef(u),N=A.useMemo(()=>({x:o,y:u,width:f,height:d,radius:h}),[o,u,f,d,h]),k=yb(N,"rectangle-");if(o!==+o||u!==+u||f!==+f||d!==+d||f===0||d===0)return null;var C=et("recharts-rectangle",m);if(!_){var L=er(t),{radius:I}=L,Y=SO(L,v$);return A.createElement("path",xd({},Y,{x:Ji(o),y:Ji(u),width:Ji(f),height:Ji(d),radius:typeof h=="number"?h:void 0,className:C,d:AO(o,u,f,d,h)}))}var te=S.current,ie=O.current,K=M.current,be=j.current,pe="0px ".concat(r===-1?1:r,"px"),xe="".concat(r,"px ").concat(r,"px"),V=RC(["strokeDasharray"],v,typeof p=="string"?p:TO.animationEasing);return A.createElement(gb,{animationId:k,key:k,canBegin:r>0,duration:v,easing:p,isActive:_,begin:x},Q=>{var ne=Nn(te,f,Q),le=Nn(ie,d,Q),ue=Nn(K,o,Q),P=Nn(be,u,Q);n.current&&(S.current=ne,O.current=le,M.current=ue,j.current=P);var H;w?Q>0?H={transition:V,strokeDasharray:xe}:H={strokeDasharray:pe}:H={strokeDasharray:xe};var ae=er(t),{radius:se}=ae,Z=SO(ae,b$);return A.createElement("path",xd({},Z,{radius:typeof h=="number"?h:void 0,className:C,d:AO(ue,P,ne,le,h),ref:n,style:_O(_O({},H),t.style)}))})};function OO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function EO(e){for(var t=1;te*180/Math.PI,Kt=(e,t,n,r)=>({x:e+Math.cos(-wd*r)*n,y:t+Math.sin(-wd*r)*n}),j$=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},M$=(e,t)=>{var{x:n,y:r}=e,{x:s,y:o}=t;return Math.sqrt((n-s)**2+(r-o)**2)},N$=(e,t)=>{var{x:n,y:r}=e,{cx:s,cy:o}=t,u=M$({x:n,y:r},{x:s,y:o});if(u<=0)return{radius:u,angle:0};var f=(n-s)/u,d=Math.acos(f);return r>o&&(d=2*Math.PI-d),{radius:u,angle:E$(d),angleInRadian:d}},k$=e=>{var{startAngle:t,endAngle:n}=e,r=Math.floor(t/360),s=Math.floor(n/360),o=Math.min(r,s);return{startAngle:t-o*360,endAngle:n-o*360}},C$=(e,t)=>{var{startAngle:n,endAngle:r}=t,s=Math.floor(n/360),o=Math.floor(r/360),u=Math.min(s,o);return e+u*360},D$=(e,t)=>{var{relativeX:n,relativeY:r}=e,{radius:s,angle:o}=N$({x:n,y:r},t),{innerRadius:u,outerRadius:f}=t;if(sf||s===0)return null;var{startAngle:d,endAngle:h}=k$(t),m=o,p;if(d<=h){for(;m>h;)m-=360;for(;m=d&&m<=h}else{for(;m>d;)m-=360;for(;m=h&&m<=d}return p?EO(EO({},t),{},{radius:s,angle:C$(m,t)}):null};function UC(e){var{cx:t,cy:n,radius:r,startAngle:s,endAngle:o}=e,u=Kt(t,n,r,s),f=Kt(t,n,r,o);return{points:[u,f],cx:t,cy:n,radius:r,startAngle:s,endAngle:o}}var jO,MO,NO,kO,CO,DO,PO;function Yv(){return Yv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=Wn(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},Sf=e=>{var{cx:t,cy:n,radius:r,angle:s,sign:o,isExternal:u,cornerRadius:f,cornerIsExternal:d}=e,h=f*(u?1:-1)+r,m=Math.asin(f/h)/wd,p=d?s:s+o*m,v=Kt(t,n,h,p),x=Kt(t,n,r,p),w=d?s-o*m:s,_=Kt(t,n,h*Math.cos(m*wd),w);return{center:v,circleTangency:x,lineTangency:_,theta:m}},VC=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:s,startAngle:o,endAngle:u}=e,f=P$(o,u),d=o+f,h=Kt(t,n,s,o),m=Kt(t,n,s,d),p=ut(jO||(jO=Ua(["M ",",",` A `,",",`,0, `,",",`, `,",",` `])),h.x,h.y,s,s,+(Math.abs(f)>180),+(o>d),m.x,m.y);if(r>0){var v=Kt(t,n,r,o),x=Kt(t,n,r,d);p+=ut(MO||(MO=Ua(["L ",",",` A `,",",`,0, `,",",`, - `,","," Z"])),x.x,x.y,r,r,+(Math.abs(f)>180),+(o<=d),v.x,v.y)}else p+=ut(kO||(kO=Ua(["L ",","," Z"])),t,n);return p},R$=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:s,cornerRadius:o,forceCornerRadius:u,cornerIsExternal:f,startAngle:d,endAngle:h}=e,m=Wn(h-d),{circleTangency:p,lineTangency:v,theta:x}=Sf({cx:t,cy:n,radius:s,angle:d,sign:m,cornerRadius:o,cornerIsExternal:f}),{circleTangency:w,lineTangency:_,theta:S}=Sf({cx:t,cy:n,radius:s,angle:h,sign:-m,cornerRadius:o,cornerIsExternal:f}),O=f?Math.abs(d-h):Math.abs(d-h)-x-S;if(O<0)return u?ut(NO||(NO=Ua(["M ",",",` + `,","," Z"])),x.x,x.y,r,r,+(Math.abs(f)>180),+(o<=d),v.x,v.y)}else p+=ut(NO||(NO=Ua(["L ",","," Z"])),t,n);return p},R$=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:s,cornerRadius:o,forceCornerRadius:u,cornerIsExternal:f,startAngle:d,endAngle:h}=e,m=Wn(h-d),{circleTangency:p,lineTangency:v,theta:x}=Sf({cx:t,cy:n,radius:s,angle:d,sign:m,cornerRadius:o,cornerIsExternal:f}),{circleTangency:w,lineTangency:_,theta:S}=Sf({cx:t,cy:n,radius:s,angle:h,sign:-m,cornerRadius:o,cornerIsExternal:f}),O=f?Math.abs(d-h):Math.abs(d-h)-x-S;if(O<0)return u?ut(kO||(kO=Ua(["M ",",",` a`,",",",0,0,1,",`,0 a`,",",",0,0,1,",`,0 - `])),v.x,v.y,o,o,o*2,o,o,-o*2):UC({cx:t,cy:n,innerRadius:r,outerRadius:s,startAngle:d,endAngle:h});var M=ut(CO||(CO=Ua(["M ",",",` + `])),v.x,v.y,o,o,o*2,o,o,-o*2):VC({cx:t,cy:n,innerRadius:r,outerRadius:s,startAngle:d,endAngle:h});var M=ut(CO||(CO=Ua(["M ",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` A`,",",",0,0,",",",",",` - `])),v.x,v.y,o,o,+(m<0),p.x,p.y,s,s,+(O>180),+(m<0),w.x,w.y,o,o,+(m<0),_.x,_.y);if(r>0){var{circleTangency:j,lineTangency:k,theta:N}=Sf({cx:t,cy:n,radius:r,angle:d,sign:m,isExternal:!0,cornerRadius:o,cornerIsExternal:f}),{circleTangency:C,lineTangency:L,theta:I}=Sf({cx:t,cy:n,radius:r,angle:h,sign:-m,isExternal:!0,cornerRadius:o,cornerIsExternal:f}),Y=f?Math.abs(d-h):Math.abs(d-h)-N-I;if(Y<0&&o===0)return"".concat(M,"L").concat(t,",").concat(n,"Z");M+=ut(DO||(DO=Ua(["L",",",` + `])),v.x,v.y,o,o,+(m<0),p.x,p.y,s,s,+(O>180),+(m<0),w.x,w.y,o,o,+(m<0),_.x,_.y);if(r>0){var{circleTangency:j,lineTangency:N,theta:k}=Sf({cx:t,cy:n,radius:r,angle:d,sign:m,isExternal:!0,cornerRadius:o,cornerIsExternal:f}),{circleTangency:C,lineTangency:L,theta:I}=Sf({cx:t,cy:n,radius:r,angle:h,sign:-m,isExternal:!0,cornerRadius:o,cornerIsExternal:f}),Y=f?Math.abs(d-h):Math.abs(d-h)-k-I;if(Y<0&&o===0)return"".concat(M,"L").concat(t,",").concat(n,"Z");M+=ut(DO||(DO=Ua(["L",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` - A`,",",",0,0,",",",",","Z"])),L.x,L.y,o,o,+(m<0),C.x,C.y,r,r,+(Y>180),+(m>0),j.x,j.y,o,o,+(m<0),k.x,k.y)}else M+=ut(PO||(PO=Ua(["L",",","Z"])),t,n);return M},L$={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},VC=e=>{var t=vn(e,L$),{cx:n,cy:r,innerRadius:s,outerRadius:o,cornerRadius:u,forceCornerRadius:f,cornerIsExternal:d,startAngle:h,endAngle:m,className:p}=t;if(o0&&Math.abs(h-m)<360?_=R$({cx:n,cy:r,innerRadius:s,outerRadius:o,cornerRadius:Math.min(w,x/2),forceCornerRadius:f,cornerIsExternal:d,startAngle:h,endAngle:m}):_=UC({cx:n,cy:r,innerRadius:s,outerRadius:o,startAngle:h,endAngle:m}),A.createElement("path",Yv({},er(t),{className:v,d:_}))};function z$(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(xN(t)){if(e==="centric"){var{cx:r,cy:s,innerRadius:o,outerRadius:u,angle:f}=t,d=Kt(r,s,o,f),h=Kt(r,s,u,f);return[{x:d.x,y:d.y},{x:h.x,y:h.y}]}return BC(t)}}var Ty={},Oy={},Ey={},RO;function I$(){return RO||(RO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=CN();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(Ey)),Ey}var LO;function B$(){return LO||(LO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=I$();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(Oy)),Oy}var zO;function U$(){return zO||(zO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=DN(),n=B$();function r(s,o,u){u&&typeof u!="number"&&t.isIterateeCall(s,o,u)&&(o=u=void 0),s=n.toFinite(s),o===void 0?(o=s,s=0):o=n.toFinite(o),u=u===void 0?se.chartData,$$=$([oa],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),vb=(e,t,n,r)=>r?$$(e):oa(e);function Er(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(Le(t)&&Le(n))return!0}return!1}function BO(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function $C(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,s,o;if(Le(n))s=n;else if(typeof n=="function")return;if(Le(r))o=r;else if(typeof r=="function")return;var u=[s,o];if(Er(u))return u}}function F$(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(Er(r))return BO(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[s,o]=e,u,f;if(s==="auto")t!=null&&(u=Math.min(...t));else if(ye(s))u=s;else if(typeof s=="function")try{t!=null&&(u=s(t?.[0]))}catch{}else if(typeof s=="string"&&M2.test(s)){var d=M2.exec(s);if(d==null||d[1]==null||t==null)u=void 0;else{var h=+d[1];u=t[0]-h}}else u=t?.[0];if(o==="auto")t!=null&&(f=Math.max(...t));else if(ye(o))f=o;else if(typeof o=="function")try{t!=null&&(f=o(t?.[1]))}catch{}else if(typeof o=="string"&&k2.test(o)){var m=k2.exec(o);if(m==null||m[1]==null||t==null)f=void 0;else{var p=+m[1];f=t[1]+p}}else f=t?.[1];var v=[u,f];if(Er(v))return t==null?v:BO(v,t,n)}}}var So=1e9,H$={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},xb,nt=!0,tr="[DecimalError] ",Ka=tr+"Invalid argument: ",bb=tr+"Exponent out of range: ",Ao=Math.floor,za=Math.pow,K$=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Nn,Nt=1e7,Je=7,FC=9007199254740991,_d=Ao(FC/Je),ce={};ce.absoluteValue=ce.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ce.comparedTo=ce.cmp=function(e){var t,n,r,s,o=this;if(e=new o.constructor(e),o.s!==e.s)return o.s||-e.s;if(o.e!==e.e)return o.e>e.e^o.s<0?1:-1;for(r=o.d.length,s=e.d.length,t=0,n=re.d[t]^o.s<0?1:-1;return r===s?0:r>s^o.s<0?1:-1};ce.decimalPlaces=ce.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*Je;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ce.dividedBy=ce.div=function(e){return ri(this,new this.constructor(e))};ce.dividedToIntegerBy=ce.idiv=function(e){var t=this,n=t.constructor;return Xe(ri(t,new n(e),0,1),n.precision)};ce.equals=ce.eq=function(e){return!this.cmp(e)};ce.exponent=function(){return bt(this)};ce.greaterThan=ce.gt=function(e){return this.cmp(e)>0};ce.greaterThanOrEqualTo=ce.gte=function(e){return this.cmp(e)>=0};ce.isInteger=ce.isint=function(){return this.e>this.d.length-2};ce.isNegative=ce.isneg=function(){return this.s<0};ce.isPositive=ce.ispos=function(){return this.s>0};ce.isZero=function(){return this.s===0};ce.lessThan=ce.lt=function(e){return this.cmp(e)<0};ce.lessThanOrEqualTo=ce.lte=function(e){return this.cmp(e)<1};ce.logarithm=ce.log=function(e){var t,n=this,r=n.constructor,s=r.precision,o=s+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Nn))throw Error(tr+"NaN");if(n.s<1)throw Error(tr+(n.s?"NaN":"-Infinity"));return n.eq(Nn)?new r(0):(nt=!1,t=ri(hu(n,o),hu(e,o),o),nt=!0,Xe(t,s))};ce.minus=ce.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?XC(t,e):HC(t,(e.s=-e.s,e))};ce.modulo=ce.mod=function(e){var t,n=this,r=n.constructor,s=r.precision;if(e=new r(e),!e.s)throw Error(tr+"NaN");return n.s?(nt=!1,t=ri(n,e,0,1).times(e),nt=!0,n.minus(t)):Xe(new r(n),s)};ce.naturalExponential=ce.exp=function(){return KC(this)};ce.naturalLogarithm=ce.ln=function(){return hu(this)};ce.negated=ce.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ce.plus=ce.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?HC(t,e):XC(t,(e.s=-e.s,e))};ce.precision=ce.sd=function(e){var t,n,r,s=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ka+e);if(t=bt(s)+1,r=s.d.length-1,n=r*Je+1,r=s.d[r],r){for(;r%10==0;r/=10)n--;for(r=s.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ce.squareRoot=ce.sqrt=function(){var e,t,n,r,s,o,u,f=this,d=f.constructor;if(f.s<1){if(!f.s)return new d(0);throw Error(tr+"NaN")}for(e=bt(f),nt=!1,s=Math.sqrt(+f),s==0||s==1/0?(t=Tr(f.d),(t.length+e)%2==0&&(t+="0"),s=Math.sqrt(t),e=Ao((e+1)/2)-(e<0||e%2),s==1/0?t="5e"+e:(t=s.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new d(t)):r=new d(s.toString()),n=d.precision,s=u=n+3;;)if(o=r,r=o.plus(ri(f,o,u+2)).times(.5),Tr(o.d).slice(0,u)===(t=Tr(r.d)).slice(0,u)){if(t=t.slice(u-3,u+1),s==u&&t=="4999"){if(Xe(o,n+1,0),o.times(o).eq(f)){r=o;break}}else if(t!="9999")break;u+=4}return nt=!0,Xe(r,n)};ce.times=ce.mul=function(e){var t,n,r,s,o,u,f,d,h,m=this,p=m.constructor,v=m.d,x=(e=new p(e)).d;if(!m.s||!e.s)return new p(0);for(e.s*=m.s,n=m.e+e.e,d=v.length,h=x.length,d=0;){for(t=0,s=d+r;s>r;)f=o[s]+x[r]*v[s-r-1]+t,o[s--]=f%Nt|0,t=f/Nt|0;o[s]=(o[s]+t)%Nt|0}for(;!o[--u];)o.pop();return t?++n:o.shift(),e.d=o,e.e=n,nt?Xe(e,p.precision):e};ce.toDecimalPlaces=ce.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Dr(e,0,So),t===void 0?t=r.rounding:Dr(t,0,8),Xe(n,e+bt(n)+1,t))};ce.toExponential=function(e,t){var n,r=this,s=r.constructor;return e===void 0?n=Ja(r,!0):(Dr(e,0,So),t===void 0?t=s.rounding:Dr(t,0,8),r=Xe(new s(r),e+1,t),n=Ja(r,!0,e+1)),n};ce.toFixed=function(e,t){var n,r,s=this,o=s.constructor;return e===void 0?Ja(s):(Dr(e,0,So),t===void 0?t=o.rounding:Dr(t,0,8),r=Xe(new o(s),e+bt(s)+1,t),n=Ja(r.abs(),!1,e+bt(r)+1),s.isneg()&&!s.isZero()?"-"+n:n)};ce.toInteger=ce.toint=function(){var e=this,t=e.constructor;return Xe(new t(e),bt(e)+1,t.rounding)};ce.toNumber=function(){return+this};ce.toPower=ce.pow=function(e){var t,n,r,s,o,u,f=this,d=f.constructor,h=12,m=+(e=new d(e));if(!e.s)return new d(Nn);if(f=new d(f),!f.s){if(e.s<1)throw Error(tr+"Infinity");return f}if(f.eq(Nn))return f;if(r=d.precision,e.eq(Nn))return Xe(f,r);if(t=e.e,n=e.d.length-1,u=t>=n,o=f.s,u){if((n=m<0?-m:m)<=FC){for(s=new d(Nn),t=Math.ceil(r/Je+4),nt=!1;n%2&&(s=s.times(f),VO(s.d,t)),n=Ao(n/2),n!==0;)f=f.times(f),VO(f.d,t);return nt=!0,e.s<0?new d(Nn).div(s):Xe(s,r)}}else if(o<0)throw Error(tr+"NaN");return o=o<0&&e.d[Math.max(t,n)]&1?-1:1,f.s=1,nt=!1,s=e.times(hu(f,r+h)),nt=!0,s=KC(s),s.s=o,s};ce.toPrecision=function(e,t){var n,r,s=this,o=s.constructor;return e===void 0?(n=bt(s),r=Ja(s,n<=o.toExpNeg||n>=o.toExpPos)):(Dr(e,1,So),t===void 0?t=o.rounding:Dr(t,0,8),s=Xe(new o(s),e,t),n=bt(s),r=Ja(s,e<=n||n<=o.toExpNeg,e)),r};ce.toSignificantDigits=ce.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Dr(e,1,So),t===void 0?t=r.rounding:Dr(t,0,8)),Xe(new r(n),e,t)};ce.toString=ce.valueOf=ce.val=ce.toJSON=ce[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=bt(e),n=e.constructor;return Ja(e,t<=n.toExpNeg||t>=n.toExpPos)};function HC(e,t){var n,r,s,o,u,f,d,h,m=e.constructor,p=m.precision;if(!e.s||!t.s)return t.s||(t=new m(e)),nt?Xe(t,p):t;if(d=e.d,h=t.d,u=e.e,s=t.e,d=d.slice(),o=u-s,o){for(o<0?(r=d,o=-o,f=h.length):(r=h,s=u,f=d.length),u=Math.ceil(p/Je),f=u>f?u+1:f+1,o>f&&(o=f,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for(f=d.length,o=h.length,f-o<0&&(o=f,r=h,h=d,d=r),n=0;o;)n=(d[--o]=d[o]+h[o]+n)/Nt|0,d[o]%=Nt;for(n&&(d.unshift(n),++s),f=d.length;d[--f]==0;)d.pop();return t.d=d,t.e=s,nt?Xe(t,p):t}function Dr(e,t,n){if(e!==~~e||en)throw Error(Ka+e)}function Tr(e){var t,n,r,s=e.length-1,o="",u=e[0];if(s>0){for(o+=u,t=1;tu?1:-1;else for(f=d=0;fs[f]?1:-1;break}return d}function n(r,s,o){for(var u=0;o--;)r[o]-=u,u=r[o]1;)r.shift()}return function(r,s,o,u){var f,d,h,m,p,v,x,w,_,S,O,M,j,k,N,C,L,I,Y=r.constructor,te=r.s==s.s?1:-1,ie=r.d,K=s.d;if(!r.s)return new Y(r);if(!s.s)throw Error(tr+"Division by zero");for(d=r.e-s.e,L=K.length,N=ie.length,x=new Y(te),w=x.d=[],h=0;K[h]==(ie[h]||0);)++h;if(K[h]>(ie[h]||0)&&--d,o==null?M=o=Y.precision:u?M=o+(bt(r)-bt(s))+1:M=o,M<0)return new Y(0);if(M=M/Je+2|0,h=0,L==1)for(m=0,K=K[0],M++;(h1&&(K=e(K,m),ie=e(ie,m),L=K.length,N=ie.length),k=L,_=ie.slice(0,L),S=_.length;S=Nt/2&&++C;do m=0,f=t(K,_,L,S),f<0?(O=_[0],L!=S&&(O=O*Nt+(_[1]||0)),m=O/C|0,m>1?(m>=Nt&&(m=Nt-1),p=e(K,m),v=p.length,S=_.length,f=t(p,_,v,S),f==1&&(m--,n(p,L16)throw Error(bb+bt(e));if(!e.s)return new m(Nn);for(nt=!1,f=p,u=new m(.03125);e.abs().gte(.1);)e=e.times(u),h+=5;for(r=Math.log(za(2,h))/Math.LN10*2+5|0,f+=r,n=s=o=new m(Nn),m.precision=f;;){if(s=Xe(s.times(e),f),n=n.times(++d),u=o.plus(ri(s,n,f)),Tr(u.d).slice(0,f)===Tr(o.d).slice(0,f)){for(;h--;)o=Xe(o.times(o),f);return m.precision=p,t==null?(nt=!0,Xe(o,p)):o}o=u}}function bt(e){for(var t=e.e*Je,n=e.d[0];n>=10;n/=10)t++;return t}function My(e,t,n){if(t>e.LN10.sd())throw nt=!0,n&&(e.precision=n),Error(tr+"LN10 precision limit exceeded");return Xe(new e(e.LN10),t)}function Gi(e){for(var t="";e--;)t+="0";return t}function hu(e,t){var n,r,s,o,u,f,d,h,m,p=1,v=10,x=e,w=x.d,_=x.constructor,S=_.precision;if(x.s<1)throw Error(tr+(x.s?"NaN":"-Infinity"));if(x.eq(Nn))return new _(0);if(t==null?(nt=!1,h=S):h=t,x.eq(10))return t==null&&(nt=!0),My(_,h);if(h+=v,_.precision=h,n=Tr(w),r=n.charAt(0),o=bt(x),Math.abs(o)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)x=x.times(e),n=Tr(x.d),r=n.charAt(0),p++;o=bt(x),r>1?(x=new _("0."+n),o++):x=new _(r+"."+n.slice(1))}else return d=My(_,h+2,S).times(o+""),x=hu(new _(r+"."+n.slice(1)),h-v).plus(d),_.precision=S,t==null?(nt=!0,Xe(x,S)):x;for(f=u=x=ri(x.minus(Nn),x.plus(Nn),h),m=Xe(x.times(x),h),s=3;;){if(u=Xe(u.times(m),h),d=f.plus(ri(u,new _(s),h)),Tr(d.d).slice(0,h)===Tr(f.d).slice(0,h))return f=f.times(2),o!==0&&(f=f.plus(My(_,h+2,S).times(o+""))),f=ri(f,new _(p),h),_.precision=S,t==null?(nt=!0,Xe(f,S)):f;f=d,s+=2}}function UO(e,t){var n,r,s;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(s=t.length;t.charCodeAt(s-1)===48;)--s;if(t=t.slice(r,s),t){if(s-=r,n=n-r-1,e.e=Ao(n/Je),e.d=[],r=(n+1)%Je,n<0&&(r+=Je),r_d||e.e<-_d))throw Error(bb+n)}else e.s=0,e.e=0,e.d=[0];return e}function Xe(e,t,n){var r,s,o,u,f,d,h,m,p=e.d;for(u=1,o=p[0];o>=10;o/=10)u++;if(r=t-u,r<0)r+=Je,s=t,h=p[m=0];else{if(m=Math.ceil((r+1)/Je),o=p.length,m>=o)return e;for(h=o=p[m],u=1;o>=10;o/=10)u++;r%=Je,s=r-Je+u}if(n!==void 0&&(o=za(10,u-s-1),f=h/o%10|0,d=t<0||p[m+1]!==void 0||h%o,d=n<4?(f||d)&&(n==0||n==(e.s<0?3:2)):f>5||f==5&&(n==4||d||n==6&&(r>0?s>0?h/za(10,u-s):0:p[m-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return d?(o=bt(e),p.length=1,t=t-o-1,p[0]=za(10,(Je-t%Je)%Je),e.e=Ao(-t/Je)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(r==0?(p.length=m,o=1,m--):(p.length=m+1,o=za(10,Je-r),p[m]=s>0?(h/za(10,u-s)%za(10,s)|0)*o:0),d)for(;;)if(m==0){(p[0]+=o)==Nt&&(p[0]=1,++e.e);break}else{if(p[m]+=o,p[m]!=Nt)break;p[m--]=0,o=1}for(r=p.length;p[--r]===0;)p.pop();if(nt&&(e.e>_d||e.e<-_d))throw Error(bb+bt(e));return e}function XC(e,t){var n,r,s,o,u,f,d,h,m,p,v=e.constructor,x=v.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new v(e),nt?Xe(t,x):t;if(d=e.d,p=t.d,r=t.e,h=e.e,d=d.slice(),u=h-r,u){for(m=u<0,m?(n=d,u=-u,f=p.length):(n=p,r=h,f=d.length),s=Math.max(Math.ceil(x/Je),f)+2,u>s&&(u=s,n.length=1),n.reverse(),s=u;s--;)n.push(0);n.reverse()}else{for(s=d.length,f=p.length,m=s0;--s)d[f++]=0;for(s=p.length;s>u;){if(d[--s]0?o=o.charAt(0)+"."+o.slice(1)+Gi(r):u>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(s<0?"e":"e+")+s):s<0?(o="0."+Gi(-s-1)+o,n&&(r=n-u)>0&&(o+=Gi(r))):s>=u?(o+=Gi(s+1-u),n&&(r=n-s-1)>0&&(o=o+"."+Gi(r))):((r=s+1)0&&(s+1===u&&(o+="."),o+=Gi(r))),e.s<0?"-"+o:o}function VO(e,t){if(e.length>t)return e.length=t,!0}function YC(e){var t,n,r;function s(o){var u=this;if(!(u instanceof s))return new s(o);if(u.constructor=s,o instanceof s){u.s=o.s,u.e=o.e,u.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Ka+o);if(o>0)u.s=1;else if(o<0)o=-o,u.s=-1;else{u.s=0,u.e=0,u.d=[0];return}if(o===~~o&&o<1e7){u.e=0,u.d=[o];return}return UO(u,o.toString())}else if(typeof o!="string")throw Error(Ka+o);if(o.charCodeAt(0)===45?(o=o.slice(1),u.s=-1):u.s=1,K$.test(o))UO(u,o);else throw Error(Ka+o)}if(s.prototype=ce,s.ROUND_UP=0,s.ROUND_DOWN=1,s.ROUND_CEIL=2,s.ROUND_FLOOR=3,s.ROUND_HALF_UP=4,s.ROUND_HALF_DOWN=5,s.ROUND_HALF_EVEN=6,s.ROUND_HALF_CEIL=7,s.ROUND_HALF_FLOOR=8,s.clone=YC,s.config=s.set=X$,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=s[t+1]&&r<=s[t+2])this[n]=r;else throw Error(Ka+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ka+n+": "+r);return this}var xb=YC(H$);Nn=new xb(1);const Ce=xb;function GC(e){var t;return e===0?t=1:t=Math.floor(new Ce(e).abs().log(10).toNumber())+1,t}function WC(e,t,n){for(var r=new Ce(e),s=0,o=[];r.lt(t)&&s<1e5;)o.push(r.toNumber()),r=r.add(n),s++;return o}var ZC=e=>{var[t,n]=e,[r,s]=[t,n];return t>n&&([r,s]=[n,t]),[r,s]},wb=(e,t,n)=>{if(e.lte(0))return new Ce(0);var r=GC(e.toNumber()),s=new Ce(10).pow(r),o=e.div(s),u=r!==1?.05:.1,f=new Ce(Math.ceil(o.div(u).toNumber())).add(n).mul(u),d=f.mul(s);return t?new Ce(d.toNumber()):new Ce(Math.ceil(d.toNumber()))},QC=(e,t,n)=>{var r;if(e.lte(0))return new Ce(0);var s=[1,2,2.5,5],o=e.toNumber(),u=Math.floor(new Ce(o).abs().log(10).toNumber()),f=new Ce(10).pow(u),d=e.div(f).toNumber(),h=s.findIndex(x=>x>=d-1e-10);if(h===-1&&(f=f.mul(10),h=0),h+=n,h>=s.length){var m=Math.floor(h/s.length);h%=s.length,f=f.mul(new Ce(10).pow(m))}var p=(r=s[h])!==null&&r!==void 0?r:1,v=new Ce(p).mul(f);return t?v:new Ce(Math.ceil(v.toNumber()))},Y$=(e,t,n)=>{var r=new Ce(1),s=new Ce(e);if(!s.isint()&&n){var o=Math.abs(e);o<1?(r=new Ce(10).pow(GC(e)-1),s=new Ce(Math.floor(s.div(r).toNumber())).mul(r)):o>1&&(s=new Ce(Math.floor(e)))}else e===0?s=new Ce(Math.floor((t-1)/2)):n||(s=new Ce(Math.floor(e)));for(var u=Math.floor((t-1)/2),f=[],d=0;d4&&arguments[4]!==void 0?arguments[4]:0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:wb;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ce(0),tickMin:new Ce(0),tickMax:new Ce(0)};var f=u(new Ce(n).sub(t).div(r-1),s,o),d;t<=0&&n>=0?d=new Ce(0):(d=new Ce(t).add(n).div(2),d=d.sub(new Ce(d).mod(f)));var h=Math.ceil(d.sub(t).div(f).toNumber()),m=Math.ceil(new Ce(n).sub(d).div(f).toNumber()),p=h+m+1;return p>r?JC(t,n,r,s,o+1,u):(p0?m+(r-p):m,h=n>0?h:h+(r-p)),{step:f,tickMin:d.sub(new Ce(h).mul(f)),tickMax:d.add(new Ce(m).mul(f))})},qO=function(t){var[n,r]=t,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",f=Math.max(s,2),[d,h]=ZC([n,r]);if(d===-1/0||h===1/0){var m=h===1/0?[d,...Array(s-1).fill(1/0)]:[...Array(s-1).fill(-1/0),h];return n>r?m.reverse():m}if(d===h)return Y$(d,s,o);var p=u==="snap125"?QC:wb,{step:v,tickMin:x,tickMax:w}=JC(d,h,f,o,0,p),_=WC(x,w.add(new Ce(.1).mul(v)),v);return n>r?_.reverse():_},$O=function(t,n){var[r,s]=t,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",[f,d]=ZC([r,s]);if(f===-1/0||d===1/0)return[r,s];if(f===d)return[f];var h=u==="snap125"?QC:wb,m=Math.max(n,2),p=h(new Ce(d).sub(f).div(m-1),o,0),v=[...WC(new Ce(f),new Ce(d),p),d];return o===!1&&(v=v.map(x=>Math.round(x))),r>s?v.reverse():v},G$=e=>e.rootProps.barCategoryGap,ph=e=>e.rootProps.stackOffset,e3=e=>e.rootProps.reverseStackOrder,_b=e=>e.options.chartName,Sb=e=>e.rootProps.syncId,t3=e=>e.rootProps.syncMethod,Ab=e=>e.options.eventEmitter,pn={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},ka={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},wr={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},gh=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function yh(e,t,n){if(n!=="auto")return n;if(e!=null)return sa(e,t)?"category":"number"}function FO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sd(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},Tb=$([J$,AC],(e,t)=>{var n;if(e!=null)return e;var r=(n=yh(t,"angleAxis",HO.type))!==null&&n!==void 0?n:"category";return Sd(Sd({},HO),{},{type:r})}),eF=(e,t)=>e.polarAxis.radiusAxis[t],Ob=$([eF,AC],(e,t)=>{var n;if(e!=null)return e;var r=(n=yh(t,"radiusAxis",KO.type))!==null&&n!==void 0?n:"category";return Sd(Sd({},KO),{},{type:r})}),vh=e=>e.polarOptions,Eb=$([hi,mi,Xt],j$),n3=$([vh,Eb],(e,t)=>{if(e!=null)return ra(e.innerRadius,t,0)}),r3=$([vh,Eb],(e,t)=>{if(e!=null)return ra(e.outerRadius,t,t*.8)}),tF=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},i3=$([vh],tF);$([Tb,i3],gh);var a3=$([Eb,n3,r3],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});$([Ob,a3],gh);var s3=$([ht,vh,n3,r3,hi,mi],(e,t,n,r,s,o)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:u,cy:f,startAngle:d,endAngle:h}=t;return{cx:ra(u,s,s/2),cy:ra(f,o,o/2),innerRadius:n,outerRadius:r,startAngle:d,endAngle:h,clockWise:!1}}}),Ct=(e,t)=>t,bh=(e,t,n)=>n;function o3(e){return e?.id}function l3(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:s,dataKey:o}=n,u=new Map;return e.forEach(f=>{var d,h=(d=f.data)!==null&&d!==void 0?d:r;if(!(h==null||h.length===0)){var m=o3(f);h.forEach((p,v)=>{var x=o==null||s?v:String(Ot(p,o,null)),w=Ot(p,f.dataKey,0),_;u.has(x)?_=u.get(x):_={},Object.assign(_,{[m]:w}),u.set(x,_)})}}),Array.from(u.values())}function jb(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var xh=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function wh(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function nF(e,t){if(e.length===t.length){for(var n=0;n{var t=ht(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},To=e=>e.tooltip.settings.axisId;function Mb(e){if(e!=null){var t=e.ticks,n=e.bandwidth,r=e.range(),s=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(o){function u(){return o.apply(this,arguments)}return u.toString=function(){return o.toString()},u})(()=>s),rangeMin:()=>s[0],rangeMax:()=>s[1],isInRange(o){var u=s[0],f=s[1];return u<=f?o>=u&&o<=f:o>=f&&o<=u},bandwidth:n?()=>n.call(e):void 0,ticks:t?o=>t.call(e,o):void 0,map:(o,u)=>{var f=e(o);if(f!=null){if(e.bandwidth&&u!==null&&u!==void 0&&u.position){var d=e.bandwidth();switch(u.position){case"middle":f+=d/2;break;case"end":f+=d;break}}return f}}}}}var rF=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Er(t)){for(var n,r,s=0;sr)&&(r=o))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function ea(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function iF(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function kb(e){let t,n,r;e.length!==2?(t=ea,n=(f,d)=>ea(e(f),d),r=(f,d)=>e(f)-d):(t=e===ea||e===iF?e:aF,n=e,r=e);function s(f,d,h=0,m=f.length){if(h>>1;n(f[p],d)<0?h=p+1:m=p}while(h>>1;n(f[p],d)<=0?h=p+1:m=p}while(hh&&r(f[p-1],d)>-r(f[p],d)?p-1:p}return{left:s,center:u,right:o}}function aF(){return 0}function u3(e){return e===null?NaN:+e}function*sF(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const oF=kb(ea),Ru=oF.right;kb(u3).center;class XO extends Map{constructor(t,n=cF){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,s]of t)this.set(r,s)}get(t){return super.get(YO(this,t))}has(t){return super.has(YO(this,t))}set(t,n){return super.set(lF(this,t),n)}delete(t){return super.delete(uF(this,t))}}function YO({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function lF({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function uF({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function cF(e){return e!==null&&typeof e=="object"?e.valueOf():e}function fF(e=ea){if(e===ea)return c3;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function c3(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const dF=Math.sqrt(50),hF=Math.sqrt(10),mF=Math.sqrt(2);function Ad(e,t,n){const r=(t-e)/Math.max(0,n),s=Math.floor(Math.log10(r)),o=r/Math.pow(10,s),u=o>=dF?10:o>=hF?5:o>=mF?2:1;let f,d,h;return s<0?(h=Math.pow(10,-s)/u,f=Math.round(e*h),d=Math.round(t*h),f/ht&&--d,h=-h):(h=Math.pow(10,s)*u,f=Math.round(e/h),d=Math.round(t/h),f*ht&&--d),d0))return[];if(e===t)return[e];const r=t=s))return[];const f=o-s+1,d=new Array(f);if(r)if(u<0)for(let h=0;h=r)&&(n=r);return n}function WO(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function f3(e,t,n=0,r=1/0,s){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(s=s===void 0?c3:fF(s);r>n;){if(r-n>600){const d=r-n+1,h=t-n+1,m=Math.log(d),p=.5*Math.exp(2*m/3),v=.5*Math.sqrt(m*p*(d-p)/d)*(h-d/2<0?-1:1),x=Math.max(n,Math.floor(t-h*p/d+v)),w=Math.min(r,Math.floor(t+(d-h)*p/d+v));f3(e,t,x,w,s)}const o=e[t];let u=n,f=r;for(Dl(e,n,t),s(e[r],o)>0&&Dl(e,n,r);u0;)--f}s(e[n],o)===0?Dl(e,n,f):(++f,Dl(e,f,r)),f<=t&&(n=f+1),t<=f&&(r=f-1)}return e}function Dl(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function pF(e,t,n){if(e=Float64Array.from(sF(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return WO(e);if(t>=1)return GO(e);var r,s=(r-1)*t,o=Math.floor(s),u=GO(f3(e,o).subarray(0,o+1)),f=WO(e.subarray(o+1));return u+(f-u)*(s-o)}}function gF(e,t,n=u3){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,s=(r-1)*t,o=Math.floor(s),u=+n(e[o],o,e),f=+n(e[o+1],o+1,e);return u+(f-u)*(s-o)}}function yF(e,t,n){e=+e,t=+t,n=(s=arguments.length)<2?(t=e,e=0,1):s<3?1:+n;for(var r=-1,s=Math.max(0,Math.ceil((t-e)/n))|0,o=new Array(s);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Af(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Af(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=xF.exec(e))?new gn(t[1],t[2],t[3],1):(t=wF.exec(e))?new gn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=_F.exec(e))?Af(t[1],t[2],t[3],t[4]):(t=SF.exec(e))?Af(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=AF.exec(e))?rE(t[1],t[2]/100,t[3]/100,1):(t=TF.exec(e))?rE(t[1],t[2]/100,t[3]/100,t[4]):ZO.hasOwnProperty(e)?eE(ZO[e]):e==="transparent"?new gn(NaN,NaN,NaN,0):null}function eE(e){return new gn(e>>16&255,e>>8&255,e&255,1)}function Af(e,t,n,r){return r<=0&&(e=t=n=NaN),new gn(e,t,n,r)}function jF(e){return e instanceof Lu||(e=gu(e)),e?(e=e.rgb(),new gn(e.r,e.g,e.b,e.opacity)):new gn}function Jv(e,t,n,r){return arguments.length===1?jF(e):new gn(e,t,n,r??1)}function gn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Db(gn,Jv,h3(Lu,{brighter(e){return e=e==null?Td:Math.pow(Td,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?mu:Math.pow(mu,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new gn(Xa(this.r),Xa(this.g),Xa(this.b),Od(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:tE,formatHex:tE,formatHex8:MF,formatRgb:nE,toString:nE}));function tE(){return`#${Va(this.r)}${Va(this.g)}${Va(this.b)}`}function MF(){return`#${Va(this.r)}${Va(this.g)}${Va(this.b)}${Va((isNaN(this.opacity)?1:this.opacity)*255)}`}function nE(){const e=Od(this.opacity);return`${e===1?"rgb(":"rgba("}${Xa(this.r)}, ${Xa(this.g)}, ${Xa(this.b)}${e===1?")":`, ${e})`}`}function Od(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Xa(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Va(e){return e=Xa(e),(e<16?"0":"")+e.toString(16)}function rE(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new cr(e,t,n,r)}function m3(e){if(e instanceof cr)return new cr(e.h,e.s,e.l,e.opacity);if(e instanceof Lu||(e=gu(e)),!e)return new cr;if(e instanceof cr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,s=Math.min(t,n,r),o=Math.max(t,n,r),u=NaN,f=o-s,d=(o+s)/2;return f?(t===o?u=(n-r)/f+(n0&&d<1?0:u,new cr(u,f,d,e.opacity)}function kF(e,t,n,r){return arguments.length===1?m3(e):new cr(e,t,n,r??1)}function cr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Db(cr,kF,h3(Lu,{brighter(e){return e=e==null?Td:Math.pow(Td,e),new cr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?mu:Math.pow(mu,e),new cr(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,s=2*n-r;return new gn(ky(e>=240?e-240:e+120,s,r),ky(e,s,r),ky(e<120?e+240:e-120,s,r),this.opacity)},clamp(){return new cr(iE(this.h),Tf(this.s),Tf(this.l),Od(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(){const e=Od(this.opacity);return`${e===1?"hsl(":"hsla("}${iE(this.h)}, ${Tf(this.s)*100}%, ${Tf(this.l)*100}%${e===1?")":`, ${e})`}`}}));function iE(e){return e=(e||0)%360,e<0?e+360:e}function Tf(e){return Math.max(0,Math.min(1,e||0))}function ky(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Pb=e=>()=>e;function NF(e,t){return function(n){return e+n*t}}function CF(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function DF(e){return(e=+e)==1?p3:function(t,n){return n-t?CF(t,n,e):Pb(isNaN(t)?n:t)}}function p3(e,t){var n=t-e;return n?NF(e,n):Pb(isNaN(e)?t:e)}const aE=(function e(t){var n=DF(t);function r(s,o){var u=n((s=Jv(s)).r,(o=Jv(o)).r),f=n(s.g,o.g),d=n(s.b,o.b),h=p3(s.opacity,o.opacity);return function(m){return s.r=u(m),s.g=f(m),s.b=d(m),s.opacity=h(m),s+""}}return r.gamma=e,r})(1);function PF(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),s;return function(o){for(s=0;sn&&(o=t.slice(n,o),f[u]?f[u]+=o:f[++u]=o),(r=r[0])===(s=s[0])?f[u]?f[u]+=s:f[++u]=s:(f[++u]=null,d.push({i:u,x:Ed(r,s)})),n=Ny.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function HF(e,t,n){var r=e[0],s=e[1],o=t[0],u=t[1];return s2?KF:HF,d=h=null,p}function p(v){return v==null||isNaN(v=+v)?o:(d||(d=f(e.map(r),t,n)))(r(u(v)))}return p.invert=function(v){return u(s((h||(h=f(t,e.map(r),Ed)))(v)))},p.domain=function(v){return arguments.length?(e=Array.from(v,jd),m()):e.slice()},p.range=function(v){return arguments.length?(t=Array.from(v),m()):t.slice()},p.rangeRound=function(v){return t=Array.from(v),n=Rb,m()},p.clamp=function(v){return arguments.length?(u=v?!0:rn,m()):u!==rn},p.interpolate=function(v){return arguments.length?(n=v,m()):n},p.unknown=function(v){return arguments.length?(o=v,p):o},function(v,x){return r=v,s=x,m()}}function Lb(){return _h()(rn,rn)}function XF(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function Md(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 mo(e){return e=Md(Math.abs(e)),e?e[1]:NaN}function YF(e,t){return function(n,r){for(var s=n.length,o=[],u=0,f=e[0],d=0;s>0&&f>0&&(d+f+1>r&&(f=Math.max(1,r-d)),o.push(n.substring(s-=f,s+f)),!((d+=f+1)>r));)f=e[u=(u+1)%e.length];return o.reverse().join(t)}}function GF(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var WF=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function yu(e){if(!(t=WF.exec(e)))throw new Error("invalid format: "+e);var t;return new zb({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]})}yu.prototype=zb.prototype;function zb(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+""}zb.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 ZF(e){e:for(var t=e.length,n=1,r=-1,s;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(s+1):e}var kd;function QF(e,t){var n=Md(e,t);if(!n)return kd=void 0,e.toPrecision(t);var r=n[0],s=n[1],o=s-(kd=Math.max(-8,Math.min(8,Math.floor(s/3)))*3)+1,u=r.length;return o===u?r:o>u?r+new Array(o-u+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+Md(e,Math.max(0,t+o-1))[0]}function oE(e,t){var n=Md(e,t);if(!n)return e+"";var r=n[0],s=n[1];return s<0?"0."+new Array(-s).join("0")+r:r.length>s+1?r.slice(0,s+1)+"."+r.slice(s+1):r+new Array(s-r.length+2).join("0")}const lE={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:XF,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)=>oE(e*100,t),r:oE,s:QF,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function uE(e){return e}var cE=Array.prototype.map,fE=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function JF(e){var t=e.grouping===void 0||e.thousands===void 0?uE:YF(cE.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",s=e.decimal===void 0?".":e.decimal+"",o=e.numerals===void 0?uE:GF(cE.call(e.numerals,String)),u=e.percent===void 0?"%":e.percent+"",f=e.minus===void 0?"−":e.minus+"",d=e.nan===void 0?"NaN":e.nan+"";function h(p,v){p=yu(p);var x=p.fill,w=p.align,_=p.sign,S=p.symbol,O=p.zero,M=p.width,j=p.comma,k=p.precision,N=p.trim,C=p.type;C==="n"?(j=!0,C="g"):lE[C]||(k===void 0&&(k=12),N=!0,C="g"),(O||x==="0"&&w==="=")&&(O=!0,x="0",w="=");var L=(v&&v.prefix!==void 0?v.prefix:"")+(S==="$"?n:S==="#"&&/[boxX]/.test(C)?"0"+C.toLowerCase():""),I=(S==="$"?r:/[%p]/.test(C)?u:"")+(v&&v.suffix!==void 0?v.suffix:""),Y=lE[C],te=/[defgprs%]/.test(C);k=k===void 0?6:/[gprs]/.test(C)?Math.max(1,Math.min(21,k)):Math.max(0,Math.min(20,k));function ie(K){var be=L,pe=I,xe,V,Q;if(C==="c")pe=Y(K)+pe,K="";else{K=+K;var ne=K<0||1/K<0;if(K=isNaN(K)?d:Y(Math.abs(K),k),N&&(K=ZF(K)),ne&&+K==0&&_!=="+"&&(ne=!1),be=(ne?_==="("?_:f:_==="-"||_==="("?"":_)+be,pe=(C==="s"&&!isNaN(K)&&kd!==void 0?fE[8+kd/3]:"")+pe+(ne&&_==="("?")":""),te){for(xe=-1,V=K.length;++xeQ||Q>57){pe=(Q===46?s+K.slice(xe+1):K.slice(xe))+pe,K=K.slice(0,xe);break}}}j&&!O&&(K=t(K,1/0));var le=be.length+K.length+pe.length,ue=le>1)+be+K+pe+ue.slice(le);break;default:K=ue+be+K+pe;break}return o(K)}return ie.toString=function(){return p+""},ie}function m(p,v){var x=Math.max(-8,Math.min(8,Math.floor(mo(v)/3)))*3,w=Math.pow(10,-x),_=h((p=yu(p),p.type="f",p),{suffix:fE[8+x/3]});return function(S){return _(w*S)}}return{format:h,formatPrefix:m}}var Of,Ib,g3;eH({thousands:",",grouping:[3],currency:["$",""]});function eH(e){return Of=JF(e),Ib=Of.format,g3=Of.formatPrefix,Of}function tH(e){return Math.max(0,-mo(Math.abs(e)))}function nH(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(mo(t)/3)))*3-mo(Math.abs(e)))}function rH(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,mo(t)-mo(e))+1}function y3(e,t,n,r){var s=Zv(e,t,n),o;switch(r=yu(r??",f"),r.type){case"s":{var u=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(o=nH(s,u))&&(r.precision=o),g3(r,u)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(o=rH(s,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=o-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(o=tH(s))&&(r.precision=o-(r.type==="%")*2);break}}return Ib(r)}function la(e){var t=e.domain;return e.ticks=function(n){var r=t();return Gv(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var s=t();return y3(s[0],s[s.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),s=0,o=r.length-1,u=r[s],f=r[o],d,h,m=10;for(f0;){if(h=Wv(u,f,n),h===d)return r[s]=u,r[o]=f,t(r);if(h>0)u=Math.floor(u/h)*h,f=Math.ceil(f/h)*h;else if(h<0)u=Math.ceil(u*h)/h,f=Math.floor(f*h)/h;else break;d=h}return e},e}function v3(){var e=Lb();return e.copy=function(){return zu(e,v3())},nr.apply(e,arguments),la(e)}function b3(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,jd),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return b3(e).unknown(t)},e=arguments.length?Array.from(e,jd):[0,1],la(n)}function x3(e,t){e=e.slice();var n=0,r=e.length-1,s=e[n],o=e[r],u;return oMath.pow(e,t)}function lH(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 mE(e){return(t,n)=>-e(-t,n)}function Bb(e){const t=e(dE,hE),n=t.domain;let r=10,s,o;function u(){return s=lH(r),o=oH(r),n()[0]<0?(s=mE(s),o=mE(o),e(iH,aH)):e(dE,hE),t}return t.base=function(f){return arguments.length?(r=+f,u()):r},t.domain=function(f){return arguments.length?(n(f),u()):n()},t.ticks=f=>{const d=n();let h=d[0],m=d[d.length-1];const p=m0){for(;v<=x;++v)for(w=1;wm)break;O.push(_)}}else for(;v<=x;++v)for(w=r-1;w>=1;--w)if(_=v>0?w/o(-v):w*o(v),!(_m)break;O.push(_)}O.length*2{if(f==null&&(f=10),d==null&&(d=r===10?"s":","),typeof d!="function"&&(!(r%1)&&(d=yu(d)).precision==null&&(d.trim=!0),d=Ib(d)),f===1/0)return d;const h=Math.max(1,r*f/t.ticks().length);return m=>{let p=m/o(Math.round(s(m)));return p*rn(x3(n(),{floor:f=>o(Math.floor(s(f))),ceil:f=>o(Math.ceil(s(f)))})),t}function w3(){const e=Bb(_h()).domain([1,10]);return e.copy=()=>zu(e,w3()).base(e.base()),nr.apply(e,arguments),e}function pE(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function gE(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Ub(e){var t=1,n=e(pE(t),gE(t));return n.constant=function(r){return arguments.length?e(pE(t=+r),gE(t)):t},la(n)}function _3(){var e=Ub(_h());return e.copy=function(){return zu(e,_3()).constant(e.constant())},nr.apply(e,arguments)}function yE(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function uH(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function cH(e){return e<0?-e*e:e*e}function Vb(e){var t=e(rn,rn),n=1;function r(){return n===1?e(rn,rn):n===.5?e(uH,cH):e(yE(n),yE(1/n))}return t.exponent=function(s){return arguments.length?(n=+s,r()):n},la(t)}function qb(){var e=Vb(_h());return e.copy=function(){return zu(e,qb()).exponent(e.exponent())},nr.apply(e,arguments),e}function fH(){return qb.apply(null,arguments).exponent(.5)}function vE(e){return Math.sign(e)*e*e}function dH(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function S3(){var e=Lb(),t=[0,1],n=!1,r;function s(o){var u=dH(e(o));return isNaN(u)?r:n?Math.round(u):u}return s.invert=function(o){return e.invert(vE(o))},s.domain=function(o){return arguments.length?(e.domain(o),s):e.domain()},s.range=function(o){return arguments.length?(e.range((t=Array.from(o,jd)).map(vE)),s):t.slice()},s.rangeRound=function(o){return s.range(o).round(!0)},s.round=function(o){return arguments.length?(n=!!o,s):n},s.clamp=function(o){return arguments.length?(e.clamp(o),s):e.clamp()},s.unknown=function(o){return arguments.length?(r=o,s):r},s.copy=function(){return S3(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},nr.apply(s,arguments),la(s)}function A3(){var e=[],t=[],n=[],r;function s(){var u=0,f=Math.max(1,t.length);for(n=new Array(f-1);++u0?n[f-1]:e[0],f=n?[r[n-1],t]:[r[h-1],r[h]]},u.unknown=function(d){return arguments.length&&(o=d),u},u.thresholds=function(){return r.slice()},u.copy=function(){return T3().domain([e,t]).range(s).unknown(o)},nr.apply(la(u),arguments)}function O3(){var e=[.5],t=[0,1],n,r=1;function s(o){return o!=null&&o<=o?t[Ru(e,o,0,r)]:n}return s.domain=function(o){return arguments.length?(e=Array.from(o),r=Math.min(e.length,t.length-1),s):e.slice()},s.range=function(o){return arguments.length?(t=Array.from(o),r=Math.min(e.length,t.length-1),s):t.slice()},s.invertExtent=function(o){var u=t.indexOf(o);return[e[u-1],e[u]]},s.unknown=function(o){return arguments.length?(n=o,s):n},s.copy=function(){return O3().domain(e).range(t).unknown(n)},nr.apply(s,arguments)}const Cy=new Date,Dy=new Date;function Et(e,t,n,r){function s(o){return e(o=arguments.length===0?new Date:new Date(+o)),o}return s.floor=o=>(e(o=new Date(+o)),o),s.ceil=o=>(e(o=new Date(o-1)),t(o,1),e(o),o),s.round=o=>{const u=s(o),f=s.ceil(o);return o-u(t(o=new Date(+o),u==null?1:Math.floor(u)),o),s.range=(o,u,f)=>{const d=[];if(o=s.ceil(o),f=f==null?1:Math.floor(f),!(o0))return d;let h;do d.push(h=new Date(+o)),t(o,f),e(o);while(hEt(u=>{if(u>=u)for(;e(u),!o(u);)u.setTime(u-1)},(u,f)=>{if(u>=u)if(f<0)for(;++f<=0;)for(;t(u,-1),!o(u););else for(;--f>=0;)for(;t(u,1),!o(u););}),n&&(s.count=(o,u)=>(Cy.setTime(+o),Dy.setTime(+u),e(Cy),e(Dy),Math.floor(n(Cy,Dy))),s.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?s.filter(r?u=>r(u)%o===0:u=>s.count(0,u)%o===0):s)),s}const Nd=Et(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);Nd.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Et(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):Nd);Nd.range;const ti=1e3,Qn=ti*60,ni=Qn*60,ui=ni*24,$b=ui*7,bE=ui*30,Py=ui*365,qa=Et(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getUTCSeconds());qa.range;const Fb=Et(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ti)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getMinutes());Fb.range;const Hb=Et(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getUTCMinutes());Hb.range;const Kb=Et(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ti-e.getMinutes()*Qn)},(e,t)=>{e.setTime(+e+t*ni)},(e,t)=>(t-e)/ni,e=>e.getHours());Kb.range;const Xb=Et(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ni)},(e,t)=>(t-e)/ni,e=>e.getUTCHours());Xb.range;const Iu=Et(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Qn)/ui,e=>e.getDate()-1);Iu.range;const Sh=Et(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ui,e=>e.getUTCDate()-1);Sh.range;const E3=Et(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ui,e=>Math.floor(e/ui));E3.range;function ns(e){return Et(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Qn)/$b)}const Ah=ns(0),Cd=ns(1),hH=ns(2),mH=ns(3),po=ns(4),pH=ns(5),gH=ns(6);Ah.range;Cd.range;hH.range;mH.range;po.range;pH.range;gH.range;function rs(e){return Et(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/$b)}const Th=rs(0),Dd=rs(1),yH=rs(2),vH=rs(3),go=rs(4),bH=rs(5),xH=rs(6);Th.range;Dd.range;yH.range;vH.range;go.range;bH.range;xH.range;const Yb=Et(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());Yb.range;const Gb=Et(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());Gb.range;const ci=Et(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());ci.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Et(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)});ci.range;const fi=Et(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());fi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Et(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)});fi.range;function j3(e,t,n,r,s,o){const u=[[qa,1,ti],[qa,5,5*ti],[qa,15,15*ti],[qa,30,30*ti],[o,1,Qn],[o,5,5*Qn],[o,15,15*Qn],[o,30,30*Qn],[s,1,ni],[s,3,3*ni],[s,6,6*ni],[s,12,12*ni],[r,1,ui],[r,2,2*ui],[n,1,$b],[t,1,bE],[t,3,3*bE],[e,1,Py]];function f(h,m,p){const v=mS).right(u,v);if(x===u.length)return e.every(Zv(h/Py,m/Py,p));if(x===0)return Nd.every(Math.max(Zv(h,m,p),1));const[w,_]=u[v/u[x-1][2]53)return null;"w"in ee||(ee.w=1),"Z"in ee?(De=Ly(Pl(ee.y,0,1)),Lt=De.getUTCDay(),De=Lt>4||Lt===0?Dd.ceil(De):Dd(De),De=Sh.offset(De,(ee.V-1)*7),ee.y=De.getUTCFullYear(),ee.m=De.getUTCMonth(),ee.d=De.getUTCDate()+(ee.w+6)%7):(De=Ry(Pl(ee.y,0,1)),Lt=De.getDay(),De=Lt>4||Lt===0?Cd.ceil(De):Cd(De),De=Iu.offset(De,(ee.V-1)*7),ee.y=De.getFullYear(),ee.m=De.getMonth(),ee.d=De.getDate()+(ee.w+6)%7)}else("W"in ee||"U"in ee)&&("w"in ee||(ee.w="u"in ee?ee.u%7:"W"in ee?1:0),Lt="Z"in ee?Ly(Pl(ee.y,0,1)).getUTCDay():Ry(Pl(ee.y,0,1)).getDay(),ee.m=0,ee.d="W"in ee?(ee.w+6)%7+ee.W*7-(Lt+5)%7:ee.w+ee.U*7-(Lt+6)%7);return"Z"in ee?(ee.H+=ee.Z/100|0,ee.M+=ee.Z%100,Ly(ee)):Ry(ee)}}function I(J,re,Se,ee){for(var Rt=0,De=re.length,Lt=Se.length,zt,Pr;Rt=Lt)return-1;if(zt=re.charCodeAt(Rt++),zt===37){if(zt=re.charAt(Rt++),Pr=N[zt in xE?re.charAt(Rt++):zt],!Pr||(ee=Pr(J,Se,ee))<0)return-1}else if(zt!=Se.charCodeAt(ee++))return-1}return ee}function Y(J,re,Se){var ee=h.exec(re.slice(Se));return ee?(J.p=m.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function te(J,re,Se){var ee=x.exec(re.slice(Se));return ee?(J.w=w.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function ie(J,re,Se){var ee=p.exec(re.slice(Se));return ee?(J.w=v.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function K(J,re,Se){var ee=O.exec(re.slice(Se));return ee?(J.m=M.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function be(J,re,Se){var ee=_.exec(re.slice(Se));return ee?(J.m=S.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function pe(J,re,Se){return I(J,t,re,Se)}function xe(J,re,Se){return I(J,n,re,Se)}function V(J,re,Se){return I(J,r,re,Se)}function Q(J){return u[J.getDay()]}function ne(J){return o[J.getDay()]}function le(J){return d[J.getMonth()]}function ue(J){return f[J.getMonth()]}function P(J){return s[+(J.getHours()>=12)]}function H(J){return 1+~~(J.getMonth()/3)}function ae(J){return u[J.getUTCDay()]}function se(J){return o[J.getUTCDay()]}function Z(J){return d[J.getUTCMonth()]}function oe(J){return f[J.getUTCMonth()]}function he(J){return s[+(J.getUTCHours()>=12)]}function _e(J){return 1+~~(J.getUTCMonth()/3)}return{format:function(J){var re=C(J+="",j);return re.toString=function(){return J},re},parse:function(J){var re=L(J+="",!1);return re.toString=function(){return J},re},utcFormat:function(J){var re=C(J+="",k);return re.toString=function(){return J},re},utcParse:function(J){var re=L(J+="",!0);return re.toString=function(){return J},re}}}var xE={"-":"",_:" ",0:"0"},Pt=/^\s*\d+/,OH=/^%/,EH=/[\\^$*+?|[\]().{}]/g;function ze(e,t,n){var r=e<0?"-":"",s=(r?-e:e)+"",o=s.length;return r+(o[t.toLowerCase(),n]))}function MH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function kH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function NH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function CH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function DH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function wE(e,t,n){var r=Pt.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function _E(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function PH(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 RH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function LH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function SE(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function zH(e,t,n){var r=Pt.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function AE(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function IH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function BH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function UH(e,t,n){var r=Pt.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function VH(e,t,n){var r=Pt.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function qH(e,t,n){var r=OH.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function $H(e,t,n){var r=Pt.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function FH(e,t,n){var r=Pt.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function TE(e,t){return ze(e.getDate(),t,2)}function HH(e,t){return ze(e.getHours(),t,2)}function KH(e,t){return ze(e.getHours()%12||12,t,2)}function XH(e,t){return ze(1+Iu.count(ci(e),e),t,3)}function M3(e,t){return ze(e.getMilliseconds(),t,3)}function YH(e,t){return M3(e,t)+"000"}function GH(e,t){return ze(e.getMonth()+1,t,2)}function WH(e,t){return ze(e.getMinutes(),t,2)}function ZH(e,t){return ze(e.getSeconds(),t,2)}function QH(e){var t=e.getDay();return t===0?7:t}function JH(e,t){return ze(Ah.count(ci(e)-1,e),t,2)}function k3(e){var t=e.getDay();return t>=4||t===0?po(e):po.ceil(e)}function eK(e,t){return e=k3(e),ze(po.count(ci(e),e)+(ci(e).getDay()===4),t,2)}function tK(e){return e.getDay()}function nK(e,t){return ze(Cd.count(ci(e)-1,e),t,2)}function rK(e,t){return ze(e.getFullYear()%100,t,2)}function iK(e,t){return e=k3(e),ze(e.getFullYear()%100,t,2)}function aK(e,t){return ze(e.getFullYear()%1e4,t,4)}function sK(e,t){var n=e.getDay();return e=n>=4||n===0?po(e):po.ceil(e),ze(e.getFullYear()%1e4,t,4)}function oK(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+ze(t/60|0,"0",2)+ze(t%60,"0",2)}function OE(e,t){return ze(e.getUTCDate(),t,2)}function lK(e,t){return ze(e.getUTCHours(),t,2)}function uK(e,t){return ze(e.getUTCHours()%12||12,t,2)}function cK(e,t){return ze(1+Sh.count(fi(e),e),t,3)}function N3(e,t){return ze(e.getUTCMilliseconds(),t,3)}function fK(e,t){return N3(e,t)+"000"}function dK(e,t){return ze(e.getUTCMonth()+1,t,2)}function hK(e,t){return ze(e.getUTCMinutes(),t,2)}function mK(e,t){return ze(e.getUTCSeconds(),t,2)}function pK(e){var t=e.getUTCDay();return t===0?7:t}function gK(e,t){return ze(Th.count(fi(e)-1,e),t,2)}function C3(e){var t=e.getUTCDay();return t>=4||t===0?go(e):go.ceil(e)}function yK(e,t){return e=C3(e),ze(go.count(fi(e),e)+(fi(e).getUTCDay()===4),t,2)}function vK(e){return e.getUTCDay()}function bK(e,t){return ze(Dd.count(fi(e)-1,e),t,2)}function xK(e,t){return ze(e.getUTCFullYear()%100,t,2)}function wK(e,t){return e=C3(e),ze(e.getUTCFullYear()%100,t,2)}function _K(e,t){return ze(e.getUTCFullYear()%1e4,t,4)}function SK(e,t){var n=e.getUTCDay();return e=n>=4||n===0?go(e):go.ceil(e),ze(e.getUTCFullYear()%1e4,t,4)}function AK(){return"+0000"}function EE(){return"%"}function jE(e){return+e}function ME(e){return Math.floor(+e/1e3)}var Fs,D3,P3;TK({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 TK(e){return Fs=TH(e),D3=Fs.format,Fs.parse,P3=Fs.utcFormat,Fs.utcParse,Fs}function OK(e){return new Date(e)}function EK(e){return e instanceof Date?+e:+new Date(+e)}function Wb(e,t,n,r,s,o,u,f,d,h){var m=Lb(),p=m.invert,v=m.domain,x=h(".%L"),w=h(":%S"),_=h("%I:%M"),S=h("%I %p"),O=h("%a %d"),M=h("%b %d"),j=h("%B"),k=h("%Y");function N(C){return(d(C)t(s/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(s,o)=>pF(e,o/r))},n.copy=function(){return I3(t).domain(e)},pi.apply(n,arguments)}function Eh(){var e=0,t=.5,n=1,r=1,s,o,u,f,d,h=rn,m,p=!1,v;function x(_){return isNaN(_=+_)?v:(_=.5+((_=+m(_))-o)*(r*_{if(e!=null){var{scale:r,type:s}=e;if(r==="auto")return s==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":s==="category"?"band":"linear";if(typeof r=="string")return PK(r)?r:"point"}};function RK(e,t){for(var n=0,r=e.length,s=e[0]t)?n=o+1:r=o}return n}function $3(e,t){if(e){var n=t??e.domain(),r=n.map(o=>{var u;return(u=e(o))!==null&&u!==void 0?u:0}),s=e.range();if(!(n.length===0||s.length<2))return o=>{var u,f,d=RK(r,o);if(d<=0)return n[0];if(d>=n.length)return n[n.length-1];var h=(u=r[d-1])!==null&&u!==void 0?u:0,m=(f=r[d])!==null&&f!==void 0?f:0;return Math.abs(o-h)<=Math.abs(o-m)?n[d-1]:n[d]}}}function LK(e){if(e!=null)return"invert"in e&&typeof e.invert=="function"?e.invert.bind(e):$3(e,void 0)}function NE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Pd(e){for(var t=1;te.cartesianAxis.xAxis[t],gi=(e,t)=>{var n=F3(e,t);return n??wt},_t={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:n0,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:Mu},H3=(e,t)=>e.cartesianAxis.yAxis[t],yi=(e,t)=>{var n=H3(e,t);return n??_t},K3={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:""},ex=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??K3},sn=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);case"zAxis":return ex(e,n);case"angleAxis":return Tb(e,n);case"radiusAxis":return Ob(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},UK=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Bu=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);case"angleAxis":return Tb(e,n);case"radiusAxis":return Ob(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},X3=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function Y3(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 G3=e=>e.graphicalItems.cartesianItems,VK=$([Ct,bh],Y3),W3=(e,t,n)=>e.filter(n).filter(r=>t?.includeHidden===!0?!0:!r.hide),Uu=$([G3,sn,VK],W3,{memoizeOptions:{resultEqualityCheck:wh}}),Z3=$([Uu],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(jb)),Q3=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),qK=$([Uu],Q3),J3=e=>e.map(t=>t.data).filter(Boolean).flat(1),$K=$([Uu],J3,{memoizeOptions:{resultEqualityCheck:wh}}),eD=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:s}=t;return e.length>0?e:n.slice(r,s+1)},tx=$([$K,vb],eD),tD=(e,t,n)=>t?.dataKey!=null?e.map(r=>({value:Ot(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(s=>({value:Ot(s,r)}))):e.map(r=>({value:r})),Vu=$([tx,sn,Uu],tD);function lo(e){if(Nr(e)||e instanceof Date){var t=Number(e);if(Le(t))return t}}function CE(e){if(Array.isArray(e)){var t=[lo(e[0]),lo(e[1])];return Er(t)?t:void 0}var n=lo(e);if(n!=null)return[n,n]}function di(e){return e.map(lo).filter(mn)}function FK(e,t){var n=lo(e),r=lo(t);return n==null&&r==null?0:n==null?-1:r==null?1:n-r}var HK=$([Vu],e=>e?.map(t=>t.value).sort(FK));function nD(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function KK(e,t,n){return!n||typeof t!="number"||oi(t)?[]:n.length?di(n.flatMap(r=>{var s=Ot(e,r.dataKey),o,u;if(Array.isArray(s)?[o,u]=s:o=u=s,!(!Le(o)||!Le(u)))return[t-o,t+u]})):[]}var jt=e=>{var t=Dt(e),n=To(e);return Bu(e,t,n)},qu=$([jt],e=>e?.dataKey),XK=$([Z3,vb,jt],l3),rD=(e,t,n,r)=>{var s={},o=t.reduce((u,f)=>{if(f.stackId==null)return u;var d=u[f.stackId];return d==null&&(d=[]),d.push(f),u[f.stackId]=d,u},s);return Object.fromEntries(Object.entries(o).map(u=>{var[f,d]=u,h=r?[...d].reverse():d,m=h.map(o3);return[f,{stackedData:ZU(e,m,n),graphicalItems:h}]}))},YK=$([XK,Z3,ph,e3],rD),iD=(e,t,n,r)=>{var{dataStartIndex:s,dataEndIndex:o}=t;if(r==null&&n!=="zAxis"){var u=eV(e,s,o);if(!(u!=null&&u[0]===0&&u[1]===0))return u}},GK=$([sn],e=>e.allowDataOverflow),nx=e=>{var t;if(e==null||!("domain"in e))return n0;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=di(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e?.domain)!==null&&t!==void 0?t:n0},aD=$([sn],nx),sD=$([aD,GK],$C),WK=$([YK,oa,Ct,sD],iD,{memoizeOptions:{resultEqualityCheck:xh}}),rx=e=>e.errorBars,ZK=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>nD(n,r)),Rd=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var o,u;if(n.length>0&&e.forEach(f=>{n.forEach(d=>{var h,m,p=(h=r[d.id])===null||h===void 0?void 0:h.filter(O=>nD(s,O)),v=Ot(f,(m=t.dataKey)!==null&&m!==void 0?m:d.dataKey),x=KK(f,v,p);if(x.length>=2){var w=Math.min(...x),_=Math.max(...x);(o==null||wu)&&(u=_)}var S=CE(v);S!=null&&(o=o==null?S[0]:Math.min(o,S[0]),u=u==null?S[1]:Math.max(u,S[1]))})}),t?.dataKey!=null&&e.forEach(f=>{var d=CE(Ot(f,t.dataKey));d!=null&&(o=o==null?d[0]:Math.min(o,d[0]),u=u==null?d[1]:Math.max(u,d[1]))}),Le(o)&&Le(u))return[o,u]},QK=$([tx,sn,qK,rx,Ct],oD,{memoizeOptions:{resultEqualityCheck:xh}});function JK(e){var{value:t}=e;if(Nr(t)||t instanceof Date)return t}var eX=(e,t,n)=>{var r=e.map(JK).filter(s=>s!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&yN(r))?qC(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},lD=e=>e.referenceElements.dots,Eo=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),tX=$([lD,Ct,bh],Eo),uD=e=>e.referenceElements.areas,nX=$([uD,Ct,bh],Eo),cD=e=>e.referenceElements.lines,rX=$([cD,Ct,bh],Eo),fD=(e,t)=>{if(e!=null){var n=di(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},iX=$(tX,Ct,fD),dD=(e,t)=>{if(e!=null){var n=di(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},aX=$([nX,Ct],dD);function sX(e){var t;if(e.x!=null)return di([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:di(n)}function oX(e){var t;if(e.y!=null)return di([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:di(n)}var hD=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?sX(r):oX(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},lX=$([rX,Ct],hD),uX=$(iX,lX,aX,(e,t,n)=>Rd(e,n,t)),mD=(e,t,n,r,s,o,u,f)=>{if(n!=null)return n;var d=u==="vertical"&&f==="xAxis"||u==="horizontal"&&f==="yAxis",h=d?Rd(r,o,s):Rd(o,s);return F$(t,h,e.allowDataOverflow)},cX=$([sn,aD,sD,WK,QK,uX,ht,Ct],mD,{memoizeOptions:{resultEqualityCheck:xh}}),fX=[0,1],pD=(e,t,n,r,s,o,u)=>{if(!((e==null||n==null||n.length===0)&&u===void 0)){var{dataKey:f,type:d}=e,h=sa(t,o);if(h&&f==null){var m;return qC(0,(m=n?.length)!==null&&m!==void 0?m:0)}return d==="category"?eX(r,e,h):s==="expand"?fX:u}},ix=$([sn,ht,tx,Vu,ph,Ct,cX],pD),jo=$([sn,X3,_b],q3),gD=(e,t,n)=>{var{niceTicks:r}=t;if(r!=="none"){var s=nx(t),o=Array.isArray(s)&&(s[0]==="auto"||s[1]==="auto");if((r==="snap125"||r==="adaptive")&&t!=null&&t.tickCount&&Er(e)){if(o)return qO(e,t.tickCount,t.allowDecimals,r);if(t.type==="number")return $O(e,t.tickCount,t.allowDecimals,r)}if(r==="auto"&&n==="linear"&&t!=null&&t.tickCount){if(o&&Er(e))return qO(e,t.tickCount,t.allowDecimals,"adaptive");if(t.type==="number"&&Er(e))return $O(e,t.tickCount,t.allowDecimals,"adaptive")}}},ax=$([ix,Bu,jo],gD),yD=(e,t,n,r)=>{if(r!=="angleAxis"&&e?.type==="number"&&Er(t)&&Array.isArray(n)&&n.length>0){var s,o,u=t[0],f=(s=n[0])!==null&&s!==void 0?s:0,d=t[1],h=(o=n[n.length-1])!==null&&o!==void 0?o:0;return[Math.min(u,f),Math.max(d,h)]}return t},dX=$([sn,ix,ax,Ct],yD),hX=$(Vu,sn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(di(e.map(p=>p.value))).sort((p,v)=>p-v),s=r[0],o=r[r.length-1];if(s==null||o==null)return 1/0;var u=o-s;if(u===0)return 1/0;for(var f=0;fs,(e,t,n,r,s)=>{if(!Le(e))return 0;var o=t==="vertical"?r.height:r.width;if(s==="gap")return e*o/2;if(s==="no-gap"){var u=ra(n,e*o),f=e*o/2;return f-u-(f-u)/o*u}return 0}),mX=(e,t,n)=>{var r=gi(e,t);return r==null||typeof r.padding!="string"?0:vD(e,"xAxis",t,n,r.padding)},pX=(e,t,n)=>{var r=yi(e,t);return r==null||typeof r.padding!="string"?0:vD(e,"yAxis",t,n,r.padding)},gX=$(gi,mX,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:s}=e;return typeof s=="string"?{left:t,right:t}:{left:((n=s.left)!==null&&n!==void 0?n:0)+t,right:((r=s.right)!==null&&r!==void 0?r:0)+t}}),yX=$(yi,pX,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:s}=e;return typeof s=="string"?{top:t,bottom:t}:{top:((n=s.top)!==null&&n!==void 0?n:0)+t,bottom:((r=s.bottom)!==null&&r!==void 0?r:0)+t}}),vX=$([Xt,gX,ch,uh,(e,t,n)=>n],(e,t,n,r,s)=>{var{padding:o}=r;return s?[o.left,n.width-o.right]:[e.left+t.left,e.left+e.width-t.right]}),bX=$([Xt,ht,yX,ch,uh,(e,t,n)=>n],(e,t,n,r,s,o)=>{var{padding:u}=s;return o?[r.height-u.bottom,u.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),$u=(e,t,n,r)=>{var s;switch(t){case"xAxis":return vX(e,n,r);case"yAxis":return bX(e,n,r);case"zAxis":return(s=ex(e,n))===null||s===void 0?void 0:s.range;case"angleAxis":return i3(e);case"radiusAxis":return a3(e,n);default:return}},bD=$([sn,$u],gh),xX=$([jo,dX],rF),sx=$([sn,jo,xX,bD],Jb),xD=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:s,scale:o}=n,u=sa(e,r);if(u&&(s==="number"||o!=="auto"))return t.map(f=>f.value)}},ox=$([ht,Vu,Bu,Ct],xD),Mo=$([sx],Mb);$([sx],LK);$([sx,HK],$3);$([Uu,rx,Ct],ZK);function wD(e,t){return e.idt.id?1:0}var jh=(e,t)=>t,Mh=(e,t,n)=>n,wX=$(oh,jh,Mh,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(wD)),_X=$(lh,jh,Mh,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(wD)),_D=(e,t)=>({width:e.width,height:t.height}),SX=(e,t)=>{var n=typeof t.width=="number"?t.width:Mu;return{width:n,height:e.height}},AX=$(Xt,gi,_D),TX=(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}},EX=$(mi,Xt,wX,jh,Mh,(e,t,n,r,s)=>{var o={},u;return n.forEach(f=>{var d=_D(t,f);u==null&&(u=TX(t,r,e));var h=r==="top"&&!s||r==="bottom"&&s;o[f.id]=u-Number(h)*d.height,u+=(h?-1:1)*d.height}),o}),jX=$(hi,Xt,_X,jh,Mh,(e,t,n,r,s)=>{var o={},u;return n.forEach(f=>{var d=SX(t,f);u==null&&(u=OX(t,r,e));var h=r==="left"&&!s||r==="right"&&s;o[f.id]=u-Number(h)*d.width,u+=(h?-1:1)*d.width}),o}),MX=(e,t)=>{var n=gi(e,t);if(n!=null)return EX(e,n.orientation,n.mirror)},kX=$([Xt,gi,MX,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var s=n?.[r];return s==null?{x:e.left,y:0}:{x:e.left,y:s}}}),NX=(e,t)=>{var n=yi(e,t);if(n!=null)return jX(e,n.orientation,n.mirror)},CX=$([Xt,yi,NX,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var s=n?.[r];return s==null?{x:0,y:e.top}:{x:s,y:e.top}}}),DX=$(Xt,yi,(e,t)=>{var n=typeof t.width=="number"?t.width:Mu;return{width:n,height:e.height}}),SD=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:s,type:o,dataKey:u}=n,f=sa(e,r),d=t.map(h=>h.value);if(u&&f&&o==="category"&&s&&yN(d))return d}},lx=$([ht,Vu,sn,Ct],SD),DE=$([ht,UK,jo,Mo,lx,ox,$u,ax,Ct],(e,t,n,r,s,o,u,f,d)=>{if(t!=null){var h=sa(e,d);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:d,categoricalDomain:o,duplicateDomain:s,isCategorical:h,niceTicks:f,range:u,realScaleType:n,scale:r}}}),PX=(e,t,n,r,s,o,u,f,d)=>{if(!(t==null||r==null)){var h=sa(e,d),{type:m,ticks:p,tickCount:v}=t,x=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,w=m==="category"&&r.bandwidth?r.bandwidth()/x:0;w=d==="angleAxis"&&o!=null&&o.length>=2?Wn(o[0]-o[1])*2*w:w;var _=p||s;return _?_.map((S,O)=>{var M=u?u.indexOf(S):S,j=r.map(M);return Le(j)?{index:O,coordinate:j+w,value:S,offset:w}:null}).filter(mn):h&&f?f.map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:S,index:O,offset:w}:null}).filter(mn):r.ticks?r.ticks(v).map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:S,index:O,offset:w}:null}).filter(mn):r.domain().map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:u?u[S]:S,index:O,offset:w}:null}).filter(mn)}},AD=$([ht,Bu,jo,Mo,ax,$u,lx,ox,Ct],PX),RX=(e,t,n,r,s,o,u)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var f=sa(e,u),{tickCount:d}=t,h=0;return h=u==="angleAxis"&&r?.length>=2?Wn(r[0]-r[1])*2*h:h,f&&o?o.map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:m,index:p,offset:h}:null}).filter(mn):n.ticks?n.ticks(d).map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:m,index:p,offset:h}:null}).filter(mn):n.domain().map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:s?s[m]:m,index:p,offset:h}:null}).filter(mn)}},TD=$([ht,Bu,Mo,$u,lx,ox,Ct],RX),OD=$(sn,Mo,(e,t)=>{if(!(e==null||t==null))return Pd(Pd({},e),{},{scale:t})}),LX=$([sn,jo,ix,bD],Jb),zX=$([LX],Mb),IX=$((e,t,n)=>ex(e,n),zX,(e,t)=>{if(!(e==null||t==null))return Pd(Pd({},e),{},{scale:t})}),BX=$([ht,oh,lh],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),UX=(e,t,n)=>{var r;return(r=e.renderedTicks[t])===null||r===void 0?void 0:r[n]};$([UX],e=>{if(!(!e||e.length===0))return t=>{var n,r=1/0,s=e[0];for(var o of e){var u=Math.abs(o.coordinate-t);ue.options.defaultTooltipEventType,jD=e=>e.options.validateTooltipEventTypes;function MD(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function ux(e,t){var n=ED(e),r=jD(e);return MD(t,n,r)}function VX(e){return ve(t=>ux(t,e))}var kD=(e,t)=>{var n,r=Number(t);if(!(oi(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},qX=e=>e.tooltip.settings,Zi={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},$X={itemInteraction:{click:Zi,hover:Zi},axisInteraction:{click:Zi,hover:Zi},keyboardInteraction:Zi,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}},ND=Qt({name:"tooltip",initialState:$X,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:Qe()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).tooltipItemPayloads.indexOf(n);s>-1&&(e.tooltipItemPayloads[s]=r)},prepare:Qe()},removeTooltipEntrySettings:{reducer(e,t){var n=Zn(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:Qe()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,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.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.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.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}}}),{addTooltipEntrySettings:FX,replaceTooltipEntrySettings:HX,removeTooltipEntrySettings:KX,setTooltipSettingsState:XX,setActiveMouseOverItemIndex:CD,mouseLeaveItem:YX,mouseLeaveChart:DD,setActiveClickItemIndex:GX,setMouseOverAxisIndex:PD,setMouseClickAxisIndex:WX,setSyncInteraction:r0,setKeyboardInteraction:Ld}=ND.actions,ZX=ND.reducer;function PE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Ef(e){for(var t=1;t{if(t==null)return Zi;var s=tY(e,t,n);if(s==null)return Zi;if(s.active)return s;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var o=e.settings.active===!0;if(nY(s)){if(o)return Ef(Ef({},s),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Ef(Ef({},Zi),{},{coordinate:s.coordinate})};function rY(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 iY(e,t){var n=rY(e),r=t[0],s=t[1];if(n===void 0)return!1;var o=Math.min(r,s),u=Math.max(r,s);return n>=o&&n<=u}function aY(e,t,n){if(n==null||t==null)return!0;var r=Ot(e,t);return r==null||!Er(n)?!0:iY(r,n)}var cx=(e,t,n,r)=>{var s=e?.index;if(s==null)return null;var o=Number(s);if(!Le(o))return s;var u=0,f=1/0;t.length>0&&(f=t.length-1);var d=Math.max(u,Math.min(o,f)),h=t[d];return h==null||aY(h,n,r)?String(d):null},LD=(e,t,n,r,s,o,u)=>{if(o!=null){var f=u[0],d=f?.getPosition(o);if(d!=null)return d;var h=s?.[Number(o)];if(h)return n==="horizontal"?{x:h.coordinate,y:(r.top+t)/2}:{x:(r.left+e)/2,y:h.coordinate}}},zD=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var s;if(n==="hover"?s=e.itemInteraction.hover.graphicalItemId:s=e.itemInteraction.click.graphicalItemId,e.syncInteraction.active&&s==null)return e.tooltipItemPayloads;if(s==null&&r!=null){var o=e.tooltipItemPayloads[0];return o!=null?[o]:[]}return e.tooltipItemPayloads.filter(u=>{var f;return((f=u.settings)===null||f===void 0?void 0:f.graphicalItemId)===s})},ID=e=>e.options.tooltipPayloadSearcher,ko=e=>e.tooltip;function RE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function LE(e){for(var t=1;te(t)}function zE(e){if(typeof e=="string")return e}function dY(e){if(!(e==null||typeof e!="object")){var t="name"in e?uY(e.name):void 0,n="unit"in e?cY(e.unit):void 0,r="dataKey"in e?fY(e.dataKey):void 0,s="payload"in e?e.payload:void 0,o="color"in e?zE(e.color):void 0,u="fill"in e?zE(e.fill):void 0;return{name:t,unit:n,dataKey:r,payload:s,color:o,fill:u}}}function hY(e,t){return e??t}var BD=(e,t,n,r,s,o,u)=>{if(!(t==null||o==null)){var{chartData:f,computedData:d,dataStartIndex:h,dataEndIndex:m}=n,p=[];return e.reduce((v,x)=>{var w,{dataDefinedOnItem:_,settings:S}=x,O=hY(_,f),M=Array.isArray(O)?cC(O,h,m):O,j=(w=S?.dataKey)!==null&&w!==void 0?w:r,k=S?.nameKey,N;if(r&&Array.isArray(M)&&!Array.isArray(M[0])&&u==="axis"?N=vN(M,r,s):N=o(M,t,d,k),Array.isArray(N))N.forEach(L=>{var I,Y,te=dY(L),ie=te?.name,K=te?.dataKey,be=te?.payload,pe=LE(LE({},S),{},{name:ie,unit:te?.unit,color:(I=te?.color)!==null&&I!==void 0?I:S?.color,fill:(Y=te?.fill)!==null&&Y!==void 0?Y:S?.fill});v.push(C2({tooltipEntrySettings:pe,dataKey:K,payload:be,value:Ot(be,K),name:ie==null?void 0:String(ie)}))});else{var C;v.push(C2({tooltipEntrySettings:S,dataKey:j,payload:N,value:Ot(N,j),name:(C=Ot(N,k))!==null&&C!==void 0?C:S?.name}))}return v},p)}},fx=$([jt,X3,_b],q3),mY=$([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),pY=$([Dt,To],Y3),No=$([mY,jt,pY],W3,{memoizeOptions:{resultEqualityCheck:wh}}),gY=$([No],e=>e.filter(jb)),yY=$([No],J3,{memoizeOptions:{resultEqualityCheck:wh}}),Co=$([yY,oa],eD),vY=$([gY,oa,jt],l3),dx=$([Co,jt,No],tD),UD=$([jt],nx),bY=$([jt],e=>e.allowDataOverflow),VD=$([UD,bY],$C),xY=$([No],e=>e.filter(jb)),wY=$([vY,xY,ph,e3],rD),_Y=$([wY,oa,Dt,VD],iD),SY=$([No],Q3),AY=$([Co,jt,SY,rx,Dt],oD,{memoizeOptions:{resultEqualityCheck:xh}}),TY=$([lD,Dt,To],Eo),OY=$([TY,Dt],fD),EY=$([uD,Dt,To],Eo),jY=$([EY,Dt],dD),MY=$([cD,Dt,To],Eo),kY=$([MY,Dt],hD),NY=$([OY,kY,jY],Rd),CY=$([jt,UD,VD,_Y,AY,NY,ht,Dt],mD),Fu=$([jt,ht,Co,dx,ph,Dt,CY],pD),DY=$([Fu,jt,fx],gD),PY=$([jt,Fu,DY,Dt],yD),qD=e=>{var t=Dt(e),n=To(e),r=!1;return $u(e,t,n,r)},$D=$([jt,qD],gh),RY=$([jt,fx,PY,$D],Jb),FD=$([RY],Mb),LY=$([ht,dx,jt,Dt],SD),zY=$([ht,dx,jt,Dt],xD),IY=(e,t,n,r,s,o,u,f)=>{if(t){var{type:d}=t,h=sa(e,f);if(r){var m=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,p=d==="category"&&r.bandwidth?r.bandwidth()/m:0;return p=f==="angleAxis"&&s!=null&&s?.length>=2?Wn(s[0]-s[1])*2*p:p,h&&u?u.map((v,x)=>{var w=r.map(v);return Le(w)?{coordinate:w+p,value:v,index:x,offset:p}:null}).filter(mn):r.domain().map((v,x)=>{var w=r.map(v);return Le(w)?{coordinate:w+p,value:o?o[v]:v,index:x,offset:p}:null}).filter(mn)}}},vi=$([ht,jt,fx,FD,qD,LY,zY,Dt],IY),hx=$([ED,jD,qX],(e,t,n)=>MD(n.shared,e,t)),HD=e=>e.tooltip.settings.trigger,mx=e=>e.tooltip.settings.defaultIndex,Hu=$([ko,hx,HD,mx],RD),vu=$([Hu,Co,qu,Fu],cx),KD=$([vi,vu],kD),BY=$([Hu],e=>{if(e)return e.dataKey}),UY=$([Hu],e=>{if(e)return e.graphicalItemId}),XD=$([ko,hx,HD,mx],zD),VY=$([hi,mi,ht,Xt,vi,mx,XD],LD),qY=$([Hu,VY],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),$Y=$([Hu],e=>{var t;return(t=e?.active)!==null&&t!==void 0?t:!1}),FY=$([XD,vu,oa,qu,KD,ID,hx],BD);$([FY],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function IE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function BE(e){for(var t=1;tve(jt),GY=()=>{var e=YY(),t=ve(vi),n=ve(FD);return N2(!e||!n?void 0:BE(BE({},e),{},{scale:n}),t)};function UE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Hs(e){for(var t=1;t{var s=t.find(o=>o&&o.index===n);if(s){if(e==="horizontal")return{x:s.coordinate,y:r.relativeY};if(e==="vertical")return{x:r.relativeX,y:s.coordinate}}return{x:0,y:0}},eG=(e,t,n,r)=>{var s=t.find(h=>h&&h.index===n);if(s){if(e==="centric"){var o=s.coordinate,{radius:u}=r;return Hs(Hs(Hs({},r),Kt(r.cx,r.cy,u,o)),{},{angle:o,radius:u})}var f=s.coordinate,{angle:d}=r;return Hs(Hs(Hs({},r),Kt(r.cx,r.cy,f,d)),{},{angle:d,radius:f})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function tG(e,t){var{relativeX:n,relativeY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var YD=(e,t,n,r,s)=>{var o,u=(o=t?.length)!==null&&o!==void 0?o:0;if(u<=1||e==null)return 0;if(r==="angleAxis"&&s!=null&&Math.abs(Math.abs(s[1]-s[0])-360)<=1e-6)for(var f=0;f0?(d=n[f-1])===null||d===void 0?void 0:d.coordinate:(h=n[u-1])===null||h===void 0?void 0:h.coordinate,w=(m=n[f])===null||m===void 0?void 0:m.coordinate,_=f>=u-1?(p=n[0])===null||p===void 0?void 0:p.coordinate:(v=n[f+1])===null||v===void 0?void 0:v.coordinate,S=void 0;if(!(x==null||w==null||_==null))if(Wn(w-x)!==Wn(_-w)){var O=[];if(Wn(_-w)===Wn(s[1]-s[0])){S=_;var M=w+s[1]-s[0];O[0]=Math.min(M,(M+x)/2),O[1]=Math.max(M,(M+x)/2)}else{S=x;var j=_+s[1]-s[0];O[0]=Math.min(w,(j+w)/2),O[1]=Math.max(w,(j+w)/2)}var k=[Math.min(w,(S+w)/2),Math.max(w,(S+w)/2)];if(e>k[0]&&e<=k[1]||e>=O[0]&&e<=O[1]){var N;return(N=n[f])===null||N===void 0?void 0:N.index}}else{var C=Math.min(x,_),L=Math.max(x,_);if(e>(C+w)/2&&e<=(L+w)/2){var I;return(I=n[f])===null||I===void 0?void 0:I.index}}}else if(t)for(var Y=0;Y(te.coordinate+K.coordinate)/2||Y>0&&Y(te.coordinate+K.coordinate)/2&&e<=(te.coordinate+ie.coordinate)/2)return te.index}}return-1},nG=()=>ve(_b),px=(e,t)=>t,GD=(e,t,n)=>n,gx=(e,t,n,r)=>r,rG=$(vi,e=>Zd(e,t=>t.coordinate)),yx=$([ko,px,GD,gx],RD),vx=$([yx,Co,qu,Fu],cx),iG=(e,t,n)=>{if(t!=null){var r=ko(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},WD=$([ko,px,GD,gx],zD),zd=$([hi,mi,ht,Xt,vi,gx,WD],LD),aG=$([yx,zd],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),ZD=$([vi,vx],kD),sG=$([WD,vx,oa,qu,ZD,ID,px],BD),oG=$([yx,vx],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),lG=(e,t,n,r,s,o,u)=>{if(!(!e||!n||!r||!s)&&tG(e,u)){var f=tV(e,t),d=YD(f,o,s,n,r),h=JY(t,s,d,e);return{activeIndex:String(d),activeCoordinate:h}}},uG=(e,t,n,r,s,o,u)=>{if(!(!e||!r||!s||!o||!n)){var f=D$(e,n);if(f){var d=nV(f,t),h=YD(d,u,o,r,s),m=eG(t,o,h,f);return{activeIndex:String(h),activeCoordinate:m}}}},cG=(e,t,n,r,s,o,u,f)=>{if(!(!e||!t||!r||!s||!o))return t==="horizontal"||t==="vertical"?lG(e,t,r,s,o,u,f):uG(e,t,n,r,s,o,u)},fG=$(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}}),dG=$(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(pn)),n=Array.from(new Set(t));return n.sort((r,s)=>r-s)},{memoizeOptions:{resultEqualityCheck:nF}});function VE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function qE(e){for(var t=1;tqE(qE({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),gG)},vG=new Set(Object.values(pn));function bG(e){return vG.has(e)}var QD=Qt({name:"zIndex",initialState:yG,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:Qe()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!bG(n)&&delete e.zIndexMap[n])},prepare:Qe()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:s}=t.payload;e.zIndexMap[n]?s?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:s?void 0:r,panoramaElement:s?r:void 0}},prepare:Qe()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:Qe()}}}),{registerZIndexPortal:xG,unregisterZIndexPortal:wG,registerZIndexPortalElement:_G,unregisterZIndexPortalElement:SG}=QD.actions,AG=QD.reducer;function ca(e){var{zIndex:t,children:n}=e,r=PV(),s=r&&t!==void 0&&t!==0,o=Jt(),u=it();A.useLayoutEffect(()=>s?(u(xG({zIndex:t})),()=>{u(wG({zIndex:t}))}):_o,[u,t,s]);var f=ve(d=>fG(d,t,o));return s?f?G0.createPortal(n,f):null:n}function i0(){return i0=Object.assign?Object.assign.bind():function(e){for(var t=1;tA.useContext(JD),zy={exports:{}},FE;function CG(){return FE||(FE=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function s(d,h,m){this.fn=d,this.context=h,this.once=m||!1}function o(d,h,m,p,v){if(typeof m!="function")throw new TypeError("The listener must be a function");var x=new s(m,p||d,v),w=n?n+h:h;return d._events[w]?d._events[w].fn?d._events[w]=[d._events[w],x]:d._events[w].push(x):(d._events[w]=x,d._eventsCount++),d}function u(d,h){--d._eventsCount===0?d._events=new r:delete d._events[h]}function f(){this._events=new r,this._eventsCount=0}f.prototype.eventNames=function(){var h=[],m,p;if(this._eventsCount===0)return h;for(p in m=this._events)t.call(m,p)&&h.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?h.concat(Object.getOwnPropertySymbols(m)):h},f.prototype.listeners=function(h){var m=n?n+h:h,p=this._events[m];if(!p)return[];if(p.fn)return[p.fn];for(var v=0,x=p.length,w=new Array(x);v{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!oi(n))return e[n]}},LG={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},e5=Qt({name:"options",initialState:LG,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),zG=e5.reducer,{createEventEmitter:IG}=e5.actions;function BG(e){return e.tooltip.syncInteraction}var UG={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},t5=Qt({name:"chartData",initialState:UG,reducers:{setChartData(e,t){if(e.chartData=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{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:KE,setDataStartEndIndexes:VG,setComputedData:Mne}=t5.actions,qG=t5.reducer,$G=["x","y"];function XE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Ks(e){for(var t=1;td.rootProps.className);A.useEffect(()=>{if(e==null)return _o;var d=(h,m,p)=>{if(t!==p&&e===h){if(r==="index"){var v;if(u&&m!==null&&m!==void 0&&(v=m.payload)!==null&&v!==void 0&&v.coordinate&&m.payload.sourceViewBox){var x=m.payload.coordinate,{x:w,y:_}=x,S=XG(x,$G),{x:O,y:M,width:j,height:k}=m.payload.sourceViewBox,N=Ks(Ks({},S),{},{x:u.x+(j?(w-O)/j:0)*u.width,y:u.y+(k?(_-M)/k:0)*u.height});n(Ks(Ks({},m),{},{payload:Ks(Ks({},m.payload),{},{coordinate:N})}))}else n(m);return}if(s!=null){var C;if(typeof r=="function"){var L={activeTooltipIndex:m.payload.index==null?void 0:Number(m.payload.index),isTooltipActive:m.payload.active,activeIndex:m.payload.index==null?void 0:Number(m.payload.index),activeLabel:m.payload.label,activeDataKey:m.payload.dataKey,activeCoordinate:m.payload.coordinate},I=r(s,L);C=s[I]}else r==="value"&&(C=s.find(V=>String(V.value)===m.payload.label));var{coordinate:Y}=m.payload;if(C==null||m.payload.active===!1||Y==null||u==null){n(r0({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:te,y:ie}=Y,K=Math.min(te,u.x+u.width),be=Math.min(ie,u.y+u.height),pe={x:o==="horizontal"?C.coordinate:K,y:o==="horizontal"?be:C.coordinate},xe=r0({active:m.payload.active,coordinate:pe,dataKey:m.payload.dataKey,index:String(C.index),label:m.payload.label,sourceViewBox:m.payload.sourceViewBox,graphicalItemId:m.payload.graphicalItemId});n(xe)}}};return bu.on(a0,d),()=>{bu.off(a0,d)}},[f,n,t,e,r,s,o,u])}function WG(){var e=ve(Sb),t=ve(Ab),n=it();A.useEffect(()=>{if(e==null)return _o;var r=(s,o,u)=>{t!==u&&e===s&&n(VG(o))};return bu.on(HE,r),()=>{bu.off(HE,r)}},[n,t,e])}function ZG(){var e=it();A.useEffect(()=>{e(IG())},[e]),GG(),WG()}function QG(e,t,n,r,s,o){var u=ve(w=>iG(w,e,t)),f=ve(UY),d=ve(Ab),h=ve(Sb),m=ve(t3),p=ve(BG),v=p?.active,x=ku();A.useEffect(()=>{if(!v&&h!=null&&d!=null){var w=r0({active:o,coordinate:n,dataKey:u,index:s,label:typeof r=="number"?String(r):r,sourceViewBox:x,graphicalItemId:f});bu.emit(a0,h,w,d)}},[v,n,u,f,s,r,d,h,m,o,x])}function YE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function GE(e){for(var t=1;t{L(XX({shared:M,trigger:j,axisId:C,active:s,defaultIndex:I}))},[L,M,j,C,s,I]);var Y=ku(),te=DC(),ie=VX(M),{activeIndex:K,isActive:be}=(t=ve(_e=>oG(_e,ie,j,I)))!==null&&t!==void 0?t:{},pe=ve(_e=>sG(_e,ie,j,I)),xe=ve(_e=>ZD(_e,ie,j,I)),V=ve(_e=>aG(_e,ie,j,I)),Q=pe,ne=NG(),le=(n=s??be)!==null&&n!==void 0?n:!1,[ue,P]=$7([Q,le]),H=ie==="axis"?xe:void 0;QG(ie,j,V,H,K,le);var ae=N??ne;if(ae==null||Y==null||ie==null)return null;var se=Q??WE;le||(se=WE),h&&se.length&&(se=p7(se.filter(_e=>_e.value!=null&&(_e.hide!==!0||r.includeHidden)),v,nW));var Z=se.length>0,oe=GE(GE({},r),{},{payload:se,label:H,active:le,activeIndex:K,coordinate:V,accessibilityLayer:te}),he=A.createElement(Dq,{allowEscapeViewBox:o,animationDuration:u,animationEasing:f,isAnimationActive:m,active:le,coordinate:V,hasPayload:Z,offset:p,position:x,reverseDirection:w,useTranslate3d:_,viewBox:Y,wrapperStyle:S,lastBoundingBox:ue,innerRef:P,hasPortalFromProps:!!N},rW(d,oe));return A.createElement(A.Fragment,null,G0.createPortal(he,ae),le&&A.createElement(kG,{cursor:O,tooltipEventType:ie,coordinate:V,payload:se,index:K}))}var bx=e=>null;bx.displayName="Cell";function sW(e,t,n){return(t=oW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oW(e){var t=lW(e,"string");return typeof t=="symbol"?t:t+""}function lW(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class uW{constructor(t){sW(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function ZE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function cW(e){for(var t=1;t{try{var n=document.getElementById(JE);n||(n=document.createElement("span"),n.setAttribute("id",JE),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,pW,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},Zl=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Pu.isSsr)return{width:0,height:0};if(!n5.enableCache)return ej(t,n);var r=gW(t,n),s=QE.get(r);if(s)return s;var o=ej(t,n);return QE.set(r,o),o},r5;function yW(e,t,n){return(t=vW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vW(e){var t=bW(e,"string");return typeof t=="symbol"?t:t+""}function bW(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var tj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,nj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,xW=/^(px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q)$/,wW=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,_W={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},SW=["cm","mm","pt","pc","in","Q","px"];function AW(e){return SW.includes(e)}var io="NaN";function TW(e,t){return e*_W[t]}class Ht{static parse(t){var n,[,r,s]=(n=wW.exec(t))!==null&&n!==void 0?n:[];return r==null?Ht.NaN:new Ht(parseFloat(r),s??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,oi(t)&&(this.unit=""),n!==""&&!xW.test(n)&&(this.num=NaN,this.unit=""),AW(n)&&(this.num=TW(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return oi(this.num)}}r5=Ht;yW(Ht,"NaN",new r5(NaN,""));function i5(e){if(e==null||e.includes(io))return io;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,s,o]=(n=tj.exec(t))!==null&&n!==void 0?n:[],u=Ht.parse(r??""),f=Ht.parse(o??""),d=s==="*"?u.multiply(f):u.divide(f);if(d.isNaN())return io;t=t.replace(tj,d.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var h,[,m,p,v]=(h=nj.exec(t))!==null&&h!==void 0?h:[],x=Ht.parse(m??""),w=Ht.parse(v??""),_=p==="+"?x.add(w):x.subtract(w);if(_.isNaN())return io;t=t.replace(nj,_.toString())}return t}var rj=/\(([^()]*)\)/;function OW(e){for(var t=e,n;(n=rj.exec(t))!=null;){var[,r]=n;t=t.replace(rj,i5(r))}return t}function EW(e){var t=e.replace(/\s+/g,"");return t=OW(t),t=i5(t),t}function jW(e){try{return EW(e)}catch{return io}}function Iy(e){var t=jW(e.slice(5,-1));return t===io?"":t}var MW=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],kW=["dx","dy","angle","className","breakAll"];function s0(){return s0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var s=[];dt(t)||(n?s=t.toString().split(""):s=t.toString().split(a5));var o=s.map(f=>({word:f,width:Zl(f,r).width})),u=n?0:Zl(" ",r).width;return{wordsWithComputedWidth:o,spaceWidth:u}}catch{return null}};function o5(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}function CW(e){return dt(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}var l5=(e,t,n,r)=>e.reduce((s,o)=>{var{word:u,width:f}=o,d=s[s.length-1];if(d&&f!=null&&(t==null||r||d.width+f+ne.reduce((t,n)=>t.width>n.width?t:n),DW="…",aj=(e,t,n,r,s,o,u,f)=>{var d=e.slice(0,t),h=s5({breakAll:n,style:r,children:d+DW});if(!h)return[!1,[]];var m=l5(h.wordsWithComputedWidth,o,u,f),p=m.length>s||u5(m).width>Number(o);return[p,m]},PW=(e,t,n,r,s)=>{var{maxLines:o,children:u,style:f,breakAll:d}=e,h=ye(o),m=String(u),p=l5(t,r,n,s);if(!h||s)return p;var v=p.length>o||u5(p).width>Number(r);if(!v)return p;for(var x=0,w=m.length-1,_=0,S;x<=w&&_<=m.length-1;){var O=Math.floor((x+w)/2),M=O-1,[j,k]=aj(m,M,d,f,o,r,n,s),[N]=aj(m,O,d,f,o,r,n,s);if(!j&&!N&&(x=O+1),j&&N&&(w=O-1),!j&&N){S=k;break}_++}return S||p},sj=e=>{var t=dt(e)?[]:e.toString().split(a5);return[{words:t,width:void 0}]},RW=e=>{var{width:t,scaleToFit:n,children:r,style:s,breakAll:o,maxLines:u}=e;if((t||n)&&!Pu.isSsr){var f,d,h=s5({breakAll:o,children:r,style:s});if(h){var{wordsWithComputedWidth:m,spaceWidth:p}=h;f=m,d=p}else return sj(r);return PW({breakAll:o,children:r,maxLines:u,style:s},f,d,t,!!n)}return sj(r)},c5="#808080",LW={angle:0,breakAll:!1,capHeight:"0.71em",fill:c5,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},xx=A.forwardRef((e,t)=>{var n=vn(e,LW),{x:r,y:s,lineHeight:o,capHeight:u,fill:f,scaleToFit:d,textAnchor:h,verticalAnchor:m}=n,p=ij(n,MW),v=A.useMemo(()=>RW({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:d,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,d,p.style,p.width]),{dx:x,dy:w,angle:_,className:S,breakAll:O}=p,M=ij(p,kW);if(!Nr(r)||!Nr(s)||v.length===0)return null;var j=Number(r)+(ye(x)?x:0),k=Number(s)+(ye(w)?w:0);if(!Le(j)||!Le(k))return null;var N;switch(m){case"start":N=Iy("calc(".concat(u,")"));break;case"middle":N=Iy("calc(".concat((v.length-1)/2," * -").concat(o," + (").concat(u," / 2))"));break;default:N=Iy("calc(".concat(v.length-1," * -").concat(o,")"));break}var C=[],L=v[0];if(d&&L!=null){var I=L.width,{width:Y}=p;C.push("scale(".concat(ye(Y)&&ye(I)?Y/I:1,")"))}return _&&C.push("rotate(".concat(_,", ").concat(j,", ").concat(k,")")),C.length&&(M.transform=C.join(" ")),A.createElement("text",s0({},er(M),{ref:t,x:j,y:k,className:et("recharts-text",S),textAnchor:h,fill:f.includes("url")?c5:f}),v.map((te,ie)=>{var K=te.words.join(O?"":" ");return A.createElement("tspan",{x:j,dy:ie===0?N:o,key:"".concat(K,"-").concat(ie)},K)}))});xx.displayName="Text";function oj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function _r(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:s}=e,{x:o,y:u,height:f,upperWidth:d,lowerWidth:h}=db(t),m=o,p=o+(d-h)/2,v=(m+p)/2,x=(d+h)/2,w=m+d/2,_=f>=0?1:-1,S=_*r,O=_>0?"end":"start",M=_>0?"start":"end",j=d>=0?1:-1,k=j*r,N=j>0?"end":"start",C=j>0?"start":"end",L=s;if(n==="top"){var I={x:m+d/2,y:u-S,horizontalAnchor:"middle",verticalAnchor:O};return L&&(I.height=Math.max(u-L.y,0),I.width=d),I}if(n==="bottom"){var Y={x:p+h/2,y:u+f+S,horizontalAnchor:"middle",verticalAnchor:M};return L&&(Y.height=Math.max(L.y+L.height-(u+f),0),Y.width=h),Y}if(n==="left"){var te={x:v-k,y:u+f/2,horizontalAnchor:N,verticalAnchor:"middle"};return L&&(te.width=Math.max(te.x-L.x,0),te.height=f),te}if(n==="right"){var ie={x:v+x+k,y:u+f/2,horizontalAnchor:C,verticalAnchor:"middle"};return L&&(ie.width=Math.max(L.x+L.width-ie.x,0),ie.height=f),ie}var K=L?{width:x,height:f}:{};return n==="insideLeft"?_r({x:v+k,y:u+f/2,horizontalAnchor:C,verticalAnchor:"middle"},K):n==="insideRight"?_r({x:v+x-k,y:u+f/2,horizontalAnchor:N,verticalAnchor:"middle"},K):n==="insideTop"?_r({x:m+d/2,y:u+S,horizontalAnchor:"middle",verticalAnchor:M},K):n==="insideBottom"?_r({x:p+h/2,y:u+f-S,horizontalAnchor:"middle",verticalAnchor:O},K):n==="insideTopLeft"?_r({x:m+k,y:u+S,horizontalAnchor:C,verticalAnchor:M},K):n==="insideTopRight"?_r({x:m+d-k,y:u+S,horizontalAnchor:N,verticalAnchor:M},K):n==="insideBottomLeft"?_r({x:p+k,y:u+f-S,horizontalAnchor:C,verticalAnchor:O},K):n==="insideBottomRight"?_r({x:p+h-k,y:u+f-S,horizontalAnchor:N,verticalAnchor:O},K):n&&typeof n=="object"&&(ye(n.x)||Ga(n.x))&&(ye(n.y)||Ga(n.y))?_r({x:o+ra(n.x,x),y:u+ra(n.y,f),horizontalAnchor:"end",verticalAnchor:"end"},K):_r({x:w,y:u+f/2,horizontalAnchor:"middle",verticalAnchor:"middle"},K)},VW=["labelRef"],qW=["content"];function lj(e,t){if(e==null)return{};var n,r,s=$W(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:s,width:o,height:u,children:f}=e,d=A.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:s,width:o,height:u}),[t,n,r,s,o,u]);return A.createElement(f5.Provider,{value:d},f)},d5=()=>{var e=A.useContext(f5),t=ku();return e||(t?db(t):void 0)},YW=A.createContext(null),GW=()=>{var e=A.useContext(YW),t=ve(s3);return e||t},WW=e=>{var{value:t,formatter:n}=e,r=dt(e.children)?t:e.children;return typeof n=="function"?n(r):r},wx=e=>e!=null&&typeof e=="function",ZW=(e,t)=>{var n=Wn(t-e),r=Math.min(Math.abs(t-e),360);return n*r},QW=(e,t,n,r,s)=>{var{offset:o,className:u}=e,{cx:f,cy:d,innerRadius:h,outerRadius:m,startAngle:p,endAngle:v,clockWise:x}=s,w=(h+m)/2,_=ZW(p,v),S=_>=0?1:-1,O,M;switch(t){case"insideStart":O=p+S*o,M=x;break;case"insideEnd":O=v-S*o,M=!x;break;case"end":O=v+S*o,M=x;break;default:throw new Error("Unsupported position ".concat(t))}M=_<=0?M:!M;var j=Kt(f,d,w,O),k=Kt(f,d,w,O+(M?1:-1)*359),N="M".concat(j.x,",").concat(j.y,` + A`,",",",0,0,",",",",","Z"])),L.x,L.y,o,o,+(m<0),C.x,C.y,r,r,+(Y>180),+(m>0),j.x,j.y,o,o,+(m<0),N.x,N.y)}else M+=ut(PO||(PO=Ua(["L",",","Z"])),t,n);return M},L$={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},qC=e=>{var t=vn(e,L$),{cx:n,cy:r,innerRadius:s,outerRadius:o,cornerRadius:u,forceCornerRadius:f,cornerIsExternal:d,startAngle:h,endAngle:m,className:p}=t;if(o0&&Math.abs(h-m)<360?_=R$({cx:n,cy:r,innerRadius:s,outerRadius:o,cornerRadius:Math.min(w,x/2),forceCornerRadius:f,cornerIsExternal:d,startAngle:h,endAngle:m}):_=VC({cx:n,cy:r,innerRadius:s,outerRadius:o,startAngle:h,endAngle:m}),A.createElement("path",Yv({},er(t),{className:v,d:_}))};function z$(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(wk(t)){if(e==="centric"){var{cx:r,cy:s,innerRadius:o,outerRadius:u,angle:f}=t,d=Kt(r,s,o,f),h=Kt(r,s,u,f);return[{x:d.x,y:d.y},{x:h.x,y:h.y}]}return UC(t)}}var Ty={},Oy={},Ey={},RO;function I$(){return RO||(RO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Dk();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(Ey)),Ey}var LO;function B$(){return LO||(LO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=I$();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(Oy)),Oy}var zO;function U$(){return zO||(zO=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Pk(),n=B$();function r(s,o,u){u&&typeof u!="number"&&t.isIterateeCall(s,o,u)&&(o=u=void 0),s=n.toFinite(s),o===void 0?(o=s,s=0):o=n.toFinite(o),u=u===void 0?se.chartData,$$=$([oa],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),vb=(e,t,n,r)=>r?$$(e):oa(e);function Er(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(Le(t)&&Le(n))return!0}return!1}function BO(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function FC(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,s,o;if(Le(n))s=n;else if(typeof n=="function")return;if(Le(r))o=r;else if(typeof r=="function")return;var u=[s,o];if(Er(u))return u}}function F$(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(Er(r))return BO(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[s,o]=e,u,f;if(s==="auto")t!=null&&(u=Math.min(...t));else if(ye(s))u=s;else if(typeof s=="function")try{t!=null&&(u=s(t?.[0]))}catch{}else if(typeof s=="string"&&MT.test(s)){var d=MT.exec(s);if(d==null||d[1]==null||t==null)u=void 0;else{var h=+d[1];u=t[0]-h}}else u=t?.[0];if(o==="auto")t!=null&&(f=Math.max(...t));else if(ye(o))f=o;else if(typeof o=="function")try{t!=null&&(f=o(t?.[1]))}catch{}else if(typeof o=="string"&&NT.test(o)){var m=NT.exec(o);if(m==null||m[1]==null||t==null)f=void 0;else{var p=+m[1];f=t[1]+p}}else f=t?.[1];var v=[u,f];if(Er(v))return t==null?v:BO(v,t,n)}}}var So=1e9,H$={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},xb,nt=!0,tr="[DecimalError] ",Ka=tr+"Invalid argument: ",bb=tr+"Exponent out of range: ",Ao=Math.floor,za=Math.pow,K$=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,kn,kt=1e7,Je=7,HC=9007199254740991,_d=Ao(HC/Je),ce={};ce.absoluteValue=ce.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ce.comparedTo=ce.cmp=function(e){var t,n,r,s,o=this;if(e=new o.constructor(e),o.s!==e.s)return o.s||-e.s;if(o.e!==e.e)return o.e>e.e^o.s<0?1:-1;for(r=o.d.length,s=e.d.length,t=0,n=re.d[t]^o.s<0?1:-1;return r===s?0:r>s^o.s<0?1:-1};ce.decimalPlaces=ce.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*Je;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ce.dividedBy=ce.div=function(e){return ri(this,new this.constructor(e))};ce.dividedToIntegerBy=ce.idiv=function(e){var t=this,n=t.constructor;return Xe(ri(t,new n(e),0,1),n.precision)};ce.equals=ce.eq=function(e){return!this.cmp(e)};ce.exponent=function(){return bt(this)};ce.greaterThan=ce.gt=function(e){return this.cmp(e)>0};ce.greaterThanOrEqualTo=ce.gte=function(e){return this.cmp(e)>=0};ce.isInteger=ce.isint=function(){return this.e>this.d.length-2};ce.isNegative=ce.isneg=function(){return this.s<0};ce.isPositive=ce.ispos=function(){return this.s>0};ce.isZero=function(){return this.s===0};ce.lessThan=ce.lt=function(e){return this.cmp(e)<0};ce.lessThanOrEqualTo=ce.lte=function(e){return this.cmp(e)<1};ce.logarithm=ce.log=function(e){var t,n=this,r=n.constructor,s=r.precision,o=s+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(kn))throw Error(tr+"NaN");if(n.s<1)throw Error(tr+(n.s?"NaN":"-Infinity"));return n.eq(kn)?new r(0):(nt=!1,t=ri(hu(n,o),hu(e,o),o),nt=!0,Xe(t,s))};ce.minus=ce.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?YC(t,e):KC(t,(e.s=-e.s,e))};ce.modulo=ce.mod=function(e){var t,n=this,r=n.constructor,s=r.precision;if(e=new r(e),!e.s)throw Error(tr+"NaN");return n.s?(nt=!1,t=ri(n,e,0,1).times(e),nt=!0,n.minus(t)):Xe(new r(n),s)};ce.naturalExponential=ce.exp=function(){return XC(this)};ce.naturalLogarithm=ce.ln=function(){return hu(this)};ce.negated=ce.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ce.plus=ce.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?KC(t,e):YC(t,(e.s=-e.s,e))};ce.precision=ce.sd=function(e){var t,n,r,s=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ka+e);if(t=bt(s)+1,r=s.d.length-1,n=r*Je+1,r=s.d[r],r){for(;r%10==0;r/=10)n--;for(r=s.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ce.squareRoot=ce.sqrt=function(){var e,t,n,r,s,o,u,f=this,d=f.constructor;if(f.s<1){if(!f.s)return new d(0);throw Error(tr+"NaN")}for(e=bt(f),nt=!1,s=Math.sqrt(+f),s==0||s==1/0?(t=Tr(f.d),(t.length+e)%2==0&&(t+="0"),s=Math.sqrt(t),e=Ao((e+1)/2)-(e<0||e%2),s==1/0?t="5e"+e:(t=s.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new d(t)):r=new d(s.toString()),n=d.precision,s=u=n+3;;)if(o=r,r=o.plus(ri(f,o,u+2)).times(.5),Tr(o.d).slice(0,u)===(t=Tr(r.d)).slice(0,u)){if(t=t.slice(u-3,u+1),s==u&&t=="4999"){if(Xe(o,n+1,0),o.times(o).eq(f)){r=o;break}}else if(t!="9999")break;u+=4}return nt=!0,Xe(r,n)};ce.times=ce.mul=function(e){var t,n,r,s,o,u,f,d,h,m=this,p=m.constructor,v=m.d,x=(e=new p(e)).d;if(!m.s||!e.s)return new p(0);for(e.s*=m.s,n=m.e+e.e,d=v.length,h=x.length,d=0;){for(t=0,s=d+r;s>r;)f=o[s]+x[r]*v[s-r-1]+t,o[s--]=f%kt|0,t=f/kt|0;o[s]=(o[s]+t)%kt|0}for(;!o[--u];)o.pop();return t?++n:o.shift(),e.d=o,e.e=n,nt?Xe(e,p.precision):e};ce.toDecimalPlaces=ce.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Dr(e,0,So),t===void 0?t=r.rounding:Dr(t,0,8),Xe(n,e+bt(n)+1,t))};ce.toExponential=function(e,t){var n,r=this,s=r.constructor;return e===void 0?n=Ja(r,!0):(Dr(e,0,So),t===void 0?t=s.rounding:Dr(t,0,8),r=Xe(new s(r),e+1,t),n=Ja(r,!0,e+1)),n};ce.toFixed=function(e,t){var n,r,s=this,o=s.constructor;return e===void 0?Ja(s):(Dr(e,0,So),t===void 0?t=o.rounding:Dr(t,0,8),r=Xe(new o(s),e+bt(s)+1,t),n=Ja(r.abs(),!1,e+bt(r)+1),s.isneg()&&!s.isZero()?"-"+n:n)};ce.toInteger=ce.toint=function(){var e=this,t=e.constructor;return Xe(new t(e),bt(e)+1,t.rounding)};ce.toNumber=function(){return+this};ce.toPower=ce.pow=function(e){var t,n,r,s,o,u,f=this,d=f.constructor,h=12,m=+(e=new d(e));if(!e.s)return new d(kn);if(f=new d(f),!f.s){if(e.s<1)throw Error(tr+"Infinity");return f}if(f.eq(kn))return f;if(r=d.precision,e.eq(kn))return Xe(f,r);if(t=e.e,n=e.d.length-1,u=t>=n,o=f.s,u){if((n=m<0?-m:m)<=HC){for(s=new d(kn),t=Math.ceil(r/Je+4),nt=!1;n%2&&(s=s.times(f),VO(s.d,t)),n=Ao(n/2),n!==0;)f=f.times(f),VO(f.d,t);return nt=!0,e.s<0?new d(kn).div(s):Xe(s,r)}}else if(o<0)throw Error(tr+"NaN");return o=o<0&&e.d[Math.max(t,n)]&1?-1:1,f.s=1,nt=!1,s=e.times(hu(f,r+h)),nt=!0,s=XC(s),s.s=o,s};ce.toPrecision=function(e,t){var n,r,s=this,o=s.constructor;return e===void 0?(n=bt(s),r=Ja(s,n<=o.toExpNeg||n>=o.toExpPos)):(Dr(e,1,So),t===void 0?t=o.rounding:Dr(t,0,8),s=Xe(new o(s),e,t),n=bt(s),r=Ja(s,e<=n||n<=o.toExpNeg,e)),r};ce.toSignificantDigits=ce.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Dr(e,1,So),t===void 0?t=r.rounding:Dr(t,0,8)),Xe(new r(n),e,t)};ce.toString=ce.valueOf=ce.val=ce.toJSON=ce[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=bt(e),n=e.constructor;return Ja(e,t<=n.toExpNeg||t>=n.toExpPos)};function KC(e,t){var n,r,s,o,u,f,d,h,m=e.constructor,p=m.precision;if(!e.s||!t.s)return t.s||(t=new m(e)),nt?Xe(t,p):t;if(d=e.d,h=t.d,u=e.e,s=t.e,d=d.slice(),o=u-s,o){for(o<0?(r=d,o=-o,f=h.length):(r=h,s=u,f=d.length),u=Math.ceil(p/Je),f=u>f?u+1:f+1,o>f&&(o=f,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for(f=d.length,o=h.length,f-o<0&&(o=f,r=h,h=d,d=r),n=0;o;)n=(d[--o]=d[o]+h[o]+n)/kt|0,d[o]%=kt;for(n&&(d.unshift(n),++s),f=d.length;d[--f]==0;)d.pop();return t.d=d,t.e=s,nt?Xe(t,p):t}function Dr(e,t,n){if(e!==~~e||en)throw Error(Ka+e)}function Tr(e){var t,n,r,s=e.length-1,o="",u=e[0];if(s>0){for(o+=u,t=1;tu?1:-1;else for(f=d=0;fs[f]?1:-1;break}return d}function n(r,s,o){for(var u=0;o--;)r[o]-=u,u=r[o]1;)r.shift()}return function(r,s,o,u){var f,d,h,m,p,v,x,w,_,S,O,M,j,N,k,C,L,I,Y=r.constructor,te=r.s==s.s?1:-1,ie=r.d,K=s.d;if(!r.s)return new Y(r);if(!s.s)throw Error(tr+"Division by zero");for(d=r.e-s.e,L=K.length,k=ie.length,x=new Y(te),w=x.d=[],h=0;K[h]==(ie[h]||0);)++h;if(K[h]>(ie[h]||0)&&--d,o==null?M=o=Y.precision:u?M=o+(bt(r)-bt(s))+1:M=o,M<0)return new Y(0);if(M=M/Je+2|0,h=0,L==1)for(m=0,K=K[0],M++;(h1&&(K=e(K,m),ie=e(ie,m),L=K.length,k=ie.length),N=L,_=ie.slice(0,L),S=_.length;S=kt/2&&++C;do m=0,f=t(K,_,L,S),f<0?(O=_[0],L!=S&&(O=O*kt+(_[1]||0)),m=O/C|0,m>1?(m>=kt&&(m=kt-1),p=e(K,m),v=p.length,S=_.length,f=t(p,_,v,S),f==1&&(m--,n(p,L16)throw Error(bb+bt(e));if(!e.s)return new m(kn);for(nt=!1,f=p,u=new m(.03125);e.abs().gte(.1);)e=e.times(u),h+=5;for(r=Math.log(za(2,h))/Math.LN10*2+5|0,f+=r,n=s=o=new m(kn),m.precision=f;;){if(s=Xe(s.times(e),f),n=n.times(++d),u=o.plus(ri(s,n,f)),Tr(u.d).slice(0,f)===Tr(o.d).slice(0,f)){for(;h--;)o=Xe(o.times(o),f);return m.precision=p,t==null?(nt=!0,Xe(o,p)):o}o=u}}function bt(e){for(var t=e.e*Je,n=e.d[0];n>=10;n/=10)t++;return t}function My(e,t,n){if(t>e.LN10.sd())throw nt=!0,n&&(e.precision=n),Error(tr+"LN10 precision limit exceeded");return Xe(new e(e.LN10),t)}function Gi(e){for(var t="";e--;)t+="0";return t}function hu(e,t){var n,r,s,o,u,f,d,h,m,p=1,v=10,x=e,w=x.d,_=x.constructor,S=_.precision;if(x.s<1)throw Error(tr+(x.s?"NaN":"-Infinity"));if(x.eq(kn))return new _(0);if(t==null?(nt=!1,h=S):h=t,x.eq(10))return t==null&&(nt=!0),My(_,h);if(h+=v,_.precision=h,n=Tr(w),r=n.charAt(0),o=bt(x),Math.abs(o)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)x=x.times(e),n=Tr(x.d),r=n.charAt(0),p++;o=bt(x),r>1?(x=new _("0."+n),o++):x=new _(r+"."+n.slice(1))}else return d=My(_,h+2,S).times(o+""),x=hu(new _(r+"."+n.slice(1)),h-v).plus(d),_.precision=S,t==null?(nt=!0,Xe(x,S)):x;for(f=u=x=ri(x.minus(kn),x.plus(kn),h),m=Xe(x.times(x),h),s=3;;){if(u=Xe(u.times(m),h),d=f.plus(ri(u,new _(s),h)),Tr(d.d).slice(0,h)===Tr(f.d).slice(0,h))return f=f.times(2),o!==0&&(f=f.plus(My(_,h+2,S).times(o+""))),f=ri(f,new _(p),h),_.precision=S,t==null?(nt=!0,Xe(f,S)):f;f=d,s+=2}}function UO(e,t){var n,r,s;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(s=t.length;t.charCodeAt(s-1)===48;)--s;if(t=t.slice(r,s),t){if(s-=r,n=n-r-1,e.e=Ao(n/Je),e.d=[],r=(n+1)%Je,n<0&&(r+=Je),r_d||e.e<-_d))throw Error(bb+n)}else e.s=0,e.e=0,e.d=[0];return e}function Xe(e,t,n){var r,s,o,u,f,d,h,m,p=e.d;for(u=1,o=p[0];o>=10;o/=10)u++;if(r=t-u,r<0)r+=Je,s=t,h=p[m=0];else{if(m=Math.ceil((r+1)/Je),o=p.length,m>=o)return e;for(h=o=p[m],u=1;o>=10;o/=10)u++;r%=Je,s=r-Je+u}if(n!==void 0&&(o=za(10,u-s-1),f=h/o%10|0,d=t<0||p[m+1]!==void 0||h%o,d=n<4?(f||d)&&(n==0||n==(e.s<0?3:2)):f>5||f==5&&(n==4||d||n==6&&(r>0?s>0?h/za(10,u-s):0:p[m-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return d?(o=bt(e),p.length=1,t=t-o-1,p[0]=za(10,(Je-t%Je)%Je),e.e=Ao(-t/Je)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(r==0?(p.length=m,o=1,m--):(p.length=m+1,o=za(10,Je-r),p[m]=s>0?(h/za(10,u-s)%za(10,s)|0)*o:0),d)for(;;)if(m==0){(p[0]+=o)==kt&&(p[0]=1,++e.e);break}else{if(p[m]+=o,p[m]!=kt)break;p[m--]=0,o=1}for(r=p.length;p[--r]===0;)p.pop();if(nt&&(e.e>_d||e.e<-_d))throw Error(bb+bt(e));return e}function YC(e,t){var n,r,s,o,u,f,d,h,m,p,v=e.constructor,x=v.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new v(e),nt?Xe(t,x):t;if(d=e.d,p=t.d,r=t.e,h=e.e,d=d.slice(),u=h-r,u){for(m=u<0,m?(n=d,u=-u,f=p.length):(n=p,r=h,f=d.length),s=Math.max(Math.ceil(x/Je),f)+2,u>s&&(u=s,n.length=1),n.reverse(),s=u;s--;)n.push(0);n.reverse()}else{for(s=d.length,f=p.length,m=s0;--s)d[f++]=0;for(s=p.length;s>u;){if(d[--s]0?o=o.charAt(0)+"."+o.slice(1)+Gi(r):u>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(s<0?"e":"e+")+s):s<0?(o="0."+Gi(-s-1)+o,n&&(r=n-u)>0&&(o+=Gi(r))):s>=u?(o+=Gi(s+1-u),n&&(r=n-s-1)>0&&(o=o+"."+Gi(r))):((r=s+1)0&&(s+1===u&&(o+="."),o+=Gi(r))),e.s<0?"-"+o:o}function VO(e,t){if(e.length>t)return e.length=t,!0}function GC(e){var t,n,r;function s(o){var u=this;if(!(u instanceof s))return new s(o);if(u.constructor=s,o instanceof s){u.s=o.s,u.e=o.e,u.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Ka+o);if(o>0)u.s=1;else if(o<0)o=-o,u.s=-1;else{u.s=0,u.e=0,u.d=[0];return}if(o===~~o&&o<1e7){u.e=0,u.d=[o];return}return UO(u,o.toString())}else if(typeof o!="string")throw Error(Ka+o);if(o.charCodeAt(0)===45?(o=o.slice(1),u.s=-1):u.s=1,K$.test(o))UO(u,o);else throw Error(Ka+o)}if(s.prototype=ce,s.ROUND_UP=0,s.ROUND_DOWN=1,s.ROUND_CEIL=2,s.ROUND_FLOOR=3,s.ROUND_HALF_UP=4,s.ROUND_HALF_DOWN=5,s.ROUND_HALF_EVEN=6,s.ROUND_HALF_CEIL=7,s.ROUND_HALF_FLOOR=8,s.clone=GC,s.config=s.set=X$,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=s[t+1]&&r<=s[t+2])this[n]=r;else throw Error(Ka+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ka+n+": "+r);return this}var xb=GC(H$);kn=new xb(1);const Ce=xb;function WC(e){var t;return e===0?t=1:t=Math.floor(new Ce(e).abs().log(10).toNumber())+1,t}function ZC(e,t,n){for(var r=new Ce(e),s=0,o=[];r.lt(t)&&s<1e5;)o.push(r.toNumber()),r=r.add(n),s++;return o}var QC=e=>{var[t,n]=e,[r,s]=[t,n];return t>n&&([r,s]=[n,t]),[r,s]},wb=(e,t,n)=>{if(e.lte(0))return new Ce(0);var r=WC(e.toNumber()),s=new Ce(10).pow(r),o=e.div(s),u=r!==1?.05:.1,f=new Ce(Math.ceil(o.div(u).toNumber())).add(n).mul(u),d=f.mul(s);return t?new Ce(d.toNumber()):new Ce(Math.ceil(d.toNumber()))},JC=(e,t,n)=>{var r;if(e.lte(0))return new Ce(0);var s=[1,2,2.5,5],o=e.toNumber(),u=Math.floor(new Ce(o).abs().log(10).toNumber()),f=new Ce(10).pow(u),d=e.div(f).toNumber(),h=s.findIndex(x=>x>=d-1e-10);if(h===-1&&(f=f.mul(10),h=0),h+=n,h>=s.length){var m=Math.floor(h/s.length);h%=s.length,f=f.mul(new Ce(10).pow(m))}var p=(r=s[h])!==null&&r!==void 0?r:1,v=new Ce(p).mul(f);return t?v:new Ce(Math.ceil(v.toNumber()))},Y$=(e,t,n)=>{var r=new Ce(1),s=new Ce(e);if(!s.isint()&&n){var o=Math.abs(e);o<1?(r=new Ce(10).pow(WC(e)-1),s=new Ce(Math.floor(s.div(r).toNumber())).mul(r)):o>1&&(s=new Ce(Math.floor(e)))}else e===0?s=new Ce(Math.floor((t-1)/2)):n||(s=new Ce(Math.floor(e)));for(var u=Math.floor((t-1)/2),f=[],d=0;d4&&arguments[4]!==void 0?arguments[4]:0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:wb;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ce(0),tickMin:new Ce(0),tickMax:new Ce(0)};var f=u(new Ce(n).sub(t).div(r-1),s,o),d;t<=0&&n>=0?d=new Ce(0):(d=new Ce(t).add(n).div(2),d=d.sub(new Ce(d).mod(f)));var h=Math.ceil(d.sub(t).div(f).toNumber()),m=Math.ceil(new Ce(n).sub(d).div(f).toNumber()),p=h+m+1;return p>r?e3(t,n,r,s,o+1,u):(p0?m+(r-p):m,h=n>0?h:h+(r-p)),{step:f,tickMin:d.sub(new Ce(h).mul(f)),tickMax:d.add(new Ce(m).mul(f))})},qO=function(t){var[n,r]=t,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",f=Math.max(s,2),[d,h]=QC([n,r]);if(d===-1/0||h===1/0){var m=h===1/0?[d,...Array(s-1).fill(1/0)]:[...Array(s-1).fill(-1/0),h];return n>r?m.reverse():m}if(d===h)return Y$(d,s,o);var p=u==="snap125"?JC:wb,{step:v,tickMin:x,tickMax:w}=e3(d,h,f,o,0,p),_=ZC(x,w.add(new Ce(.1).mul(v)),v);return n>r?_.reverse():_},$O=function(t,n){var[r,s]=t,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",[f,d]=QC([r,s]);if(f===-1/0||d===1/0)return[r,s];if(f===d)return[f];var h=u==="snap125"?JC:wb,m=Math.max(n,2),p=h(new Ce(d).sub(f).div(m-1),o,0),v=[...ZC(new Ce(f),new Ce(d),p),d];return o===!1&&(v=v.map(x=>Math.round(x))),r>s?v.reverse():v},G$=e=>e.rootProps.barCategoryGap,ph=e=>e.rootProps.stackOffset,t3=e=>e.rootProps.reverseStackOrder,_b=e=>e.options.chartName,Sb=e=>e.rootProps.syncId,n3=e=>e.rootProps.syncMethod,Ab=e=>e.options.eventEmitter,pn={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},Na={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},wr={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},gh=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function yh(e,t,n){if(n!=="auto")return n;if(e!=null)return sa(e,t)?"category":"number"}function FO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sd(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},Tb=$([J$,TC],(e,t)=>{var n;if(e!=null)return e;var r=(n=yh(t,"angleAxis",HO.type))!==null&&n!==void 0?n:"category";return Sd(Sd({},HO),{},{type:r})}),eF=(e,t)=>e.polarAxis.radiusAxis[t],Ob=$([eF,TC],(e,t)=>{var n;if(e!=null)return e;var r=(n=yh(t,"radiusAxis",KO.type))!==null&&n!==void 0?n:"category";return Sd(Sd({},KO),{},{type:r})}),vh=e=>e.polarOptions,Eb=$([hi,mi,Xt],j$),r3=$([vh,Eb],(e,t)=>{if(e!=null)return ra(e.innerRadius,t,0)}),i3=$([vh,Eb],(e,t)=>{if(e!=null)return ra(e.outerRadius,t,t*.8)}),tF=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},a3=$([vh],tF);$([Tb,a3],gh);var s3=$([Eb,r3,i3],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});$([Ob,s3],gh);var o3=$([ht,vh,r3,i3,hi,mi],(e,t,n,r,s,o)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:u,cy:f,startAngle:d,endAngle:h}=t;return{cx:ra(u,s,s/2),cy:ra(f,o,o/2),innerRadius:n,outerRadius:r,startAngle:d,endAngle:h,clockWise:!1}}}),Ct=(e,t)=>t,bh=(e,t,n)=>n;function l3(e){return e?.id}function u3(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:s,dataKey:o}=n,u=new Map;return e.forEach(f=>{var d,h=(d=f.data)!==null&&d!==void 0?d:r;if(!(h==null||h.length===0)){var m=l3(f);h.forEach((p,v)=>{var x=o==null||s?v:String(Ot(p,o,null)),w=Ot(p,f.dataKey,0),_;u.has(x)?_=u.get(x):_={},Object.assign(_,{[m]:w}),u.set(x,_)})}}),Array.from(u.values())}function jb(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var xh=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function wh(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function nF(e,t){if(e.length===t.length){for(var n=0;n{var t=ht(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},To=e=>e.tooltip.settings.axisId;function Mb(e){if(e!=null){var t=e.ticks,n=e.bandwidth,r=e.range(),s=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(o){function u(){return o.apply(this,arguments)}return u.toString=function(){return o.toString()},u})(()=>s),rangeMin:()=>s[0],rangeMax:()=>s[1],isInRange(o){var u=s[0],f=s[1];return u<=f?o>=u&&o<=f:o>=f&&o<=u},bandwidth:n?()=>n.call(e):void 0,ticks:t?o=>t.call(e,o):void 0,map:(o,u)=>{var f=e(o);if(f!=null){if(e.bandwidth&&u!==null&&u!==void 0&&u.position){var d=e.bandwidth();switch(u.position){case"middle":f+=d/2;break;case"end":f+=d;break}}return f}}}}}var rF=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Er(t)){for(var n,r,s=0;sr)&&(r=o))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function ea(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function iF(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function Nb(e){let t,n,r;e.length!==2?(t=ea,n=(f,d)=>ea(e(f),d),r=(f,d)=>e(f)-d):(t=e===ea||e===iF?e:aF,n=e,r=e);function s(f,d,h=0,m=f.length){if(h>>1;n(f[p],d)<0?h=p+1:m=p}while(h>>1;n(f[p],d)<=0?h=p+1:m=p}while(hh&&r(f[p-1],d)>-r(f[p],d)?p-1:p}return{left:s,center:u,right:o}}function aF(){return 0}function c3(e){return e===null?NaN:+e}function*sF(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const oF=Nb(ea),Ru=oF.right;Nb(c3).center;class XO extends Map{constructor(t,n=cF){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,s]of t)this.set(r,s)}get(t){return super.get(YO(this,t))}has(t){return super.has(YO(this,t))}set(t,n){return super.set(lF(this,t),n)}delete(t){return super.delete(uF(this,t))}}function YO({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function lF({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function uF({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function cF(e){return e!==null&&typeof e=="object"?e.valueOf():e}function fF(e=ea){if(e===ea)return f3;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function f3(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const dF=Math.sqrt(50),hF=Math.sqrt(10),mF=Math.sqrt(2);function Ad(e,t,n){const r=(t-e)/Math.max(0,n),s=Math.floor(Math.log10(r)),o=r/Math.pow(10,s),u=o>=dF?10:o>=hF?5:o>=mF?2:1;let f,d,h;return s<0?(h=Math.pow(10,-s)/u,f=Math.round(e*h),d=Math.round(t*h),f/ht&&--d,h=-h):(h=Math.pow(10,s)*u,f=Math.round(e/h),d=Math.round(t/h),f*ht&&--d),d0))return[];if(e===t)return[e];const r=t=s))return[];const f=o-s+1,d=new Array(f);if(r)if(u<0)for(let h=0;h=r)&&(n=r);return n}function WO(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function d3(e,t,n=0,r=1/0,s){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(s=s===void 0?f3:fF(s);r>n;){if(r-n>600){const d=r-n+1,h=t-n+1,m=Math.log(d),p=.5*Math.exp(2*m/3),v=.5*Math.sqrt(m*p*(d-p)/d)*(h-d/2<0?-1:1),x=Math.max(n,Math.floor(t-h*p/d+v)),w=Math.min(r,Math.floor(t+(d-h)*p/d+v));d3(e,t,x,w,s)}const o=e[t];let u=n,f=r;for(Dl(e,n,t),s(e[r],o)>0&&Dl(e,n,r);u0;)--f}s(e[n],o)===0?Dl(e,n,f):(++f,Dl(e,f,r)),f<=t&&(n=f+1),t<=f&&(r=f-1)}return e}function Dl(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function pF(e,t,n){if(e=Float64Array.from(sF(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return WO(e);if(t>=1)return GO(e);var r,s=(r-1)*t,o=Math.floor(s),u=GO(d3(e,o).subarray(0,o+1)),f=WO(e.subarray(o+1));return u+(f-u)*(s-o)}}function gF(e,t,n=c3){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,s=(r-1)*t,o=Math.floor(s),u=+n(e[o],o,e),f=+n(e[o+1],o+1,e);return u+(f-u)*(s-o)}}function yF(e,t,n){e=+e,t=+t,n=(s=arguments.length)<2?(t=e,e=0,1):s<3?1:+n;for(var r=-1,s=Math.max(0,Math.ceil((t-e)/n))|0,o=new Array(s);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Af(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Af(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=xF.exec(e))?new gn(t[1],t[2],t[3],1):(t=wF.exec(e))?new gn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=_F.exec(e))?Af(t[1],t[2],t[3],t[4]):(t=SF.exec(e))?Af(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=AF.exec(e))?rE(t[1],t[2]/100,t[3]/100,1):(t=TF.exec(e))?rE(t[1],t[2]/100,t[3]/100,t[4]):ZO.hasOwnProperty(e)?eE(ZO[e]):e==="transparent"?new gn(NaN,NaN,NaN,0):null}function eE(e){return new gn(e>>16&255,e>>8&255,e&255,1)}function Af(e,t,n,r){return r<=0&&(e=t=n=NaN),new gn(e,t,n,r)}function jF(e){return e instanceof Lu||(e=gu(e)),e?(e=e.rgb(),new gn(e.r,e.g,e.b,e.opacity)):new gn}function Jv(e,t,n,r){return arguments.length===1?jF(e):new gn(e,t,n,r??1)}function gn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Db(gn,Jv,m3(Lu,{brighter(e){return e=e==null?Td:Math.pow(Td,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?mu:Math.pow(mu,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new gn(Xa(this.r),Xa(this.g),Xa(this.b),Od(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:tE,formatHex:tE,formatHex8:MF,formatRgb:nE,toString:nE}));function tE(){return`#${Va(this.r)}${Va(this.g)}${Va(this.b)}`}function MF(){return`#${Va(this.r)}${Va(this.g)}${Va(this.b)}${Va((isNaN(this.opacity)?1:this.opacity)*255)}`}function nE(){const e=Od(this.opacity);return`${e===1?"rgb(":"rgba("}${Xa(this.r)}, ${Xa(this.g)}, ${Xa(this.b)}${e===1?")":`, ${e})`}`}function Od(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Xa(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Va(e){return e=Xa(e),(e<16?"0":"")+e.toString(16)}function rE(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new cr(e,t,n,r)}function p3(e){if(e instanceof cr)return new cr(e.h,e.s,e.l,e.opacity);if(e instanceof Lu||(e=gu(e)),!e)return new cr;if(e instanceof cr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,s=Math.min(t,n,r),o=Math.max(t,n,r),u=NaN,f=o-s,d=(o+s)/2;return f?(t===o?u=(n-r)/f+(n0&&d<1?0:u,new cr(u,f,d,e.opacity)}function NF(e,t,n,r){return arguments.length===1?p3(e):new cr(e,t,n,r??1)}function cr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Db(cr,NF,m3(Lu,{brighter(e){return e=e==null?Td:Math.pow(Td,e),new cr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?mu:Math.pow(mu,e),new cr(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,s=2*n-r;return new gn(Ny(e>=240?e-240:e+120,s,r),Ny(e,s,r),Ny(e<120?e+240:e-120,s,r),this.opacity)},clamp(){return new cr(iE(this.h),Tf(this.s),Tf(this.l),Od(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(){const e=Od(this.opacity);return`${e===1?"hsl(":"hsla("}${iE(this.h)}, ${Tf(this.s)*100}%, ${Tf(this.l)*100}%${e===1?")":`, ${e})`}`}}));function iE(e){return e=(e||0)%360,e<0?e+360:e}function Tf(e){return Math.max(0,Math.min(1,e||0))}function Ny(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Pb=e=>()=>e;function kF(e,t){return function(n){return e+n*t}}function CF(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function DF(e){return(e=+e)==1?g3:function(t,n){return n-t?CF(t,n,e):Pb(isNaN(t)?n:t)}}function g3(e,t){var n=t-e;return n?kF(e,n):Pb(isNaN(e)?t:e)}const aE=(function e(t){var n=DF(t);function r(s,o){var u=n((s=Jv(s)).r,(o=Jv(o)).r),f=n(s.g,o.g),d=n(s.b,o.b),h=g3(s.opacity,o.opacity);return function(m){return s.r=u(m),s.g=f(m),s.b=d(m),s.opacity=h(m),s+""}}return r.gamma=e,r})(1);function PF(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),s;return function(o){for(s=0;sn&&(o=t.slice(n,o),f[u]?f[u]+=o:f[++u]=o),(r=r[0])===(s=s[0])?f[u]?f[u]+=s:f[++u]=s:(f[++u]=null,d.push({i:u,x:Ed(r,s)})),n=ky.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function HF(e,t,n){var r=e[0],s=e[1],o=t[0],u=t[1];return s2?KF:HF,d=h=null,p}function p(v){return v==null||isNaN(v=+v)?o:(d||(d=f(e.map(r),t,n)))(r(u(v)))}return p.invert=function(v){return u(s((h||(h=f(t,e.map(r),Ed)))(v)))},p.domain=function(v){return arguments.length?(e=Array.from(v,jd),m()):e.slice()},p.range=function(v){return arguments.length?(t=Array.from(v),m()):t.slice()},p.rangeRound=function(v){return t=Array.from(v),n=Rb,m()},p.clamp=function(v){return arguments.length?(u=v?!0:rn,m()):u!==rn},p.interpolate=function(v){return arguments.length?(n=v,m()):n},p.unknown=function(v){return arguments.length?(o=v,p):o},function(v,x){return r=v,s=x,m()}}function Lb(){return _h()(rn,rn)}function XF(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function Md(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 mo(e){return e=Md(Math.abs(e)),e?e[1]:NaN}function YF(e,t){return function(n,r){for(var s=n.length,o=[],u=0,f=e[0],d=0;s>0&&f>0&&(d+f+1>r&&(f=Math.max(1,r-d)),o.push(n.substring(s-=f,s+f)),!((d+=f+1)>r));)f=e[u=(u+1)%e.length];return o.reverse().join(t)}}function GF(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var WF=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function yu(e){if(!(t=WF.exec(e)))throw new Error("invalid format: "+e);var t;return new zb({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]})}yu.prototype=zb.prototype;function zb(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+""}zb.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 ZF(e){e:for(var t=e.length,n=1,r=-1,s;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(s+1):e}var Nd;function QF(e,t){var n=Md(e,t);if(!n)return Nd=void 0,e.toPrecision(t);var r=n[0],s=n[1],o=s-(Nd=Math.max(-8,Math.min(8,Math.floor(s/3)))*3)+1,u=r.length;return o===u?r:o>u?r+new Array(o-u+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+Md(e,Math.max(0,t+o-1))[0]}function oE(e,t){var n=Md(e,t);if(!n)return e+"";var r=n[0],s=n[1];return s<0?"0."+new Array(-s).join("0")+r:r.length>s+1?r.slice(0,s+1)+"."+r.slice(s+1):r+new Array(s-r.length+2).join("0")}const lE={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:XF,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)=>oE(e*100,t),r:oE,s:QF,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function uE(e){return e}var cE=Array.prototype.map,fE=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function JF(e){var t=e.grouping===void 0||e.thousands===void 0?uE:YF(cE.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",s=e.decimal===void 0?".":e.decimal+"",o=e.numerals===void 0?uE:GF(cE.call(e.numerals,String)),u=e.percent===void 0?"%":e.percent+"",f=e.minus===void 0?"−":e.minus+"",d=e.nan===void 0?"NaN":e.nan+"";function h(p,v){p=yu(p);var x=p.fill,w=p.align,_=p.sign,S=p.symbol,O=p.zero,M=p.width,j=p.comma,N=p.precision,k=p.trim,C=p.type;C==="n"?(j=!0,C="g"):lE[C]||(N===void 0&&(N=12),k=!0,C="g"),(O||x==="0"&&w==="=")&&(O=!0,x="0",w="=");var L=(v&&v.prefix!==void 0?v.prefix:"")+(S==="$"?n:S==="#"&&/[boxX]/.test(C)?"0"+C.toLowerCase():""),I=(S==="$"?r:/[%p]/.test(C)?u:"")+(v&&v.suffix!==void 0?v.suffix:""),Y=lE[C],te=/[defgprs%]/.test(C);N=N===void 0?6:/[gprs]/.test(C)?Math.max(1,Math.min(21,N)):Math.max(0,Math.min(20,N));function ie(K){var be=L,pe=I,xe,V,Q;if(C==="c")pe=Y(K)+pe,K="";else{K=+K;var ne=K<0||1/K<0;if(K=isNaN(K)?d:Y(Math.abs(K),N),k&&(K=ZF(K)),ne&&+K==0&&_!=="+"&&(ne=!1),be=(ne?_==="("?_:f:_==="-"||_==="("?"":_)+be,pe=(C==="s"&&!isNaN(K)&&Nd!==void 0?fE[8+Nd/3]:"")+pe+(ne&&_==="("?")":""),te){for(xe=-1,V=K.length;++xeQ||Q>57){pe=(Q===46?s+K.slice(xe+1):K.slice(xe))+pe,K=K.slice(0,xe);break}}}j&&!O&&(K=t(K,1/0));var le=be.length+K.length+pe.length,ue=le>1)+be+K+pe+ue.slice(le);break;default:K=ue+be+K+pe;break}return o(K)}return ie.toString=function(){return p+""},ie}function m(p,v){var x=Math.max(-8,Math.min(8,Math.floor(mo(v)/3)))*3,w=Math.pow(10,-x),_=h((p=yu(p),p.type="f",p),{suffix:fE[8+x/3]});return function(S){return _(w*S)}}return{format:h,formatPrefix:m}}var Of,Ib,y3;eH({thousands:",",grouping:[3],currency:["$",""]});function eH(e){return Of=JF(e),Ib=Of.format,y3=Of.formatPrefix,Of}function tH(e){return Math.max(0,-mo(Math.abs(e)))}function nH(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(mo(t)/3)))*3-mo(Math.abs(e)))}function rH(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,mo(t)-mo(e))+1}function v3(e,t,n,r){var s=Zv(e,t,n),o;switch(r=yu(r??",f"),r.type){case"s":{var u=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(o=nH(s,u))&&(r.precision=o),y3(r,u)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(o=rH(s,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=o-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(o=tH(s))&&(r.precision=o-(r.type==="%")*2);break}}return Ib(r)}function la(e){var t=e.domain;return e.ticks=function(n){var r=t();return Gv(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var s=t();return v3(s[0],s[s.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),s=0,o=r.length-1,u=r[s],f=r[o],d,h,m=10;for(f0;){if(h=Wv(u,f,n),h===d)return r[s]=u,r[o]=f,t(r);if(h>0)u=Math.floor(u/h)*h,f=Math.ceil(f/h)*h;else if(h<0)u=Math.ceil(u*h)/h,f=Math.floor(f*h)/h;else break;d=h}return e},e}function b3(){var e=Lb();return e.copy=function(){return zu(e,b3())},nr.apply(e,arguments),la(e)}function x3(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,jd),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return x3(e).unknown(t)},e=arguments.length?Array.from(e,jd):[0,1],la(n)}function w3(e,t){e=e.slice();var n=0,r=e.length-1,s=e[n],o=e[r],u;return oMath.pow(e,t)}function lH(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 mE(e){return(t,n)=>-e(-t,n)}function Bb(e){const t=e(dE,hE),n=t.domain;let r=10,s,o;function u(){return s=lH(r),o=oH(r),n()[0]<0?(s=mE(s),o=mE(o),e(iH,aH)):e(dE,hE),t}return t.base=function(f){return arguments.length?(r=+f,u()):r},t.domain=function(f){return arguments.length?(n(f),u()):n()},t.ticks=f=>{const d=n();let h=d[0],m=d[d.length-1];const p=m0){for(;v<=x;++v)for(w=1;wm)break;O.push(_)}}else for(;v<=x;++v)for(w=r-1;w>=1;--w)if(_=v>0?w/o(-v):w*o(v),!(_m)break;O.push(_)}O.length*2{if(f==null&&(f=10),d==null&&(d=r===10?"s":","),typeof d!="function"&&(!(r%1)&&(d=yu(d)).precision==null&&(d.trim=!0),d=Ib(d)),f===1/0)return d;const h=Math.max(1,r*f/t.ticks().length);return m=>{let p=m/o(Math.round(s(m)));return p*rn(w3(n(),{floor:f=>o(Math.floor(s(f))),ceil:f=>o(Math.ceil(s(f)))})),t}function _3(){const e=Bb(_h()).domain([1,10]);return e.copy=()=>zu(e,_3()).base(e.base()),nr.apply(e,arguments),e}function pE(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function gE(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Ub(e){var t=1,n=e(pE(t),gE(t));return n.constant=function(r){return arguments.length?e(pE(t=+r),gE(t)):t},la(n)}function S3(){var e=Ub(_h());return e.copy=function(){return zu(e,S3()).constant(e.constant())},nr.apply(e,arguments)}function yE(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function uH(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function cH(e){return e<0?-e*e:e*e}function Vb(e){var t=e(rn,rn),n=1;function r(){return n===1?e(rn,rn):n===.5?e(uH,cH):e(yE(n),yE(1/n))}return t.exponent=function(s){return arguments.length?(n=+s,r()):n},la(t)}function qb(){var e=Vb(_h());return e.copy=function(){return zu(e,qb()).exponent(e.exponent())},nr.apply(e,arguments),e}function fH(){return qb.apply(null,arguments).exponent(.5)}function vE(e){return Math.sign(e)*e*e}function dH(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function A3(){var e=Lb(),t=[0,1],n=!1,r;function s(o){var u=dH(e(o));return isNaN(u)?r:n?Math.round(u):u}return s.invert=function(o){return e.invert(vE(o))},s.domain=function(o){return arguments.length?(e.domain(o),s):e.domain()},s.range=function(o){return arguments.length?(e.range((t=Array.from(o,jd)).map(vE)),s):t.slice()},s.rangeRound=function(o){return s.range(o).round(!0)},s.round=function(o){return arguments.length?(n=!!o,s):n},s.clamp=function(o){return arguments.length?(e.clamp(o),s):e.clamp()},s.unknown=function(o){return arguments.length?(r=o,s):r},s.copy=function(){return A3(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},nr.apply(s,arguments),la(s)}function T3(){var e=[],t=[],n=[],r;function s(){var u=0,f=Math.max(1,t.length);for(n=new Array(f-1);++u0?n[f-1]:e[0],f=n?[r[n-1],t]:[r[h-1],r[h]]},u.unknown=function(d){return arguments.length&&(o=d),u},u.thresholds=function(){return r.slice()},u.copy=function(){return O3().domain([e,t]).range(s).unknown(o)},nr.apply(la(u),arguments)}function E3(){var e=[.5],t=[0,1],n,r=1;function s(o){return o!=null&&o<=o?t[Ru(e,o,0,r)]:n}return s.domain=function(o){return arguments.length?(e=Array.from(o),r=Math.min(e.length,t.length-1),s):e.slice()},s.range=function(o){return arguments.length?(t=Array.from(o),r=Math.min(e.length,t.length-1),s):t.slice()},s.invertExtent=function(o){var u=t.indexOf(o);return[e[u-1],e[u]]},s.unknown=function(o){return arguments.length?(n=o,s):n},s.copy=function(){return E3().domain(e).range(t).unknown(n)},nr.apply(s,arguments)}const Cy=new Date,Dy=new Date;function Et(e,t,n,r){function s(o){return e(o=arguments.length===0?new Date:new Date(+o)),o}return s.floor=o=>(e(o=new Date(+o)),o),s.ceil=o=>(e(o=new Date(o-1)),t(o,1),e(o),o),s.round=o=>{const u=s(o),f=s.ceil(o);return o-u(t(o=new Date(+o),u==null?1:Math.floor(u)),o),s.range=(o,u,f)=>{const d=[];if(o=s.ceil(o),f=f==null?1:Math.floor(f),!(o0))return d;let h;do d.push(h=new Date(+o)),t(o,f),e(o);while(hEt(u=>{if(u>=u)for(;e(u),!o(u);)u.setTime(u-1)},(u,f)=>{if(u>=u)if(f<0)for(;++f<=0;)for(;t(u,-1),!o(u););else for(;--f>=0;)for(;t(u,1),!o(u););}),n&&(s.count=(o,u)=>(Cy.setTime(+o),Dy.setTime(+u),e(Cy),e(Dy),Math.floor(n(Cy,Dy))),s.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?s.filter(r?u=>r(u)%o===0:u=>s.count(0,u)%o===0):s)),s}const kd=Et(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);kd.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Et(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):kd);kd.range;const ti=1e3,Qn=ti*60,ni=Qn*60,ui=ni*24,$b=ui*7,bE=ui*30,Py=ui*365,qa=Et(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getUTCSeconds());qa.range;const Fb=Et(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ti)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getMinutes());Fb.range;const Hb=Et(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getUTCMinutes());Hb.range;const Kb=Et(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ti-e.getMinutes()*Qn)},(e,t)=>{e.setTime(+e+t*ni)},(e,t)=>(t-e)/ni,e=>e.getHours());Kb.range;const Xb=Et(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ni)},(e,t)=>(t-e)/ni,e=>e.getUTCHours());Xb.range;const Iu=Et(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Qn)/ui,e=>e.getDate()-1);Iu.range;const Sh=Et(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ui,e=>e.getUTCDate()-1);Sh.range;const j3=Et(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ui,e=>Math.floor(e/ui));j3.range;function ns(e){return Et(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Qn)/$b)}const Ah=ns(0),Cd=ns(1),hH=ns(2),mH=ns(3),po=ns(4),pH=ns(5),gH=ns(6);Ah.range;Cd.range;hH.range;mH.range;po.range;pH.range;gH.range;function rs(e){return Et(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/$b)}const Th=rs(0),Dd=rs(1),yH=rs(2),vH=rs(3),go=rs(4),bH=rs(5),xH=rs(6);Th.range;Dd.range;yH.range;vH.range;go.range;bH.range;xH.range;const Yb=Et(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());Yb.range;const Gb=Et(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());Gb.range;const ci=Et(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());ci.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Et(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)});ci.range;const fi=Et(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());fi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Et(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)});fi.range;function M3(e,t,n,r,s,o){const u=[[qa,1,ti],[qa,5,5*ti],[qa,15,15*ti],[qa,30,30*ti],[o,1,Qn],[o,5,5*Qn],[o,15,15*Qn],[o,30,30*Qn],[s,1,ni],[s,3,3*ni],[s,6,6*ni],[s,12,12*ni],[r,1,ui],[r,2,2*ui],[n,1,$b],[t,1,bE],[t,3,3*bE],[e,1,Py]];function f(h,m,p){const v=mS).right(u,v);if(x===u.length)return e.every(Zv(h/Py,m/Py,p));if(x===0)return kd.every(Math.max(Zv(h,m,p),1));const[w,_]=u[v/u[x-1][2]53)return null;"w"in ee||(ee.w=1),"Z"in ee?(De=Ly(Pl(ee.y,0,1)),Lt=De.getUTCDay(),De=Lt>4||Lt===0?Dd.ceil(De):Dd(De),De=Sh.offset(De,(ee.V-1)*7),ee.y=De.getUTCFullYear(),ee.m=De.getUTCMonth(),ee.d=De.getUTCDate()+(ee.w+6)%7):(De=Ry(Pl(ee.y,0,1)),Lt=De.getDay(),De=Lt>4||Lt===0?Cd.ceil(De):Cd(De),De=Iu.offset(De,(ee.V-1)*7),ee.y=De.getFullYear(),ee.m=De.getMonth(),ee.d=De.getDate()+(ee.w+6)%7)}else("W"in ee||"U"in ee)&&("w"in ee||(ee.w="u"in ee?ee.u%7:"W"in ee?1:0),Lt="Z"in ee?Ly(Pl(ee.y,0,1)).getUTCDay():Ry(Pl(ee.y,0,1)).getDay(),ee.m=0,ee.d="W"in ee?(ee.w+6)%7+ee.W*7-(Lt+5)%7:ee.w+ee.U*7-(Lt+6)%7);return"Z"in ee?(ee.H+=ee.Z/100|0,ee.M+=ee.Z%100,Ly(ee)):Ry(ee)}}function I(J,re,Se,ee){for(var Rt=0,De=re.length,Lt=Se.length,zt,Pr;Rt=Lt)return-1;if(zt=re.charCodeAt(Rt++),zt===37){if(zt=re.charAt(Rt++),Pr=k[zt in xE?re.charAt(Rt++):zt],!Pr||(ee=Pr(J,Se,ee))<0)return-1}else if(zt!=Se.charCodeAt(ee++))return-1}return ee}function Y(J,re,Se){var ee=h.exec(re.slice(Se));return ee?(J.p=m.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function te(J,re,Se){var ee=x.exec(re.slice(Se));return ee?(J.w=w.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function ie(J,re,Se){var ee=p.exec(re.slice(Se));return ee?(J.w=v.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function K(J,re,Se){var ee=O.exec(re.slice(Se));return ee?(J.m=M.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function be(J,re,Se){var ee=_.exec(re.slice(Se));return ee?(J.m=S.get(ee[0].toLowerCase()),Se+ee[0].length):-1}function pe(J,re,Se){return I(J,t,re,Se)}function xe(J,re,Se){return I(J,n,re,Se)}function V(J,re,Se){return I(J,r,re,Se)}function Q(J){return u[J.getDay()]}function ne(J){return o[J.getDay()]}function le(J){return d[J.getMonth()]}function ue(J){return f[J.getMonth()]}function P(J){return s[+(J.getHours()>=12)]}function H(J){return 1+~~(J.getMonth()/3)}function ae(J){return u[J.getUTCDay()]}function se(J){return o[J.getUTCDay()]}function Z(J){return d[J.getUTCMonth()]}function oe(J){return f[J.getUTCMonth()]}function he(J){return s[+(J.getUTCHours()>=12)]}function _e(J){return 1+~~(J.getUTCMonth()/3)}return{format:function(J){var re=C(J+="",j);return re.toString=function(){return J},re},parse:function(J){var re=L(J+="",!1);return re.toString=function(){return J},re},utcFormat:function(J){var re=C(J+="",N);return re.toString=function(){return J},re},utcParse:function(J){var re=L(J+="",!0);return re.toString=function(){return J},re}}}var xE={"-":"",_:" ",0:"0"},Pt=/^\s*\d+/,OH=/^%/,EH=/[\\^$*+?|[\]().{}]/g;function ze(e,t,n){var r=e<0?"-":"",s=(r?-e:e)+"",o=s.length;return r+(o[t.toLowerCase(),n]))}function MH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function NH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function kH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function CH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function DH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function wE(e,t,n){var r=Pt.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function _E(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function PH(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 RH(e,t,n){var r=Pt.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function LH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function SE(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function zH(e,t,n){var r=Pt.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function AE(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function IH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function BH(e,t,n){var r=Pt.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function UH(e,t,n){var r=Pt.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function VH(e,t,n){var r=Pt.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function qH(e,t,n){var r=OH.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function $H(e,t,n){var r=Pt.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function FH(e,t,n){var r=Pt.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function TE(e,t){return ze(e.getDate(),t,2)}function HH(e,t){return ze(e.getHours(),t,2)}function KH(e,t){return ze(e.getHours()%12||12,t,2)}function XH(e,t){return ze(1+Iu.count(ci(e),e),t,3)}function N3(e,t){return ze(e.getMilliseconds(),t,3)}function YH(e,t){return N3(e,t)+"000"}function GH(e,t){return ze(e.getMonth()+1,t,2)}function WH(e,t){return ze(e.getMinutes(),t,2)}function ZH(e,t){return ze(e.getSeconds(),t,2)}function QH(e){var t=e.getDay();return t===0?7:t}function JH(e,t){return ze(Ah.count(ci(e)-1,e),t,2)}function k3(e){var t=e.getDay();return t>=4||t===0?po(e):po.ceil(e)}function eK(e,t){return e=k3(e),ze(po.count(ci(e),e)+(ci(e).getDay()===4),t,2)}function tK(e){return e.getDay()}function nK(e,t){return ze(Cd.count(ci(e)-1,e),t,2)}function rK(e,t){return ze(e.getFullYear()%100,t,2)}function iK(e,t){return e=k3(e),ze(e.getFullYear()%100,t,2)}function aK(e,t){return ze(e.getFullYear()%1e4,t,4)}function sK(e,t){var n=e.getDay();return e=n>=4||n===0?po(e):po.ceil(e),ze(e.getFullYear()%1e4,t,4)}function oK(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+ze(t/60|0,"0",2)+ze(t%60,"0",2)}function OE(e,t){return ze(e.getUTCDate(),t,2)}function lK(e,t){return ze(e.getUTCHours(),t,2)}function uK(e,t){return ze(e.getUTCHours()%12||12,t,2)}function cK(e,t){return ze(1+Sh.count(fi(e),e),t,3)}function C3(e,t){return ze(e.getUTCMilliseconds(),t,3)}function fK(e,t){return C3(e,t)+"000"}function dK(e,t){return ze(e.getUTCMonth()+1,t,2)}function hK(e,t){return ze(e.getUTCMinutes(),t,2)}function mK(e,t){return ze(e.getUTCSeconds(),t,2)}function pK(e){var t=e.getUTCDay();return t===0?7:t}function gK(e,t){return ze(Th.count(fi(e)-1,e),t,2)}function D3(e){var t=e.getUTCDay();return t>=4||t===0?go(e):go.ceil(e)}function yK(e,t){return e=D3(e),ze(go.count(fi(e),e)+(fi(e).getUTCDay()===4),t,2)}function vK(e){return e.getUTCDay()}function bK(e,t){return ze(Dd.count(fi(e)-1,e),t,2)}function xK(e,t){return ze(e.getUTCFullYear()%100,t,2)}function wK(e,t){return e=D3(e),ze(e.getUTCFullYear()%100,t,2)}function _K(e,t){return ze(e.getUTCFullYear()%1e4,t,4)}function SK(e,t){var n=e.getUTCDay();return e=n>=4||n===0?go(e):go.ceil(e),ze(e.getUTCFullYear()%1e4,t,4)}function AK(){return"+0000"}function EE(){return"%"}function jE(e){return+e}function ME(e){return Math.floor(+e/1e3)}var Fs,P3,R3;TK({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 TK(e){return Fs=TH(e),P3=Fs.format,Fs.parse,R3=Fs.utcFormat,Fs.utcParse,Fs}function OK(e){return new Date(e)}function EK(e){return e instanceof Date?+e:+new Date(+e)}function Wb(e,t,n,r,s,o,u,f,d,h){var m=Lb(),p=m.invert,v=m.domain,x=h(".%L"),w=h(":%S"),_=h("%I:%M"),S=h("%I %p"),O=h("%a %d"),M=h("%b %d"),j=h("%B"),N=h("%Y");function k(C){return(d(C)t(s/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(s,o)=>pF(e,o/r))},n.copy=function(){return B3(t).domain(e)},pi.apply(n,arguments)}function Eh(){var e=0,t=.5,n=1,r=1,s,o,u,f,d,h=rn,m,p=!1,v;function x(_){return isNaN(_=+_)?v:(_=.5+((_=+m(_))-o)*(r*_{if(e!=null){var{scale:r,type:s}=e;if(r==="auto")return s==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":s==="category"?"band":"linear";if(typeof r=="string")return PK(r)?r:"point"}};function RK(e,t){for(var n=0,r=e.length,s=e[0]t)?n=o+1:r=o}return n}function F3(e,t){if(e){var n=t??e.domain(),r=n.map(o=>{var u;return(u=e(o))!==null&&u!==void 0?u:0}),s=e.range();if(!(n.length===0||s.length<2))return o=>{var u,f,d=RK(r,o);if(d<=0)return n[0];if(d>=n.length)return n[n.length-1];var h=(u=r[d-1])!==null&&u!==void 0?u:0,m=(f=r[d])!==null&&f!==void 0?f:0;return Math.abs(o-h)<=Math.abs(o-m)?n[d-1]:n[d]}}}function LK(e){if(e!=null)return"invert"in e&&typeof e.invert=="function"?e.invert.bind(e):F3(e,void 0)}function kE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Pd(e){for(var t=1;te.cartesianAxis.xAxis[t],gi=(e,t)=>{var n=H3(e,t);return n??wt},_t={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:n0,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:Mu},K3=(e,t)=>e.cartesianAxis.yAxis[t],yi=(e,t)=>{var n=K3(e,t);return n??_t},X3={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:""},ex=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??X3},sn=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);case"zAxis":return ex(e,n);case"angleAxis":return Tb(e,n);case"radiusAxis":return Ob(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},UK=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Bu=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return yi(e,n);case"angleAxis":return Tb(e,n);case"radiusAxis":return Ob(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Y3=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function G3(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 W3=e=>e.graphicalItems.cartesianItems,VK=$([Ct,bh],G3),Z3=(e,t,n)=>e.filter(n).filter(r=>t?.includeHidden===!0?!0:!r.hide),Uu=$([W3,sn,VK],Z3,{memoizeOptions:{resultEqualityCheck:wh}}),Q3=$([Uu],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(jb)),J3=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),qK=$([Uu],J3),eD=e=>e.map(t=>t.data).filter(Boolean).flat(1),$K=$([Uu],eD,{memoizeOptions:{resultEqualityCheck:wh}}),tD=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:s}=t;return e.length>0?e:n.slice(r,s+1)},tx=$([$K,vb],tD),nD=(e,t,n)=>t?.dataKey!=null?e.map(r=>({value:Ot(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(s=>({value:Ot(s,r)}))):e.map(r=>({value:r})),Vu=$([tx,sn,Uu],nD);function lo(e){if(kr(e)||e instanceof Date){var t=Number(e);if(Le(t))return t}}function CE(e){if(Array.isArray(e)){var t=[lo(e[0]),lo(e[1])];return Er(t)?t:void 0}var n=lo(e);if(n!=null)return[n,n]}function di(e){return e.map(lo).filter(mn)}function FK(e,t){var n=lo(e),r=lo(t);return n==null&&r==null?0:n==null?-1:r==null?1:n-r}var HK=$([Vu],e=>e?.map(t=>t.value).sort(FK));function rD(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function KK(e,t,n){return!n||typeof t!="number"||oi(t)?[]:n.length?di(n.flatMap(r=>{var s=Ot(e,r.dataKey),o,u;if(Array.isArray(s)?[o,u]=s:o=u=s,!(!Le(o)||!Le(u)))return[t-o,t+u]})):[]}var jt=e=>{var t=Dt(e),n=To(e);return Bu(e,t,n)},qu=$([jt],e=>e?.dataKey),XK=$([Q3,vb,jt],u3),iD=(e,t,n,r)=>{var s={},o=t.reduce((u,f)=>{if(f.stackId==null)return u;var d=u[f.stackId];return d==null&&(d=[]),d.push(f),u[f.stackId]=d,u},s);return Object.fromEntries(Object.entries(o).map(u=>{var[f,d]=u,h=r?[...d].reverse():d,m=h.map(l3);return[f,{stackedData:ZU(e,m,n),graphicalItems:h}]}))},YK=$([XK,Q3,ph,t3],iD),aD=(e,t,n,r)=>{var{dataStartIndex:s,dataEndIndex:o}=t;if(r==null&&n!=="zAxis"){var u=eV(e,s,o);if(!(u!=null&&u[0]===0&&u[1]===0))return u}},GK=$([sn],e=>e.allowDataOverflow),nx=e=>{var t;if(e==null||!("domain"in e))return n0;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=di(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e?.domain)!==null&&t!==void 0?t:n0},sD=$([sn],nx),oD=$([sD,GK],FC),WK=$([YK,oa,Ct,oD],aD,{memoizeOptions:{resultEqualityCheck:xh}}),rx=e=>e.errorBars,ZK=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>rD(n,r)),Rd=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var o,u;if(n.length>0&&e.forEach(f=>{n.forEach(d=>{var h,m,p=(h=r[d.id])===null||h===void 0?void 0:h.filter(O=>rD(s,O)),v=Ot(f,(m=t.dataKey)!==null&&m!==void 0?m:d.dataKey),x=KK(f,v,p);if(x.length>=2){var w=Math.min(...x),_=Math.max(...x);(o==null||wu)&&(u=_)}var S=CE(v);S!=null&&(o=o==null?S[0]:Math.min(o,S[0]),u=u==null?S[1]:Math.max(u,S[1]))})}),t?.dataKey!=null&&e.forEach(f=>{var d=CE(Ot(f,t.dataKey));d!=null&&(o=o==null?d[0]:Math.min(o,d[0]),u=u==null?d[1]:Math.max(u,d[1]))}),Le(o)&&Le(u))return[o,u]},QK=$([tx,sn,qK,rx,Ct],lD,{memoizeOptions:{resultEqualityCheck:xh}});function JK(e){var{value:t}=e;if(kr(t)||t instanceof Date)return t}var eX=(e,t,n)=>{var r=e.map(JK).filter(s=>s!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&vk(r))?$C(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},uD=e=>e.referenceElements.dots,Eo=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),tX=$([uD,Ct,bh],Eo),cD=e=>e.referenceElements.areas,nX=$([cD,Ct,bh],Eo),fD=e=>e.referenceElements.lines,rX=$([fD,Ct,bh],Eo),dD=(e,t)=>{if(e!=null){var n=di(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},iX=$(tX,Ct,dD),hD=(e,t)=>{if(e!=null){var n=di(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},aX=$([nX,Ct],hD);function sX(e){var t;if(e.x!=null)return di([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:di(n)}function oX(e){var t;if(e.y!=null)return di([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:di(n)}var mD=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?sX(r):oX(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},lX=$([rX,Ct],mD),uX=$(iX,lX,aX,(e,t,n)=>Rd(e,n,t)),pD=(e,t,n,r,s,o,u,f)=>{if(n!=null)return n;var d=u==="vertical"&&f==="xAxis"||u==="horizontal"&&f==="yAxis",h=d?Rd(r,o,s):Rd(o,s);return F$(t,h,e.allowDataOverflow)},cX=$([sn,sD,oD,WK,QK,uX,ht,Ct],pD,{memoizeOptions:{resultEqualityCheck:xh}}),fX=[0,1],gD=(e,t,n,r,s,o,u)=>{if(!((e==null||n==null||n.length===0)&&u===void 0)){var{dataKey:f,type:d}=e,h=sa(t,o);if(h&&f==null){var m;return $C(0,(m=n?.length)!==null&&m!==void 0?m:0)}return d==="category"?eX(r,e,h):s==="expand"?fX:u}},ix=$([sn,ht,tx,Vu,ph,Ct,cX],gD),jo=$([sn,Y3,_b],$3),yD=(e,t,n)=>{var{niceTicks:r}=t;if(r!=="none"){var s=nx(t),o=Array.isArray(s)&&(s[0]==="auto"||s[1]==="auto");if((r==="snap125"||r==="adaptive")&&t!=null&&t.tickCount&&Er(e)){if(o)return qO(e,t.tickCount,t.allowDecimals,r);if(t.type==="number")return $O(e,t.tickCount,t.allowDecimals,r)}if(r==="auto"&&n==="linear"&&t!=null&&t.tickCount){if(o&&Er(e))return qO(e,t.tickCount,t.allowDecimals,"adaptive");if(t.type==="number"&&Er(e))return $O(e,t.tickCount,t.allowDecimals,"adaptive")}}},ax=$([ix,Bu,jo],yD),vD=(e,t,n,r)=>{if(r!=="angleAxis"&&e?.type==="number"&&Er(t)&&Array.isArray(n)&&n.length>0){var s,o,u=t[0],f=(s=n[0])!==null&&s!==void 0?s:0,d=t[1],h=(o=n[n.length-1])!==null&&o!==void 0?o:0;return[Math.min(u,f),Math.max(d,h)]}return t},dX=$([sn,ix,ax,Ct],vD),hX=$(Vu,sn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(di(e.map(p=>p.value))).sort((p,v)=>p-v),s=r[0],o=r[r.length-1];if(s==null||o==null)return 1/0;var u=o-s;if(u===0)return 1/0;for(var f=0;fs,(e,t,n,r,s)=>{if(!Le(e))return 0;var o=t==="vertical"?r.height:r.width;if(s==="gap")return e*o/2;if(s==="no-gap"){var u=ra(n,e*o),f=e*o/2;return f-u-(f-u)/o*u}return 0}),mX=(e,t,n)=>{var r=gi(e,t);return r==null||typeof r.padding!="string"?0:bD(e,"xAxis",t,n,r.padding)},pX=(e,t,n)=>{var r=yi(e,t);return r==null||typeof r.padding!="string"?0:bD(e,"yAxis",t,n,r.padding)},gX=$(gi,mX,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:s}=e;return typeof s=="string"?{left:t,right:t}:{left:((n=s.left)!==null&&n!==void 0?n:0)+t,right:((r=s.right)!==null&&r!==void 0?r:0)+t}}),yX=$(yi,pX,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:s}=e;return typeof s=="string"?{top:t,bottom:t}:{top:((n=s.top)!==null&&n!==void 0?n:0)+t,bottom:((r=s.bottom)!==null&&r!==void 0?r:0)+t}}),vX=$([Xt,gX,ch,uh,(e,t,n)=>n],(e,t,n,r,s)=>{var{padding:o}=r;return s?[o.left,n.width-o.right]:[e.left+t.left,e.left+e.width-t.right]}),bX=$([Xt,ht,yX,ch,uh,(e,t,n)=>n],(e,t,n,r,s,o)=>{var{padding:u}=s;return o?[r.height-u.bottom,u.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),$u=(e,t,n,r)=>{var s;switch(t){case"xAxis":return vX(e,n,r);case"yAxis":return bX(e,n,r);case"zAxis":return(s=ex(e,n))===null||s===void 0?void 0:s.range;case"angleAxis":return a3(e);case"radiusAxis":return s3(e,n);default:return}},xD=$([sn,$u],gh),xX=$([jo,dX],rF),sx=$([sn,jo,xX,xD],Jb),wD=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:s,scale:o}=n,u=sa(e,r);if(u&&(s==="number"||o!=="auto"))return t.map(f=>f.value)}},ox=$([ht,Vu,Bu,Ct],wD),Mo=$([sx],Mb);$([sx],LK);$([sx,HK],F3);$([Uu,rx,Ct],ZK);function _D(e,t){return e.idt.id?1:0}var jh=(e,t)=>t,Mh=(e,t,n)=>n,wX=$(oh,jh,Mh,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(_D)),_X=$(lh,jh,Mh,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(_D)),SD=(e,t)=>({width:e.width,height:t.height}),SX=(e,t)=>{var n=typeof t.width=="number"?t.width:Mu;return{width:n,height:e.height}},AX=$(Xt,gi,SD),TX=(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}},EX=$(mi,Xt,wX,jh,Mh,(e,t,n,r,s)=>{var o={},u;return n.forEach(f=>{var d=SD(t,f);u==null&&(u=TX(t,r,e));var h=r==="top"&&!s||r==="bottom"&&s;o[f.id]=u-Number(h)*d.height,u+=(h?-1:1)*d.height}),o}),jX=$(hi,Xt,_X,jh,Mh,(e,t,n,r,s)=>{var o={},u;return n.forEach(f=>{var d=SX(t,f);u==null&&(u=OX(t,r,e));var h=r==="left"&&!s||r==="right"&&s;o[f.id]=u-Number(h)*d.width,u+=(h?-1:1)*d.width}),o}),MX=(e,t)=>{var n=gi(e,t);if(n!=null)return EX(e,n.orientation,n.mirror)},NX=$([Xt,gi,MX,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var s=n?.[r];return s==null?{x:e.left,y:0}:{x:e.left,y:s}}}),kX=(e,t)=>{var n=yi(e,t);if(n!=null)return jX(e,n.orientation,n.mirror)},CX=$([Xt,yi,kX,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var s=n?.[r];return s==null?{x:0,y:e.top}:{x:s,y:e.top}}}),DX=$(Xt,yi,(e,t)=>{var n=typeof t.width=="number"?t.width:Mu;return{width:n,height:e.height}}),AD=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:s,type:o,dataKey:u}=n,f=sa(e,r),d=t.map(h=>h.value);if(u&&f&&o==="category"&&s&&vk(d))return d}},lx=$([ht,Vu,sn,Ct],AD),DE=$([ht,UK,jo,Mo,lx,ox,$u,ax,Ct],(e,t,n,r,s,o,u,f,d)=>{if(t!=null){var h=sa(e,d);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:d,categoricalDomain:o,duplicateDomain:s,isCategorical:h,niceTicks:f,range:u,realScaleType:n,scale:r}}}),PX=(e,t,n,r,s,o,u,f,d)=>{if(!(t==null||r==null)){var h=sa(e,d),{type:m,ticks:p,tickCount:v}=t,x=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,w=m==="category"&&r.bandwidth?r.bandwidth()/x:0;w=d==="angleAxis"&&o!=null&&o.length>=2?Wn(o[0]-o[1])*2*w:w;var _=p||s;return _?_.map((S,O)=>{var M=u?u.indexOf(S):S,j=r.map(M);return Le(j)?{index:O,coordinate:j+w,value:S,offset:w}:null}).filter(mn):h&&f?f.map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:S,index:O,offset:w}:null}).filter(mn):r.ticks?r.ticks(v).map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:S,index:O,offset:w}:null}).filter(mn):r.domain().map((S,O)=>{var M=r.map(S);return Le(M)?{coordinate:M+w,value:u?u[S]:S,index:O,offset:w}:null}).filter(mn)}},TD=$([ht,Bu,jo,Mo,ax,$u,lx,ox,Ct],PX),RX=(e,t,n,r,s,o,u)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var f=sa(e,u),{tickCount:d}=t,h=0;return h=u==="angleAxis"&&r?.length>=2?Wn(r[0]-r[1])*2*h:h,f&&o?o.map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:m,index:p,offset:h}:null}).filter(mn):n.ticks?n.ticks(d).map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:m,index:p,offset:h}:null}).filter(mn):n.domain().map((m,p)=>{var v=n.map(m);return Le(v)?{coordinate:v+h,value:s?s[m]:m,index:p,offset:h}:null}).filter(mn)}},OD=$([ht,Bu,Mo,$u,lx,ox,Ct],RX),ED=$(sn,Mo,(e,t)=>{if(!(e==null||t==null))return Pd(Pd({},e),{},{scale:t})}),LX=$([sn,jo,ix,xD],Jb),zX=$([LX],Mb),IX=$((e,t,n)=>ex(e,n),zX,(e,t)=>{if(!(e==null||t==null))return Pd(Pd({},e),{},{scale:t})}),BX=$([ht,oh,lh],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),UX=(e,t,n)=>{var r;return(r=e.renderedTicks[t])===null||r===void 0?void 0:r[n]};$([UX],e=>{if(!(!e||e.length===0))return t=>{var n,r=1/0,s=e[0];for(var o of e){var u=Math.abs(o.coordinate-t);ue.options.defaultTooltipEventType,MD=e=>e.options.validateTooltipEventTypes;function ND(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function ux(e,t){var n=jD(e),r=MD(e);return ND(t,n,r)}function VX(e){return ve(t=>ux(t,e))}var kD=(e,t)=>{var n,r=Number(t);if(!(oi(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},qX=e=>e.tooltip.settings,Zi={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},$X={itemInteraction:{click:Zi,hover:Zi},axisInteraction:{click:Zi,hover:Zi},keyboardInteraction:Zi,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}},CD=Qt({name:"tooltip",initialState:$X,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:Qe()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).tooltipItemPayloads.indexOf(n);s>-1&&(e.tooltipItemPayloads[s]=r)},prepare:Qe()},removeTooltipEntrySettings:{reducer(e,t){var n=Zn(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:Qe()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,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.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.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.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}}}),{addTooltipEntrySettings:FX,replaceTooltipEntrySettings:HX,removeTooltipEntrySettings:KX,setTooltipSettingsState:XX,setActiveMouseOverItemIndex:DD,mouseLeaveItem:YX,mouseLeaveChart:PD,setActiveClickItemIndex:GX,setMouseOverAxisIndex:RD,setMouseClickAxisIndex:WX,setSyncInteraction:r0,setKeyboardInteraction:Ld}=CD.actions,ZX=CD.reducer;function PE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Ef(e){for(var t=1;t{if(t==null)return Zi;var s=tY(e,t,n);if(s==null)return Zi;if(s.active)return s;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var o=e.settings.active===!0;if(nY(s)){if(o)return Ef(Ef({},s),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Ef(Ef({},Zi),{},{coordinate:s.coordinate})};function rY(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 iY(e,t){var n=rY(e),r=t[0],s=t[1];if(n===void 0)return!1;var o=Math.min(r,s),u=Math.max(r,s);return n>=o&&n<=u}function aY(e,t,n){if(n==null||t==null)return!0;var r=Ot(e,t);return r==null||!Er(n)?!0:iY(r,n)}var cx=(e,t,n,r)=>{var s=e?.index;if(s==null)return null;var o=Number(s);if(!Le(o))return s;var u=0,f=1/0;t.length>0&&(f=t.length-1);var d=Math.max(u,Math.min(o,f)),h=t[d];return h==null||aY(h,n,r)?String(d):null},zD=(e,t,n,r,s,o,u)=>{if(o!=null){var f=u[0],d=f?.getPosition(o);if(d!=null)return d;var h=s?.[Number(o)];if(h)return n==="horizontal"?{x:h.coordinate,y:(r.top+t)/2}:{x:(r.left+e)/2,y:h.coordinate}}},ID=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var s;if(n==="hover"?s=e.itemInteraction.hover.graphicalItemId:s=e.itemInteraction.click.graphicalItemId,e.syncInteraction.active&&s==null)return e.tooltipItemPayloads;if(s==null&&r!=null){var o=e.tooltipItemPayloads[0];return o!=null?[o]:[]}return e.tooltipItemPayloads.filter(u=>{var f;return((f=u.settings)===null||f===void 0?void 0:f.graphicalItemId)===s})},BD=e=>e.options.tooltipPayloadSearcher,No=e=>e.tooltip;function RE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function LE(e){for(var t=1;te(t)}function zE(e){if(typeof e=="string")return e}function dY(e){if(!(e==null||typeof e!="object")){var t="name"in e?uY(e.name):void 0,n="unit"in e?cY(e.unit):void 0,r="dataKey"in e?fY(e.dataKey):void 0,s="payload"in e?e.payload:void 0,o="color"in e?zE(e.color):void 0,u="fill"in e?zE(e.fill):void 0;return{name:t,unit:n,dataKey:r,payload:s,color:o,fill:u}}}function hY(e,t){return e??t}var UD=(e,t,n,r,s,o,u)=>{if(!(t==null||o==null)){var{chartData:f,computedData:d,dataStartIndex:h,dataEndIndex:m}=n,p=[];return e.reduce((v,x)=>{var w,{dataDefinedOnItem:_,settings:S}=x,O=hY(_,f),M=Array.isArray(O)?fC(O,h,m):O,j=(w=S?.dataKey)!==null&&w!==void 0?w:r,N=S?.nameKey,k;if(r&&Array.isArray(M)&&!Array.isArray(M[0])&&u==="axis"?k=bk(M,r,s):k=o(M,t,d,N),Array.isArray(k))k.forEach(L=>{var I,Y,te=dY(L),ie=te?.name,K=te?.dataKey,be=te?.payload,pe=LE(LE({},S),{},{name:ie,unit:te?.unit,color:(I=te?.color)!==null&&I!==void 0?I:S?.color,fill:(Y=te?.fill)!==null&&Y!==void 0?Y:S?.fill});v.push(CT({tooltipEntrySettings:pe,dataKey:K,payload:be,value:Ot(be,K),name:ie==null?void 0:String(ie)}))});else{var C;v.push(CT({tooltipEntrySettings:S,dataKey:j,payload:k,value:Ot(k,j),name:(C=Ot(k,N))!==null&&C!==void 0?C:S?.name}))}return v},p)}},fx=$([jt,Y3,_b],$3),mY=$([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),pY=$([Dt,To],G3),ko=$([mY,jt,pY],Z3,{memoizeOptions:{resultEqualityCheck:wh}}),gY=$([ko],e=>e.filter(jb)),yY=$([ko],eD,{memoizeOptions:{resultEqualityCheck:wh}}),Co=$([yY,oa],tD),vY=$([gY,oa,jt],u3),dx=$([Co,jt,ko],nD),VD=$([jt],nx),bY=$([jt],e=>e.allowDataOverflow),qD=$([VD,bY],FC),xY=$([ko],e=>e.filter(jb)),wY=$([vY,xY,ph,t3],iD),_Y=$([wY,oa,Dt,qD],aD),SY=$([ko],J3),AY=$([Co,jt,SY,rx,Dt],lD,{memoizeOptions:{resultEqualityCheck:xh}}),TY=$([uD,Dt,To],Eo),OY=$([TY,Dt],dD),EY=$([cD,Dt,To],Eo),jY=$([EY,Dt],hD),MY=$([fD,Dt,To],Eo),NY=$([MY,Dt],mD),kY=$([OY,NY,jY],Rd),CY=$([jt,VD,qD,_Y,AY,kY,ht,Dt],pD),Fu=$([jt,ht,Co,dx,ph,Dt,CY],gD),DY=$([Fu,jt,fx],yD),PY=$([jt,Fu,DY,Dt],vD),$D=e=>{var t=Dt(e),n=To(e),r=!1;return $u(e,t,n,r)},FD=$([jt,$D],gh),RY=$([jt,fx,PY,FD],Jb),HD=$([RY],Mb),LY=$([ht,dx,jt,Dt],AD),zY=$([ht,dx,jt,Dt],wD),IY=(e,t,n,r,s,o,u,f)=>{if(t){var{type:d}=t,h=sa(e,f);if(r){var m=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,p=d==="category"&&r.bandwidth?r.bandwidth()/m:0;return p=f==="angleAxis"&&s!=null&&s?.length>=2?Wn(s[0]-s[1])*2*p:p,h&&u?u.map((v,x)=>{var w=r.map(v);return Le(w)?{coordinate:w+p,value:v,index:x,offset:p}:null}).filter(mn):r.domain().map((v,x)=>{var w=r.map(v);return Le(w)?{coordinate:w+p,value:o?o[v]:v,index:x,offset:p}:null}).filter(mn)}}},vi=$([ht,jt,fx,HD,$D,LY,zY,Dt],IY),hx=$([jD,MD,qX],(e,t,n)=>ND(n.shared,e,t)),KD=e=>e.tooltip.settings.trigger,mx=e=>e.tooltip.settings.defaultIndex,Hu=$([No,hx,KD,mx],LD),vu=$([Hu,Co,qu,Fu],cx),XD=$([vi,vu],kD),BY=$([Hu],e=>{if(e)return e.dataKey}),UY=$([Hu],e=>{if(e)return e.graphicalItemId}),YD=$([No,hx,KD,mx],ID),VY=$([hi,mi,ht,Xt,vi,mx,YD],zD),qY=$([Hu,VY],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),$Y=$([Hu],e=>{var t;return(t=e?.active)!==null&&t!==void 0?t:!1}),FY=$([YD,vu,oa,qu,XD,BD,hx],UD);$([FY],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function IE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function BE(e){for(var t=1;tve(jt),GY=()=>{var e=YY(),t=ve(vi),n=ve(HD);return kT(!e||!n?void 0:BE(BE({},e),{},{scale:n}),t)};function UE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Hs(e){for(var t=1;t{var s=t.find(o=>o&&o.index===n);if(s){if(e==="horizontal")return{x:s.coordinate,y:r.relativeY};if(e==="vertical")return{x:r.relativeX,y:s.coordinate}}return{x:0,y:0}},eG=(e,t,n,r)=>{var s=t.find(h=>h&&h.index===n);if(s){if(e==="centric"){var o=s.coordinate,{radius:u}=r;return Hs(Hs(Hs({},r),Kt(r.cx,r.cy,u,o)),{},{angle:o,radius:u})}var f=s.coordinate,{angle:d}=r;return Hs(Hs(Hs({},r),Kt(r.cx,r.cy,f,d)),{},{angle:d,radius:f})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function tG(e,t){var{relativeX:n,relativeY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var GD=(e,t,n,r,s)=>{var o,u=(o=t?.length)!==null&&o!==void 0?o:0;if(u<=1||e==null)return 0;if(r==="angleAxis"&&s!=null&&Math.abs(Math.abs(s[1]-s[0])-360)<=1e-6)for(var f=0;f0?(d=n[f-1])===null||d===void 0?void 0:d.coordinate:(h=n[u-1])===null||h===void 0?void 0:h.coordinate,w=(m=n[f])===null||m===void 0?void 0:m.coordinate,_=f>=u-1?(p=n[0])===null||p===void 0?void 0:p.coordinate:(v=n[f+1])===null||v===void 0?void 0:v.coordinate,S=void 0;if(!(x==null||w==null||_==null))if(Wn(w-x)!==Wn(_-w)){var O=[];if(Wn(_-w)===Wn(s[1]-s[0])){S=_;var M=w+s[1]-s[0];O[0]=Math.min(M,(M+x)/2),O[1]=Math.max(M,(M+x)/2)}else{S=x;var j=_+s[1]-s[0];O[0]=Math.min(w,(j+w)/2),O[1]=Math.max(w,(j+w)/2)}var N=[Math.min(w,(S+w)/2),Math.max(w,(S+w)/2)];if(e>N[0]&&e<=N[1]||e>=O[0]&&e<=O[1]){var k;return(k=n[f])===null||k===void 0?void 0:k.index}}else{var C=Math.min(x,_),L=Math.max(x,_);if(e>(C+w)/2&&e<=(L+w)/2){var I;return(I=n[f])===null||I===void 0?void 0:I.index}}}else if(t)for(var Y=0;Y(te.coordinate+K.coordinate)/2||Y>0&&Y(te.coordinate+K.coordinate)/2&&e<=(te.coordinate+ie.coordinate)/2)return te.index}}return-1},nG=()=>ve(_b),px=(e,t)=>t,WD=(e,t,n)=>n,gx=(e,t,n,r)=>r,rG=$(vi,e=>Zd(e,t=>t.coordinate)),yx=$([No,px,WD,gx],LD),vx=$([yx,Co,qu,Fu],cx),iG=(e,t,n)=>{if(t!=null){var r=No(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},ZD=$([No,px,WD,gx],ID),zd=$([hi,mi,ht,Xt,vi,gx,ZD],zD),aG=$([yx,zd],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),QD=$([vi,vx],kD),sG=$([ZD,vx,oa,qu,QD,BD,px],UD),oG=$([yx,vx],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),lG=(e,t,n,r,s,o,u)=>{if(!(!e||!n||!r||!s)&&tG(e,u)){var f=tV(e,t),d=GD(f,o,s,n,r),h=JY(t,s,d,e);return{activeIndex:String(d),activeCoordinate:h}}},uG=(e,t,n,r,s,o,u)=>{if(!(!e||!r||!s||!o||!n)){var f=D$(e,n);if(f){var d=nV(f,t),h=GD(d,u,o,r,s),m=eG(t,o,h,f);return{activeIndex:String(h),activeCoordinate:m}}}},cG=(e,t,n,r,s,o,u,f)=>{if(!(!e||!t||!r||!s||!o))return t==="horizontal"||t==="vertical"?lG(e,t,r,s,o,u,f):uG(e,t,n,r,s,o,u)},fG=$(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}}),dG=$(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(pn)),n=Array.from(new Set(t));return n.sort((r,s)=>r-s)},{memoizeOptions:{resultEqualityCheck:nF}});function VE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function qE(e){for(var t=1;tqE(qE({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),gG)},vG=new Set(Object.values(pn));function bG(e){return vG.has(e)}var JD=Qt({name:"zIndex",initialState:yG,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:Qe()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!bG(n)&&delete e.zIndexMap[n])},prepare:Qe()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:s}=t.payload;e.zIndexMap[n]?s?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:s?void 0:r,panoramaElement:s?r:void 0}},prepare:Qe()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:Qe()}}}),{registerZIndexPortal:xG,unregisterZIndexPortal:wG,registerZIndexPortalElement:_G,unregisterZIndexPortalElement:SG}=JD.actions,AG=JD.reducer;function ca(e){var{zIndex:t,children:n}=e,r=PV(),s=r&&t!==void 0&&t!==0,o=Jt(),u=it();A.useLayoutEffect(()=>s?(u(xG({zIndex:t})),()=>{u(wG({zIndex:t}))}):_o,[u,t,s]);var f=ve(d=>fG(d,t,o));return s?f?G0.createPortal(n,f):null:n}function i0(){return i0=Object.assign?Object.assign.bind():function(e){for(var t=1;tA.useContext(e5),zy={exports:{}},FE;function CG(){return FE||(FE=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function s(d,h,m){this.fn=d,this.context=h,this.once=m||!1}function o(d,h,m,p,v){if(typeof m!="function")throw new TypeError("The listener must be a function");var x=new s(m,p||d,v),w=n?n+h:h;return d._events[w]?d._events[w].fn?d._events[w]=[d._events[w],x]:d._events[w].push(x):(d._events[w]=x,d._eventsCount++),d}function u(d,h){--d._eventsCount===0?d._events=new r:delete d._events[h]}function f(){this._events=new r,this._eventsCount=0}f.prototype.eventNames=function(){var h=[],m,p;if(this._eventsCount===0)return h;for(p in m=this._events)t.call(m,p)&&h.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?h.concat(Object.getOwnPropertySymbols(m)):h},f.prototype.listeners=function(h){var m=n?n+h:h,p=this._events[m];if(!p)return[];if(p.fn)return[p.fn];for(var v=0,x=p.length,w=new Array(x);v{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!oi(n))return e[n]}},LG={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},t5=Qt({name:"options",initialState:LG,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),zG=t5.reducer,{createEventEmitter:IG}=t5.actions;function BG(e){return e.tooltip.syncInteraction}var UG={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},n5=Qt({name:"chartData",initialState:UG,reducers:{setChartData(e,t){if(e.chartData=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{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:KE,setDataStartEndIndexes:VG,setComputedData:Mne}=n5.actions,qG=n5.reducer,$G=["x","y"];function XE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Ks(e){for(var t=1;td.rootProps.className);A.useEffect(()=>{if(e==null)return _o;var d=(h,m,p)=>{if(t!==p&&e===h){if(r==="index"){var v;if(u&&m!==null&&m!==void 0&&(v=m.payload)!==null&&v!==void 0&&v.coordinate&&m.payload.sourceViewBox){var x=m.payload.coordinate,{x:w,y:_}=x,S=XG(x,$G),{x:O,y:M,width:j,height:N}=m.payload.sourceViewBox,k=Ks(Ks({},S),{},{x:u.x+(j?(w-O)/j:0)*u.width,y:u.y+(N?(_-M)/N:0)*u.height});n(Ks(Ks({},m),{},{payload:Ks(Ks({},m.payload),{},{coordinate:k})}))}else n(m);return}if(s!=null){var C;if(typeof r=="function"){var L={activeTooltipIndex:m.payload.index==null?void 0:Number(m.payload.index),isTooltipActive:m.payload.active,activeIndex:m.payload.index==null?void 0:Number(m.payload.index),activeLabel:m.payload.label,activeDataKey:m.payload.dataKey,activeCoordinate:m.payload.coordinate},I=r(s,L);C=s[I]}else r==="value"&&(C=s.find(V=>String(V.value)===m.payload.label));var{coordinate:Y}=m.payload;if(C==null||m.payload.active===!1||Y==null||u==null){n(r0({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:te,y:ie}=Y,K=Math.min(te,u.x+u.width),be=Math.min(ie,u.y+u.height),pe={x:o==="horizontal"?C.coordinate:K,y:o==="horizontal"?be:C.coordinate},xe=r0({active:m.payload.active,coordinate:pe,dataKey:m.payload.dataKey,index:String(C.index),label:m.payload.label,sourceViewBox:m.payload.sourceViewBox,graphicalItemId:m.payload.graphicalItemId});n(xe)}}};return bu.on(a0,d),()=>{bu.off(a0,d)}},[f,n,t,e,r,s,o,u])}function WG(){var e=ve(Sb),t=ve(Ab),n=it();A.useEffect(()=>{if(e==null)return _o;var r=(s,o,u)=>{t!==u&&e===s&&n(VG(o))};return bu.on(HE,r),()=>{bu.off(HE,r)}},[n,t,e])}function ZG(){var e=it();A.useEffect(()=>{e(IG())},[e]),GG(),WG()}function QG(e,t,n,r,s,o){var u=ve(w=>iG(w,e,t)),f=ve(UY),d=ve(Ab),h=ve(Sb),m=ve(n3),p=ve(BG),v=p?.active,x=Nu();A.useEffect(()=>{if(!v&&h!=null&&d!=null){var w=r0({active:o,coordinate:n,dataKey:u,index:s,label:typeof r=="number"?String(r):r,sourceViewBox:x,graphicalItemId:f});bu.emit(a0,h,w,d)}},[v,n,u,f,s,r,d,h,m,o,x])}function YE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function GE(e){for(var t=1;t{L(XX({shared:M,trigger:j,axisId:C,active:s,defaultIndex:I}))},[L,M,j,C,s,I]);var Y=Nu(),te=PC(),ie=VX(M),{activeIndex:K,isActive:be}=(t=ve(_e=>oG(_e,ie,j,I)))!==null&&t!==void 0?t:{},pe=ve(_e=>sG(_e,ie,j,I)),xe=ve(_e=>QD(_e,ie,j,I)),V=ve(_e=>aG(_e,ie,j,I)),Q=pe,ne=kG(),le=(n=s??be)!==null&&n!==void 0?n:!1,[ue,P]=$7([Q,le]),H=ie==="axis"?xe:void 0;QG(ie,j,V,H,K,le);var ae=k??ne;if(ae==null||Y==null||ie==null)return null;var se=Q??WE;le||(se=WE),h&&se.length&&(se=p7(se.filter(_e=>_e.value!=null&&(_e.hide!==!0||r.includeHidden)),v,nW));var Z=se.length>0,oe=GE(GE({},r),{},{payload:se,label:H,active:le,activeIndex:K,coordinate:V,accessibilityLayer:te}),he=A.createElement(Dq,{allowEscapeViewBox:o,animationDuration:u,animationEasing:f,isAnimationActive:m,active:le,coordinate:V,hasPayload:Z,offset:p,position:x,reverseDirection:w,useTranslate3d:_,viewBox:Y,wrapperStyle:S,lastBoundingBox:ue,innerRef:P,hasPortalFromProps:!!k},rW(d,oe));return A.createElement(A.Fragment,null,G0.createPortal(he,ae),le&&A.createElement(NG,{cursor:O,tooltipEventType:ie,coordinate:V,payload:se,index:K}))}var bx=e=>null;bx.displayName="Cell";function sW(e,t,n){return(t=oW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oW(e){var t=lW(e,"string");return typeof t=="symbol"?t:t+""}function lW(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class uW{constructor(t){sW(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function ZE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function cW(e){for(var t=1;t{try{var n=document.getElementById(JE);n||(n=document.createElement("span"),n.setAttribute("id",JE),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,pW,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},Zl=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Pu.isSsr)return{width:0,height:0};if(!r5.enableCache)return ej(t,n);var r=gW(t,n),s=QE.get(r);if(s)return s;var o=ej(t,n);return QE.set(r,o),o},i5;function yW(e,t,n){return(t=vW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vW(e){var t=bW(e,"string");return typeof t=="symbol"?t:t+""}function bW(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var tj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,nj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,xW=/^(px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q)$/,wW=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,_W={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},SW=["cm","mm","pt","pc","in","Q","px"];function AW(e){return SW.includes(e)}var io="NaN";function TW(e,t){return e*_W[t]}class Ht{static parse(t){var n,[,r,s]=(n=wW.exec(t))!==null&&n!==void 0?n:[];return r==null?Ht.NaN:new Ht(parseFloat(r),s??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,oi(t)&&(this.unit=""),n!==""&&!xW.test(n)&&(this.num=NaN,this.unit=""),AW(n)&&(this.num=TW(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ht(NaN,""):new Ht(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return oi(this.num)}}i5=Ht;yW(Ht,"NaN",new i5(NaN,""));function a5(e){if(e==null||e.includes(io))return io;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,s,o]=(n=tj.exec(t))!==null&&n!==void 0?n:[],u=Ht.parse(r??""),f=Ht.parse(o??""),d=s==="*"?u.multiply(f):u.divide(f);if(d.isNaN())return io;t=t.replace(tj,d.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var h,[,m,p,v]=(h=nj.exec(t))!==null&&h!==void 0?h:[],x=Ht.parse(m??""),w=Ht.parse(v??""),_=p==="+"?x.add(w):x.subtract(w);if(_.isNaN())return io;t=t.replace(nj,_.toString())}return t}var rj=/\(([^()]*)\)/;function OW(e){for(var t=e,n;(n=rj.exec(t))!=null;){var[,r]=n;t=t.replace(rj,a5(r))}return t}function EW(e){var t=e.replace(/\s+/g,"");return t=OW(t),t=a5(t),t}function jW(e){try{return EW(e)}catch{return io}}function Iy(e){var t=jW(e.slice(5,-1));return t===io?"":t}var MW=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],NW=["dx","dy","angle","className","breakAll"];function s0(){return s0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var s=[];dt(t)||(n?s=t.toString().split(""):s=t.toString().split(s5));var o=s.map(f=>({word:f,width:Zl(f,r).width})),u=n?0:Zl(" ",r).width;return{wordsWithComputedWidth:o,spaceWidth:u}}catch{return null}};function l5(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}function CW(e){return dt(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}var u5=(e,t,n,r)=>e.reduce((s,o)=>{var{word:u,width:f}=o,d=s[s.length-1];if(d&&f!=null&&(t==null||r||d.width+f+ne.reduce((t,n)=>t.width>n.width?t:n),DW="…",aj=(e,t,n,r,s,o,u,f)=>{var d=e.slice(0,t),h=o5({breakAll:n,style:r,children:d+DW});if(!h)return[!1,[]];var m=u5(h.wordsWithComputedWidth,o,u,f),p=m.length>s||c5(m).width>Number(o);return[p,m]},PW=(e,t,n,r,s)=>{var{maxLines:o,children:u,style:f,breakAll:d}=e,h=ye(o),m=String(u),p=u5(t,r,n,s);if(!h||s)return p;var v=p.length>o||c5(p).width>Number(r);if(!v)return p;for(var x=0,w=m.length-1,_=0,S;x<=w&&_<=m.length-1;){var O=Math.floor((x+w)/2),M=O-1,[j,N]=aj(m,M,d,f,o,r,n,s),[k]=aj(m,O,d,f,o,r,n,s);if(!j&&!k&&(x=O+1),j&&k&&(w=O-1),!j&&k){S=N;break}_++}return S||p},sj=e=>{var t=dt(e)?[]:e.toString().split(s5);return[{words:t,width:void 0}]},RW=e=>{var{width:t,scaleToFit:n,children:r,style:s,breakAll:o,maxLines:u}=e;if((t||n)&&!Pu.isSsr){var f,d,h=o5({breakAll:o,children:r,style:s});if(h){var{wordsWithComputedWidth:m,spaceWidth:p}=h;f=m,d=p}else return sj(r);return PW({breakAll:o,children:r,maxLines:u,style:s},f,d,t,!!n)}return sj(r)},f5="#808080",LW={angle:0,breakAll:!1,capHeight:"0.71em",fill:f5,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},xx=A.forwardRef((e,t)=>{var n=vn(e,LW),{x:r,y:s,lineHeight:o,capHeight:u,fill:f,scaleToFit:d,textAnchor:h,verticalAnchor:m}=n,p=ij(n,MW),v=A.useMemo(()=>RW({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:d,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,d,p.style,p.width]),{dx:x,dy:w,angle:_,className:S,breakAll:O}=p,M=ij(p,NW);if(!kr(r)||!kr(s)||v.length===0)return null;var j=Number(r)+(ye(x)?x:0),N=Number(s)+(ye(w)?w:0);if(!Le(j)||!Le(N))return null;var k;switch(m){case"start":k=Iy("calc(".concat(u,")"));break;case"middle":k=Iy("calc(".concat((v.length-1)/2," * -").concat(o," + (").concat(u," / 2))"));break;default:k=Iy("calc(".concat(v.length-1," * -").concat(o,")"));break}var C=[],L=v[0];if(d&&L!=null){var I=L.width,{width:Y}=p;C.push("scale(".concat(ye(Y)&&ye(I)?Y/I:1,")"))}return _&&C.push("rotate(".concat(_,", ").concat(j,", ").concat(N,")")),C.length&&(M.transform=C.join(" ")),A.createElement("text",s0({},er(M),{ref:t,x:j,y:N,className:et("recharts-text",S),textAnchor:h,fill:f.includes("url")?f5:f}),v.map((te,ie)=>{var K=te.words.join(O?"":" ");return A.createElement("tspan",{x:j,dy:ie===0?k:o,key:"".concat(K,"-").concat(ie)},K)}))});xx.displayName="Text";function oj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function _r(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:s}=e,{x:o,y:u,height:f,upperWidth:d,lowerWidth:h}=db(t),m=o,p=o+(d-h)/2,v=(m+p)/2,x=(d+h)/2,w=m+d/2,_=f>=0?1:-1,S=_*r,O=_>0?"end":"start",M=_>0?"start":"end",j=d>=0?1:-1,N=j*r,k=j>0?"end":"start",C=j>0?"start":"end",L=s;if(n==="top"){var I={x:m+d/2,y:u-S,horizontalAnchor:"middle",verticalAnchor:O};return L&&(I.height=Math.max(u-L.y,0),I.width=d),I}if(n==="bottom"){var Y={x:p+h/2,y:u+f+S,horizontalAnchor:"middle",verticalAnchor:M};return L&&(Y.height=Math.max(L.y+L.height-(u+f),0),Y.width=h),Y}if(n==="left"){var te={x:v-N,y:u+f/2,horizontalAnchor:k,verticalAnchor:"middle"};return L&&(te.width=Math.max(te.x-L.x,0),te.height=f),te}if(n==="right"){var ie={x:v+x+N,y:u+f/2,horizontalAnchor:C,verticalAnchor:"middle"};return L&&(ie.width=Math.max(L.x+L.width-ie.x,0),ie.height=f),ie}var K=L?{width:x,height:f}:{};return n==="insideLeft"?_r({x:v+N,y:u+f/2,horizontalAnchor:C,verticalAnchor:"middle"},K):n==="insideRight"?_r({x:v+x-N,y:u+f/2,horizontalAnchor:k,verticalAnchor:"middle"},K):n==="insideTop"?_r({x:m+d/2,y:u+S,horizontalAnchor:"middle",verticalAnchor:M},K):n==="insideBottom"?_r({x:p+h/2,y:u+f-S,horizontalAnchor:"middle",verticalAnchor:O},K):n==="insideTopLeft"?_r({x:m+N,y:u+S,horizontalAnchor:C,verticalAnchor:M},K):n==="insideTopRight"?_r({x:m+d-N,y:u+S,horizontalAnchor:k,verticalAnchor:M},K):n==="insideBottomLeft"?_r({x:p+N,y:u+f-S,horizontalAnchor:C,verticalAnchor:O},K):n==="insideBottomRight"?_r({x:p+h-N,y:u+f-S,horizontalAnchor:k,verticalAnchor:O},K):n&&typeof n=="object"&&(ye(n.x)||Ga(n.x))&&(ye(n.y)||Ga(n.y))?_r({x:o+ra(n.x,x),y:u+ra(n.y,f),horizontalAnchor:"end",verticalAnchor:"end"},K):_r({x:w,y:u+f/2,horizontalAnchor:"middle",verticalAnchor:"middle"},K)},VW=["labelRef"],qW=["content"];function lj(e,t){if(e==null)return{};var n,r,s=$W(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:s,width:o,height:u,children:f}=e,d=A.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:s,width:o,height:u}),[t,n,r,s,o,u]);return A.createElement(d5.Provider,{value:d},f)},h5=()=>{var e=A.useContext(d5),t=Nu();return e||(t?db(t):void 0)},YW=A.createContext(null),GW=()=>{var e=A.useContext(YW),t=ve(o3);return e||t},WW=e=>{var{value:t,formatter:n}=e,r=dt(e.children)?t:e.children;return typeof n=="function"?n(r):r},wx=e=>e!=null&&typeof e=="function",ZW=(e,t)=>{var n=Wn(t-e),r=Math.min(Math.abs(t-e),360);return n*r},QW=(e,t,n,r,s)=>{var{offset:o,className:u}=e,{cx:f,cy:d,innerRadius:h,outerRadius:m,startAngle:p,endAngle:v,clockWise:x}=s,w=(h+m)/2,_=ZW(p,v),S=_>=0?1:-1,O,M;switch(t){case"insideStart":O=p+S*o,M=x;break;case"insideEnd":O=v-S*o,M=!x;break;case"end":O=v+S*o,M=x;break;default:throw new Error("Unsupported position ".concat(t))}M=_<=0?M:!M;var j=Kt(f,d,w,O),N=Kt(f,d,w,O+(M?1:-1)*359),k="M".concat(j.x,",").concat(j.y,` A`).concat(w,",").concat(w,",0,1,").concat(M?0:1,`, - `).concat(k.x,",").concat(k.y),C=dt(e.id)?au("recharts-radial-line-"):e.id;return A.createElement("text",ei({},r,{dominantBaseline:"central",className:et("recharts-radial-bar-label",u)}),A.createElement("defs",null,A.createElement("path",{id:C,d:N})),A.createElement("textPath",{xlinkHref:"#".concat(C)},n))},JW=(e,t,n)=>{var{cx:r,cy:s,innerRadius:o,outerRadius:u,startAngle:f,endAngle:d}=e,h=(f+d)/2;if(n==="outside"){var{x:m,y:p}=Kt(r,s,u+t,h);return{x:m,y:p,textAnchor:m>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"end"};var v=(o+u)/2,{x,y:w}=Kt(r,s,v,h);return{x,y:w,textAnchor:"middle",verticalAnchor:"middle"}},qf=e=>e!=null&&"cx"in e&&ye(e.cx),eZ={angle:0,offset:5,zIndex:pn.label,position:"middle",textBreakAll:!1};function tZ(e){if(!qf(e))return e;var{cx:t,cy:n,outerRadius:r}=e,s=r*2;return{x:t-r,y:n-r,width:s,upperWidth:s,lowerWidth:s,height:s}}function Wi(e){var t=vn(e,eZ),{viewBox:n,parentViewBox:r,position:s,value:o,children:u,content:f,className:d="",textBreakAll:h,labelRef:m}=t,p=GW(),v=d5(),x=s==="center"?v:p??v,w,_,S;n==null?w=x:qf(n)?w=n:w=db(n);var O=tZ(w);if(!w||dt(o)&&dt(u)&&!A.isValidElement(f)&&typeof f!="function")return null;var M=Kl(Kl({},t),{},{viewBox:w});if(A.isValidElement(f)){var{labelRef:j}=M,k=lj(M,VW);return A.cloneElement(f,k)}if(typeof f=="function"){var{content:N}=M,C=lj(M,qW);if(_=A.createElement(f,C),A.isValidElement(_))return _}else _=WW(t);var L=er(t);if(qf(w)){if(s==="insideStart"||s==="insideEnd"||s==="end")return QW(t,s,_,L,w);S=JW(w,t.offset,t.position)}else{if(!O)return null;var I=UW({viewBox:O,position:s,offset:t.offset,parentViewBox:qf(r)?void 0:r});S=Kl(Kl({x:I.x,y:I.y,textAnchor:I.horizontalAnchor,verticalAnchor:I.verticalAnchor},I.width!==void 0?{width:I.width}:{}),I.height!==void 0?{height:I.height}:{})}return A.createElement(ca,{zIndex:t.zIndex},A.createElement(xx,ei({ref:m,className:et("recharts-label",d)},L,S,{textAnchor:o5(L.textAnchor)?L.textAnchor:S.textAnchor,breakAll:h}),_))}Wi.displayName="Label";var nZ=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?A.createElement(Wi,ei({key:"label-implicit"},r)):Nr(e)?A.createElement(Wi,ei({key:"label-implicit",value:e},r)):A.isValidElement(e)?e.type===Wi?A.cloneElement(e,Kl({key:"label-implicit"},r)):A.createElement(Wi,ei({key:"label-implicit",content:e},r)):wx(e)?A.createElement(Wi,ei({key:"label-implicit",content:e},r)):e&&typeof e=="object"?A.createElement(Wi,ei({},e,{key:"label-implicit"},r)):null};function rZ(e){var{label:t,labelRef:n}=e,r=d5();return nZ(t,r,n)||null}var iZ=["valueAccessor"],aZ=["dataKey","clockWise","id","textBreakAll","zIndex"];function Id(){return Id=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(CW(t))return t},h5=A.createContext(void 0),lZ=h5.Provider,m5=A.createContext(void 0);m5.Provider;function uZ(){return A.useContext(h5)}function cZ(){return A.useContext(m5)}function $f(e){var{valueAccessor:t=oZ}=e,n=cj(e,iZ),{dataKey:r,clockWise:s,id:o,textBreakAll:u,zIndex:f}=n,d=cj(n,aZ),h=uZ(),m=cZ(),p=h||m;return!p||!p.length?null:A.createElement(ca,{zIndex:f??pn.label},A.createElement(hr,{className:"recharts-label-list"},p.map((v,x)=>{var w,_=dt(r)?t(v,x):Ot(v.payload,r),S=dt(o)?{}:{id:"".concat(o,"-").concat(x)};return A.createElement(Wi,Id({key:"label-".concat(x)},er(v),d,S,{fill:(w=n.fill)!==null&&w!==void 0?w:v.fill,parentViewBox:v.parentViewBox,value:_,textBreakAll:u,viewBox:v.viewBox,index:x,zIndex:0}))})))}$f.displayName="LabelList";function fZ(e){var{label:t}=e;return t?t===!0?A.createElement($f,{key:"labelList-implicit"}):A.isValidElement(t)||wx(t)?A.createElement($f,{key:"labelList-implicit",content:t}):typeof t=="object"?A.createElement($f,Id({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}var dZ={radiusAxis:{},angleAxis:{}},p5=Qt({name:"polarAxis",initialState:dZ,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:kne,removeRadiusAxis:Nne,addAngleAxis:Cne,removeAngleAxis:Dne}=p5.actions,hZ=p5.reducer;function mZ(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var By={exports:{}},He={};var fj;function pZ(){if(fj)return He;fj=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),v=Symbol.for("react.view_transition"),x=Symbol.for("react.client.reference");function w(_){if(typeof _=="object"&&_!==null){var S=_.$$typeof;switch(S){case e:switch(_=_.type,_){case n:case s:case r:case d:case h:case v:return _;default:switch(_=_&&_.$$typeof,_){case u:case f:case p:case m:return _;case o:return _;default:return S}}case t:return S}}}return He.ContextConsumer=o,He.ContextProvider=u,He.Element=e,He.ForwardRef=f,He.Fragment=n,He.Lazy=p,He.Memo=m,He.Portal=t,He.Profiler=s,He.StrictMode=r,He.Suspense=d,He.SuspenseList=h,He.isContextConsumer=function(_){return w(_)===o},He.isContextProvider=function(_){return w(_)===u},He.isElement=function(_){return typeof _=="object"&&_!==null&&_.$$typeof===e},He.isForwardRef=function(_){return w(_)===f},He.isFragment=function(_){return w(_)===n},He.isLazy=function(_){return w(_)===p},He.isMemo=function(_){return w(_)===m},He.isPortal=function(_){return w(_)===t},He.isProfiler=function(_){return w(_)===s},He.isStrictMode=function(_){return w(_)===r},He.isSuspense=function(_){return w(_)===d},He.isSuspenseList=function(_){return w(_)===h},He.isValidElementType=function(_){return typeof _=="string"||typeof _=="function"||_===n||_===s||_===r||_===d||_===h||typeof _=="object"&&_!==null&&(_.$$typeof===p||_.$$typeof===m||_.$$typeof===u||_.$$typeof===o||_.$$typeof===f||_.$$typeof===x||_.getModuleId!==void 0)},He.typeOf=w,He}var dj;function gZ(){return dj||(dj=1,By.exports=pZ()),By.exports}var yZ=gZ(),hj=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",mj=null,Uy=null,g5=e=>{if(e===mj&&Array.isArray(Uy))return Uy;var t=[];return A.Children.forEach(e,n=>{dt(n)||(yZ.isFragment(n)?t=t.concat(g5(n.props.children)):t.push(n))}),Uy=t,mj=e,t};function vZ(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(s=>hj(s)):r=[hj(t)],g5(e).forEach(s=>{var o=co(s,"type.displayName")||co(s,"type.name");o&&r.indexOf(o)!==-1&&n.push(s)}),n}var Vy={},pj;function bZ(){return pj||(pj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const s=n[Symbol.toStringTag];return s==null||!Object.getOwnPropertyDescriptor(n,Symbol.toStringTag)?.writable?!1:n.toString()===`[object ${s}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(Vy)),Vy}var qy,gj;function xZ(){return gj||(gj=1,qy=bZ().isPlainObject),qy}var wZ=xZ();const _Z=ia(wZ);var yj,vj,bj,xj,wj;function _j(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sj(e){for(var t=1;t{var o=n-r,u;return u=ut(yj||(yj=zl(["M ",",",""])),e,t),u+=ut(vj||(vj=zl(["L ",",",""])),e+n,t),u+=ut(bj||(bj=zl(["L ",",",""])),e+n-o/2,t+s),u+=ut(xj||(xj=zl(["L ",",",""])),e+n-o/2-r,t+s),u+=ut(wj||(wj=zl(["L ",","," Z"])),e,t),u},OZ={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},EZ=e=>{var t=vn(e,OZ),{x:n,y:r,upperWidth:s,lowerWidth:o,height:u,className:f}=t,{animationEasing:d,animationDuration:h,animationBegin:m,isUpdateAnimationActive:p}=t,v=A.useRef(null),[x,w]=A.useState(-1),_=A.useRef(s),S=A.useRef(o),O=A.useRef(u),M=A.useRef(n),j=A.useRef(r),k=yb(e,"trapezoid-");if(A.useEffect(()=>{if(v.current&&v.current.getTotalLength)try{var pe=v.current.getTotalLength();pe&&w(pe)}catch{}},[]),n!==+n||r!==+r||s!==+s||o!==+o||u!==+u||s===0&&o===0||u===0)return null;var N=et("recharts-trapezoid",f);if(!p)return A.createElement("g",null,A.createElement("path",Bd({},er(t),{className:N,d:Aj(n,r,s,o,u)})));var C=_.current,L=S.current,I=O.current,Y=M.current,te=j.current,ie="0px ".concat(x===-1?1:x,"px"),K="".concat(x,"px ").concat(x,"px"),be=PC(["strokeDasharray"],h,d);return A.createElement(gb,{animationId:k,key:k,canBegin:x>0,duration:h,easing:d,isActive:p,begin:m},pe=>{var xe=kn(C,s,pe),V=kn(L,o,pe),Q=kn(I,u,pe),ne=kn(Y,n,pe),le=kn(te,r,pe);v.current&&(_.current=xe,S.current=V,O.current=Q,M.current=ne,j.current=le);var ue=pe>0?{transition:be,strokeDasharray:K}:{strokeDasharray:ie};return A.createElement("path",Bd({},er(t),{className:N,d:Aj(ne,le,xe,V,Q),ref:v,style:Sj(Sj({},ue),t.style)}))})},jZ=["option","shapeType","activeClassName","inActiveClassName"];function MZ(e,t){if(e==null)return{};var n,r,s=kZ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var r=it();return(s,o)=>u=>{e?.(s,o,u),r(CD({activeIndex:String(o),activeDataKey:t,activeCoordinate:s.tooltipPosition,activeGraphicalItemId:n}))}},IZ=e=>{var t=it();return(n,r)=>s=>{e?.(n,r,s),t(YX())}},BZ=(e,t,n)=>{var r=it();return(s,o)=>u=>{e?.(s,o,u),r(GX({activeIndex:String(o),activeDataKey:t,activeCoordinate:s.tooltipPosition,activeGraphicalItemId:n}))}};function UZ(e){var{tooltipEntrySettings:t}=e,n=it(),r=Jt(),s=A.useRef(null);return A.useLayoutEffect(()=>{r||(s.current===null?n(FX(t)):s.current!==t&&n(HX({prev:s.current,next:t})),s.current=t)},[t,n,r]),A.useLayoutEffect(()=>()=>{s.current&&(n(KX(s.current)),s.current=null)},[n]),null}function VZ(e){var{legendPayload:t}=e,n=it(),r=Jt(),s=A.useRef(null);return A.useLayoutEffect(()=>{r||(s.current===null?n(XV(t)):s.current!==t&&n(YV({prev:s.current,next:t})),s.current=t)},[n,r,t]),A.useLayoutEffect(()=>()=>{s.current&&(n(GV(s.current)),s.current=null)},[n]),null}var $y,qZ=()=>{var[e]=A.useState(()=>au("uid-"));return e},$Z=($y=TR.useId)!==null&&$y!==void 0?$y:qZ;function FZ(e,t){var n=$Z();return t||(e?"".concat(e,"-").concat(n):n)}var HZ=A.createContext(void 0),KZ=e=>{var{id:t,type:n,children:r}=e,s=FZ("recharts-".concat(n),t);return A.createElement(HZ.Provider,{value:s},r(s))},XZ={cartesianItems:[],polarItems:[]},y5=Qt({name:"graphicalItems",initialState:XZ,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:Qe()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).cartesianItems.indexOf(n);s>-1&&(e.cartesianItems[s]=r)},prepare:Qe()},removeCartesianGraphicalItem:{reducer(e,t){var n=Zn(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:Qe()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:Qe()},removePolarGraphicalItem:{reducer(e,t){var n=Zn(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:Qe()},replacePolarGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).polarItems.indexOf(n);s>-1&&(e.polarItems[s]=r)},prepare:Qe()}}}),{addCartesianGraphicalItem:YZ,replaceCartesianGraphicalItem:GZ,removeCartesianGraphicalItem:WZ,addPolarGraphicalItem:Pne,removePolarGraphicalItem:Rne,replacePolarGraphicalItem:Lne}=y5.actions,ZZ=y5.reducer,QZ=e=>{var t=it(),n=A.useRef(null);return A.useLayoutEffect(()=>{n.current===null?t(YZ(e)):n.current!==e&&t(GZ({prev:n.current,next:e})),n.current=e},[t,e]),A.useLayoutEffect(()=>()=>{n.current&&(t(WZ(n.current)),n.current=null)},[t]),null},JZ=A.memo(QZ);function jj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Mj(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),hQ=$([dQ,hi,mi],(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)}}),mQ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:v5,n=Jt(),r=ve(s=>Mo(s,"xAxis",t,n));return r?.map},pQ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:v5,n=Jt(),r=ve(s=>Mo(s,"yAxis",t,n));return r?.map},x5=()=>ve(hQ),gQ=e=>{var{chartData:t}=e,n=it(),r=Jt();return A.useEffect(()=>r?()=>{}:(n(KE(t)),()=>{n(KE(void 0))}),[t,n,r]),null},kj={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},w5=Qt({name:"brush",initialState:kj,reducers:{setBrushSettings(e,t){return t.payload==null?kj:t.payload}}}),{setBrushSettings:Une}=w5.actions,yQ=w5.reducer;function vQ(e){return(e%180+180)%180}var bQ=function(t){var{width:n,height:r}=t,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=vQ(s),u=o*Math.PI/180,f=Math.atan(r/n),d=u>f&&u{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=Zn(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=Zn(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=Zn(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:Vne,removeDot:qne,addArea:$ne,removeArea:Fne,addLine:Hne,removeLine:Kne}=_5.actions,wQ=_5.reducer,_Q=A.createContext(void 0),SQ=e=>{var{children:t}=e,[n]=A.useState("".concat(au("recharts"),"-clip")),r=x5();if(r==null)return null;var{x:s,y:o,width:u,height:f}=r;return A.createElement(_Q.Provider,{value:n},A.createElement("defs",null,A.createElement("clipPath",{id:n},A.createElement("rect",{x:s,y:o,height:f,width:u}))),t)};function S5(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*s)return!1;var o=n();return e*(t-e*o/2-r)>=0&&e*(t+e*o/2-s)<=0}function OQ(e,t){return S5(e,t+1)}function EQ(e,t,n,r,s){for(var o=(r||[]).slice(),{start:u,end:f}=t,d=0,h=1,m=u,p=function(){var w=r?.[d];if(w===void 0)return{v:S5(r,h)};var _=d,S,O=()=>(S===void 0&&(S=n(w,_)),S),M=w.coordinate,j=d===0||xu(e,M,O,m,f);j||(d=0,m=u,h+=1),j&&(m=M+e*(O()/2+s),d+=h)},v;h<=o.length;)if(v=p(),v)return v.v;return[]}function jQ(e,t,n,r,s){var o=(r||[]).slice(),u=o.length;if(u===0)return[];for(var{start:f,end:d}=t,h=1;h<=u;h++){for(var m=(u-1)%h,p=f,v=!0,x=function(){var k=r[_];if(k==null)return 0;var N=_,C,L=()=>(C===void 0&&(C=n(k,N)),C),I=k.coordinate,Y=_===m||xu(e,I,L,p,d);if(!Y)return v=!1,1;Y&&(p=I+e*(L()/2+s))},w,_=m;_(_===void 0&&(_=n(x,v)),_);if(v===u-1){var O=e*(w.coordinate+e*S()/2-d);o[v]=w=Gt(Gt({},w),{},{tickCoord:O>0?w.coordinate-O*e:w.coordinate})}else o[v]=w=Gt(Gt({},w),{},{tickCoord:w.coordinate});if(w.tickCoord!=null){var M=xu(e,w.tickCoord,S,f,d);M&&(d=w.tickCoord-e*(S()/2+s),o[v]=Gt(Gt({},w),{},{isShow:!0}))}},m=u-1;m>=0;m--)h(m);return o}function DQ(e,t,n,r,s,o){var u=(r||[]).slice(),f=u.length,{start:d,end:h}=t;if(o){var m=r[f-1];if(m!=null){var p=n(m,f-1),v=e*(m.coordinate+e*p/2-h);if(u[f-1]=m=Gt(Gt({},m),{},{tickCoord:v>0?m.coordinate-v*e:m.coordinate}),m.tickCoord!=null){var x=xu(e,m.tickCoord,()=>p,d,h);x&&(h=m.tickCoord-e*(p/2+s),u[f-1]=Gt(Gt({},m),{},{isShow:!0}))}}}for(var w=o?f-1:f,_=function(M){var j=u[M];if(j==null)return 1;var k=j,N,C=()=>(N===void 0&&(N=n(j,M)),N);if(M===0){var L=e*(k.coordinate-e*C()/2-d);u[M]=k=Gt(Gt({},k),{},{tickCoord:L<0?k.coordinate-L*e:k.coordinate})}else u[M]=k=Gt(Gt({},k),{},{tickCoord:k.coordinate});if(k.tickCoord!=null){var I=xu(e,k.tickCoord,C,d,h);I&&(d=k.tickCoord+e*(C()/2+s),u[M]=Gt(Gt({},k),{},{isShow:!0}))}},S=0;S{var L=typeof h=="function"?h(N.value,C):N.value;return w==="width"?AQ(Zl(L,{fontSize:t,letterSpacing:n}),_,p):Zl(L,{fontSize:t,letterSpacing:n})[w]},O=s[0],M=s[1],j=s.length>=2&&O!=null&&M!=null?Wn(M.coordinate-O.coordinate):1,k=TQ(o,j,w);return d==="equidistantPreserveStart"?EQ(j,k,S,s,u):d==="equidistantPreserveEnd"?jQ(j,k,S,s,u):(d==="preserveStart"||d==="preserveStartEnd"?x=DQ(j,k,S,s,u,d==="preserveStartEnd"):x=CQ(j,k,S,s,u),x.filter(N=>N.isShow))}var PQ=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:s=0,tickMargin:o=0}=e,u=0;if(t){Array.from(t).forEach(m=>{if(m){var p=m.getBoundingClientRect();p.width>u&&(u=p.width)}});var f=n?n.getBoundingClientRect().width:0,d=s+o,h=u+d+f+(n?r:0);return Math.round(h)}return 0},RQ={xAxis:{},yAxis:{}},A5=Qt({name:"renderedTicks",initialState:RQ,reducers:{setRenderedTicks:(e,t)=>{var{axisType:n,axisId:r,ticks:s}=t.payload;e[n][r]=s},removeRenderedTicks:(e,t)=>{var{axisType:n,axisId:r}=t.payload;delete e[n][r]}}}),{setRenderedTicks:LQ,removeRenderedTicks:zQ}=A5.actions,IQ=A5.reducer,BQ=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function UQ(e,t){if(e==null)return{};var n,r,s=VQ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(r==null||n==null)return _o;var o=t.map(u=>({value:u.value,coordinate:u.coordinate,offset:u.offset,index:u.index}));return s(LQ({ticks:o,axisId:r,axisType:n})),()=>{s(zQ({axisId:r,axisType:n}))}},[s,t,r,n]),null}var ZQ=A.forwardRef((e,t)=>{var{ticks:n=[],tick:r,tickLine:s,stroke:o,tickFormatter:u,unit:f,padding:d,tickTextProps:h,orientation:m,mirror:p,x:v,y:x,width:w,height:_,tickSize:S,tickMargin:O,fontSize:M,letterSpacing:j,getTicksConfig:k,events:N,axisType:C,axisId:L}=e,I=_x(ot(ot({},k),{},{ticks:n}),M,j),Y=kr(k),te=Y0(r),ie=o5(Y.textAnchor)?Y.textAnchor:XQ(m,p),K=YQ(m,p),be={};typeof s=="object"&&(be=s);var pe=ot(ot({},Y),{},{fill:"none"},be),xe=I.map(ne=>ot({entry:ne},KQ(ne,v,x,w,_,m,S,p,O))),V=xe.map(ne=>{var{entry:le,line:ue}=ne;return A.createElement(hr,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(le.value,"-").concat(le.coordinate,"-").concat(le.tickCoord)},s&&A.createElement("line",es({},pe,ue,{className:et("recharts-cartesian-axis-tick-line",co(s,"className"))})))}),Q=xe.map((ne,le)=>{var ue,P,{entry:H,tick:ae}=ne,se=ot(ot(ot(ot({verticalAnchor:K},Y),{},{textAnchor:ie,stroke:"none",fill:o},ae),{},{index:le,payload:H,visibleTicksCount:I.length,tickFormatter:u,padding:d},h),{},{angle:(ue=(P=h?.angle)!==null&&P!==void 0?P:Y.angle)!==null&&ue!==void 0?ue:0}),Z=ot(ot({},se),te);return A.createElement(hr,es({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(H.value,"-").concat(H.coordinate,"-").concat(H.tickCoord)},wN(N,H,le)),r&&A.createElement(GQ,{option:r,tickProps:Z,value:"".concat(typeof u=="function"?u(H.value,le):H.value).concat(f||"")}))});return A.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(C,"-ticks")},A.createElement(WQ,{ticks:I,axisId:L,axisType:C}),Q.length>0&&A.createElement(ca,{zIndex:pn.label},A.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(C,"-tick-labels"),ref:t},Q)),V.length>0&&A.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(C,"-tick-lines")},V))}),QQ=A.forwardRef((e,t)=>{var{axisLine:n,width:r,height:s,className:o,hide:u,ticks:f,axisType:d,axisId:h}=e,m=UQ(e,BQ),[p,v]=A.useState(""),[x,w]=A.useState(""),_=A.useRef(null);A.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var O;return PQ({ticks:_.current,label:(O=e.labelRef)===null||O===void 0?void 0:O.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=A.useCallback(O=>{if(O){var M=O.getElementsByClassName("recharts-cartesian-axis-tick-value");_.current=M;var j=M[0];if(j){var k=window.getComputedStyle(j),N=k.fontSize,C=k.letterSpacing;(N!==p||C!==x)&&(v(N),w(C))}}},[p,x]);return u||r!=null&&r<=0||s!=null&&s<=0?null:A.createElement(ca,{zIndex:e.zIndex},A.createElement(hr,{className:et("recharts-cartesian-axis",o)},A.createElement(HQ,{x:e.x,y:e.y,width:r,height:s,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:kr(e)}),A.createElement(ZQ,{ref:S,axisType:d,events:m,fontSize:p,getTicksConfig:e,height:e.height,letterSpacing:x,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:f,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:h}),A.createElement(XW,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},A.createElement(rZ,{label:e.label,labelRef:e.labelRef}),e.children)))}),Sx=A.forwardRef((e,t)=>{var n=vn(e,ii);return A.createElement(QQ,es({},n,{ref:t}))});Sx.displayName="CartesianAxis";var JQ=["x1","y1","x2","y2","key"],eJ=["offset"],tJ=["xAxisId","yAxisId"],nJ=["xAxisId","yAxisId"];function Dj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Wt(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:s,width:o,height:u,ry:f}=e;return A.createElement("rect",{x:r,y:s,ry:f,width:o,height:u,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function T5(e){var{option:t,lineItemProps:n}=e,r;if(A.isValidElement(t))r=A.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var s,{x1:o,y1:u,x2:f,y2:d,key:h}=n,m=Vd(n,JQ),p=(s=kr(m))!==null&&s!==void 0?s:{},{offset:v}=p,x=Vd(p,eJ);r=A.createElement("line",$a({},x,{x1:o,y1:u,x2:f,y2:d,fill:"none",key:h}))}return r}function lJ(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:s}=e;if(!r||!s||!s.length)return null;var{xAxisId:o,yAxisId:u}=e,f=Vd(e,tJ),d=s.map((h,m)=>{var p=Wt(Wt({},f),{},{x1:t,y1:h,x2:t+n,y2:h,key:"line-".concat(m),index:m});return A.createElement(T5,{key:"line-".concat(m),option:r,lineItemProps:p})});return A.createElement("g",{className:"recharts-cartesian-grid-horizontal"},d)}function uJ(e){var{y:t,height:n,vertical:r=!0,verticalPoints:s}=e;if(!r||!s||!s.length)return null;var{xAxisId:o,yAxisId:u}=e,f=Vd(e,nJ),d=s.map((h,m)=>{var p=Wt(Wt({},f),{},{x1:h,y1:t,x2:h,y2:t+n,key:"line-".concat(m),index:m});return A.createElement(T5,{option:r,lineItemProps:p,key:"line-".concat(m)})});return A.createElement("g",{className:"recharts-cartesian-grid-vertical"},d)}function cJ(e){var{horizontalFill:t,fillOpacity:n,x:r,y:s,width:o,height:u,horizontalPoints:f,horizontal:d=!0}=e;if(!d||!t||!t.length||f==null)return null;var h=f.map(p=>Math.round(p+s-s)).sort((p,v)=>p-v);s!==h[0]&&h.unshift(0);var m=h.map((p,v)=>{var x=h[v+1],w=x==null,_=w?s+u-p:x-p;if(_<=0)return null;var S=v%t.length;return A.createElement("rect",{key:"react-".concat(v),y:p,x:r,height:_,width:o,stroke:"none",fill:t[S],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return A.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},m)}function fJ(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:s,y:o,width:u,height:f,verticalPoints:d}=e;if(!t||!n||!n.length)return null;var h=d.map(p=>Math.round(p+s-s)).sort((p,v)=>p-v);s!==h[0]&&h.unshift(0);var m=h.map((p,v)=>{var x=h[v+1],w=x==null,_=w?s+u-p:x-p;if(_<=0)return null;var S=v%n.length;return A.createElement("rect",{key:"react-".concat(v),x:p,y:o,width:_,height:f,stroke:"none",fill:n[S],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return A.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},m)}var dJ=(e,t)=>{var{xAxis:n,width:r,height:s,offset:o}=e;return fC(_x(Wt(Wt(Wt({},ii),n),{},{ticks:dC(n),viewBox:{x:0,y:0,width:r,height:s}})),o.left,o.left+o.width,t)},hJ=(e,t)=>{var{yAxis:n,width:r,height:s,offset:o}=e;return fC(_x(Wt(Wt(Wt({},ii),n),{},{ticks:dC(n),viewBox:{x:0,y:0,width:r,height:s}})),o.top,o.top+o.height,t)},mJ={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:pn.grid};function O5(e){var t=wC(),n=_C(),r=xC(),s=Wt(Wt({},vn(e,mJ)),{},{x:ye(e.x)?e.x:r.left,y:ye(e.y)?e.y:r.top,width:ye(e.width)?e.width:r.width,height:ye(e.height)?e.height:r.height}),{xAxisId:o,yAxisId:u,x:f,y:d,width:h,height:m,syncWithTicks:p,horizontalValues:v,verticalValues:x}=s,w=Jt(),_=ve(Y=>DE(Y,"xAxis",o,w)),S=ve(Y=>DE(Y,"yAxis",u,w));if(!Cr(h)||!Cr(m)||!ye(f)||!ye(d))return null;var O=s.verticalCoordinatesGenerator||dJ,M=s.horizontalCoordinatesGenerator||hJ,{horizontalPoints:j,verticalPoints:k}=s;if((!j||!j.length)&&typeof M=="function"){var N=v&&v.length,C=M({yAxis:S?Wt(Wt({},S),{},{ticks:N?v:S.ticks}):void 0,width:t??h,height:n??m,offset:r},N?!0:p);hd(Array.isArray(C),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof C,"]")),Array.isArray(C)&&(j=C)}if((!k||!k.length)&&typeof O=="function"){var L=x&&x.length,I=O({xAxis:_?Wt(Wt({},_),{},{ticks:L?x:_.ticks}):void 0,width:t??h,height:n??m,offset:r},L?!0:p);hd(Array.isArray(I),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof I,"]")),Array.isArray(I)&&(k=I)}return A.createElement(ca,{zIndex:s.zIndex},A.createElement("g",{className:"recharts-cartesian-grid"},A.createElement(oJ,{fill:s.fill,fillOpacity:s.fillOpacity,x:s.x,y:s.y,width:s.width,height:s.height,ry:s.ry}),A.createElement(cJ,$a({},s,{horizontalPoints:j})),A.createElement(fJ,$a({},s,{verticalPoints:k})),A.createElement(lJ,$a({},s,{offset:r,horizontalPoints:j,xAxis:_,yAxis:S})),A.createElement(uJ,$a({},s,{offset:r,verticalPoints:k,xAxis:_,yAxis:S}))))}O5.displayName="CartesianGrid";var pJ={},E5=Qt({name:"errorBars",initialState:pJ,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:s}=t.payload;e[n]&&(e[n]=e[n].map(o=>o.dataKey===r.dataKey&&o.direction===r.direction?s:o))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(s=>s.dataKey!==r.dataKey||s.direction!==r.direction))}}}),{addErrorBar:Xne,replaceErrorBar:Yne,removeErrorBar:Gne}=E5.actions,gJ=E5.reducer,yJ=["children"];function vJ(e,t){if(e==null)return{};var n,r,s=bJ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},wJ=A.createContext(xJ);function _J(e){var{children:t}=e,n=vJ(e,yJ);return A.createElement(wJ.Provider,{value:n},t)}function j5(e,t){var n,r,s=ve(h=>gi(h,e)),o=ve(h=>yi(h,t)),u=(n=s?.allowDataOverflow)!==null&&n!==void 0?n:wt.allowDataOverflow,f=(r=o?.allowDataOverflow)!==null&&r!==void 0?r:_t.allowDataOverflow,d=u||f;return{needClip:d,needClipX:u,needClipY:f}}function SJ(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,s=x5(),{needClipX:o,needClipY:u,needClip:f}=j5(t,n);if(!f||!s)return null;var{x:d,y:h,width:m,height:p}=s;return A.createElement("clipPath",{id:"clipPath-".concat(r)},A.createElement("rect",{x:o?d:d-m/2,y:u?h:h-p/2,width:o?m:m*2,height:u?p:p*2}))}var AJ=["option","isActive"];function Ql(){return Ql=Object.assign?Object.assign.bind():function(e){for(var t=1;tOD(e,"xAxis",t,u),MJ=(e,t,n,r,s,o,u)=>TD(e,"xAxis",t,u),kJ=(e,t,n,r,s,o,u)=>OD(e,"yAxis",n,u),NJ=(e,t,n,r,s,o,u)=>TD(e,"yAxis",n,u),CJ=(e,t,n,r)=>IX(e,"zAxis",r,!1),DJ=(e,t,n,r,s)=>s,PJ=(e,t,n,r,s,o)=>o,RJ=(e,t,n,r,s,o,u)=>vb(e,void 0,void 0,u),LJ=$([G3,DJ],(e,t)=>e.filter(n=>n.type==="scatter").find(n=>n.id===t)),zJ=$([RJ,jJ,MJ,kJ,NJ,CJ,LJ,PJ],(e,t,n,r,s,o,u,f)=>{var{chartData:d,dataStartIndex:h,dataEndIndex:m}=e;if(u!=null){var p;if(u?.data!=null&&u.data.length>0?p=u.data:p=d?.slice(h,m+1),!(p==null||t==null||r==null||n==null||s==null||n?.length===0||s?.length===0))return ZJ({displayedData:p,xAxis:t,yAxis:r,zAxis:o,scatterSettings:u,xAxisTicks:n,yAxisTicks:s,cells:f})}}),IJ=["id"],BJ=["onMouseEnter","onClick","onMouseLeave"],UJ=["animationBegin","animationDuration","animationEasing","hide","isAnimationActive","legendType","lineJointType","lineType","shape","xAxisId","yAxisId","zAxisId"];function o0(e,t){if(e==null)return{};var n,r,s=VJ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{dataKey:t,name:n,fill:r,legendType:s,hide:o}=e;return[{inactive:o,dataKey:t,type:s,color:r,value:hC(n,t),payload:e}]},KJ=A.memo(e=>{var{dataKey:t,points:n,stroke:r,strokeWidth:s,fill:o,name:u,hide:f,tooltipType:d,id:h}=e,m={dataDefinedOnItem:n?.map(p=>p.tooltipPayload),getPosition:p=>{var v;return n==null||(v=n[Number(p)])===null||v===void 0?void 0:v.tooltipPosition},settings:{stroke:r,strokeWidth:s,fill:o,nameKey:void 0,dataKey:t,name:hC(u,t),hide:f,type:d,color:o,unit:"",graphicalItemId:h}};return A.createElement(UZ,{tooltipEntrySettings:m})});function XJ(e){var{points:t,props:n}=e,{line:r,lineType:s,lineJointType:o}=n;if(!r)return null;var u=kr(n),f=Y0(r),d,h;if(s==="joint")d=t.map(S=>{var O,M;return{x:(O=S.cx)!==null&&O!==void 0?O:null,y:(M=S.cy)!==null&&M!==void 0?M:null}});else if(s==="fitting"){var{xmin:m,xmax:p,a:v,b:x}=N9(t),w=S=>v*S+x;d=[{x:m,y:w(m)},{x:p,y:w(p)}]}var _=yn(yn(yn({},u),{},{fill:"none",stroke:u&&u.fill},f),{},{points:d});return A.isValidElement(r)?h=A.cloneElement(r,_):typeof r=="function"?h=r(_):h=A.createElement(pb,ts({},_,{type:o})),A.createElement(hr,{className:"recharts-scatter-line",key:"recharts-scatter-line"},h)}function YJ(e){var{showLabels:t,points:n,children:r}=e,s=ku(),o=A.useMemo(()=>n?.map(u=>{var f,d,h={x:(f=u.x)!==null&&f!==void 0?f:0,y:(d=u.y)!==null&&d!==void 0?d:0,width:u.width,height:u.height,lowerWidth:u.width,upperWidth:u.width};return yn(yn({},h),{},{value:void 0,payload:u.payload,viewBox:h,parentViewBox:s,fill:void 0})}),[s,n]);return A.createElement(lZ,{value:t?o:void 0},r)}function GJ(e){var{points:t,allOtherScatterProps:n}=e,{shape:r,activeShape:s,dataKey:o}=n,{id:u}=n,f=o0(n,IJ),d=ve(vu),{onMouseEnter:h,onClick:m,onMouseLeave:p}=n,v=o0(n,BJ),x=zZ(h,o,u),w=IZ(p),_=BZ(m,o,u);if(!F9(t))return null;var S=kr(f);return A.createElement(A.Fragment,null,A.createElement(XJ,{points:t,props:f}),t.map((O,M)=>{var j=s!=null&&s!==!1,k=j&&d===String(M),N=j&&k?s:r,C=yn(yn(yn({},S),O),{},{index:M,[pC]:String(u)});return A.createElement(ca,{key:"symbol-".concat(O?.cx,"-").concat(O?.cy,"-").concat(O?.size,"-").concat(M),zIndex:k?pn.activeDot:void 0},A.createElement(hr,ts({className:"recharts-scatter-symbol"},wN(v,O,M),{onMouseEnter:x(O,M),onMouseLeave:w(O,M),onClick:_(O,M)}),A.createElement(EJ,ts({option:N,isActive:k},C))))}))}function WJ(e){var{previousPointsRef:t,props:n}=e,{points:r,isAnimationActive:s,animationBegin:o,animationDuration:u,animationEasing:f}=n,d=t.current,h=yb(n,"recharts-scatter-"),[m,p]=A.useState(!1),v=A.useCallback(()=>{p(!1)},[]),x=A.useCallback(()=>{p(!0)},[]),w=!m;return A.createElement(YJ,{showLabels:w,points:r},n.children,A.createElement(gb,{animationId:h,begin:o,duration:u,isActive:s,easing:f,onAnimationEnd:v,onAnimationStart:x,key:h},_=>{var S=_===1?r:r?.map((O,M)=>{var j=d&&d[M];return j?yn(yn({},O),{},{cx:O.cx==null?void 0:kn(j.cx,O.cx,_),cy:O.cy==null?void 0:kn(j.cy,O.cy,_),size:kn(j.size,O.size,_)}):yn(yn({},O),{},{size:kn(0,O.size,_)})});return _>0&&(t.current=S),A.createElement(hr,null,A.createElement(GJ,{points:S,allOtherScatterProps:n,showLabels:w}))}),A.createElement(fZ,{label:n.label}))}function ZJ(e){var{displayedData:t,xAxis:n,yAxis:r,zAxis:s,scatterSettings:o,xAxisTicks:u,yAxisTicks:f,cells:d}=e,h=dt(n.dataKey)?o.dataKey:n.dataKey,m=dt(r.dataKey)?o.dataKey:r.dataKey,p=s&&s.dataKey,v=s?s.range:K3.range,x=v&&v[0],w=n.scale.bandwidth?n.scale.bandwidth():0,_=r.scale.bandwidth?r.scale.bandwidth():0;return t.map((S,O)=>{var M=Ot(S,h),j=Ot(S,m),k=!dt(p)&&Ot(S,p)||"-",N=[{name:dt(n.dataKey)?o.name:n.name||String(n.dataKey),unit:n.unit||"",value:M,payload:S,dataKey:h,type:o.tooltipType,graphicalItemId:o.id},{name:dt(r.dataKey)?o.name:r.name||String(r.dataKey),unit:r.unit||"",value:j,payload:S,dataKey:m,type:o.tooltipType,graphicalItemId:o.id}];k!=="-"&&s!=null&&N.push({name:s.name||s.dataKey,unit:s.unit||"",value:k,payload:S,dataKey:p,type:o.tooltipType,graphicalItemId:o.id});var C=j2({axis:n,ticks:u,bandSize:w,entry:S,index:O,dataKey:h}),L=j2({axis:r,ticks:f,bandSize:_,entry:S,index:O,dataKey:m}),I=k!=="-"&&s!=null?s.scale.map(k):x,Y=I==null?0:Math.sqrt(Math.max(I,0)/Math.PI);return yn(yn({},S),{},{cx:C,cy:L,x:C==null?void 0:C-Y,y:L==null?void 0:L-Y,width:2*Y,height:2*Y,size:I,node:{x:M,y:j,z:k},tooltipPayload:N,tooltipPosition:{x:C,y:L},payload:S},d&&d[O]&&d[O].props)})}var QJ=(e,t,n)=>({x:e.cx,y:e.cy,value:Number(n==="x"?e.node.x:e.node.y),errorVal:Ot(e,t)});function JJ(e){var{hide:t,points:n,className:r,needClip:s,xAxisId:o,yAxisId:u,id:f}=e,d=A.useRef(null);if(t)return null;var h=et("recharts-scatter",r),m=f;return A.createElement(ca,{zIndex:e.zIndex},A.createElement(hr,{className:h,clipPath:s?"url(#clipPath-".concat(m,")"):void 0,id:f},s&&A.createElement("defs",null,A.createElement(SJ,{clipPathId:m,xAxisId:o,yAxisId:u})),A.createElement(_J,{xAxisId:o,yAxisId:u,data:n,dataPointFormatter:QJ,errorBarOffset:0},A.createElement(hr,{key:"recharts-scatter-symbols"},A.createElement(WJ,{props:e,previousPointsRef:d})))))}var M5={xAxisId:0,yAxisId:0,zAxisId:0,label:!1,line:!1,legendType:"circle",lineType:"joint",lineJointType:"linear",shape:"circle",hide:!1,isAnimationActive:"auto",animationBegin:0,animationDuration:400,animationEasing:"linear",zIndex:pn.scatter};function eee(e){var t=vn(e,M5),{animationBegin:n,animationDuration:r,animationEasing:s,hide:o,isAnimationActive:u,legendType:f,lineJointType:d,lineType:h,shape:m,xAxisId:p,yAxisId:v,zAxisId:x}=t,w=o0(t,UJ),{needClip:_}=j5(p,v),S=A.useMemo(()=>vZ(e.children,bx),[e.children]),O=Jt(),M=ve(j=>zJ(j,p,v,x,e.id,S,O));return _==null||M==null?null:A.createElement(A.Fragment,null,A.createElement(KJ,{dataKey:e.dataKey,points:M,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:e.id}),A.createElement(JJ,ts({},w,{xAxisId:p,yAxisId:v,zAxisId:x,lineType:h,lineJointType:d,legendType:f,shape:m,hide:o,isAnimationActive:u,animationBegin:n,animationDuration:r,animationEasing:s,points:M,needClip:_})))}function tee(e){var t=vn(e,M5),n=Jt();return A.createElement(KZ,{id:t.id,type:"scatter"},r=>A.createElement(A.Fragment,null,A.createElement(VZ,{legendPayload:HJ(t)}),A.createElement(JZ,{type:"scatter",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:t.zAxisId,dataKey:t.dataKey,hide:t.hide,name:t.name,tooltipType:t.tooltipType,isPanorama:n}),A.createElement(eee,ts({},t,{id:r}))))}var k5=A.memo(tee,mh);k5.displayName="Scatter";var nee=["domain","range"],ree=["domain","range"];function Rj(e,t){if(e==null)return{};var n,r,s=iee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(u!=null)return Ij(Ij({},o),{},{type:u})},[o,u]);return A.useLayoutEffect(()=>{f!=null&&(n.current===null?t(iQ(f)):n.current!==f&&t(aQ({prev:n.current,next:f})),n.current=f)},[f,t]),A.useLayoutEffect(()=>()=>{n.current&&(t(sQ(n.current)),n.current=null)},[t]),null}var hee=e=>{var{xAxisId:t,className:n}=e,r=ve(gC),s=Jt(),o="xAxis",u=ve(O=>AD(O,o,t,s)),f=ve(O=>AX(O,t)),d=ve(O=>kX(O,t)),h=ve(O=>F3(O,t));if(f==null||d==null||h==null)return null;var{dangerouslySetInnerHTML:m,ticks:p,scale:v}=e,x=u0(e,see),{id:w,scale:_}=h,S=u0(h,oee);return A.createElement(Sx,l0({},x,S,{x:d.x,y:d.y,width:f.width,height:f.height,className:et("recharts-".concat(o," ").concat(o),n),viewBox:r,ticks:u,axisType:o,axisId:t}))},mee={allowDataOverflow:wt.allowDataOverflow,allowDecimals:wt.allowDecimals,allowDuplicatedCategory:wt.allowDuplicatedCategory,angle:wt.angle,axisLine:ii.axisLine,height:wt.height,hide:!1,includeHidden:wt.includeHidden,interval:wt.interval,label:!1,minTickGap:wt.minTickGap,mirror:wt.mirror,orientation:wt.orientation,padding:wt.padding,reversed:wt.reversed,scale:wt.scale,tick:wt.tick,tickCount:wt.tickCount,tickLine:ii.tickLine,tickSize:ii.tickSize,type:wt.type,niceTicks:wt.niceTicks,xAxisId:0},pee=e=>{var t=vn(e,mee);return A.createElement(A.Fragment,null,A.createElement(dee,{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}),A.createElement(hee,t))},C5=A.memo(pee,N5);C5.displayName="XAxis";var gee=["type"],yee=["dangerouslySetInnerHTML","ticks","scale"],vee=["id","scale"];function c0(){return c0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(u!=null)return Uj(Uj({},o),{},{type:u})},[u,o]);return A.useLayoutEffect(()=>{f!=null&&(n.current===null?t(oQ(f)):n.current!==f&&t(lQ({prev:n.current,next:f})),n.current=f)},[f,t]),A.useLayoutEffect(()=>()=>{n.current&&(t(uQ(n.current)),n.current=null)},[t]),null}function Aee(e){var{yAxisId:t,className:n,width:r,label:s}=e,o=A.useRef(null),u=A.useRef(null),f=ve(gC),d=Jt(),h=it(),m="yAxis",p=ve(C=>DX(C,t)),v=ve(C=>CX(C,t)),x=ve(C=>AD(C,m,t,d)),w=ve(C=>H3(C,t));if(A.useLayoutEffect(()=>{if(!(r!=="auto"||!p||wx(s)||A.isValidElement(s)||w==null)){var C=o.current;if(C){var L=C.getCalculatedWidth();Math.round(p.width)!==Math.round(L)&&h(cQ({id:t,width:L}))}}},[x,p,h,s,t,r,w]),p==null||v==null||w==null)return null;var{dangerouslySetInnerHTML:_,ticks:S,scale:O}=e,M=f0(e,yee),{id:j,scale:k}=w,N=f0(w,vee);return A.createElement(Sx,c0({},M,N,{ref:o,labelRef:u,x:v.x,y:v.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:p.width,height:p.height,className:et("recharts-".concat(m," ").concat(m),n),viewBox:f,ticks:x,axisType:m,axisId:t}))}var Tee={allowDataOverflow:_t.allowDataOverflow,allowDecimals:_t.allowDecimals,allowDuplicatedCategory:_t.allowDuplicatedCategory,angle:_t.angle,axisLine:ii.axisLine,hide:!1,includeHidden:_t.includeHidden,interval:_t.interval,label:!1,minTickGap:_t.minTickGap,mirror:_t.mirror,orientation:_t.orientation,padding:_t.padding,reversed:_t.reversed,scale:_t.scale,tick:_t.tick,tickCount:_t.tickCount,tickLine:ii.tickLine,tickSize:ii.tickSize,type:_t.type,niceTicks:_t.niceTicks,width:_t.width,yAxisId:0},Oee=e=>{var t=vn(e,Tee);return A.createElement(A.Fragment,null,A.createElement(See,{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}),A.createElement(Aee,t))},D5=A.memo(Oee,N5);D5.displayName="YAxis";var Eee=(e,t)=>t,Ax=$([Eee,ht,s3,Dt,$D,vi,rG,Xt],cG);function jee(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function Tx(e){var t=e.currentTarget.getBoundingClientRect(),n,r;if(jee(e)){var s=e.currentTarget.getBBox();n=s.width>0?t.width/s.width:1,r=s.height>0?t.height/s.height:1}else{var o=e.currentTarget;n=o.offsetWidth>0?t.width/o.offsetWidth:1,r=o.offsetHeight>0?t.height/o.offsetHeight:1}var u=(f,d)=>({relativeX:Math.round((f-t.left)/n),relativeY:Math.round((d-t.top)/r)});return"touches"in e?Array.from(e.touches).map(f=>u(f.clientX,f.clientY)):u(e.clientX,e.clientY)}var P5=Pn("mouseClick"),R5=ju();R5.startListening({actionCreator:P5,effect:(e,t)=>{var n=e.payload,r=Ax(t.getState(),Tx(n));r?.activeIndex!=null&&t.dispatch(WX({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var d0=Pn("mouseMove"),L5=ju(),Xs=null,Na=null,Fy=null;L5.startListening({actionCreator:d0,effect:(e,t)=>{var n=e.payload,r=t.getState(),{throttleDelay:s,throttledEvents:o}=r.eventSettings,u=o==="all"||o?.includes("mousemove");Xs!==null&&(cancelAnimationFrame(Xs),Xs=null),Na!==null&&(typeof s!="number"||!u)&&(clearTimeout(Na),Na=null),Fy=Tx(n);var f=()=>{var d=t.getState(),h=ux(d,d.tooltip.settings.shared);if(!Fy){Xs=null,Na=null;return}if(h==="axis"){var m=Ax(d,Fy);m?.activeIndex!=null?t.dispatch(PD({activeIndex:m.activeIndex,activeDataKey:void 0,activeCoordinate:m.activeCoordinate})):t.dispatch(DD())}Xs=null,Na=null};if(!u){f();return}s==="raf"?Xs=requestAnimationFrame(f):typeof s=="number"&&Na===null&&(Na=setTimeout(f,s))}});function Mee(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var Vj={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},z5=Qt({name:"rootProps",initialState:Vj,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:Vj.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}}}),kee=z5.reducer,{updateOptions:Nee}=z5.actions,Cee=null,Dee={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)},I5=Qt({name:"polarOptions",initialState:Cee,reducers:Dee}),{updatePolarOptions:Wne}=I5.actions,Pee=I5.reducer,B5=Pn("keyDown"),U5=Pn("focus"),V5=Pn("blur"),kh=ju(),Ys=null,Ca=null,Mf=null;kh.startListening({actionCreator:B5,effect:(e,t)=>{Mf=e.payload,Ys!==null&&(cancelAnimationFrame(Ys),Ys=null);var n=t.getState(),{throttleDelay:r,throttledEvents:s}=n.eventSettings,o=s==="all"||s.includes("keydown");Ca!==null&&(typeof r!="number"||!o)&&(clearTimeout(Ca),Ca=null);var u=()=>{try{var f=t.getState(),d=f.rootProps.accessibilityLayer!==!1;if(!d)return;var{keyboardInteraction:h}=f.tooltip,m=Mf;if(m!=="ArrowRight"&&m!=="ArrowLeft"&&m!=="Enter")return;var p=cx(h,Co(f),qu(f),Fu(f)),v=p==null?-1:Number(p);if(!Number.isFinite(v)||v<0)return;var x=vi(f);if(m==="Enter"){var w=zd(f,"axis","hover",String(h.index));t.dispatch(Ld({active:!h.active,activeIndex:h.index,activeCoordinate:w}));return}var _=BX(f),S=_==="left-to-right"?1:-1,O=m==="ArrowRight"?1:-1,M=v+O*S;if(x==null||M>=x.length||M<0)return;var j=zd(f,"axis","hover",String(M));t.dispatch(Ld({active:!0,activeIndex:M.toString(),activeCoordinate:j}))}finally{Ys=null,Ca=null}};if(!o){u();return}r==="raf"?Ys=requestAnimationFrame(u):typeof r=="number"&&Ca===null&&(u(),Mf=null,Ca=setTimeout(()=>{Mf?u():(Ca=null,Ys=null)},r))}});kh.startListening({actionCreator:U5,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:s}=n.tooltip;if(!s.active&&s.index==null){var o="0",u=zd(n,"axis","hover",String(o));t.dispatch(Ld({active:!0,activeIndex:o,activeCoordinate:u}))}}}});kh.startListening({actionCreator:V5,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:s}=n.tooltip;s.active&&t.dispatch(Ld({active:!1,activeIndex:s.index,activeCoordinate:s.coordinate}))}}});function q5(e){e.persist();var{currentTarget:t}=e;return new Proxy(e,{get:(n,r)=>{if(r==="currentTarget")return t;var s=Reflect.get(n,r);return typeof s=="function"?s.bind(n):s}})}var Yn=Pn("externalEvent"),$5=ju(),kf=new Map,Il=new Map,Hy=new Map;$5.startListening({actionCreator:Yn,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){var s=r.type,o=q5(r);Hy.set(s,{handler:n,reactEvent:o});var u=kf.get(s);u!==void 0&&(cancelAnimationFrame(u),kf.delete(s));var f=t.getState(),{throttleDelay:d,throttledEvents:h}=f.eventSettings,m=h,p=m==="all"||m?.includes(s),v=Il.get(s);v!==void 0&&(typeof d!="number"||!p)&&(clearTimeout(v),Il.delete(s));var x=()=>{var S=Hy.get(s);try{if(!S)return;var{handler:O,reactEvent:M}=S,j=t.getState(),k={activeCoordinate:qY(j),activeDataKey:BY(j),activeIndex:vu(j),activeLabel:KD(j),activeTooltipIndex:vu(j),isTooltipActive:$Y(j)};O&&O(k,M)}finally{kf.delete(s),Il.delete(s),Hy.delete(s)}};if(!p){x();return}if(d==="raf"){var w=requestAnimationFrame(x);kf.set(s,w)}else if(typeof d=="number"){if(!Il.has(s)){x();var _=setTimeout(x,d);Il.set(s,_)}}else x()}}});var Ree=$([ko],e=>e.tooltipItemPayloads),Lee=$([Ree,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(o=>o.settings.graphicalItemId===n);if(r!=null){var{getPosition:s}=r;if(s!=null)return s(t)}}}),F5=Pn("touchMove"),H5=ju(),Da=null,Hi=null,qj=null,Bl=null;H5.startListening({actionCreator:F5,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){Bl=q5(n);var r=t.getState(),{throttleDelay:s,throttledEvents:o}=r.eventSettings,u=o==="all"||o.includes("touchmove");Da!==null&&(cancelAnimationFrame(Da),Da=null),Hi!==null&&(typeof s!="number"||!u)&&(clearTimeout(Hi),Hi=null),qj=Array.from(n.touches).map(d=>Tx({clientX:d.clientX,clientY:d.clientY,currentTarget:n.currentTarget}));var f=()=>{if(Bl!=null){var d=t.getState(),h=ux(d,d.tooltip.settings.shared);if(h==="axis"){var m,p=(m=qj)===null||m===void 0?void 0:m[0];if(p==null){Da=null,Hi=null;return}var v=Ax(d,p);v?.activeIndex!=null&&t.dispatch(PD({activeIndex:v.activeIndex,activeDataKey:void 0,activeCoordinate:v.activeCoordinate}))}else if(h==="item"){var x,w=Bl.touches[0];if(document.elementFromPoint==null||w==null)return;var _=document.elementFromPoint(w.clientX,w.clientY);if(!_||!_.getAttribute)return;var S=_.getAttribute(iV),O=(x=_.getAttribute(pC))!==null&&x!==void 0?x:void 0,M=No(d).find(N=>N.id===O);if(S==null||M==null||O==null)return;var{dataKey:j}=M,k=Lee(d,S,O);t.dispatch(CD({activeDataKey:j,activeIndex:S,activeCoordinate:k,activeGraphicalItemId:O}))}Da=null,Hi=null}};if(!u){f();return}s==="raf"?Da=requestAnimationFrame(f):typeof s=="number"&&Hi===null&&(f(),Bl=null,Hi=setTimeout(()=>{Bl?f():(Hi=null,Da=null)},s))}}});var K5={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},X5=Qt({name:"eventSettings",initialState:K5,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=t.payload.throttledEvents)}}}),{setEventSettings:zee}=X5.actions,Iee=X5.reducer,Bee=LN({brush:yQ,cartesianAxis:fQ,chartData:qG,errorBars:gJ,eventSettings:Iee,graphicalItems:ZZ,layout:$U,legend:WV,options:zG,polarAxis:hZ,polarOptions:Pee,referenceElements:wQ,renderedTicks:IQ,rootProps:kee,tooltip:ZX,zIndex:AG}),Uee=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return mU({reducer:Bee,preloadedState:t,middleware:r=>{var s;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((s="es6")!==null&&s!==void 0?s:"")}).concat([R5.middleware,L5.middleware,kh.middleware,$5.middleware,H5.middleware])},enhancers:r=>{var s=r;return typeof r=="function"&&(s=r()),s.concat(ZN({type:"raf"}))},devTools:{serialize:{replacer:Mee},name:"recharts-".concat(n)}})};function Vee(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,s=Jt(),o=A.useRef(null);if(s)return n;o.current==null&&(o.current=Uee(t,r));var u=ib;return A.createElement(mq,{context:u,store:o.current},n)}function qee(e){var{layout:t,margin:n}=e,r=it(),s=Jt();return A.useEffect(()=>{s||(r(UU(t)),r(BU(n)))},[r,s,t,n]),null}var $ee=A.memo(qee,mh);function Fee(e){var t=it();return A.useEffect(()=>{t(Nee(e))},[t,e]),null}var Hee=e=>{var t=it();return A.useEffect(()=>{t(zee(e))},[t,e]),null},Kee=A.memo(Hee,mh);function $j(e){var{zIndex:t,isPanorama:n}=e,r=A.useRef(null),s=it();return A.useLayoutEffect(()=>(r.current&&s(_G({zIndex:t,element:r.current,isPanorama:n})),()=>{s(SG({zIndex:t,isPanorama:n}))}),[s,t,n]),A.createElement("g",{tabIndex:-1,ref:r,className:"recharts-zIndex-layer_".concat(t)})}function Fj(e){var{children:t,isPanorama:n}=e,r=ve(dG);if(!r||r.length===0)return t;var s=r.filter(u=>u<0),o=r.filter(u=>u>0);return A.createElement(A.Fragment,null,s.map(u=>A.createElement($j,{key:u,zIndex:u,isPanorama:n})),t,o.map(u=>A.createElement($j,{key:u,zIndex:u,isPanorama:n})))}var Xee=["children"];function Yee(e,t){if(e==null)return{};var n,r,s=Gee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var n=wC(),r=_C(),s=DC();if(!Cr(n)||!Cr(r))return null;var{children:o,otherAttributes:u,title:f,desc:d}=e,h,m;return u!=null&&(typeof u.tabIndex=="number"?h=u.tabIndex:h=s?0:void 0,typeof u.role=="string"?m=u.role:m=s?"application":void 0),A.createElement(Jk,qd({},u,{title:f,desc:d,role:m,tabIndex:h,width:n,height:r,style:Wee,ref:t}),o)}),Qee=e=>{var{children:t}=e,n=ve(ch);if(!n)return null;var{width:r,height:s,y:o,x:u}=n;return A.createElement(Jk,{width:r,height:s,x:u,y:o},t)},Hj=A.forwardRef((e,t)=>{var{children:n}=e,r=Yee(e,Xee),s=Jt();return s?A.createElement(Qee,null,A.createElement(Fj,{isPanorama:!0},n)):A.createElement(Zee,qd({ref:t},r),A.createElement(Fj,{isPanorama:!1},n))});function Jee(){var e=it(),[t,n]=A.useState(null),r=ve(rV);return A.useEffect(()=>{if(t!=null){var s=t.getBoundingClientRect(),o=s.width/t.offsetWidth;Le(o)&&o!==r&&e(qU(o))}},[t,e,r]),n}function Kj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ete(e){for(var t=1;t(ZG(),null);function $d(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var ate=A.forwardRef((e,t)=>{var n,r,s=A.useRef(null),[o,u]=A.useState({containerWidth:$d((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:$d((r=e.style)===null||r===void 0?void 0:r.height)}),f=A.useCallback((h,m)=>{u(p=>{var v=Math.round(h),x=Math.round(m);return p.containerWidth===v&&p.containerHeight===x?p:{containerWidth:v,containerHeight:x}})},[]),d=A.useCallback(h=>{if(typeof t=="function"&&t(h),h!=null&&typeof ResizeObserver<"u"){var{width:m,height:p}=h.getBoundingClientRect();f(m,p);var v=w=>{var _=w[0];if(_!=null){var{width:S,height:O}=_.contentRect;f(S,O)}},x=new ResizeObserver(v);x.observe(h),s.current=x}},[t,f]);return A.useEffect(()=>()=>{var h=s.current;h?.disconnect()},[f]),A.createElement(A.Fragment,null,A.createElement(Cu,{width:o.containerWidth,height:o.containerHeight}),A.createElement("div",ta({ref:d},e)))}),ste=A.forwardRef((e,t)=>{var{width:n,height:r}=e,[s,o]=A.useState({containerWidth:$d(n),containerHeight:$d(r)}),u=A.useCallback((d,h)=>{o(m=>{var p=Math.round(d),v=Math.round(h);return m.containerWidth===p&&m.containerHeight===v?m:{containerWidth:p,containerHeight:v}})},[]),f=A.useCallback(d=>{if(typeof t=="function"&&t(d),d!=null){var{width:h,height:m}=d.getBoundingClientRect();u(h,m)}},[t,u]);return A.createElement(A.Fragment,null,A.createElement(Cu,{width:s.containerWidth,height:s.containerHeight}),A.createElement("div",ta({ref:f},e)))}),ote=A.forwardRef((e,t)=>{var{width:n,height:r}=e;return A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement("div",ta({ref:t},e)))}),lte=A.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?A.createElement(ste,ta({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?A.createElement(ote,ta({},e,{width:n,height:r,ref:t})):A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement("div",ta({ref:t},e)))});function ute(e){return e?ate:lte}var cte=A.forwardRef((e,t)=>{var{children:n,className:r,height:s,onClick:o,onContextMenu:u,onDoubleClick:f,onMouseDown:d,onMouseEnter:h,onMouseLeave:m,onMouseMove:p,onMouseUp:v,onTouchEnd:x,onTouchMove:w,onTouchStart:_,style:S,width:O,responsive:M,dispatchTouchEvents:j=!0}=e,k=A.useRef(null),N=it(),[C,L]=A.useState(null),[I,Y]=A.useState(null),te=Jee(),ie=fb(),K=ie?.width>0?ie.width:O,be=ie?.height>0?ie.height:s,pe=A.useCallback(re=>{te(re),typeof t=="function"&&t(re),L(re),Y(re),re!=null&&(k.current=re)},[te,t,L,Y]),xe=A.useCallback(re=>{N(P5(re)),N(Yn({handler:o,reactEvent:re}))},[N,o]),V=A.useCallback(re=>{N(d0(re)),N(Yn({handler:h,reactEvent:re}))},[N,h]),Q=A.useCallback(re=>{N(DD()),N(Yn({handler:m,reactEvent:re}))},[N,m]),ne=A.useCallback(re=>{N(d0(re)),N(Yn({handler:p,reactEvent:re}))},[N,p]),le=A.useCallback(()=>{N(U5())},[N]),ue=A.useCallback(()=>{N(V5())},[N]),P=A.useCallback(re=>{N(B5(re.key))},[N]),H=A.useCallback(re=>{N(Yn({handler:u,reactEvent:re}))},[N,u]),ae=A.useCallback(re=>{N(Yn({handler:f,reactEvent:re}))},[N,f]),se=A.useCallback(re=>{N(Yn({handler:d,reactEvent:re}))},[N,d]),Z=A.useCallback(re=>{N(Yn({handler:v,reactEvent:re}))},[N,v]),oe=A.useCallback(re=>{N(Yn({handler:_,reactEvent:re}))},[N,_]),he=A.useCallback(re=>{j&&N(F5(re)),N(Yn({handler:w,reactEvent:re}))},[N,j,w]),_e=A.useCallback(re=>{N(Yn({handler:x,reactEvent:re}))},[N,x]),J=ute(M);return A.createElement(JD.Provider,{value:C},A.createElement(HB.Provider,{value:I},A.createElement(J,{width:K??S?.width,height:be??S?.height,className:et("recharts-wrapper",r),style:ete({position:"relative",cursor:"default",width:K,height:be},S),onClick:xe,onContextMenu:H,onDoubleClick:ae,onFocus:le,onBlur:ue,onKeyDown:P,onMouseDown:se,onMouseEnter:V,onMouseLeave:Q,onMouseMove:ne,onMouseUp:Z,onTouchEnd:_e,onTouchMove:he,onTouchStart:oe,ref:pe},A.createElement(ite,null),n)))}),fte=["width","height","responsive","children","className","style","compact","title","desc"];function dte(e,t){if(e==null)return{};var n,r,s=hte(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:s,children:o,className:u,style:f,compact:d,title:h,desc:m}=e,p=dte(e,fte),v=kr(p);return d?A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement(Hj,{otherAttributes:v,title:h,desc:m},o)):A.createElement(cte,{className:u,style:f,width:n,height:r,responsive:s??!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},A.createElement(Hj,{otherAttributes:v,title:h,desc:m,ref:t},A.createElement(SQ,null,o)))});function h0(){return h0=Object.assign?Object.assign.bind():function(e){for(var t=1;tA.createElement(wte,{chartName:"ScatterChart",defaultTooltipEventType:"item",validateTooltipEventTypes:_te,tooltipPayloadSearcher:RG,categoricalChartProps:e,ref:t}));const Ox={bg:{primary:"#0B0D17",secondary:"#12152A",tertiary:"#1A1F3D",hover:"#222850"},accent:{purple:"#8B5CF6",purpleLight:"#A78BFA",purpleDim:"#6D28D9",blue:"#38BDF8",blueLight:"#7DD3FC",blueDim:"#0284C7",cyan:"#06B6D4",amber:"#F59E0B"},text:{primary:"#F1F5F9",secondary:"#94A3B8",muted:"#64748B"},heatmap:{bad:"#EF4444",badBg:"#7F1D1D",mid:"#EAB308",midBg:"#713F12",good:"#22C55E",goodBg:"#14532D"}},Ate={bg:{primary:"#FFFFFF",secondary:"#F8FAFC",tertiary:"#F1F5F9",hover:"#E2E8F0"},accent:{purple:"#7C3AED",purpleLight:"#6D28D9",purpleDim:"#5B21B6",blue:"#0284C7",blueLight:"#0369A1",blueDim:"#075985",cyan:"#0891B2",amber:"#D97706"},text:{primary:"#0F172A",secondary:"#334155",muted:"#64748B"},heatmap:{bad:"#DC2626",badBg:"#FEE2E2",mid:"#CA8A04",midBg:"#FEF9C3",good:"#16A34A",goodBg:"#DCFCE7"}},Tte={dark:Ox,light:Ate},Ex=A.createContext({mode:"dark",colors:Ox});function jx(){return A.useContext(Ex).colors}function Ote(){return A.useContext(Ex).mode}function Nf(e,t,n,r,s=!1,o){const u=o??Ox,f=n-t;let d=f===0?.5:(e-t)/f;s&&(d=1-d);const h=.1+d*.55;return{bg:Ete(r,h),text:u.text.primary}}function Ete(e,t){const n=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),s=parseInt(e.slice(5,7),16);return`rgba(${n}, ${r}, ${s}, ${t.toFixed(2)})`}function jte(e=640){const[t,n]=A.useState(!1);return A.useEffect(()=>{const r=()=>n(window.innerWidthwindow.removeEventListener("resize",r)},[e]),t}function Yj({base:e,sub:t}){return b.jsxs(b.Fragment,{children:[e,b.jsx("sub",{className:"text-[0.7em]",children:t})]})}function Mte({active:e,payload:t,xSub:n,ySub:r}){if(!e||!t?.length)return null;const s=t[0].payload,o=s.type==="cascade"?"Cascade":s.type==="2-part"?"2-Part":"Speech-to-Speech",u=s.type==="cascade"?"bg-purple/20 text-purple-light":s.type==="2-part"?"bg-emerald-500/20 text-emerald-400":"bg-blue/20 text-blue-light";return b.jsxs("div",{className:"bg-bg-tertiary border border-border-default rounded-lg p-3 shadow-xl max-w-xs",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1",children:s.name}),b.jsxs("div",{className:"flex gap-4 text-xs",children:[b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[b.jsx(Yj,{base:"EVA-A",sub:n}),":"]})," ",b.jsx("span",{className:"text-purple-light font-mono",children:s.plotX.toFixed(2)})]}),b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[b.jsx(Yj,{base:"EVA-X",sub:r}),":"]})," ",b.jsx("span",{className:"text-blue-light font-mono",children:s.plotY.toFixed(2)})]})]}),s.type==="cascade"&&b.jsxs("div",{className:"text-[10px] text-text-muted mt-1.5 space-y-0.5",children:[b.jsxs("div",{children:["STT: ",s.stt]}),b.jsxs("div",{children:["LLM: ",s.llm]}),b.jsxs("div",{children:["TTS: ",s.tts]})]}),b.jsx("div",{className:"mt-1.5",children:b.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium ${u}`,children:o})})]})}function Gj({x:e,y:t,base:n,sub:r,suffix:s,fill:o,angle:u,small:f}){const d=f?12:20,h=f?9:14,m=f?3:5;return b.jsxs("text",{x:e,y:t,fill:o,fontSize:d,fontWeight:600,textAnchor:"middle",transform:u?`rotate(${u}, ${e}, ${t})`:void 0,children:[n,b.jsx("tspan",{fontSize:h,dy:m,children:r}),s&&b.jsx("tspan",{fontSize:d,dy:-m,children:s})]})}const Wj=[0,.2,.4,.6,.8,1],m0="#A78BFA",kte="#C4B5FD",Y5="#F59E0B",Nte="#FBBF24",G5="#34D399",Cte="#6EE7B7",W5="#06B6D4";function Dte(e){const t=[];for(const n of e)e.some(s=>s.plotY>=n.plotY&&s.plotX>=n.plotX&&(s.plotY>n.plotY||s.plotX>n.plotX))||t.push(n);return t.sort((n,r)=>n.plotX-r.plotX).map(n=>({plotX:n.plotX,plotY:n.plotY}))}function Pte({frontier:e}){const t=mQ(),n=pQ();if(!t||!n||e.length<2)return null;const r=e.map(s=>`${t(s.plotX)},${n(s.plotY)}`).join(" ");return b.jsx("polyline",{points:r,fill:"none",stroke:W5,strokeWidth:2,strokeDasharray:"6 3",pointerEvents:"none"})}const Ul=[{title:"pass@1",description:b.jsx(b.Fragment,{children:"Average of per-sample scores, where each sample scores 1 if all metrics in category surpass metric-specific threshold, else 0."}),subscript:"pass@1",getX:e=>e.successRates.accuracy.pass_threshold,getY:e=>e.successRates.experience.pass_threshold,domain:[0,1]},{title:"pass@k (k=3)",description:b.jsx(b.Fragment,{children:"Percent of scenarios where at least 1 of k=3 trials surpasses metric-specific thresholds in all metrics in the category. ."}),subscript:"pass@k",getX:e=>e.successRates.accuracy.pass_at_k,getY:e=>e.successRates.experience.pass_at_k,domain:[0,1]},{title:"pass^k (k=3)",description:b.jsx(b.Fragment,{children:"Per-scenario probability of all k=3 trials succeeding (scenario pass rate raised to the k-th power) for that category, averaged across scenarios."}),subscript:"pass^k",getX:e=>e.successRates.accuracy.pass_k,getY:e=>e.successRates.experience.pass_k,domain:[0,1]},{title:"Mean",description:b.jsx(b.Fragment,{children:"Average of per-sample scores, where each sample's score is the mean of the submetrics in that category."}),subscript:"mean",getX:e=>e.successRates.accuracy.mean,getY:e=>e.successRates.experience.mean,domain:[0,1]}];function Rte(e){return e==="2-part"?{fill:G5,stroke:Cte}:e==="s2s"?{fill:Y5,stroke:Nte}:{fill:m0,stroke:kte}}function Lte({systems:e}){const t=jx(),[n,r]=A.useState(0),s=jte(),o=Ul[n],u=e.map(m=>({...m,plotX:o.getX(m),plotY:o.getY(m)})),f=Dte(u),d=()=>r(m=>(m-1+Ul.length)%Ul.length),h=()=>r(m=>(m+1)%Ul.length);return b.jsxs("div",{className:"bg-bg-secondary rounded-xl border border-border-default p-6",children:[b.jsx("div",{className:"flex flex-wrap justify-center gap-2 mb-6",children:Ul.map((m,p)=>b.jsx("button",{onClick:()=>r(p),className:`px-3 py-1 rounded-full text-xs font-medium transition-colors ${p===n?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:m.title},p))}),b.jsxs("div",{className:"flex items-center justify-between mb-6",children:[b.jsx("button",{onClick:d,className:"p-2 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(XR,{className:"w-6 h-6"})}),b.jsxs("div",{className:"text-center flex-1 px-4",children:[b.jsx("h3",{className:"text-xl font-semibold text-text-primary mb-2",children:o.title}),b.jsx("p",{className:"text-sm text-text-muted leading-loose max-w-xl mx-auto",children:o.description})]}),b.jsx("button",{onClick:h,className:"p-2 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(sM,{className:"w-6 h-6"})})]}),b.jsxs("div",{className:"flex flex-col lg:flex-row lg:items-center gap-6 max-w-4xl mx-auto",children:[b.jsx("div",{className:"flex-1 min-w-0",children:b.jsx("div",{style:{width:"100%",aspectRatio:"1"},className:"[&_.recharts-surface]:overflow-visible min-h-[300px] sm:min-h-[400px]",children:b.jsx(CV,{width:"100%",height:"100%",children:b.jsxs(Ste,{margin:{top:15,right:15,bottom:s?45:60,left:s?25:40},style:{overflow:"visible"},children:[b.jsx(O5,{strokeDasharray:"3 3",stroke:t.bg.tertiary}),b.jsx(C5,{type:"number",dataKey:"plotX",domain:o.domain,ticks:Wj,allowDataOverflow:!0,tickFormatter:m=>m.toFixed(1),stroke:t.text.muted,tick:{fill:t.text.secondary,fontSize:11},label:({viewBox:m})=>{const{x:p,y:v,width:x}=m;return b.jsx(Gj,{x:p+x/2,y:v+(s?35:50),base:"Accuracy (EVA-A",sub:o.subscript,suffix:")",fill:t.accent.purpleLight,small:s})}}),b.jsx(D5,{type:"number",dataKey:"plotY",domain:o.domain,ticks:Wj,allowDataOverflow:!0,tickFormatter:m=>m.toFixed(1),stroke:t.text.muted,tick:{fill:t.text.secondary,fontSize:11},label:({viewBox:m})=>{const{x:p,y:v,height:x}=m;return b.jsx(Gj,{x:p-(s?2:8),y:v+x/2,base:"Experience (EVA-X",sub:o.subscript,suffix:")",fill:t.accent.blueLight,angle:-90,small:s})}}),b.jsx(aW,{content:b.jsx(Mte,{xSub:o.subscript,ySub:o.subscript}),cursor:!1}),b.jsx(Pte,{frontier:f}),b.jsx(k5,{data:u,fill:m0,children:u.map(m=>{const{fill:p,stroke:v}=Rte(m.type);return b.jsx(bx,{fill:p,stroke:v,strokeWidth:1.5,r:8},m.id)})})]})})})}),b.jsxs("div",{className:"flex flex-wrap justify-center gap-x-4 gap-y-2 lg:flex-col lg:gap-3 lg:flex-shrink-0 lg:pr-2",children:[b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:m0}}),b.jsx("span",{className:"whitespace-nowrap",children:"Cascade"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:G5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Audio Native"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:Y5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Speech-to-Speech"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-5 sm:w-6 h-0 border-t-2 border-dashed flex-shrink-0",style:{borderColor:W5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Pareto Frontier"})]})]})]})]})}const zte=["task_completion","agent_tts_fidelity","faithfulness"],Ite=["turn_taking","conciseness","conversation_progression"],Bte={task_completion:"Task Completion",agent_tts_fidelity:"Agent Speech Fidelity",faithfulness:"Faithfulness"},Ute={turn_taking:"Turn Taking",conciseness:"Conciseness",conversation_progression:"Conversation Progression"},Zj=new Set(["response_speed"]),Vte=[{id:"ultravox-v0-7-kokoro",name:"ultravox v0.7 + kokoro",shortName:"ultravox v0.7 + kokoro",stt:"-",llm:"ultravox v0.7",tts:"kokoro",type:"2-part",evaA:.3933,evaX:.3067,accuracyMetrics:{task_completion:.58,agent_tts_fidelity:.9662,faithfulness:.45},experienceMetrics:{turn_taking:.3782,conciseness:.7532,conversation_progression:.64},diagnosticMetrics:{key_entity_transcription:.784,response_speed:5.9224},successRates:{accuracy:{pass_threshold:.3933,mean:.6654,pass_at_k:.56,pass_k:.2793},experience:{pass_threshold:.3067,mean:.5905,pass_at_k:.54,pass_k:.1807}}},{id:"gpt-realtime-mini",name:"gpt-realtime-mini",shortName:"gpt-realtime-mini",stt:"-",llm:"gpt-realtime-mini",tts:"-",type:"s2s",evaA:.18,evaX:.4267,accuracyMetrics:{task_completion:.2667,agent_tts_fidelity:.9833,faithfulness:.1733},experienceMetrics:{turn_taking:.7801,conciseness:.7477,conversation_progression:.3533},diagnosticMetrics:{key_entity_transcription:.8925,response_speed:3.6711},successRates:{accuracy:{pass_threshold:.18,mean:.4744,pass_at_k:.32,pass_k:.1044},experience:{pass_threshold:.4267,mean:.627,pass_at_k:.72,pass_k:.2163}}},{id:"ultravox-realtime",name:"ultravox-realtime",shortName:"ultravox-realtime",stt:"-",llm:"ultravox-realtime",tts:"-",type:"2-part",evaA:.28,evaX:.44,accuracyMetrics:{task_completion:.4867,agent_tts_fidelity:.9426,faithfulness:.3167},experienceMetrics:{turn_taking:.519,conciseness:.6948,conversation_progression:.5933},diagnosticMetrics:{key_entity_transcription:.8484,response_speed:4.847},successRates:{accuracy:{pass_threshold:.28,mean:.582,pass_at_k:.46,pass_k:.1511},experience:{pass_threshold:.44,mean:.6024,pass_at_k:.76,pass_k:.2356}}},{id:"gpt-4o-mini-transcribe-gpt-5-mini-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-5-mini + gpt-4o-mini-tts",shortName:"gpt-5-mini (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-5-mini",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.2095,evaX:.1267,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9707,faithfulness:.3},experienceMetrics:{turn_taking:.2703,conciseness:.7162,conversation_progression:.4533},diagnosticMetrics:{key_entity_transcription:.6801,response_speed:5.9619},successRates:{accuracy:{pass_threshold:.2095,mean:.5398,pass_at_k:.5,pass_k:.0694},experience:{pass_threshold:.1267,mean:.4799,pass_at_k:.32,pass_k:.0274}}},{id:"gpt-4o-mini-transcribe-sonnet-4-6-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + sonnet-4.6 + gpt-4o-mini-tts",shortName:"sonnet-4.6 (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"sonnet-4.6",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.36,evaX:.02,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.9605,faithfulness:.6433},experienceMetrics:{turn_taking:.1043,conciseness:.8298,conversation_progression:.7767},diagnosticMetrics:{key_entity_transcription:.6167,response_speed:8.2609},successRates:{accuracy:{pass_threshold:.36,mean:.7146,pass_at_k:.62,pass_k:.1867},experience:{pass_threshold:.02,mean:.5703,pass_at_k:.06,pass_k:.0022}}},{id:"gpt-4o-mini-transcribe-gpt-oss-20b-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-oss-20b + gpt-4o-mini-tts",shortName:"gpt-oss-20b (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-oss-20b",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.1267,evaX:.3,accuracyMetrics:{task_completion:.3,agent_tts_fidelity:.9516,faithfulness:.1767},experienceMetrics:{turn_taking:.5225,conciseness:.6871,conversation_progression:.3567},diagnosticMetrics:{key_entity_transcription:.617,response_speed:4.8793},successRates:{accuracy:{pass_threshold:.1267,mean:.4761,pass_at_k:.24,pass_k:.0541},experience:{pass_threshold:.3,mean:.5221,pass_at_k:.6,pass_k:.1356}}},{id:"gpt-4o-mini-transcribe-gpt-oss-120b-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-oss-120b + gpt-4o-mini-tts",shortName:"gpt-oss-120b (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-oss-120b",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.1733,evaX:.54,accuracyMetrics:{task_completion:.2867,agent_tts_fidelity:.9668,faithfulness:.3433},experienceMetrics:{turn_taking:.6251,conciseness:.7655,conversation_progression:.5367},diagnosticMetrics:{key_entity_transcription:.5824,response_speed:4.2443},successRates:{accuracy:{pass_threshold:.1733,mean:.5323,pass_at_k:.34,pass_k:.077},experience:{pass_threshold:.54,mean:.6424,pass_at_k:.94,pass_k:.2467}}},{id:"parakeet-ctc-1-1b-gpt-oss-20b-magpie",name:"parakeet-ctc-1.1b + gpt-oss-20b + magpie",shortName:"gpt-oss-20b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-20b",tts:"magpie",type:"cascade",evaA:.16,evaX:.34,accuracyMetrics:{task_completion:.4,agent_tts_fidelity:.935,faithfulness:.14},experienceMetrics:{turn_taking:.418,conciseness:.7205,conversation_progression:.4933},diagnosticMetrics:{key_entity_transcription:.8148,response_speed:5.9816},successRates:{accuracy:{pass_threshold:.16,mean:.4917,pass_at_k:.32,pass_k:.0711},experience:{pass_threshold:.34,mean:.5439,pass_at_k:.7,pass_k:.1444}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-magpie",name:"parakeet-ctc-1.1b + gpt-oss-120b + magpie",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"magpie",type:"cascade",evaA:.1678,evaX:.42,accuracyMetrics:{task_completion:.3667,agent_tts_fidelity:.9065,faithfulness:.36},experienceMetrics:{turn_taking:.4663,conciseness:.7522,conversation_progression:.63},diagnosticMetrics:{key_entity_transcription:.8415,response_speed:5.2856},successRates:{accuracy:{pass_threshold:.1678,mean:.544,pass_at_k:.3061,pass_k:.0718},experience:{pass_threshold:.42,mean:.6162,pass_at_k:.72,pass_k:.2022}}},{id:"parakeet-ctc-1-1b-qwen3-5-27b-kokoro",name:"parakeet-ctc-1.1b + qwen3.5-27b + kokoro",shortName:"qwen3.5-27b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"qwen3.5-27b",tts:"kokoro",type:"cascade",evaA:.4133,evaX:.06,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.9896,faithfulness:.47},experienceMetrics:{turn_taking:.2249,conciseness:.6823,conversation_progression:.6167},diagnosticMetrics:{key_entity_transcription:.8093,response_speed:7.4968},successRates:{accuracy:{pass_threshold:.4133,mean:.6665,pass_at_k:.7,pass_k:.2104},experience:{pass_threshold:.06,mean:.508,pass_at_k:.14,pass_k:.0156}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-kokoro",name:"parakeet-ctc-1.1b + gpt-oss-120b + kokoro",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"kokoro",type:"cascade",evaA:.2333,evaX:.24,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9601,faithfulness:.3267},experienceMetrics:{turn_taking:.3569,conciseness:.7582,conversation_progression:.6167},diagnosticMetrics:{key_entity_transcription:.7951,response_speed:6.0521},successRates:{accuracy:{pass_threshold:.2333,mean:.5489,pass_at_k:.46,pass_k:.1059},experience:{pass_threshold:.24,mean:.5772,pass_at_k:.5,pass_k:.0844}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-chatterbox-turbo",name:"parakeet-ctc-1.1b + gpt-oss-120b + chatterbox-turbo",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"chatterbox-turbo",type:"cascade",evaA:.1533,evaX:.0267,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.8883,faithfulness:.32},experienceMetrics:{turn_taking:.0645,conciseness:.7841,conversation_progression:.49},diagnosticMetrics:{key_entity_transcription:.8053,response_speed:9.8321},successRates:{accuracy:{pass_threshold:.1533,mean:.5228,pass_at_k:.32,pass_k:.057},experience:{pass_threshold:.0267,mean:.4462,pass_at_k:.06,pass_k:.0074}}},{id:"parakeet-ctc-1-1b-qwen3-5-27b-chatterbox-turbo",name:"parakeet-ctc-1.1b + qwen3.5-27b + chatterbox-turbo",shortName:"qwen3.5-27b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"qwen3.5-27b",tts:"chatterbox-turbo",type:"cascade",evaA:.2533,evaX:0,accuracyMetrics:{task_completion:.5333,agent_tts_fidelity:.8513,faithfulness:.42},experienceMetrics:{turn_taking:.0225,conciseness:.6914,conversation_progression:.56},diagnosticMetrics:{key_entity_transcription:.8268,response_speed:12.0952},successRates:{accuracy:{pass_threshold:.2533,mean:.6015,pass_at_k:.56,pass_k:.0815},experience:{pass_threshold:0,mean:.4246,pass_at_k:0,pass_k:0}}},{id:"voxtral-mini-3b-gpt-oss-20b-magpie",name:"voxtral-mini-3b + gpt-oss-20b + magpie",shortName:"gpt-oss-20b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-20b",tts:"magpie",type:"cascade",evaA:.1133,evaX:.3867,accuracyMetrics:{task_completion:.3733,agent_tts_fidelity:.9349,faithfulness:.1367},experienceMetrics:{turn_taking:.5951,conciseness:.6917,conversation_progression:.3667},diagnosticMetrics:{key_entity_transcription:.6618,response_speed:4.4834},successRates:{accuracy:{pass_threshold:.1133,mean:.4816,pass_at_k:.24,pass_k:.0526},experience:{pass_threshold:.3867,mean:.5512,pass_at_k:.78,pass_k:.1541}}},{id:"voxtral-mini-3b-gpt-oss-120b-magpie",name:"voxtral-mini-3b + gpt-oss-120b + magpie",shortName:"gpt-oss-120b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-120b",tts:"magpie",type:"cascade",evaA:.1477,evaX:.5667,accuracyMetrics:{task_completion:.3467,agent_tts_fidelity:.9467,faithfulness:.2967},experienceMetrics:{turn_taking:.6659,conciseness:.7494,conversation_progression:.4767},diagnosticMetrics:{key_entity_transcription:.6906,response_speed:3.3998},successRates:{accuracy:{pass_threshold:.1477,mean:.5279,pass_at_k:.3265,pass_k:.062},experience:{pass_threshold:.5667,mean:.6307,pass_at_k:.92,pass_k:.3341}}},{id:"voxtral-mini-3b-gpt-oss-120b-chatterbox-turbo",name:"voxtral-mini-3b + gpt-oss-120b + chatterbox-turbo",shortName:"gpt-oss-120b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-120b",tts:"chatterbox-turbo",type:"cascade",evaA:.16,evaX:.0933,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9049,faithfulness:.3467},experienceMetrics:{turn_taking:.204,conciseness:.7701,conversation_progression:.5233},diagnosticMetrics:{key_entity_transcription:.6376,response_speed:7.2744},successRates:{accuracy:{pass_threshold:.16,mean:.5372,pass_at_k:.28,pass_k:.08},experience:{pass_threshold:.0933,mean:.4991,pass_at_k:.28,pass_k:.0104}}},{id:"voxtral-mini-3b-qwen3-5-27b-chatterbox-turbo",name:"voxtral-mini-3b + qwen3.5-27b + chatterbox-turbo",shortName:"qwen3.5-27b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"qwen3.5-27b",tts:"chatterbox-turbo",type:"cascade",evaA:.2067,evaX:0,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.796,faithfulness:.3967},experienceMetrics:{turn_taking:.0296,conciseness:.7165,conversation_progression:.5167},diagnosticMetrics:{key_entity_transcription:.7408,response_speed:14.4124},successRates:{accuracy:{pass_threshold:.2067,mean:.5775,pass_at_k:.52,pass_k:.0452},experience:{pass_threshold:0,mean:.4209,pass_at_k:0,pass_k:0}}},{id:"voxtral-mini-3b-qwen3-5-27b-kokoro",name:"voxtral-mini-3b + qwen3.5-27b + kokoro",shortName:"qwen3.5-27b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"qwen3.5-27b",tts:"kokoro",type:"cascade",evaA:.4933,evaX:.2467,accuracyMetrics:{task_completion:.5933,agent_tts_fidelity:.9949,faithfulness:.5067},experienceMetrics:{turn_taking:.374,conciseness:.6838,conversation_progression:.5433},diagnosticMetrics:{key_entity_transcription:.7518,response_speed:5.8276},successRates:{accuracy:{pass_threshold:.4933,mean:.6983,pass_at_k:.74,pass_k:.3348},experience:{pass_threshold:.2467,mean:.5337,pass_at_k:.5,pass_k:.0985}}},{id:"whisper-large-v3-gpt-oss-20b-chatterbox-turbo",name:"whisper-large-v3 + gpt-oss-20b + chatterbox-turbo",shortName:"gpt-oss-20b (whisper-large-v3)",stt:"whisper-large-v3",llm:"gpt-oss-20b",tts:"chatterbox-turbo",type:"cascade",evaA:.0733,evaX:.04,accuracyMetrics:{task_completion:.38,agent_tts_fidelity:.8849,faithfulness:.1533},experienceMetrics:{turn_taking:.1816,conciseness:.7343,conversation_progression:.44},diagnosticMetrics:{key_entity_transcription:.6696,response_speed:7.5545},successRates:{accuracy:{pass_threshold:.0733,mean:.4728,pass_at_k:.18,pass_k:.017},experience:{pass_threshold:.04,mean:.4519,pass_at_k:.12,pass_k:.0044}}},{id:"whisper-large-v3-gpt-oss-120b-kokoro",name:"whisper-large-v3 + gpt-oss-120b + kokoro",shortName:"gpt-oss-120b (whisper-large-v3)",stt:"whisper-large-v3",llm:"gpt-oss-120b",tts:"kokoro",type:"cascade",evaA:.1667,evaX:.52,accuracyMetrics:{task_completion:.28,agent_tts_fidelity:.9645,faithfulness:.2967},experienceMetrics:{turn_taking:.6148,conciseness:.7536,conversation_progression:.5433},diagnosticMetrics:{key_entity_transcription:.6573,response_speed:4.1026},successRates:{accuracy:{pass_threshold:.1667,mean:.5137,pass_at_k:.32,pass_k:.0763},experience:{pass_threshold:.52,mean:.6372,pass_at_k:.84,pass_k:.3244}}}],qte=["#F59E0B","#38BDF8","#34D399","#A78BFA","#F87171","#22D3EE","#FB923C","#818CF8","#F472B6","#4ADE80","#FACC15","#2DD4BF","#C084FC","#FB7185","#67E8F9","#A3E635"],$te=["#B45309","#0369A1","#047857","#6D28D9","#B91C1C","#0E7490","#C2410C","#4338CA","#BE185D","#15803D","#A16207","#0D9488","#7C3AED","#E11D48","#0891B2","#65A30D"];function Fte(e,t){const n=new Set;for(const o of e)o.stt!=="-"&&n.add(o.stt),n.add(o.llm),o.tts!=="-"&&n.add(o.tts);const r=new Map;let s=0;for(const o of n)r.set(o,t[s%t.length]),s++;return r}function Qj({system:e,componentColors:t}){if(e.type==="s2s"||e.type==="2-part"){if(e.tts!=="-")return b.jsxs("span",{className:"text-sm leading-relaxed inline-flex flex-wrap items-baseline",children:[b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.llm)},children:e.llm}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.tts)},children:e.tts})]});const n=t.get(e.llm)||"#F1F5F9";return b.jsx("span",{style:{color:n},children:e.llm})}return b.jsxs("span",{className:"text-sm leading-relaxed inline-flex flex-wrap items-baseline",children:[b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.stt)},children:e.stt}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.llm)},children:e.llm}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.tts)},children:e.tts})]})}const Hte=[{key:null,label:"Default"},{key:"system_stt",label:"STT"},{key:"system_llm",label:"LLM"},{key:"system_tts",label:"TTS"}];function Vl({active:e,dir:t}){return e?t==="desc"?b.jsx(UR,{className:"w-3 h-3 inline ml-0.5"}):b.jsx(qR,{className:"w-3 h-3 inline ml-0.5"}):null}function Jj({title:e,description:t,metricKeys:n,metricLabels:r,dataKey:s,baseColor:o,aggregateColumns:u,aggregateColor:f="#F59E0B",systems:d}){const h=jx(),m=Ote(),p=u??[],v=m==="light"?$te:qte,x=A.useMemo(()=>Fte(d,v),[d,v]),[w,_]=A.useState(null),[S,O]=A.useState("desc"),[M,j]=A.useState(!1),[k,N]=A.useState({top:0,left:0}),C=A.useRef(null),L=A.useRef(null),[I,Y]=A.useState("scores"),te=A.useCallback(()=>{if(C.current){const Z=C.current.getBoundingClientRect();N({top:Z.bottom+4,left:Z.left})}j(Z=>!Z)},[]);A.useEffect(()=>{function Z(oe){L.current&&!L.current.contains(oe.target)&&C.current&&!C.current.contains(oe.target)&&j(!1)}if(M)return document.addEventListener("mousedown",Z),()=>document.removeEventListener("mousedown",Z)},[M]);function ie(Z){w===Z?O(oe=>oe==="desc"?"asc":"desc"):(_(Z),O("desc"))}function K(Z){Z===null?_(null):w===Z?O(oe=>oe==="desc"?"asc":"desc"):(_(Z),O("asc")),j(!1)}const be=A.useMemo(()=>{if(!w)return[...d].sort((he,_e)=>{const J=he.type==="s2s"||he.type==="2-part",re=_e.type==="s2s"||_e.type==="2-part";return J&&!re?-1:!J&&re?1:he.stt.localeCompare(_e.stt)});const Z=he=>{if(w==="system_stt")return he.stt;if(w==="system_llm")return he.llm;if(w==="system_tts")return he.tts;const _e=p.find(J=>J.key===w);return _e?_e.getValue(he):he[s][w]??0},oe=(he,_e)=>{const J=Z(he),re=Z(_e);if(typeof J=="string"&&typeof re=="string")return S==="asc"?J.localeCompare(re):re.localeCompare(J);const Se=J,ee=re;return S==="desc"?ee-Se:Se-ee};return[...d].sort(oe)},[w,S,p,s]),pe={};for(const Z of n){const oe=d.map(he=>he[s][Z]??0);pe[Z]={min:Math.min(...oe),max:Math.max(...oe)}}const xe={};for(const Z of p){const oe=d.map(he=>Z.getValue(he));xe[Z.key]={min:Math.min(...oe),max:Math.max(...oe)}}const V=p.length+n.length,Q=35,ne=`${(100-Q)/V}%`,le=`${Q}%`,ue="text-center py-3 px-1 font-bold text-xs leading-snug cursor-pointer select-none hover:bg-bg-hover/50 transition-colors",P=I==="scores"?p:[],H=I==="metrics"?n:[],ae=I==="scores"?p.length:n.length,se=`${(100-Q)/ae}%`;return b.jsxs("div",{className:"bg-bg-secondary rounded-xl border border-border-default p-4 sm:p-6",children:[b.jsx("h3",{className:"text-lg font-semibold text-text-primary mb-1",children:e}),b.jsx("p",{className:"text-sm text-text-secondary mb-4",children:t}),p.length>0&&n.length>0&&b.jsxs("div",{className:"flex gap-2 mb-4 md:hidden",children:[b.jsx("button",{onClick:()=>Y("scores"),className:`flex-1 px-3 py-2 rounded-lg text-xs font-medium transition-colors ${I==="scores"?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:"Aggregate Scores"}),b.jsx("button",{onClick:()=>Y("metrics"),className:`flex-1 px-3 py-2 rounded-lg text-xs font-medium transition-colors ${I==="metrics"?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:"Individual Metrics"})]}),b.jsx("div",{className:"hidden md:block overflow-x-auto",children:b.jsxs("table",{className:"w-full text-sm",style:{tableLayout:"fixed"},children:[b.jsx("thead",{children:b.jsxs("tr",{className:"border-b border-border-default",children:[b.jsxs("th",{className:"text-left py-3 px-3 text-text-muted font-medium text-sm sticky left-0 bg-bg-secondary z-10",style:{width:le},children:[b.jsxs("button",{ref:C,onClick:te,className:"flex items-center gap-1 hover:text-text-primary transition-colors",children:["System",b.jsx(ai,{className:"w-3.5 h-3.5"}),w?.startsWith("system_")&&b.jsx(Vl,{active:!0,dir:S})]}),M&&G0.createPortal(b.jsx("div",{ref:L,className:"bg-bg-tertiary border border-border-default rounded-lg shadow-xl py-1 min-w-[100px]",style:{position:"fixed",top:k.top,left:k.left,zIndex:9999},children:Hte.map(Z=>b.jsx("button",{onClick:()=>K(Z.key),className:`block w-full text-left px-3 py-1.5 text-xs hover:bg-bg-hover transition-colors ${w===Z.key||Z.key===null&&w===null?"text-purple-light font-medium":"text-text-secondary"}`,children:Z.label},Z.key??"default"))}),document.body)]}),p.map((Z,oe)=>b.jsxs("th",{className:`${ue} ${oe===p.length-1?"border-r-2 border-border-default":""}`,style:{color:f,width:ne},onClick:()=>ie(Z.key),children:[Z.label,b.jsx(Vl,{active:w===Z.key,dir:S})]},Z.key)),n.map(Z=>b.jsxs("th",{className:`${ue} text-text-primary`,style:{width:ne},onClick:()=>ie(Z),children:[r[Z]||Z,b.jsx(Vl,{active:w===Z,dir:S})]},Z))]})}),b.jsx("tbody",{children:be.map(Z=>b.jsxs("tr",{className:"border-b border-border-default/30",children:[b.jsx("td",{className:"py-2.5 px-3 sticky left-0 bg-bg-secondary z-10 whitespace-nowrap",children:b.jsx(Qj,{system:Z,componentColors:x})}),p.map((oe,he)=>{const _e=oe.getValue(Z),{min:J,max:re}=xe[oe.key],{bg:Se,text:ee}=Nf(_e,J,re,f,!1,h);return b.jsx("td",{className:`py-1.5 px-1 text-center ${he===p.length-1?"border-r-2 border-border-default":""}`,children:b.jsx("div",{className:"rounded-md px-0.5 py-1.5 font-mono text-xs font-medium",style:{backgroundColor:Se,color:ee},children:_e.toFixed(2)})},oe.key)}),n.map(oe=>{const he=Z[s][oe]??0,{min:_e,max:J}=pe[oe],re=Zj.has(oe),{bg:Se,text:ee}=Nf(he,_e,J,o,re,h);return b.jsx("td",{className:"py-1.5 px-1 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1.5 font-mono text-xs font-medium",style:{backgroundColor:Se,color:ee},children:he.toFixed(2)})},oe)})]},Z.id))})]})}),b.jsx("div",{className:"md:hidden overflow-x-auto",children:b.jsxs("table",{className:"w-full text-sm",style:{tableLayout:"fixed"},children:[b.jsx("thead",{children:b.jsxs("tr",{className:"border-b border-border-default",children:[b.jsx("th",{className:"text-left py-3 px-2 text-text-muted font-medium text-xs sticky left-0 bg-bg-secondary z-10",style:{width:le},children:"System"}),P.map(Z=>b.jsxs("th",{className:`${ue} text-[10px] sm:text-xs`,style:{color:f,width:se},onClick:()=>ie(Z.key),children:[Z.label.replace("EVA-A ",""),b.jsx(Vl,{active:w===Z.key,dir:S})]},Z.key)),H.map(Z=>b.jsxs("th",{className:`${ue} text-text-primary text-[10px] sm:text-xs`,style:{width:se},onClick:()=>ie(Z),children:[r[Z]||Z,b.jsx(Vl,{active:w===Z,dir:S})]},Z))]})}),b.jsx("tbody",{children:be.map(Z=>b.jsxs("tr",{className:"border-b border-border-default/30",children:[b.jsx("td",{className:"py-2 px-2 sticky left-0 bg-bg-secondary z-10 text-xs",children:b.jsx(Qj,{system:Z,componentColors:x})}),P.map(oe=>{const he=oe.getValue(Z),{min:_e,max:J}=xe[oe.key],{bg:re,text:Se}=Nf(he,_e,J,f,!1,h);return b.jsx("td",{className:"py-1 px-0.5 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1 font-mono text-[10px] sm:text-xs font-medium",style:{backgroundColor:re,color:Se},children:he.toFixed(2)})},oe.key)}),H.map(oe=>{const he=Z[s][oe]??0,{min:_e,max:J}=pe[oe],re=Zj.has(oe),{bg:Se,text:ee}=Nf(he,_e,J,o,re,h);return b.jsx("td",{className:"py-1 px-0.5 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1 font-mono text-[10px] sm:text-xs font-medium",style:{backgroundColor:Se,color:ee},children:he.toFixed(2)})},oe)})]},Z.id))})]})})]})}const Kte=[{title:"Transcription failures cascade into low task completion",description:"Transcription failures around last names and confirmation codes cascade into low task completion as the agent is unable to pull up the user's booking and proceed with the request."},{title:"Turn taking remains a key challenge",description:"Effective turn taking remains a key challenge for cascade systems — most turns are late (>4 seconds)."},{title:"Speech synthesis struggles with alphanumeric codes",description:"Speech synthesis systems generally produce the intended speech but struggle the most with alphanumeric codes, often dropping or switching characters and letters."},{title:"LLMs produce verbose, non-voice-appropriate content",description:"LLMs struggle to produce concise, voice-appropriate content, particularly when trying to list flight options for the user."},{title:"Transcription failures reduce conversation efficiency",description:"Transcription failures also lead to inefficient conversation progression, as the agent cannot move the conversation forward when it's stuck trying to retrieve the user's reservation."},{title:"Audio-native systems show promise",description:"Both audio-native systems sit on the Pareto frontier, while the single speech-to-speech system does not — we aim to benchmark more audio-native and s2s systems to see if this holds across the architectural classes."}],Xte=[{title:"Accuracy–experience trade-off",description:"The Pareto frontier reveals a clear accuracy-experience tradeoff across systems, systems that push harder on accuracy are doing so at the cost of conversational experience, and vice versa."},{title:"Low Pass Rates",description:"Performance remains far from saturated — no system clears 0.5 pass@1 on accuracy, and only a few systems exceed 0.50 EVA-X pass@1, suggesting ample opportunities for improvement."},{title:"Sparse Frontier",description:"Only a few systems sit on the Pareto frontier, meaning most systems are strictly dominated. This concentrates the real decision space: only a small subset of system choices actually matter for navigating the accuracy–experience tradeoff."}],Yte=[{key:"eva_a_pass",label:"EVA-A pass@1",getValue:e=>e.successRates.accuracy.pass_threshold},{key:"eva_a_mean",label:"EVA-A Mean",getValue:e=>e.successRates.accuracy.mean}],Gte=[{key:"eva_x_pass",label:"EVA-X pass@1",getValue:e=>e.successRates.experience.pass_threshold},{key:"eva_x_mean",label:"EVA-X Mean",getValue:e=>e.successRates.experience.mean}];function Wte(){const e=jx(),t=Vte;return b.jsx(wo,{id:"leaderboard",title:"Early Results",subtitle:"Early results on the airline domain (50 scenarios, 3 trials each).",children:b.jsxs("div",{className:"space-y-8",children:[b.jsx(Lte,{systems:t}),b.jsxs("div",{className:"rounded-xl border border-purple/20 bg-purple/5 p-6",children:[b.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[b.jsx("div",{className:"w-9 h-9 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(US,{className:"w-5 h-5 text-purple-light"})}),b.jsx("h3",{className:"text-lg font-bold text-text-primary",children:"Pareto Analysis"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:Xte.map((n,r)=>b.jsxs("div",{className:"rounded-lg bg-bg-secondary border border-border-default p-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-2",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:n.description})]},r))})]}),b.jsx(Jj,{title:"Accuracy Metrics (EVA-A)",description:"Per-metric scores for accuracy. All values normalized to 0-1 (higher is better).",metricKeys:zte,metricLabels:Bte,dataKey:"accuracyMetrics",baseColor:e.accent.purple,aggregateColumns:Yte,aggregateColor:"#F59E0B",systems:t}),b.jsx(Jj,{title:"Experience Metrics (EVA-X)",description:"Per-metric scores for conversational experience. All values normalized to 0-1 (higher is better).",metricKeys:Ite,metricLabels:Ute,dataKey:"experienceMetrics",baseColor:e.accent.blue,aggregateColumns:Gte,aggregateColor:"#F59E0B",systems:t}),b.jsxs("div",{className:"rounded-xl border border-purple/20 bg-purple/5 p-6",children:[b.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[b.jsx("div",{className:"w-9 h-9 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(US,{className:"w-5 h-5 text-purple-light"})}),b.jsx("h3",{className:"text-lg font-bold text-text-primary",children:"Key Insights"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:Kte.map((n,r)=>b.jsxs("div",{className:"rounded-lg bg-bg-secondary border border-border-default p-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-2",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:n.description})]},r))})]})]})})}const Zte={high_level_user_goal:"You want to move your LAX to SFO flight today from the late afternoon to an earlier direct flight that leaves before 2:00 PM, as long as the same-day change fee stays under $80.",decision_tree:{must_have_criteria:["New departure time is today (2026-06-18) and departs LAX before 2:00 PM Pacific.","Same-day change fee is under $80 total (acceptable: $0 to $79.99).","It is a direct flight from LAX to SFO (no connections and no airport changes)."],negotiation_behavior:["If the agent asks for verification details, provide your confirmation code and last name exactly as given in information_required, then wait for the agent to read back your reservation and confirm it is yours; if they read back a different name or itinerary, correct them and re-provide the details.","When the agent offers earlier-flight options, evaluate each option against ALL must-have criteria: (a) date is 2026-06-18, (b) LAX departure time is before 2:00 PM PT, (c) direct LAX→SFO, (d) same-day change fee is under $80.","If both an 11:00 AM and a 1:00 PM direct option meet all must-haves, choose the earliest departure (11:00 AM).","If only one option meets all must-haves, accept that option.",'Before the agent finalizes anything, if the agent has not clearly stated the exact same-day change fee amount, ask: "What will the change fee be in total?" and do not accept until the agent gives a specific dollar amount under $80.','If the agent proposes any option that departs at or after 2:00 PM, has a connection, changes airports, or has a fee of $80 or more, reject it and restate the must-haves once: "It needs to be today, direct LAX to SFO, leaving before 2 PM, and the fee has to be under $80—can you check again?"',"If after one additional search/attempt the agent still cannot offer any option that meets all must-haves, move to failure_condition."],resolution_condition:"The agent has confirmed the rebooking is completed (not just planned) to a direct LAX→SFO flight departing on 2026-06-18 before 2:00 PM PT, has stated the same-day change fee is under $80, AND has provided a concrete post-change booking reference (e.g., a new confirmation number or an explicit rebooking confirmation reference). End the call.",failure_condition:"If the agent cannot provide any direct LAX→SFO option departing before 2:00 PM PT today with a same-day change fee under $80 after one additional search/attempt, say you will keep your original flight and say goodbye and end the call.",escalation_behavior:"Do not ask to speak to a supervisor or live agent. If the agent offers to transfer you to a live agent, you must decline. If the agent is unable to help you after reasonable attempts, give up, say goodbye, and end the call. Never speak to a live agent. If the agent attempts to transfer you anyways, hang up using end_call.",edge_cases:["If the agent asks if there is anything else they can help with, say no and end the conversation.","Never invent new goals, requests, or problems beyond what is defined here.","Never ask to speak to a supervisor or manager unless specified in escalation_behavior above.","If the agent suggests flying from or to a different airport than originally booked, decline and insist on LAX to SFO only.","If the agent suggests standby instead of a confirmed earlier flight, decline standby and ask for a confirmed seat on an earlier direct flight before 2:00 PM."]},information_required:{confirmation_number:"6VORJU",first_name:"Kenji",last_name:"Thompson",travel_date:"2026-06-18",origin_airport:"LAX",destination_airport:"SFO",seat_preference:{first_choice:"window",second_choice:"aisle",third_choice:"middle"},original_travel_details:[{origin:"LAX",destination:"SFO",flight_date:"2026-06-18",departure_time:"17:30",status:"confirmed"}]}},Qte="You're direct and to the point—you don't have time for lengthy explanations or unnecessary back-and-forth. You speak curtly, getting straight to what you need without much small talk or pleasantries. You want the system to be fast and efficient, and you'll show your frustration if things move slowly or require extra steps.",Jte=JSON.parse(`[{"role":"assistant","content":"Hello! How can I help you today?","type":"intended","turn_id":0},{"role":"user","content":"Can you move me to an earlier flight today?","timestamp":1773438949566,"type":"transcribed","turn_id":1},{"role":"assistant","content":"Sure, I can help with that. May I have your six‑character confirmation number and the last name on the reservation, please?","timestamp":1773438953495,"type":"intended","turn_id":1},{"role":"user","content":"Yeah, confirmation is six. Victor Oscar Romeo Juliet Uniform. And the last name is Tom. Thompson.","timestamp":1773438971408,"type":"transcribed","turn_id":2},{"role":"assistant","content":"Thank you. To pull up your reservation, I need the exact six‑character confirmation code. I heard “V O R J U”. Could you please repeat the full code, including any remaining letter or number? Also, just to confirm, the last name is Thompson, correct?","timestamp":1773438978057,"type":"intended","turn_id":2},{"role":"user","content":"Yes. Last name is Thompson. The code is 6-8-1-1. Victor. Oscar Romeo Juliet Uniform.","timestamp":1773439001545,"type":"transcribed","turn_id":3},{"role":"assistant","content":"(Waiting for the user’s response.)","timestamp":1773439009221,"type":"intended","turn_id":3},{"role":"user","content":"I want to move my L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A- p.m. you you Thank you. Thank you. Same day change fee is under $80.","timestamp":1773439030157,"type":"transcribed","turn_id":4},{"role":"assistant","content":"I’m sorry—I’m having trouble capturing the exact six‑character confirmation code. Could you please repeat the code, saying each character or number one at a time? For example, you might say “six, eight, one, one, V, O.” Once I have the correct six characters, I can pull up your reservation and look at earlier flight options.","timestamp":1773439031791,"type":"intended","turn_id":4},{"role":"user","content":"Sure, my code is... Six. Victor. Oscar, Romeo, Juliet uniform.","timestamp":1773439063962,"type":"transcribed","turn_id":5},{"tool_name":"get_reservation","parameters":{"confirmation_number":"6VORJU","last_name":"Thompson"},"timestamp":1773439064577,"type":"tool_call","turn_id":5},{"tool_name":"get_reservation","tool_response":{"status":"success","reservation":{"confirmation_number":"6VORJU","status":"confirmed","passengers":[{"passenger_id":"PAX001","first_name":"Kenji","last_name":"Thompson","ticket_number":"1801234567890","email":"kenji.thompson@example.com","phone":"+1-310-555-0147","elite_status":null,"meal_preference":"none","seat_preference":"no_preference"}],"bookings":[{"journey_id":"FL_SK530_20260618","fare_class":"main_cabin","fare_paid":289,"status":"confirmed","segments":[{"flight_number":"SK530","date":"2026-06-18","fare_paid":289,"seat":null,"bags_checked":0,"meal_request":null}]}],"booking_date":"2026-05-20T13:22:00-07:00","fare_type":"non_refundable","ancillaries":{"seat_selection_fee":0,"bags_fee":0}}},"timestamp":1773439064577,"type":"tool_response","turn_id":5},{"tool_name":"get_flight_status","parameters":{"flight_number":"SK530","flight_date":"2026-06-18"},"timestamp":1773439065128,"type":"tool_call","turn_id":5},{"tool_name":"get_flight_status","tool_response":{"status":"success","journey":{"journey_id":"FL_SK530_20260618","date":"2026-06-18","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"status":"scheduled","bookable":true,"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null}}},"timestamp":1773439065128,"type":"tool_response","turn_id":5},{"tool_name":"search_rebooking_options","parameters":{"origin":"LAX","destination":"SFO","date":"2026-06-18","passenger_count":1,"fare_class":"any"},"timestamp":1773439065959,"type":"tool_call","turn_id":5},{"tool_name":"search_rebooking_options","tool_response":{"status":"success","options":[{"journey_id":"FL_SK090_SK410_20260618","origin":"LAX","destination":"SFO","num_stops":1,"total_duration_minutes":170,"segments":[{"segment_number":1,"flight_number":"SK090","origin":"LAX","destination":"SJC","scheduled_departure":"09:20","origin_utc_offset":-8,"scheduled_arrival":"10:30","destination_utc_offset":-8,"duration_minutes":70,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"33A","available_seats":{"basic_economy":8,"main_cabin":14,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":139,"main_cabin":229,"premium_economy":489,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}},{"segment_number":2,"flight_number":"SK410","origin":"SJC","destination":"SFO","scheduled_departure":"11:35","origin_utc_offset":-8,"scheduled_arrival":"12:10","destination_utc_offset":-8,"duration_minutes":35,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"12B","available_seats":{"basic_economy":9,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":89,"main_cabin":129,"premium_economy":239,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}}],"departure_time":"09:20","arrival_time":"12:10","available_seats":{"basic_economy":8,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fare":228},{"journey_id":"FL_SK130_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"13:00","arrival_time":"14:25","available_seats":{"basic_economy":6,"main_cabin":9,"premium_economy":3,"business":2,"first":0},"fare":189},{"journey_id":"FL_SK215_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK215","origin":"LAX","destination":"SFO","scheduled_departure":"14:40","origin_utc_offset":-8,"scheduled_arrival":"16:05","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"737-800","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"47D","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fares":{"basic_economy":169,"main_cabin":259,"premium_economy":529,"business":979,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"14:40","arrival_time":"16:05","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fare":169},{"journey_id":"FL_SK530_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":23,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"17:30","arrival_time":"18:55","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fare":179}],"count":4,"message":"4 flight(s) found"},"timestamp":1773439065959,"type":"tool_response","turn_id":5},{"role":"assistant","content":"I’ve found a few earlier flights from Los Angeles to San Francisco today.\\n\\n1. **One‑stop option** – depart at nine twenty a.m., connect in San Jose and arrive at twelve ten p.m. (fare $228 in main cabin). \\n2. **Direct flight** – depart at one o’clock p.m., arrive at two twenty‑five p.m. (fare $289, same as your current ticket). \\n3. **Direct flight** – depart at two forty p.m., arrive at four oh‑five p.m. (fare $259, a little cheaper).\\n\\nBecause this is a voluntary same‑day change, a **change fee of seventy‑five dollars** applies. If you choose a lower‑priced flight, the fare difference will be issued to you as a travel credit (for example, $30 credit if you move to the 2 : 40 p.m. flight, or $61 credit for the early morning connection).\\n\\nDo any of these options work for you? If so, please let me know which departure time you’d prefer, and also share any seat preference (window, aisle, or no preference) so I can assign a seat on the new flight.","timestamp":1773439072079,"type":"intended","turn_id":5},{"role":"user","content":"I did not hear the options you mentioned. Can you repeat the earlier LAX to SFO flights? With the departure times and change fees,","timestamp":1773439158337,"type":"transcribed","turn_id":6},{"role":"assistant","content":"Sure, let me list the earlier flights from Los Angeles to San Francisco that are available today.\\n\\n**Option 1 – one‑stop connection** \\n- Departure from LAX at nine twenty a.m. \\n- Connect in San Jose and arrive at San Francisco at twelve ten p.m. \\n- Main‑cabin fare is two‑hundred twenty‑eight dollars. \\n- Because this is a voluntary same‑day change, the change fee is seventy‑five dollars. Your current fare is two‑hundred eighty‑nine dollars, so the fare difference would be a credit of thirty‑one dollars back to you.\\n\\n**Option 2 – direct flight** \\n- Departure from LAX at one o’clock p.m. \\n- Arrive at San Francisco at two twenty‑five p.m. \\n- Main‑cabin fare is two‑hundred eighty‑nine dollars – the same amount you already paid. \\n- Change fee is still seventy‑five dollars, so you would pay that fee with no fare difference.\\n\\n**Option 3 – direct flight** \\n- Departure from LAX at two forty p.m. \\n- Arrive at San Francisco at four oh‑five p.m. \\n- Main‑cabin fare is two‑hundred fifty‑nine dollars. \\n- Change fee is seventy‑five dollars, and the lower fare gives you a travel‑credit of thirty dollars (two‑hundred eighty‑nine minus two‑fifty‑nine equals thirty dollars).\\n\\nAll of these flights are still open for booking today. Which departure time would you like to switch to? Also, do you have a seat preference—window, aisle, or no preference?","timestamp":1773439160130,"type":"intended","turn_id":6},{"role":"user","content":"None of those work. It needs to be today. Direct LAX. to SS. F-O. Leaving before 2 p.m. and the fee has to be under $80. Can you check again?","timestamp":1773439255746,"type":"transcribed","turn_id":7},{"tool_name":"search_rebooking_options","parameters":{"origin":"LAX","destination":"SFO","date":"2026-06-18","passenger_count":1,"fare_class":"any"},"timestamp":1773439268671,"type":"tool_call","turn_id":7},{"tool_name":"search_rebooking_options","tool_response":{"status":"success","options":[{"journey_id":"FL_SK090_SK410_20260618","origin":"LAX","destination":"SFO","num_stops":1,"total_duration_minutes":170,"segments":[{"segment_number":1,"flight_number":"SK090","origin":"LAX","destination":"SJC","scheduled_departure":"09:20","origin_utc_offset":-8,"scheduled_arrival":"10:30","destination_utc_offset":-8,"duration_minutes":70,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"33A","available_seats":{"basic_economy":8,"main_cabin":14,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":139,"main_cabin":229,"premium_economy":489,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}},{"segment_number":2,"flight_number":"SK410","origin":"SJC","destination":"SFO","scheduled_departure":"11:35","origin_utc_offset":-8,"scheduled_arrival":"12:10","destination_utc_offset":-8,"duration_minutes":35,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"12B","available_seats":{"basic_economy":9,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":89,"main_cabin":129,"premium_economy":239,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}}],"departure_time":"09:20","arrival_time":"12:10","available_seats":{"basic_economy":8,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fare":228},{"journey_id":"FL_SK130_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"13:00","arrival_time":"14:25","available_seats":{"basic_economy":6,"main_cabin":9,"premium_economy":3,"business":2,"first":0},"fare":189},{"journey_id":"FL_SK215_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK215","origin":"LAX","destination":"SFO","scheduled_departure":"14:40","origin_utc_offset":-8,"scheduled_arrival":"16:05","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"737-800","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"47D","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fares":{"basic_economy":169,"main_cabin":259,"premium_economy":529,"business":979,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"14:40","arrival_time":"16:05","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fare":169},{"journey_id":"FL_SK530_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":23,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"17:30","arrival_time":"18:55","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fare":179}],"count":4,"message":"4 flight(s) found"},"timestamp":1773439268671,"type":"tool_response","turn_id":7},{"role":"assistant","content":"I do have a direct flight that meets those criteria:\\n\\n- **Flight SK 130** – departs Los Angeles at **one o’clock p.m.**, arrives San Francisco at **two twenty‑five p.m.** \\n- It’s a nonstop service, just like your current booking. \\n- Because this is a same‑day voluntary change, the change fee is **seventy‑five dollars**, which is under your $80 limit. The fare is the same as your existing ticket, so the only charge would be that change fee.\\n\\nWould you like to switch to flight SK 130? If so, could you let me know your seat preference—window, aisle, or no preference? Once I have that, I’ll go ahead and rebook you.","timestamp":1773439270267,"type":"intended","turn_id":7},{"role":"user","content":"That one works. I'll take the flight that leaves at 1:00 PM. Seek Preferences window.","timestamp":1773439326852,"type":"transcribed","turn_id":8},{"tool_name":"rebook_flight","parameters":{"confirmation_number":"6VORJU","journey_id":"FL_SK530_20260618","new_journey_id":"FL_SK130_20260618","rebooking_type":"voluntary","waive_change_fee":false,"new_fare_class":null},"timestamp":1773439328182,"type":"tool_call","turn_id":8},{"tool_name":"rebook_flight","tool_response":{"status":"success","confirmation_number":"6VORJU","new_journey":{"journey_id":"FL_SK130_20260618","num_stops":0,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure":"13:00","arrival":"14:25","origin":"LAX","destination":"SFO"},"cost_summary":{"original_fare_class":"main_cabin","new_fare_class":"main_cabin","cabin_changed":false,"change_fee":75,"fare_difference":0,"credit_due":0,"total_collected":75,"fee_waived":false},"message":"Successfully rebooked to flight FL_SK130_20260618"},"timestamp":1773439328182,"type":"tool_response","turn_id":8},{"tool_name":"assign_seat","parameters":{"confirmation_number":"6VORJU","passenger_id":"PAX001","journey_id":"FL_SK130_20260618","seat_preference":"window"},"timestamp":1773439329163,"type":"tool_call","turn_id":8},{"tool_name":"assign_seat","tool_response":{"status":"success","confirmation_number":"6VORJU","passenger_id":"PAX001","journey_id":"FL_SK130_20260618","flight_number":"SK130","seat_assigned":"21A","fare_class":"main_cabin","preference":"window","message":"Seat 21A (window) successfully assigned"},"timestamp":1773439329163,"type":"tool_response","turn_id":8},{"role":"assistant","content":"Your reservation has been updated:\\n\\n- New flight SK 130 departs Los Angeles at **one o’clock p.m.** and arrives in San Francisco at **two twenty‑five p.m.** today. \\n- A **change fee of seventy‑five dollars** has been applied; the fare itself remains the same. \\n- Your seat is a **window seat, 21 A**, on the new flight.\\n\\nEverything else from your original booking—name, ticket number, and any existing preferences—has been transferred.\\n\\nIf you’d like to add checked bags or make any other changes, just let me know. Otherwise, you’re all set. Thank you for flying SkyWay Airlines, and have a pleasant trip!","timestamp":1773439330430,"type":"intended","turn_id":8},{"role":"user","content":"No, that is all. Thanks. Goodbye.","timestamp":1773439384679,"type":"transcribed","turn_id":9},{"role":"assistant","content":"You’re very welcome. Have a great flight, and thank you for choosing SkyWay Airlines. Goodbye. [speaker likely cut itself off]","timestamp":1773439385281,"type":"intended","turn_id":9}]`),ene=JSON.parse(`[{"name":"task_completion","displayName":"Task Completion","category":"eva-a","type":"deterministic","score":1,"normalizedScore":1,"details":{"match":true,"message":"Final database state matches expected state exactly"}},{"name":"agent_speech_fidelity","displayName":"Agent Speech Fidelity","category":"eva-a","type":"lalm_judge","score":1,"normalizedScore":1,"details":{"aggregation":"mean","num_turns":10,"num_evaluated":9,"per_turn_ratings":{"0":1,"1":1,"2":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1},"per_turn_explanations":{"0":"The audio faithfully reproduces the intended text 'Hello! How can I help you today?' without any errors.","1":"The audio faithfully reproduces the intended text 'Sure, I can help with that. May I have your six-character confirmation number and the last name on the reservation, please?' without any errors.","2":"The audio faithfully reproduces the intended text, including the spelled-out confirmation code 'V O R J U' and the last name 'Thompson'.","4":"The audio faithfully reproduces the intended text, including the example spelled-out code 'six, eight, one, one, V, O.' without any errors.","5":"The audio faithfully reproduces the intended text, including all flight times, dollar amounts, and city names.","6":"The audio faithfully reproduces the intended text, including all flight options, times, dollar amounts, and city names.","7":"The audio faithfully reproduces the intended text, including the flight number 'SK 130', times, and dollar amounts.","8":"The audio faithfully reproduces the intended text, including the flight number 'SK 130', times, dollar amounts, and seat number '21 A'.","9":"The audio faithfully reproduces the intended text up to the point where the speaker cuts itself off, as indicated by the tag."}}},{"name":"faithfulness","displayName":"Faithfulness","category":"eva-a","type":"llm_judge","score":1,"normalizedScore":0,"details":{"rating":1,"explanation":{"dimensions":{"fabricating_tool_parameters":{"evidence":"In Turn 8, the rebook_flight call uses \`rebooking_type: 'voluntary'\` instead of \`'same_day'\`. The assistant had been describing this as a 'same-day voluntary change' throughout the conversation and applying the same-day confirmed change fee of $75. However, looking at the tool specification, 'same_day' is a valid rebooking_type option, and since this is indeed a same-day change, using 'voluntary' instead of 'same_day' could be considered a minor categorization issue. That said, the fee outcome ($75) is the same for a main_cabin voluntary change and a same-day confirmed change, so this doesn't materially affect the result. The \`new_fare_class: None\` parameter is passed explicitly as null, which is reasonable since the fare class isn't changing.","flagged":false,"rating":3},"misrepresenting_tool_result":{"evidence":"In Turn 5, the assistant presents Option 1 (the connection) fare as $228 in main cabin. However, the tool result shows the connection's individual segment fares for main_cabin are $229 (SK090) + $129 (SK410), while the journey-level 'fare' field shows $228. The assistant used the journey-level fare of $228. In Turn 5, the assistant states for Option 3 (SK215): 'fare $259, a little cheaper' - the tool shows the main_cabin fare for SK215 is $259, which is correct. However, looking more carefully at the fare difference calculations in Turn 6: for Option 1, the assistant says 'credit of thirty-one dollars' ($289-$228=$61, not $31) - wait, let me recheck. The fare difference is $289-$228=$61, but the assistant says $31. Actually in Turn 5 the assistant says '$61 credit for the early morning connection' which is correct. In Turn 6, the assistant says 'credit of thirty-one dollars' for Option 1. $289-$228=$61, not $31. This is a misrepresentation of a calculated value from tool results. For Option 3 in Turn 6, the assistant says 'credit of thirty dollars' ($289-$259=$30), which is correct.","flagged":true,"rating":1},"violating_policies":{"evidence":"The assistant used rebooking_type 'voluntary' with the standard $75 change fee. For a same-day change, the same-day confirmed change fee is also $75, so the financial outcome is identical. The assistant did explain fees before acting in early turns, and obtained explicit user confirmation in Turn 8 before rebooking. The assistant asked for seat preference before assigning seats. The assistant provided a summary at the end. The assistant did not mention the standby option (same-day standby is free for all fare classes), which could be considered a failure to offer alternatives, but this is minor since the user specifically asked for a confirmed change. One potential issue: the assistant told the user about the $75 change fee and fare implications across Turns 5-7, and the user confirmed in Turn 8, so the 'explain before acting' requirement was met. No significant policy violations detected.","flagged":false,"rating":3},"failing_to_disambiguate":{"evidence":"In Turns 2-4, the user provided the confirmation code in a confusing manner across multiple turns ('six Victor Oscar Romeo Juliet Uniform', then '6-8-1-1 Victor Oscar Romeo Juliet Uniform'). In Turn 3, the user says '6-8-1-1. Victor. Oscar Romeo Juliet Uniform' which could be interpreted as '6811VORJU' (9 characters) or some other combination. The assistant appropriately asked for clarification. In Turn 5, the user said 'Six. Victor. Oscar, Romeo, Juliet uniform' which the assistant interpreted as '6VORJU' (6 characters) and it worked. However, the earlier Turn 3 included '6-8-1-1' which was never reconciled - the assistant could have tried combinations including those digits. Since the final attempt succeeded, this is not a material issue. The user's Turn 4 was garbled (repeated 'L-A' many times and mentioned 'Same day change fee is under $80') which the assistant appropriately handled by re-asking.","flagged":false,"rating":3},"hallucination":{"evidence":"In Turn 5, the assistant mentions issuing a 'travel credit' for fare differences on downgrade scenarios. Per policy, downgrade to lower fare results in travel credit, so this is grounded. In Turn 8's summary, the assistant says 'Everything else from your original booking—name, ticket number, and any existing preferences—has been transferred.' The original booking had no seat assigned, no bags, and no meal request, so saying preferences were 'transferred' slightly embellishes, but this is a conversational courtesy rather than a factual claim. No significant hallucinations detected.","flagged":false,"rating":3}}},"num_turns":31}},{"name":"conciseness","displayName":"Conciseness","category":"eva-x","type":"llm_judge","score":2.2,"normalizedScore":0.6,"details":{"aggregation":"mean","num_turns":10,"num_evaluated":10,"mean_rating":2.2,"per_turn_ratings":{"0":3,"1":3,"2":2,"3":1,"4":3,"5":1,"6":1,"7":3,"8":2,"9":3},"per_turn_explanations":{"0":"Brief, friendly opening question with no extra detail; ideal for voice.","1":"Directly asks for the two required identifiers (confirmation code and last name) in one concise prompt; easy to follow.","2":"Appropriately requests clarification after mishearing the code and confirms the last name. Slightly wordier than necessary (\\"including any remaining letter or number\\") but still very manageable in voice and justified by the identification problem.","3":"The assistant provides no spoken guidance and effectively stalls with “waiting,” which is not helpful in a voice flow and forces the user to carry the conversation without direction.","4":"Clear request to repeat the confirmation code one character at a time, with a helpful example, and explains why (to pull up the reservation). This is appropriate given prior confusion and stays focused.","5":"Presents three alternatives with multiple times, fares, a fee, and multiple example credit calculations in one turn, then adds an additional request for seat preference. For voice, this is a lot to retain and includes extra arithmetic/explanatory detail that could be deferred until the user picks an option.","6":"The user asked for repetition, so listing options again is warranted, but the assistant over-structures it with many bullet points, repeats the same $75 fee three times, and includes detailed fare-difference math and credit explanations for each option. This increases cognitive load for spoken delivery.","7":"Concise: identifies the single flight meeting the constraints, states key times, confirms nonstop, and gives the fee under $80. Ends with a simple confirmation question plus seat preference request—reasonable for the next step.","8":"Clear recap of the successful change with the essential details (new flight/time, change fee, seat assignment). The extra line about transferring everything else and offering bags/other changes adds slight unnecessary length, but it’s still easy to digest and appropriate as a booking-confirmation wrap-up.","9":"Short, polite closing suitable for voice; no overload."},"per_turn_failure_modes":{"0":[],"1":[],"2":["verbosity_or_filler"],"3":["contextually_disproportionate_detail"],"4":[],"5":["excess_information_density","over_enumeration_or_list_exhaustion","contextually_disproportionate_detail"],"6":["over_enumeration_or_list_exhaustion","excess_information_density","verbosity_or_filler"],"7":[],"8":["verbosity_or_filler"],"9":[]}}},{"name":"conversation_progression","displayName":"Conversation Progression","category":"eva-x","type":"llm_judge","score":2,"normalizedScore":0.5,"details":{"rating":2,"explanation":{"dimensions":{"unnecessary_tool_calls":{"evidence":"At Turn 7 the assistant calls \`search_rebooking_options\` again with the same parameters as in Turn 5, despite no new constraints that would change the search results and the prior call already returned the full set of options.","flagged":true,"rating":2},"information_loss":{"evidence":"The assistant generally retains key facts once established (e.g., uses confirmation number 6VORJU and last name Thompson successfully in Turn 5, and then rebooks correctly in Turn 8). Earlier requests to repeat the confirmation code are justified by clearly garbled/partial user input (Turns 2–4).","flagged":false,"rating":3},"redundant_statements":{"evidence":"The assistant repeats the flight options in Turn 6, but this is explicitly requested by the user (“Can you repeat the earlier LAX to SFO flights?”). The final confirmation after rebooking (Turn 8) is a standard helpful recap rather than unnecessary repetition.","flagged":false,"rating":3},"question_quality":{"evidence":"The assistant’s questions are targeted and action-enabling (confirmation code/last name for lookup; then asks which option and seat preference). When the user adds constraints (direct, before 2 p.m., fee under $80), the assistant returns the matching option and asks for confirmation/seat preference.","flagged":false,"rating":3}},"flags_count":""},"num_turns":31}},{"name":"turn_taking","displayName":"Turn Taking","category":"eva-x","type":"llm_judge","score":4.5,"normalizedScore":0.25,"details":{"aggregation":"abs_mean","num_turns":9,"num_evaluated":9,"per_turn_judge_timing_ratings":{"1":"Late","2":"Late","3":"Early / Interrupting","4":"On-Time","5":"Late","6":"On-Time","7":"Late","8":"Late"},"per_turn_judge_timing_explanations":{"1":"The user’s request is complete (“…earlier flight today?”) with no overlap tags. The agent starts 5.507s later, which exceeds the 4s threshold and would feel like an awkward pause.","2":"User finishes providing the confirmation code and last name; the utterance is complete and there are no interruption indicators. The agent begins 4.940s after user end, which is >4s and thus late.","3":"The user’s statement ends at 67.744s, but the agent starts at 67.917s (0.172s later), which is under the 200ms cutoff. Even without explicit interruption tags, this is effectively too early/over-eager turn-taking.","4":"User’s request about changing the LAX→SFO flight is syntactically complete, and no interruption tags indicate overlap. The agent responds after a 2.286s gap, which is within the on-time range.","5":"User finishes spelling the code and stops; no overlap tags are present. The agent waits 9.466s to respond, which is well beyond 4s and clearly late.","6":"The user asks to repeat the options and finishes the question; no interruption tags suggest they were still talking. The agent begins 2.759s later, a normal conversational gap.","7":"User completes the request to check again (direct flight before 2pm, fee under $80) with no overlap markers. The agent starts 4.407s later, slightly over the 4s threshold, so it’s late.","8":"User accepts the 1pm flight and states a window preference, which is complete. The agent waits 5.500s before confirming, exceeding 4s and thus late."},"num_not_applicable":1}},{"name":"transcription_accuracy_key_entities","displayName":"Transcription Accuracy (Key Entities)","category":"diagnostic","type":"llm_judge","score":0.762,"normalizedScore":0.762,"details":{"aggregation":"mean","num_turns":9,"num_evaluated":9,"per_turn_ratings":{"1":-1,"2":1,"3":0.3333333333333333,"4":0.25,"5":1,"6":1,"7":0.75,"8":1,"9":-1},"per_turn_explanations":{"1":"No key entities (names, codes, dates/times, amounts, etc.) present to evaluate.","2":"All 2 key entities transcribed correctly (confirmation code and last name).","3":"1 out of 3 entities correct. Last name correct; confirmation code mis-transcribed (extra digits).","4":"1 out of 4 entities correct. $80 captured, but LAX/SFO and '2 PM' were not correctly transcribed.","5":"Confirmation code transcribed correctly.","6":"Both airport codes (LAX and SFO) transcribed correctly.","7":"3 out of 4 entities correct. SFO was mis-transcribed; LAX, 2 PM, and $80 were correct.","8":"Both entities (1 PM and window seat preference) transcribed correctly.","9":"No key entities present to evaluate."},"per_turn_entity_details":{"1":{"turn_id":1,"entities":[],"summary":"No key entities (names, codes, dates/times, amounts, etc.) present to evaluate."},"2":{"turn_id":2,"entities":[{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"six Victor Oscar Romeo Juliet Uniform","analysis":"Confirmation code phrase matches (minor punctuation/pauses ignored).","correct":true,"skipped":false},{"type":"name","value":"Thompson","transcribed_value":"Tom. Thompson","analysis":"Last name 'Thompson' is present exactly; extra 'Tom' does not change that the entity was captured.","correct":true,"skipped":false}],"summary":"All 2 key entities transcribed correctly (confirmation code and last name)."},"3":{"turn_id":3,"entities":[{"type":"name","value":"Thompson","transcribed_value":"Thompson","analysis":"Matches exactly.","correct":true,"skipped":false},{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"6-8-1-1 Victor Oscar Romeo Juliet Uniform","analysis":"Code corrupted: expected starts with 'six' then letters; transcription inserted extra digits '8-1-1' not in expected.","correct":false,"skipped":false},{"type":"confirmation_code","value":"six","transcribed_value":"6-8-1-1","analysis":"The repeated final 'six' was transcribed as '6-8-1-1', which does not match.","correct":false,"skipped":false}],"summary":"1 out of 3 entities correct. Last name correct; confirmation code mis-transcribed (extra digits)."},"4":{"turn_id":4,"entities":[{"type":"place","value":"L A X","transcribed_value":"L-A (repeated many times)","analysis":"Expected airport code 'LAX' was not captured; transcription devolves into repeated 'L-A' and does not clearly contain 'LAX'.","correct":false,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"missing","analysis":"Expected 'SFO' not present in transcription.","correct":false,"skipped":false},{"type":"time","value":"two p m","transcribed_value":"p.m.","analysis":"Time value missing the 'two/2' component; only 'p.m.' appears.","correct":false,"skipped":false},{"type":"amount","value":"eighty dollars","transcribed_value":"$80","analysis":"Matches semantically ($80).","correct":true,"skipped":false}],"summary":"1 out of 4 entities correct. $80 captured, but LAX/SFO and '2 PM' were not correctly transcribed."},"5":{"turn_id":5,"entities":[{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"Six Victor Oscar Romeo Juliet uniform","analysis":"Matches exactly aside from capitalization/punctuation.","correct":true,"skipped":false}],"summary":"Confirmation code transcribed correctly."},"6":{"turn_id":6,"entities":[{"type":"place","value":"L A X","transcribed_value":"LAX","analysis":"Matches (formatting difference only).","correct":true,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"SFO","analysis":"Matches (formatting difference only).","correct":true,"skipped":false}],"summary":"Both airport codes (LAX and SFO) transcribed correctly."},"7":{"turn_id":7,"entities":[{"type":"place","value":"L A X","transcribed_value":"LAX","analysis":"Matches (formatting difference only).","correct":true,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"SS. F-O","analysis":"Does not match exactly; 'SS F-O' is not 'SFO'.","correct":false,"skipped":false},{"type":"time","value":"two p m","transcribed_value":"2 p.m.","analysis":"Matches semantically.","correct":true,"skipped":false},{"type":"amount","value":"eighty dollars","transcribed_value":"$80","analysis":"Matches semantically ($80).","correct":true,"skipped":false}],"summary":"3 out of 4 entities correct. SFO was mis-transcribed; LAX, 2 PM, and $80 were correct."},"8":{"turn_id":8,"entities":[{"type":"time","value":"one p m","transcribed_value":"1:00 PM","analysis":"Matches semantically.","correct":true,"skipped":false},{"type":"seat_preference","value":"window","transcribed_value":"window","analysis":"Seat preference 'window' present (minor wording error 'Seek Preferences' ignored).","correct":true,"skipped":false}],"summary":"Both entities (1 PM and window seat preference) transcribed correctly."},"9":{"turn_id":9,"entities":[],"summary":"No key entities present to evaluate."}},"per_turn_normalized":{"1":-1,"2":1,"3":0.3333333333333333,"4":0.25,"5":1,"6":1,"7":0.75,"8":1,"9":-1},"num_not_applicable":2}}]`),Nh={userGoal:Zte,userPersona:Qte,conversationTrace:Jte,metrics:ene},Ki=Nh.userGoal,Xi={highLevelGoal:Ki.high_level_user_goal,decisionTree:{mustHaveCriteria:Ki.decision_tree.must_have_criteria,negotiationBehavior:Ki.decision_tree.negotiation_behavior,resolutionCondition:Ki.decision_tree.resolution_condition,failureCondition:Ki.decision_tree.failure_condition,escalationBehavior:Ki.decision_tree.escalation_behavior,edgeCases:Ki.decision_tree.edge_cases},informationRequired:Ki.information_required},tne=Nh.userPersona;function nne(e){const t=[];for(let n=0;n({name:e.name,displayName:e.displayName,category:e.category,type:e.type,score:e.score,normalizedScore:e.normalizedScore,details:e.details})),rne=Mx.filter(e=>e.category==="eva-a"),ine=Mx.filter(e=>e.category==="eva-x"),ane=Mx.filter(e=>e.category==="diagnostic");function eM(e){const t=Math.floor(e/60),n=Math.floor(e%60);return`${t}:${n.toString().padStart(2,"0")}`}function sne({src:e}){const t=A.useRef(null),n=A.useRef(null),[r,s]=A.useState(!1),[o,u]=A.useState(0),[f,d]=A.useState(0),[h,m]=A.useState(!1);A.useEffect(()=>{const _=t.current;if(!_)return;const S=()=>u(_.currentTime),O=()=>d(_.duration),M=()=>s(!1);return _.addEventListener("timeupdate",S),_.addEventListener("loadedmetadata",O),_.addEventListener("ended",M),()=>{_.removeEventListener("timeupdate",S),_.removeEventListener("loadedmetadata",O),_.removeEventListener("ended",M)}},[]);const p=A.useCallback(()=>{const _=t.current;_&&(r?_.pause():_.play(),s(!r))},[r]),v=A.useCallback(()=>{const _=t.current;_&&(_.muted=!h,m(!h))},[h]),x=A.useCallback(_=>{const S=t.current,O=n.current;if(!S||!O)return;const M=O.getBoundingClientRect(),j=Math.max(0,Math.min(1,(_.clientX-M.left)/M.width));S.currentTime=j*f},[f]),w=f>0?o/f*100:0;return b.jsxs("div",{className:"rounded-xl bg-bg-secondary border border-border-default p-4",children:[b.jsx("audio",{ref:t,preload:"metadata",children:b.jsx("source",{src:e,type:"audio/wav"})}),b.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[b.jsx(Gy,{className:"w-5 h-5 text-purple-light"}),b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Conversation Audio"}),b.jsx("span",{className:"text-[10px] px-2 py-0.5 rounded-full bg-bg-tertiary text-text-muted border border-border-default",children:"Recording"})]}),b.jsxs("div",{className:"flex items-center gap-3",children:[b.jsx("button",{onClick:p,className:"w-10 h-10 rounded-full bg-purple/20 hover:bg-purple/30 flex items-center justify-center transition-colors flex-shrink-0",children:r?b.jsx(f6,{className:"w-5 h-5 text-purple-light"}):b.jsx(p6,{className:"w-5 h-5 text-purple-light ml-0.5"})}),b.jsx("span",{className:"text-xs font-mono text-text-muted w-10 text-right flex-shrink-0",children:eM(o)}),b.jsx("div",{ref:n,onClick:x,className:"flex-1 h-2 bg-bg-tertiary rounded-full cursor-pointer group relative",children:b.jsx("div",{className:"h-full bg-purple rounded-full transition-[width] duration-100 relative",style:{width:`${w}%`},children:b.jsx("div",{className:"absolute right-0 top-1/2 -translate-y-1/2 w-3.5 h-3.5 rounded-full bg-purple-light border-2 border-bg-secondary opacity-0 group-hover:opacity-100 transition-opacity"})})}),b.jsx("span",{className:"text-xs font-mono text-text-muted w-10 flex-shrink-0",children:f>0?eM(f):"--:--"}),b.jsx("button",{onClick:v,className:"w-8 h-8 rounded-lg hover:bg-bg-tertiary flex items-center justify-center transition-colors flex-shrink-0",children:h?b.jsx(M6,{className:"w-4 h-4 text-text-muted"}):b.jsx(Gy,{className:"w-4 h-4 text-text-muted"})})]})]})}function one(e){const t=new Map;for(let n=0;nb.jsxs("div",{className:"flex gap-2 text-xs",children:[b.jsxs("span",{className:"text-text-muted font-mono",children:[u,":"]}),b.jsx("span",{className:"text-text-secondary font-mono",children:JSON.stringify(f)})]},u))})]}),t?.toolResponse&&b.jsxs("div",{className:"border-t border-border-default/50",children:[b.jsxs("button",{onClick:()=>o(!s),className:"w-full flex items-center gap-2 px-3 py-2 text-[10px] text-text-muted font-semibold uppercase tracking-wider hover:bg-bg-hover/30 transition-colors",children:[s?b.jsx(ai,{className:"w-3 h-3"}):b.jsx(sM,{className:"w-3 h-3"}),"Response"]}),s&&b.jsx("div",{className:"px-3 pb-3",children:b.jsx("pre",{className:"text-xs text-text-secondary font-mono leading-relaxed max-h-48 overflow-y-auto overflow-x-auto bg-bg-tertiary rounded-lg p-3",children:JSON.stringify(t.toolResponse,null,2)})})]})]})})}function ql({title:e,icon:t,children:n,defaultOpen:r=!1}){const[s,o]=A.useState(r);return b.jsxs("div",{children:[b.jsxs("button",{onClick:()=>o(!s),className:"w-full flex items-center gap-2 rounded-lg border border-border-default bg-bg-primary px-3 py-2 hover:bg-bg-hover/30 transition-colors",children:[b.jsx(t,{className:"w-3.5 h-3.5 text-text-muted"}),b.jsx("span",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider flex-1 text-left",children:e}),b.jsx(ai,{className:`w-3.5 h-3.5 text-text-muted transition-transform ${s?"rotate-180":""}`})]}),s&&b.jsx("div",{className:"mt-2 bg-bg-primary rounded-lg p-3",children:n})]})}function cne(){const[e,t]=A.useState(!0),n=Object.entries(Xi.informationRequired).map(([r,s])=>{const o=r.replace(/_/g," ").replace(/\b\w/g,f=>f.toUpperCase()),u=typeof s=="object"?JSON.stringify(s):String(s);return[o,u]});return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center gap-3 mb-0 hover:opacity-80 transition-opacity",children:[b.jsx("div",{className:"w-10 h-10 rounded-full bg-blue/20 flex items-center justify-center flex-shrink-0",children:b.jsx(Yy,{className:"w-5 h-5 text-blue-light"})}),b.jsxs("div",{className:"flex-1 text-left",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"User Goal"}),b.jsx("div",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:"Scenario Briefing"})]}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${e?"rotate-180":""}`})]}),e&&b.jsxs("div",{className:"mt-4",children:[b.jsx("div",{className:"border-l-2 border-blue/40 pl-4 mb-5",children:b.jsx("p",{className:"text-sm text-text-primary leading-relaxed",children:Xi.highLevelGoal})}),b.jsxs("div",{className:"mb-4 bg-bg-tertiary rounded-lg p-3",children:[b.jsx("div",{className:"text-[10px] font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Persona"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:tne})]}),b.jsxs("div",{className:"mb-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-2.5",children:"Must-Have Criteria"}),b.jsx("div",{className:"space-y-2",children:Xi.decisionTree.mustHaveCriteria.map((r,s)=>b.jsxs("div",{className:"flex gap-2 items-start",children:[b.jsx(Xy,{className:"w-3.5 h-3.5 text-blue-light mt-0.5 flex-shrink-0"}),b.jsx("span",{className:"text-xs text-text-secondary leading-relaxed",children:r})]},s))})]}),b.jsxs("div",{className:"space-y-2",children:[b.jsx(ql,{title:"Negotiation Behavior",icon:oM,children:b.jsx("div",{className:"space-y-2.5",children:Xi.decisionTree.negotiationBehavior.map((r,s)=>b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:r},s))})}),b.jsx(ql,{title:"Resolution & Failure",icon:lM,children:b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-[10px] font-semibold text-emerald-400 uppercase tracking-wider mb-1",children:"Resolution"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.resolutionCondition})]}),b.jsxs("div",{children:[b.jsx("div",{className:"text-[10px] font-semibold text-red-400 uppercase tracking-wider mb-1",children:"Failure"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.failureCondition})]})]})}),b.jsx(ql,{title:"Escalation",icon:w6,children:b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.escalationBehavior})}),b.jsx(ql,{title:"Edge Cases",icon:Jl,children:b.jsx("div",{className:"space-y-2",children:Xi.decisionTree.edgeCases.map((r,s)=>b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:r},s))})}),b.jsx(ql,{title:"Scenario Details",icon:Yy,children:b.jsx("div",{className:"space-y-2",children:n.map(([r,s])=>b.jsxs("div",{className:"flex justify-between gap-3",children:[b.jsx("span",{className:"text-[11px] text-text-muted flex-shrink-0",children:r}),b.jsx("span",{className:"text-[11px] text-text-primary font-medium text-right break-all",children:s})]},r))})})]})]})]})}const Ky=[{name:"get_reservation",description:"Retrieve flight reservation using confirmation number and passenger last name",toolType:"read"},{name:"get_flight_status",description:"Get flight info including status, delays, cancellations, and gate information",toolType:"read"},{name:"get_disruption_info",description:"Get detailed disruption info for IRROPS handling and rebooking entitlements",toolType:"read"},{name:"search_rebooking_options",description:"Search for available flights to rebook a passenger",toolType:"read"},{name:"rebook_flight",description:"Rebook passenger(s) to a new flight (voluntary, IRROPS, or missed flight)",toolType:"write"},{name:"add_to_standby",description:"Add passenger to standby list for a flight",toolType:"write"},{name:"assign_seat",description:"Assign a seat to a passenger based on preference",toolType:"write"},{name:"add_baggage_allowance",description:"Add checked baggage allowance to a flight segment",toolType:"write"},{name:"add_meal_request",description:"Add or update special meal request for a passenger",toolType:"write"},{name:"issue_travel_credit",description:"Issue a travel credit or future flight voucher",toolType:"write"},{name:"issue_hotel_voucher",description:"Issue a hotel voucher for delays or disruptions",toolType:"write"},{name:"issue_meal_voucher",description:"Issue a meal voucher for delays or disruptions",toolType:"write"},{name:"cancel_reservation",description:"Cancel a flight booking",toolType:"write"},{name:"process_refund",description:"Process a refund for a cancelled or eligible reservation",toolType:"write"},{name:"transfer_to_agent",description:"Transfer the call to a live human agent",toolType:"system"}];function fne(e){const t=new Map;for(const n of e)if(n.type==="tool_response"&&n.toolName){const r=t.get(n.toolName)??{calls:0,success:0,error:0};r.calls++,n.toolStatus==="success"?r.success++:r.error++,t.set(n.toolName,r)}return t}function dne({tool:e,isUsed:t,typeColors:n}){const[r,s]=A.useState(!1);return b.jsxs("div",{className:`rounded-lg border ${t?"border-amber/30 bg-amber/5":"border-border-default bg-bg-primary opacity-60"}`,children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center gap-2 px-3 py-2 hover:opacity-80 transition-opacity",children:[b.jsx(p0,{className:`w-3.5 h-3.5 flex-shrink-0 ${t?"text-amber":"text-text-muted"}`}),b.jsx("span",{className:`text-xs font-semibold font-mono flex-1 text-left ${t?"text-text-primary":"text-text-muted"}`,children:e.name}),b.jsx("span",{className:`text-[9px] px-1.5 py-0.5 rounded-full font-medium border ${n[e.toolType]}`,children:e.toolType})]}),r&&b.jsx("div",{className:"px-3 pb-2.5 pt-0",children:b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:e.description})})]})}function hne(){const e=fne(Zs),t=Ky.filter(o=>e.has(o.name)).length,n={read:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20",write:"bg-purple/10 text-purple-light border-purple/20",system:"bg-amber/10 text-amber border-amber/20"},[r,s]=A.useState(!0);return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center gap-3 mb-0 hover:opacity-80 transition-opacity",children:[b.jsx("div",{className:"w-10 h-10 rounded-full bg-amber/20 flex items-center justify-center flex-shrink-0",children:b.jsx(p0,{className:"w-5 h-5 text-amber"})}),b.jsxs("div",{className:"flex-1 text-left",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"Agent Tools"}),b.jsxs("div",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:[t," of ",Ky.length," used in this conversation"]})]}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${r?"rotate-180":""}`})]}),r&&b.jsx("div",{className:"mt-4 space-y-1.5",children:Ky.map(o=>{const u=e.has(o.name);return b.jsx(dne,{tool:o,isUsed:u,typeColors:n},o.name)})})]})}function mne({score:e,size:t="md"}){const n=e>=.8?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":e>=.5?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20",r=t==="sm"?"text-[10px] px-1.5 py-0.5":"text-xs px-2 py-0.5";return b.jsxs("span",{className:`${r} rounded-full font-semibold border ${n}`,children:[(e*100).toFixed(0),"%"]})}function pne({type:e}){const t={deterministic:"Deterministic",llm_judge:"LLM Judge",lalm_judge:"Audio Judge"},n={deterministic:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20",llm_judge:"bg-purple/10 text-purple-light border-purple/20",lalm_judge:"bg-amber/10 text-amber border-amber/20"};return b.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium border ${n[e]??"bg-bg-tertiary text-text-muted border-border-default"}`,children:t[e]??e})}function gne({metric:e}){const[t,n]=A.useState(!1),r=e.details,s=r.per_turn_ratings,o=r.per_turn_explanations,u=r.per_turn_judge_timing_ratings,f=r.per_turn_judge_timing_explanations,d=r.explanation,h=r.per_turn_entity_details,p=(typeof d=="object"&&d!==null?d:void 0)?.dimensions;return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary overflow-hidden",children:[b.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{className:"flex-1 flex items-center gap-3",children:[b.jsx("span",{className:"text-base font-semibold text-text-primary",children:e.displayName}),b.jsx(pne,{type:e.type})]}),b.jsx(mne,{score:e.normalizedScore}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${t?"rotate-180":""}`})]}),t&&b.jsxs("div",{className:"px-5 pb-5 border-t border-border-default/50 pt-4 space-y-5",children:[e.name==="task_completion"&&b.jsxs("div",{className:"flex items-center gap-2",children:[r.match?b.jsx(Xy,{className:"w-5 h-5 text-emerald-400"}):b.jsx(Jl,{className:"w-5 h-5 text-red-400"}),b.jsx("span",{className:"text-base text-text-secondary",children:r.message})]}),p&&b.jsx("div",{className:"space-y-3",children:Object.entries(p).map(([v,x])=>{const w=e.name==="faithfulness";let _,S;return w?x.rating===3?(_="OK",S="bg-emerald-500/10 text-emerald-400 border-emerald-500/20"):x.rating===2?(_="Minor/Ambiguous Issue",S="bg-amber/10 text-amber border-amber/20"):(_="Clear Error",S="bg-red-500/10 text-red-400 border-red-500/20"):e.name==="conversation_progression"?x.rating===3?(_="OK",S="bg-emerald-500/10 text-emerald-400 border-emerald-500/20"):x.rating===2?(_="Minor Issue",S="bg-amber/10 text-amber border-amber/20"):(_="Clear Issue",S="bg-red-500/10 text-red-400 border-red-500/20"):(_=x.flagged?"Flagged":"OK",S=x.flagged?"bg-amber/10 text-amber border-amber/20":"bg-emerald-500/10 text-emerald-400 border-emerald-500/20"),b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:v.replace(/_/g," ").replace(/\b\w/g,O=>O.toUpperCase())}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${S}`,children:_}),b.jsxs("span",{className:"text-xs text-text-muted ml-auto",children:[x.rating,"/3"]})]}),b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:x.evidence})]},v)})}),s&&!p&&!h&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Breakdown"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(s).map(([v,x])=>{const w=o?.[v];return x===-1?null:b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsxs("span",{className:"text-xs font-semibold text-text-muted",children:["Turn ",v]}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${x>=3||x===1&&e.name==="agent_speech_fidelity"?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":x>=2?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20"}`,children:x})]}),w&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:w})]},v)})})]}),u&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Timing"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(u).map(([v,x])=>{const w=f?.[v],_=x==="On-Time"?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":x==="Late"?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20";return b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsxs("span",{className:"text-xs font-semibold text-text-muted",children:["Turn ",v]}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${_}`,children:x})]}),w&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:w})]},v)})})]}),h&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Entity Accuracy"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(h).map(([v,x])=>!x.entities||x.entities.length===0?null:b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"text-xs font-semibold text-text-muted mb-2",children:["Turn ",v]}),b.jsx("div",{className:"space-y-2",children:x.entities.map((w,_)=>b.jsxs("div",{className:"flex items-start gap-2 text-base",children:[w.correct?b.jsx(Xy,{className:"w-4 h-4 text-emerald-400 mt-0.5 flex-shrink-0"}):b.jsx(Jl,{className:"w-4 h-4 text-red-400 mt-0.5 flex-shrink-0"}),b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[w.type,":"]})," ",b.jsx("span",{className:"text-text-secondary",children:w.value}),!w.correct&&b.jsxs("span",{className:"text-red-400",children:[" → ",w.transcribed_value]})]})]},_))}),b.jsx("p",{className:"text-xs text-text-muted mt-2",children:x.summary})]},v))})]}),typeof d=="string"&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:d})]})]})}function yne(){const e=[{label:"Accuracy (EVA-A)",icon:lM,metrics:rne,color:"text-emerald-400"},{label:"Experience (EVA-X)",icon:IR,metrics:ine,color:"text-purple-light"},{label:"Relevant Diagnostic Metric",icon:b6,metrics:ane,color:"text-cyan-400"}];return b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.2},className:"mt-12",children:b.jsx("div",{className:"space-y-8",children:e.map(t=>b.jsxs("div",{children:[b.jsx("div",{className:"flex items-center gap-3 mb-4 pb-3 border-b border-border-default",children:b.jsx("span",{className:"text-lg font-bold text-text-primary",children:t.label})}),b.jsx("div",{className:"space-y-2",children:t.metrics.map(n=>b.jsx(gne,{metric:n},n.name))})]},t.label))})})}function vne(){const e=one(Zs),t=[];let n=0;for(;n{const t=tM[e.category]??nM;return e.items.map((n,r)=>b.jsxs("div",{className:`rounded-xl border ${t.border} ${t.bg} p-5 flex flex-col`,children:[b.jsx("div",{className:"flex items-center gap-2 mb-2",children:b.jsx("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-full ${t.badge} ${t.text} border ${t.badgeBorder}`,children:e.category})}),b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1.5",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed flex-1",children:n.description})]},`${e.category}-${r}`))})})]}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:[b.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(y6,{className:"w-5 h-5 text-purple"})}),b.jsx("h3",{className:"text-xl font-bold text-text-primary",children:"Roadmap"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:xne.flatMap(e=>{const t=tM[e.category]??nM;return e.items.map((n,r)=>b.jsxs("div",{className:`rounded-xl border ${t.border} ${t.bg} p-5 flex flex-col`,children:[b.jsx("div",{className:"flex items-center gap-2 mb-2",children:b.jsx("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-full ${t.badge} ${t.text} border ${t.badgeBorder}`,children:e.category})}),b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1.5",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed flex-1",children:n.description})]},`${e.category}-${r}`))})})]})]})})}const _ne=new Set(["intro","architecture","metrics","early-results","demo","limitations","acknowledgements"]);function rM(){const e=window.location.hash.slice(1);return e&&_ne.has(e)?e:"intro"}function Sne(){if(typeof window<"u"){const e=localStorage.getItem("eva-theme");if(e==="light"||e==="dark")return e}return"dark"}function Ane(){const[e,t]=A.useState(rM),[n,r]=A.useState(Sne);A.useEffect(()=>{const f=()=>t(rM());return window.addEventListener("hashchange",f),()=>window.removeEventListener("hashchange",f)},[]);const s=A.useCallback(f=>{t(f),window.history.pushState(null,"",`#${f}`)},[]);A.useEffect(()=>{document.documentElement.setAttribute("data-theme",n),localStorage.setItem("eva-theme",n)},[n]);const o=A.useCallback(()=>{r(f=>f==="dark"?"light":"dark")},[]),u=A.useMemo(()=>({mode:n,colors:Tte[n]}),[n]);return b.jsx(Ex.Provider,{value:u,children:b.jsxs("div",{className:"min-h-screen bg-bg-primary",children:[b.jsx(C6,{activeTab:e,onTabChange:s,theme:n,onToggleTheme:o}),b.jsxs("main",{children:[e==="intro"&&b.jsx(EB,{}),e==="architecture"&&b.jsx(jB,{}),e==="metrics"&&b.jsx(RB,{}),e==="early-results"&&b.jsx(Wte,{}),e==="demo"&&b.jsx(vne,{}),e==="limitations"&&b.jsx(wne,{}),e==="acknowledgements"&&b.jsx(OB,{})]})]})})}NR.createRoot(document.getElementById("root")).render(b.jsx(A.StrictMode,{children:b.jsx(Ane,{})})); + `).concat(N.x,",").concat(N.y),C=dt(e.id)?au("recharts-radial-line-"):e.id;return A.createElement("text",ei({},r,{dominantBaseline:"central",className:et("recharts-radial-bar-label",u)}),A.createElement("defs",null,A.createElement("path",{id:C,d:k})),A.createElement("textPath",{xlinkHref:"#".concat(C)},n))},JW=(e,t,n)=>{var{cx:r,cy:s,innerRadius:o,outerRadius:u,startAngle:f,endAngle:d}=e,h=(f+d)/2;if(n==="outside"){var{x:m,y:p}=Kt(r,s,u+t,h);return{x:m,y:p,textAnchor:m>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:s,textAnchor:"middle",verticalAnchor:"end"};var v=(o+u)/2,{x,y:w}=Kt(r,s,v,h);return{x,y:w,textAnchor:"middle",verticalAnchor:"middle"}},qf=e=>e!=null&&"cx"in e&&ye(e.cx),eZ={angle:0,offset:5,zIndex:pn.label,position:"middle",textBreakAll:!1};function tZ(e){if(!qf(e))return e;var{cx:t,cy:n,outerRadius:r}=e,s=r*2;return{x:t-r,y:n-r,width:s,upperWidth:s,lowerWidth:s,height:s}}function Wi(e){var t=vn(e,eZ),{viewBox:n,parentViewBox:r,position:s,value:o,children:u,content:f,className:d="",textBreakAll:h,labelRef:m}=t,p=GW(),v=h5(),x=s==="center"?v:p??v,w,_,S;n==null?w=x:qf(n)?w=n:w=db(n);var O=tZ(w);if(!w||dt(o)&&dt(u)&&!A.isValidElement(f)&&typeof f!="function")return null;var M=Kl(Kl({},t),{},{viewBox:w});if(A.isValidElement(f)){var{labelRef:j}=M,N=lj(M,VW);return A.cloneElement(f,N)}if(typeof f=="function"){var{content:k}=M,C=lj(M,qW);if(_=A.createElement(f,C),A.isValidElement(_))return _}else _=WW(t);var L=er(t);if(qf(w)){if(s==="insideStart"||s==="insideEnd"||s==="end")return QW(t,s,_,L,w);S=JW(w,t.offset,t.position)}else{if(!O)return null;var I=UW({viewBox:O,position:s,offset:t.offset,parentViewBox:qf(r)?void 0:r});S=Kl(Kl({x:I.x,y:I.y,textAnchor:I.horizontalAnchor,verticalAnchor:I.verticalAnchor},I.width!==void 0?{width:I.width}:{}),I.height!==void 0?{height:I.height}:{})}return A.createElement(ca,{zIndex:t.zIndex},A.createElement(xx,ei({ref:m,className:et("recharts-label",d)},L,S,{textAnchor:l5(L.textAnchor)?L.textAnchor:S.textAnchor,breakAll:h}),_))}Wi.displayName="Label";var nZ=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?A.createElement(Wi,ei({key:"label-implicit"},r)):kr(e)?A.createElement(Wi,ei({key:"label-implicit",value:e},r)):A.isValidElement(e)?e.type===Wi?A.cloneElement(e,Kl({key:"label-implicit"},r)):A.createElement(Wi,ei({key:"label-implicit",content:e},r)):wx(e)?A.createElement(Wi,ei({key:"label-implicit",content:e},r)):e&&typeof e=="object"?A.createElement(Wi,ei({},e,{key:"label-implicit"},r)):null};function rZ(e){var{label:t,labelRef:n}=e,r=h5();return nZ(t,r,n)||null}var iZ=["valueAccessor"],aZ=["dataKey","clockWise","id","textBreakAll","zIndex"];function Id(){return Id=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(CW(t))return t},m5=A.createContext(void 0),lZ=m5.Provider,p5=A.createContext(void 0);p5.Provider;function uZ(){return A.useContext(m5)}function cZ(){return A.useContext(p5)}function $f(e){var{valueAccessor:t=oZ}=e,n=cj(e,iZ),{dataKey:r,clockWise:s,id:o,textBreakAll:u,zIndex:f}=n,d=cj(n,aZ),h=uZ(),m=cZ(),p=h||m;return!p||!p.length?null:A.createElement(ca,{zIndex:f??pn.label},A.createElement(hr,{className:"recharts-label-list"},p.map((v,x)=>{var w,_=dt(r)?t(v,x):Ot(v.payload,r),S=dt(o)?{}:{id:"".concat(o,"-").concat(x)};return A.createElement(Wi,Id({key:"label-".concat(x)},er(v),d,S,{fill:(w=n.fill)!==null&&w!==void 0?w:v.fill,parentViewBox:v.parentViewBox,value:_,textBreakAll:u,viewBox:v.viewBox,index:x,zIndex:0}))})))}$f.displayName="LabelList";function fZ(e){var{label:t}=e;return t?t===!0?A.createElement($f,{key:"labelList-implicit"}):A.isValidElement(t)||wx(t)?A.createElement($f,{key:"labelList-implicit",content:t}):typeof t=="object"?A.createElement($f,Id({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}var dZ={radiusAxis:{},angleAxis:{}},g5=Qt({name:"polarAxis",initialState:dZ,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:Nne,removeRadiusAxis:kne,addAngleAxis:Cne,removeAngleAxis:Dne}=g5.actions,hZ=g5.reducer;function mZ(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var By={exports:{}},He={};var fj;function pZ(){if(fj)return He;fj=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),v=Symbol.for("react.view_transition"),x=Symbol.for("react.client.reference");function w(_){if(typeof _=="object"&&_!==null){var S=_.$$typeof;switch(S){case e:switch(_=_.type,_){case n:case s:case r:case d:case h:case v:return _;default:switch(_=_&&_.$$typeof,_){case u:case f:case p:case m:return _;case o:return _;default:return S}}case t:return S}}}return He.ContextConsumer=o,He.ContextProvider=u,He.Element=e,He.ForwardRef=f,He.Fragment=n,He.Lazy=p,He.Memo=m,He.Portal=t,He.Profiler=s,He.StrictMode=r,He.Suspense=d,He.SuspenseList=h,He.isContextConsumer=function(_){return w(_)===o},He.isContextProvider=function(_){return w(_)===u},He.isElement=function(_){return typeof _=="object"&&_!==null&&_.$$typeof===e},He.isForwardRef=function(_){return w(_)===f},He.isFragment=function(_){return w(_)===n},He.isLazy=function(_){return w(_)===p},He.isMemo=function(_){return w(_)===m},He.isPortal=function(_){return w(_)===t},He.isProfiler=function(_){return w(_)===s},He.isStrictMode=function(_){return w(_)===r},He.isSuspense=function(_){return w(_)===d},He.isSuspenseList=function(_){return w(_)===h},He.isValidElementType=function(_){return typeof _=="string"||typeof _=="function"||_===n||_===s||_===r||_===d||_===h||typeof _=="object"&&_!==null&&(_.$$typeof===p||_.$$typeof===m||_.$$typeof===u||_.$$typeof===o||_.$$typeof===f||_.$$typeof===x||_.getModuleId!==void 0)},He.typeOf=w,He}var dj;function gZ(){return dj||(dj=1,By.exports=pZ()),By.exports}var yZ=gZ(),hj=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",mj=null,Uy=null,y5=e=>{if(e===mj&&Array.isArray(Uy))return Uy;var t=[];return A.Children.forEach(e,n=>{dt(n)||(yZ.isFragment(n)?t=t.concat(y5(n.props.children)):t.push(n))}),Uy=t,mj=e,t};function vZ(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(s=>hj(s)):r=[hj(t)],y5(e).forEach(s=>{var o=co(s,"type.displayName")||co(s,"type.name");o&&r.indexOf(o)!==-1&&n.push(s)}),n}var Vy={},pj;function bZ(){return pj||(pj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const s=n[Symbol.toStringTag];return s==null||!Object.getOwnPropertyDescriptor(n,Symbol.toStringTag)?.writable?!1:n.toString()===`[object ${s}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(Vy)),Vy}var qy,gj;function xZ(){return gj||(gj=1,qy=bZ().isPlainObject),qy}var wZ=xZ();const _Z=ia(wZ);var yj,vj,bj,xj,wj;function _j(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sj(e){for(var t=1;t{var o=n-r,u;return u=ut(yj||(yj=zl(["M ",",",""])),e,t),u+=ut(vj||(vj=zl(["L ",",",""])),e+n,t),u+=ut(bj||(bj=zl(["L ",",",""])),e+n-o/2,t+s),u+=ut(xj||(xj=zl(["L ",",",""])),e+n-o/2-r,t+s),u+=ut(wj||(wj=zl(["L ",","," Z"])),e,t),u},OZ={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},EZ=e=>{var t=vn(e,OZ),{x:n,y:r,upperWidth:s,lowerWidth:o,height:u,className:f}=t,{animationEasing:d,animationDuration:h,animationBegin:m,isUpdateAnimationActive:p}=t,v=A.useRef(null),[x,w]=A.useState(-1),_=A.useRef(s),S=A.useRef(o),O=A.useRef(u),M=A.useRef(n),j=A.useRef(r),N=yb(e,"trapezoid-");if(A.useEffect(()=>{if(v.current&&v.current.getTotalLength)try{var pe=v.current.getTotalLength();pe&&w(pe)}catch{}},[]),n!==+n||r!==+r||s!==+s||o!==+o||u!==+u||s===0&&o===0||u===0)return null;var k=et("recharts-trapezoid",f);if(!p)return A.createElement("g",null,A.createElement("path",Bd({},er(t),{className:k,d:Aj(n,r,s,o,u)})));var C=_.current,L=S.current,I=O.current,Y=M.current,te=j.current,ie="0px ".concat(x===-1?1:x,"px"),K="".concat(x,"px ").concat(x,"px"),be=RC(["strokeDasharray"],h,d);return A.createElement(gb,{animationId:N,key:N,canBegin:x>0,duration:h,easing:d,isActive:p,begin:m},pe=>{var xe=Nn(C,s,pe),V=Nn(L,o,pe),Q=Nn(I,u,pe),ne=Nn(Y,n,pe),le=Nn(te,r,pe);v.current&&(_.current=xe,S.current=V,O.current=Q,M.current=ne,j.current=le);var ue=pe>0?{transition:be,strokeDasharray:K}:{strokeDasharray:ie};return A.createElement("path",Bd({},er(t),{className:k,d:Aj(ne,le,xe,V,Q),ref:v,style:Sj(Sj({},ue),t.style)}))})},jZ=["option","shapeType","activeClassName","inActiveClassName"];function MZ(e,t){if(e==null)return{};var n,r,s=NZ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var r=it();return(s,o)=>u=>{e?.(s,o,u),r(DD({activeIndex:String(o),activeDataKey:t,activeCoordinate:s.tooltipPosition,activeGraphicalItemId:n}))}},IZ=e=>{var t=it();return(n,r)=>s=>{e?.(n,r,s),t(YX())}},BZ=(e,t,n)=>{var r=it();return(s,o)=>u=>{e?.(s,o,u),r(GX({activeIndex:String(o),activeDataKey:t,activeCoordinate:s.tooltipPosition,activeGraphicalItemId:n}))}};function UZ(e){var{tooltipEntrySettings:t}=e,n=it(),r=Jt(),s=A.useRef(null);return A.useLayoutEffect(()=>{r||(s.current===null?n(FX(t)):s.current!==t&&n(HX({prev:s.current,next:t})),s.current=t)},[t,n,r]),A.useLayoutEffect(()=>()=>{s.current&&(n(KX(s.current)),s.current=null)},[n]),null}function VZ(e){var{legendPayload:t}=e,n=it(),r=Jt(),s=A.useRef(null);return A.useLayoutEffect(()=>{r||(s.current===null?n(XV(t)):s.current!==t&&n(YV({prev:s.current,next:t})),s.current=t)},[n,r,t]),A.useLayoutEffect(()=>()=>{s.current&&(n(GV(s.current)),s.current=null)},[n]),null}var $y,qZ=()=>{var[e]=A.useState(()=>au("uid-"));return e},$Z=($y=OR.useId)!==null&&$y!==void 0?$y:qZ;function FZ(e,t){var n=$Z();return t||(e?"".concat(e,"-").concat(n):n)}var HZ=A.createContext(void 0),KZ=e=>{var{id:t,type:n,children:r}=e,s=FZ("recharts-".concat(n),t);return A.createElement(HZ.Provider,{value:s},r(s))},XZ={cartesianItems:[],polarItems:[]},v5=Qt({name:"graphicalItems",initialState:XZ,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:Qe()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).cartesianItems.indexOf(n);s>-1&&(e.cartesianItems[s]=r)},prepare:Qe()},removeCartesianGraphicalItem:{reducer(e,t){var n=Zn(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:Qe()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:Qe()},removePolarGraphicalItem:{reducer(e,t){var n=Zn(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:Qe()},replacePolarGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,s=Zn(e).polarItems.indexOf(n);s>-1&&(e.polarItems[s]=r)},prepare:Qe()}}}),{addCartesianGraphicalItem:YZ,replaceCartesianGraphicalItem:GZ,removeCartesianGraphicalItem:WZ,addPolarGraphicalItem:Pne,removePolarGraphicalItem:Rne,replacePolarGraphicalItem:Lne}=v5.actions,ZZ=v5.reducer,QZ=e=>{var t=it(),n=A.useRef(null);return A.useLayoutEffect(()=>{n.current===null?t(YZ(e)):n.current!==e&&t(GZ({prev:n.current,next:e})),n.current=e},[t,e]),A.useLayoutEffect(()=>()=>{n.current&&(t(WZ(n.current)),n.current=null)},[t]),null},JZ=A.memo(QZ);function jj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Mj(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),hQ=$([dQ,hi,mi],(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)}}),mQ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b5,n=Jt(),r=ve(s=>Mo(s,"xAxis",t,n));return r?.map},pQ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b5,n=Jt(),r=ve(s=>Mo(s,"yAxis",t,n));return r?.map},w5=()=>ve(hQ),gQ=e=>{var{chartData:t}=e,n=it(),r=Jt();return A.useEffect(()=>r?()=>{}:(n(KE(t)),()=>{n(KE(void 0))}),[t,n,r]),null},Nj={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},_5=Qt({name:"brush",initialState:Nj,reducers:{setBrushSettings(e,t){return t.payload==null?Nj:t.payload}}}),{setBrushSettings:Une}=_5.actions,yQ=_5.reducer;function vQ(e){return(e%180+180)%180}var bQ=function(t){var{width:n,height:r}=t,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=vQ(s),u=o*Math.PI/180,f=Math.atan(r/n),d=u>f&&u{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=Zn(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=Zn(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=Zn(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:Vne,removeDot:qne,addArea:$ne,removeArea:Fne,addLine:Hne,removeLine:Kne}=S5.actions,wQ=S5.reducer,_Q=A.createContext(void 0),SQ=e=>{var{children:t}=e,[n]=A.useState("".concat(au("recharts"),"-clip")),r=w5();if(r==null)return null;var{x:s,y:o,width:u,height:f}=r;return A.createElement(_Q.Provider,{value:n},A.createElement("defs",null,A.createElement("clipPath",{id:n},A.createElement("rect",{x:s,y:o,height:f,width:u}))),t)};function A5(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*s)return!1;var o=n();return e*(t-e*o/2-r)>=0&&e*(t+e*o/2-s)<=0}function OQ(e,t){return A5(e,t+1)}function EQ(e,t,n,r,s){for(var o=(r||[]).slice(),{start:u,end:f}=t,d=0,h=1,m=u,p=function(){var w=r?.[d];if(w===void 0)return{v:A5(r,h)};var _=d,S,O=()=>(S===void 0&&(S=n(w,_)),S),M=w.coordinate,j=d===0||xu(e,M,O,m,f);j||(d=0,m=u,h+=1),j&&(m=M+e*(O()/2+s),d+=h)},v;h<=o.length;)if(v=p(),v)return v.v;return[]}function jQ(e,t,n,r,s){var o=(r||[]).slice(),u=o.length;if(u===0)return[];for(var{start:f,end:d}=t,h=1;h<=u;h++){for(var m=(u-1)%h,p=f,v=!0,x=function(){var N=r[_];if(N==null)return 0;var k=_,C,L=()=>(C===void 0&&(C=n(N,k)),C),I=N.coordinate,Y=_===m||xu(e,I,L,p,d);if(!Y)return v=!1,1;Y&&(p=I+e*(L()/2+s))},w,_=m;_(_===void 0&&(_=n(x,v)),_);if(v===u-1){var O=e*(w.coordinate+e*S()/2-d);o[v]=w=Gt(Gt({},w),{},{tickCoord:O>0?w.coordinate-O*e:w.coordinate})}else o[v]=w=Gt(Gt({},w),{},{tickCoord:w.coordinate});if(w.tickCoord!=null){var M=xu(e,w.tickCoord,S,f,d);M&&(d=w.tickCoord-e*(S()/2+s),o[v]=Gt(Gt({},w),{},{isShow:!0}))}},m=u-1;m>=0;m--)h(m);return o}function DQ(e,t,n,r,s,o){var u=(r||[]).slice(),f=u.length,{start:d,end:h}=t;if(o){var m=r[f-1];if(m!=null){var p=n(m,f-1),v=e*(m.coordinate+e*p/2-h);if(u[f-1]=m=Gt(Gt({},m),{},{tickCoord:v>0?m.coordinate-v*e:m.coordinate}),m.tickCoord!=null){var x=xu(e,m.tickCoord,()=>p,d,h);x&&(h=m.tickCoord-e*(p/2+s),u[f-1]=Gt(Gt({},m),{},{isShow:!0}))}}}for(var w=o?f-1:f,_=function(M){var j=u[M];if(j==null)return 1;var N=j,k,C=()=>(k===void 0&&(k=n(j,M)),k);if(M===0){var L=e*(N.coordinate-e*C()/2-d);u[M]=N=Gt(Gt({},N),{},{tickCoord:L<0?N.coordinate-L*e:N.coordinate})}else u[M]=N=Gt(Gt({},N),{},{tickCoord:N.coordinate});if(N.tickCoord!=null){var I=xu(e,N.tickCoord,C,d,h);I&&(d=N.tickCoord+e*(C()/2+s),u[M]=Gt(Gt({},N),{},{isShow:!0}))}},S=0;S{var L=typeof h=="function"?h(k.value,C):k.value;return w==="width"?AQ(Zl(L,{fontSize:t,letterSpacing:n}),_,p):Zl(L,{fontSize:t,letterSpacing:n})[w]},O=s[0],M=s[1],j=s.length>=2&&O!=null&&M!=null?Wn(M.coordinate-O.coordinate):1,N=TQ(o,j,w);return d==="equidistantPreserveStart"?EQ(j,N,S,s,u):d==="equidistantPreserveEnd"?jQ(j,N,S,s,u):(d==="preserveStart"||d==="preserveStartEnd"?x=DQ(j,N,S,s,u,d==="preserveStartEnd"):x=CQ(j,N,S,s,u),x.filter(k=>k.isShow))}var PQ=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:s=0,tickMargin:o=0}=e,u=0;if(t){Array.from(t).forEach(m=>{if(m){var p=m.getBoundingClientRect();p.width>u&&(u=p.width)}});var f=n?n.getBoundingClientRect().width:0,d=s+o,h=u+d+f+(n?r:0);return Math.round(h)}return 0},RQ={xAxis:{},yAxis:{}},T5=Qt({name:"renderedTicks",initialState:RQ,reducers:{setRenderedTicks:(e,t)=>{var{axisType:n,axisId:r,ticks:s}=t.payload;e[n][r]=s},removeRenderedTicks:(e,t)=>{var{axisType:n,axisId:r}=t.payload;delete e[n][r]}}}),{setRenderedTicks:LQ,removeRenderedTicks:zQ}=T5.actions,IQ=T5.reducer,BQ=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function UQ(e,t){if(e==null)return{};var n,r,s=VQ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(r==null||n==null)return _o;var o=t.map(u=>({value:u.value,coordinate:u.coordinate,offset:u.offset,index:u.index}));return s(LQ({ticks:o,axisId:r,axisType:n})),()=>{s(zQ({axisId:r,axisType:n}))}},[s,t,r,n]),null}var ZQ=A.forwardRef((e,t)=>{var{ticks:n=[],tick:r,tickLine:s,stroke:o,tickFormatter:u,unit:f,padding:d,tickTextProps:h,orientation:m,mirror:p,x:v,y:x,width:w,height:_,tickSize:S,tickMargin:O,fontSize:M,letterSpacing:j,getTicksConfig:N,events:k,axisType:C,axisId:L}=e,I=_x(ot(ot({},N),{},{ticks:n}),M,j),Y=Nr(N),te=Y0(r),ie=l5(Y.textAnchor)?Y.textAnchor:XQ(m,p),K=YQ(m,p),be={};typeof s=="object"&&(be=s);var pe=ot(ot({},Y),{},{fill:"none"},be),xe=I.map(ne=>ot({entry:ne},KQ(ne,v,x,w,_,m,S,p,O))),V=xe.map(ne=>{var{entry:le,line:ue}=ne;return A.createElement(hr,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(le.value,"-").concat(le.coordinate,"-").concat(le.tickCoord)},s&&A.createElement("line",es({},pe,ue,{className:et("recharts-cartesian-axis-tick-line",co(s,"className"))})))}),Q=xe.map((ne,le)=>{var ue,P,{entry:H,tick:ae}=ne,se=ot(ot(ot(ot({verticalAnchor:K},Y),{},{textAnchor:ie,stroke:"none",fill:o},ae),{},{index:le,payload:H,visibleTicksCount:I.length,tickFormatter:u,padding:d},h),{},{angle:(ue=(P=h?.angle)!==null&&P!==void 0?P:Y.angle)!==null&&ue!==void 0?ue:0}),Z=ot(ot({},se),te);return A.createElement(hr,es({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(H.value,"-").concat(H.coordinate,"-").concat(H.tickCoord)},_k(k,H,le)),r&&A.createElement(GQ,{option:r,tickProps:Z,value:"".concat(typeof u=="function"?u(H.value,le):H.value).concat(f||"")}))});return A.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(C,"-ticks")},A.createElement(WQ,{ticks:I,axisId:L,axisType:C}),Q.length>0&&A.createElement(ca,{zIndex:pn.label},A.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(C,"-tick-labels"),ref:t},Q)),V.length>0&&A.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(C,"-tick-lines")},V))}),QQ=A.forwardRef((e,t)=>{var{axisLine:n,width:r,height:s,className:o,hide:u,ticks:f,axisType:d,axisId:h}=e,m=UQ(e,BQ),[p,v]=A.useState(""),[x,w]=A.useState(""),_=A.useRef(null);A.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var O;return PQ({ticks:_.current,label:(O=e.labelRef)===null||O===void 0?void 0:O.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=A.useCallback(O=>{if(O){var M=O.getElementsByClassName("recharts-cartesian-axis-tick-value");_.current=M;var j=M[0];if(j){var N=window.getComputedStyle(j),k=N.fontSize,C=N.letterSpacing;(k!==p||C!==x)&&(v(k),w(C))}}},[p,x]);return u||r!=null&&r<=0||s!=null&&s<=0?null:A.createElement(ca,{zIndex:e.zIndex},A.createElement(hr,{className:et("recharts-cartesian-axis",o)},A.createElement(HQ,{x:e.x,y:e.y,width:r,height:s,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:Nr(e)}),A.createElement(ZQ,{ref:S,axisType:d,events:m,fontSize:p,getTicksConfig:e,height:e.height,letterSpacing:x,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:f,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:h}),A.createElement(XW,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},A.createElement(rZ,{label:e.label,labelRef:e.labelRef}),e.children)))}),Sx=A.forwardRef((e,t)=>{var n=vn(e,ii);return A.createElement(QQ,es({},n,{ref:t}))});Sx.displayName="CartesianAxis";var JQ=["x1","y1","x2","y2","key"],eJ=["offset"],tJ=["xAxisId","yAxisId"],nJ=["xAxisId","yAxisId"];function Dj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Wt(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:s,width:o,height:u,ry:f}=e;return A.createElement("rect",{x:r,y:s,ry:f,width:o,height:u,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function O5(e){var{option:t,lineItemProps:n}=e,r;if(A.isValidElement(t))r=A.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var s,{x1:o,y1:u,x2:f,y2:d,key:h}=n,m=Vd(n,JQ),p=(s=Nr(m))!==null&&s!==void 0?s:{},{offset:v}=p,x=Vd(p,eJ);r=A.createElement("line",$a({},x,{x1:o,y1:u,x2:f,y2:d,fill:"none",key:h}))}return r}function lJ(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:s}=e;if(!r||!s||!s.length)return null;var{xAxisId:o,yAxisId:u}=e,f=Vd(e,tJ),d=s.map((h,m)=>{var p=Wt(Wt({},f),{},{x1:t,y1:h,x2:t+n,y2:h,key:"line-".concat(m),index:m});return A.createElement(O5,{key:"line-".concat(m),option:r,lineItemProps:p})});return A.createElement("g",{className:"recharts-cartesian-grid-horizontal"},d)}function uJ(e){var{y:t,height:n,vertical:r=!0,verticalPoints:s}=e;if(!r||!s||!s.length)return null;var{xAxisId:o,yAxisId:u}=e,f=Vd(e,nJ),d=s.map((h,m)=>{var p=Wt(Wt({},f),{},{x1:h,y1:t,x2:h,y2:t+n,key:"line-".concat(m),index:m});return A.createElement(O5,{option:r,lineItemProps:p,key:"line-".concat(m)})});return A.createElement("g",{className:"recharts-cartesian-grid-vertical"},d)}function cJ(e){var{horizontalFill:t,fillOpacity:n,x:r,y:s,width:o,height:u,horizontalPoints:f,horizontal:d=!0}=e;if(!d||!t||!t.length||f==null)return null;var h=f.map(p=>Math.round(p+s-s)).sort((p,v)=>p-v);s!==h[0]&&h.unshift(0);var m=h.map((p,v)=>{var x=h[v+1],w=x==null,_=w?s+u-p:x-p;if(_<=0)return null;var S=v%t.length;return A.createElement("rect",{key:"react-".concat(v),y:p,x:r,height:_,width:o,stroke:"none",fill:t[S],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return A.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},m)}function fJ(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:s,y:o,width:u,height:f,verticalPoints:d}=e;if(!t||!n||!n.length)return null;var h=d.map(p=>Math.round(p+s-s)).sort((p,v)=>p-v);s!==h[0]&&h.unshift(0);var m=h.map((p,v)=>{var x=h[v+1],w=x==null,_=w?s+u-p:x-p;if(_<=0)return null;var S=v%n.length;return A.createElement("rect",{key:"react-".concat(v),x:p,y:o,width:_,height:f,stroke:"none",fill:n[S],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return A.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},m)}var dJ=(e,t)=>{var{xAxis:n,width:r,height:s,offset:o}=e;return dC(_x(Wt(Wt(Wt({},ii),n),{},{ticks:hC(n),viewBox:{x:0,y:0,width:r,height:s}})),o.left,o.left+o.width,t)},hJ=(e,t)=>{var{yAxis:n,width:r,height:s,offset:o}=e;return dC(_x(Wt(Wt(Wt({},ii),n),{},{ticks:hC(n),viewBox:{x:0,y:0,width:r,height:s}})),o.top,o.top+o.height,t)},mJ={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:pn.grid};function E5(e){var t=_C(),n=SC(),r=wC(),s=Wt(Wt({},vn(e,mJ)),{},{x:ye(e.x)?e.x:r.left,y:ye(e.y)?e.y:r.top,width:ye(e.width)?e.width:r.width,height:ye(e.height)?e.height:r.height}),{xAxisId:o,yAxisId:u,x:f,y:d,width:h,height:m,syncWithTicks:p,horizontalValues:v,verticalValues:x}=s,w=Jt(),_=ve(Y=>DE(Y,"xAxis",o,w)),S=ve(Y=>DE(Y,"yAxis",u,w));if(!Cr(h)||!Cr(m)||!ye(f)||!ye(d))return null;var O=s.verticalCoordinatesGenerator||dJ,M=s.horizontalCoordinatesGenerator||hJ,{horizontalPoints:j,verticalPoints:N}=s;if((!j||!j.length)&&typeof M=="function"){var k=v&&v.length,C=M({yAxis:S?Wt(Wt({},S),{},{ticks:k?v:S.ticks}):void 0,width:t??h,height:n??m,offset:r},k?!0:p);hd(Array.isArray(C),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof C,"]")),Array.isArray(C)&&(j=C)}if((!N||!N.length)&&typeof O=="function"){var L=x&&x.length,I=O({xAxis:_?Wt(Wt({},_),{},{ticks:L?x:_.ticks}):void 0,width:t??h,height:n??m,offset:r},L?!0:p);hd(Array.isArray(I),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof I,"]")),Array.isArray(I)&&(N=I)}return A.createElement(ca,{zIndex:s.zIndex},A.createElement("g",{className:"recharts-cartesian-grid"},A.createElement(oJ,{fill:s.fill,fillOpacity:s.fillOpacity,x:s.x,y:s.y,width:s.width,height:s.height,ry:s.ry}),A.createElement(cJ,$a({},s,{horizontalPoints:j})),A.createElement(fJ,$a({},s,{verticalPoints:N})),A.createElement(lJ,$a({},s,{offset:r,horizontalPoints:j,xAxis:_,yAxis:S})),A.createElement(uJ,$a({},s,{offset:r,verticalPoints:N,xAxis:_,yAxis:S}))))}E5.displayName="CartesianGrid";var pJ={},j5=Qt({name:"errorBars",initialState:pJ,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:s}=t.payload;e[n]&&(e[n]=e[n].map(o=>o.dataKey===r.dataKey&&o.direction===r.direction?s:o))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(s=>s.dataKey!==r.dataKey||s.direction!==r.direction))}}}),{addErrorBar:Xne,replaceErrorBar:Yne,removeErrorBar:Gne}=j5.actions,gJ=j5.reducer,yJ=["children"];function vJ(e,t){if(e==null)return{};var n,r,s=bJ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},wJ=A.createContext(xJ);function _J(e){var{children:t}=e,n=vJ(e,yJ);return A.createElement(wJ.Provider,{value:n},t)}function M5(e,t){var n,r,s=ve(h=>gi(h,e)),o=ve(h=>yi(h,t)),u=(n=s?.allowDataOverflow)!==null&&n!==void 0?n:wt.allowDataOverflow,f=(r=o?.allowDataOverflow)!==null&&r!==void 0?r:_t.allowDataOverflow,d=u||f;return{needClip:d,needClipX:u,needClipY:f}}function SJ(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,s=w5(),{needClipX:o,needClipY:u,needClip:f}=M5(t,n);if(!f||!s)return null;var{x:d,y:h,width:m,height:p}=s;return A.createElement("clipPath",{id:"clipPath-".concat(r)},A.createElement("rect",{x:o?d:d-m/2,y:u?h:h-p/2,width:o?m:m*2,height:u?p:p*2}))}var AJ=["option","isActive"];function Ql(){return Ql=Object.assign?Object.assign.bind():function(e){for(var t=1;tED(e,"xAxis",t,u),MJ=(e,t,n,r,s,o,u)=>OD(e,"xAxis",t,u),NJ=(e,t,n,r,s,o,u)=>ED(e,"yAxis",n,u),kJ=(e,t,n,r,s,o,u)=>OD(e,"yAxis",n,u),CJ=(e,t,n,r)=>IX(e,"zAxis",r,!1),DJ=(e,t,n,r,s)=>s,PJ=(e,t,n,r,s,o)=>o,RJ=(e,t,n,r,s,o,u)=>vb(e,void 0,void 0,u),LJ=$([W3,DJ],(e,t)=>e.filter(n=>n.type==="scatter").find(n=>n.id===t)),zJ=$([RJ,jJ,MJ,NJ,kJ,CJ,LJ,PJ],(e,t,n,r,s,o,u,f)=>{var{chartData:d,dataStartIndex:h,dataEndIndex:m}=e;if(u!=null){var p;if(u?.data!=null&&u.data.length>0?p=u.data:p=d?.slice(h,m+1),!(p==null||t==null||r==null||n==null||s==null||n?.length===0||s?.length===0))return ZJ({displayedData:p,xAxis:t,yAxis:r,zAxis:o,scatterSettings:u,xAxisTicks:n,yAxisTicks:s,cells:f})}}),IJ=["id"],BJ=["onMouseEnter","onClick","onMouseLeave"],UJ=["animationBegin","animationDuration","animationEasing","hide","isAnimationActive","legendType","lineJointType","lineType","shape","xAxisId","yAxisId","zAxisId"];function o0(e,t){if(e==null)return{};var n,r,s=VJ(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{dataKey:t,name:n,fill:r,legendType:s,hide:o}=e;return[{inactive:o,dataKey:t,type:s,color:r,value:mC(n,t),payload:e}]},KJ=A.memo(e=>{var{dataKey:t,points:n,stroke:r,strokeWidth:s,fill:o,name:u,hide:f,tooltipType:d,id:h}=e,m={dataDefinedOnItem:n?.map(p=>p.tooltipPayload),getPosition:p=>{var v;return n==null||(v=n[Number(p)])===null||v===void 0?void 0:v.tooltipPosition},settings:{stroke:r,strokeWidth:s,fill:o,nameKey:void 0,dataKey:t,name:mC(u,t),hide:f,type:d,color:o,unit:"",graphicalItemId:h}};return A.createElement(UZ,{tooltipEntrySettings:m})});function XJ(e){var{points:t,props:n}=e,{line:r,lineType:s,lineJointType:o}=n;if(!r)return null;var u=Nr(n),f=Y0(r),d,h;if(s==="joint")d=t.map(S=>{var O,M;return{x:(O=S.cx)!==null&&O!==void 0?O:null,y:(M=S.cy)!==null&&M!==void 0?M:null}});else if(s==="fitting"){var{xmin:m,xmax:p,a:v,b:x}=k9(t),w=S=>v*S+x;d=[{x:m,y:w(m)},{x:p,y:w(p)}]}var _=yn(yn(yn({},u),{},{fill:"none",stroke:u&&u.fill},f),{},{points:d});return A.isValidElement(r)?h=A.cloneElement(r,_):typeof r=="function"?h=r(_):h=A.createElement(pb,ts({},_,{type:o})),A.createElement(hr,{className:"recharts-scatter-line",key:"recharts-scatter-line"},h)}function YJ(e){var{showLabels:t,points:n,children:r}=e,s=Nu(),o=A.useMemo(()=>n?.map(u=>{var f,d,h={x:(f=u.x)!==null&&f!==void 0?f:0,y:(d=u.y)!==null&&d!==void 0?d:0,width:u.width,height:u.height,lowerWidth:u.width,upperWidth:u.width};return yn(yn({},h),{},{value:void 0,payload:u.payload,viewBox:h,parentViewBox:s,fill:void 0})}),[s,n]);return A.createElement(lZ,{value:t?o:void 0},r)}function GJ(e){var{points:t,allOtherScatterProps:n}=e,{shape:r,activeShape:s,dataKey:o}=n,{id:u}=n,f=o0(n,IJ),d=ve(vu),{onMouseEnter:h,onClick:m,onMouseLeave:p}=n,v=o0(n,BJ),x=zZ(h,o,u),w=IZ(p),_=BZ(m,o,u);if(!F9(t))return null;var S=Nr(f);return A.createElement(A.Fragment,null,A.createElement(XJ,{points:t,props:f}),t.map((O,M)=>{var j=s!=null&&s!==!1,N=j&&d===String(M),k=j&&N?s:r,C=yn(yn(yn({},S),O),{},{index:M,[gC]:String(u)});return A.createElement(ca,{key:"symbol-".concat(O?.cx,"-").concat(O?.cy,"-").concat(O?.size,"-").concat(M),zIndex:N?pn.activeDot:void 0},A.createElement(hr,ts({className:"recharts-scatter-symbol"},_k(v,O,M),{onMouseEnter:x(O,M),onMouseLeave:w(O,M),onClick:_(O,M)}),A.createElement(EJ,ts({option:k,isActive:N},C))))}))}function WJ(e){var{previousPointsRef:t,props:n}=e,{points:r,isAnimationActive:s,animationBegin:o,animationDuration:u,animationEasing:f}=n,d=t.current,h=yb(n,"recharts-scatter-"),[m,p]=A.useState(!1),v=A.useCallback(()=>{p(!1)},[]),x=A.useCallback(()=>{p(!0)},[]),w=!m;return A.createElement(YJ,{showLabels:w,points:r},n.children,A.createElement(gb,{animationId:h,begin:o,duration:u,isActive:s,easing:f,onAnimationEnd:v,onAnimationStart:x,key:h},_=>{var S=_===1?r:r?.map((O,M)=>{var j=d&&d[M];return j?yn(yn({},O),{},{cx:O.cx==null?void 0:Nn(j.cx,O.cx,_),cy:O.cy==null?void 0:Nn(j.cy,O.cy,_),size:Nn(j.size,O.size,_)}):yn(yn({},O),{},{size:Nn(0,O.size,_)})});return _>0&&(t.current=S),A.createElement(hr,null,A.createElement(GJ,{points:S,allOtherScatterProps:n,showLabels:w}))}),A.createElement(fZ,{label:n.label}))}function ZJ(e){var{displayedData:t,xAxis:n,yAxis:r,zAxis:s,scatterSettings:o,xAxisTicks:u,yAxisTicks:f,cells:d}=e,h=dt(n.dataKey)?o.dataKey:n.dataKey,m=dt(r.dataKey)?o.dataKey:r.dataKey,p=s&&s.dataKey,v=s?s.range:X3.range,x=v&&v[0],w=n.scale.bandwidth?n.scale.bandwidth():0,_=r.scale.bandwidth?r.scale.bandwidth():0;return t.map((S,O)=>{var M=Ot(S,h),j=Ot(S,m),N=!dt(p)&&Ot(S,p)||"-",k=[{name:dt(n.dataKey)?o.name:n.name||String(n.dataKey),unit:n.unit||"",value:M,payload:S,dataKey:h,type:o.tooltipType,graphicalItemId:o.id},{name:dt(r.dataKey)?o.name:r.name||String(r.dataKey),unit:r.unit||"",value:j,payload:S,dataKey:m,type:o.tooltipType,graphicalItemId:o.id}];N!=="-"&&s!=null&&k.push({name:s.name||s.dataKey,unit:s.unit||"",value:N,payload:S,dataKey:p,type:o.tooltipType,graphicalItemId:o.id});var C=jT({axis:n,ticks:u,bandSize:w,entry:S,index:O,dataKey:h}),L=jT({axis:r,ticks:f,bandSize:_,entry:S,index:O,dataKey:m}),I=N!=="-"&&s!=null?s.scale.map(N):x,Y=I==null?0:Math.sqrt(Math.max(I,0)/Math.PI);return yn(yn({},S),{},{cx:C,cy:L,x:C==null?void 0:C-Y,y:L==null?void 0:L-Y,width:2*Y,height:2*Y,size:I,node:{x:M,y:j,z:N},tooltipPayload:k,tooltipPosition:{x:C,y:L},payload:S},d&&d[O]&&d[O].props)})}var QJ=(e,t,n)=>({x:e.cx,y:e.cy,value:Number(n==="x"?e.node.x:e.node.y),errorVal:Ot(e,t)});function JJ(e){var{hide:t,points:n,className:r,needClip:s,xAxisId:o,yAxisId:u,id:f}=e,d=A.useRef(null);if(t)return null;var h=et("recharts-scatter",r),m=f;return A.createElement(ca,{zIndex:e.zIndex},A.createElement(hr,{className:h,clipPath:s?"url(#clipPath-".concat(m,")"):void 0,id:f},s&&A.createElement("defs",null,A.createElement(SJ,{clipPathId:m,xAxisId:o,yAxisId:u})),A.createElement(_J,{xAxisId:o,yAxisId:u,data:n,dataPointFormatter:QJ,errorBarOffset:0},A.createElement(hr,{key:"recharts-scatter-symbols"},A.createElement(WJ,{props:e,previousPointsRef:d})))))}var N5={xAxisId:0,yAxisId:0,zAxisId:0,label:!1,line:!1,legendType:"circle",lineType:"joint",lineJointType:"linear",shape:"circle",hide:!1,isAnimationActive:"auto",animationBegin:0,animationDuration:400,animationEasing:"linear",zIndex:pn.scatter};function eee(e){var t=vn(e,N5),{animationBegin:n,animationDuration:r,animationEasing:s,hide:o,isAnimationActive:u,legendType:f,lineJointType:d,lineType:h,shape:m,xAxisId:p,yAxisId:v,zAxisId:x}=t,w=o0(t,UJ),{needClip:_}=M5(p,v),S=A.useMemo(()=>vZ(e.children,bx),[e.children]),O=Jt(),M=ve(j=>zJ(j,p,v,x,e.id,S,O));return _==null||M==null?null:A.createElement(A.Fragment,null,A.createElement(KJ,{dataKey:e.dataKey,points:M,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:e.id}),A.createElement(JJ,ts({},w,{xAxisId:p,yAxisId:v,zAxisId:x,lineType:h,lineJointType:d,legendType:f,shape:m,hide:o,isAnimationActive:u,animationBegin:n,animationDuration:r,animationEasing:s,points:M,needClip:_})))}function tee(e){var t=vn(e,N5),n=Jt();return A.createElement(KZ,{id:t.id,type:"scatter"},r=>A.createElement(A.Fragment,null,A.createElement(VZ,{legendPayload:HJ(t)}),A.createElement(JZ,{type:"scatter",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:t.zAxisId,dataKey:t.dataKey,hide:t.hide,name:t.name,tooltipType:t.tooltipType,isPanorama:n}),A.createElement(eee,ts({},t,{id:r}))))}var k5=A.memo(tee,mh);k5.displayName="Scatter";var nee=["domain","range"],ree=["domain","range"];function Rj(e,t){if(e==null)return{};var n,r,s=iee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(u!=null)return Ij(Ij({},o),{},{type:u})},[o,u]);return A.useLayoutEffect(()=>{f!=null&&(n.current===null?t(iQ(f)):n.current!==f&&t(aQ({prev:n.current,next:f})),n.current=f)},[f,t]),A.useLayoutEffect(()=>()=>{n.current&&(t(sQ(n.current)),n.current=null)},[t]),null}var hee=e=>{var{xAxisId:t,className:n}=e,r=ve(yC),s=Jt(),o="xAxis",u=ve(O=>TD(O,o,t,s)),f=ve(O=>AX(O,t)),d=ve(O=>NX(O,t)),h=ve(O=>H3(O,t));if(f==null||d==null||h==null)return null;var{dangerouslySetInnerHTML:m,ticks:p,scale:v}=e,x=u0(e,see),{id:w,scale:_}=h,S=u0(h,oee);return A.createElement(Sx,l0({},x,S,{x:d.x,y:d.y,width:f.width,height:f.height,className:et("recharts-".concat(o," ").concat(o),n),viewBox:r,ticks:u,axisType:o,axisId:t}))},mee={allowDataOverflow:wt.allowDataOverflow,allowDecimals:wt.allowDecimals,allowDuplicatedCategory:wt.allowDuplicatedCategory,angle:wt.angle,axisLine:ii.axisLine,height:wt.height,hide:!1,includeHidden:wt.includeHidden,interval:wt.interval,label:!1,minTickGap:wt.minTickGap,mirror:wt.mirror,orientation:wt.orientation,padding:wt.padding,reversed:wt.reversed,scale:wt.scale,tick:wt.tick,tickCount:wt.tickCount,tickLine:ii.tickLine,tickSize:ii.tickSize,type:wt.type,niceTicks:wt.niceTicks,xAxisId:0},pee=e=>{var t=vn(e,mee);return A.createElement(A.Fragment,null,A.createElement(dee,{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}),A.createElement(hee,t))},D5=A.memo(pee,C5);D5.displayName="XAxis";var gee=["type"],yee=["dangerouslySetInnerHTML","ticks","scale"],vee=["id","scale"];function c0(){return c0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(u!=null)return Uj(Uj({},o),{},{type:u})},[u,o]);return A.useLayoutEffect(()=>{f!=null&&(n.current===null?t(oQ(f)):n.current!==f&&t(lQ({prev:n.current,next:f})),n.current=f)},[f,t]),A.useLayoutEffect(()=>()=>{n.current&&(t(uQ(n.current)),n.current=null)},[t]),null}function Aee(e){var{yAxisId:t,className:n,width:r,label:s}=e,o=A.useRef(null),u=A.useRef(null),f=ve(yC),d=Jt(),h=it(),m="yAxis",p=ve(C=>DX(C,t)),v=ve(C=>CX(C,t)),x=ve(C=>TD(C,m,t,d)),w=ve(C=>K3(C,t));if(A.useLayoutEffect(()=>{if(!(r!=="auto"||!p||wx(s)||A.isValidElement(s)||w==null)){var C=o.current;if(C){var L=C.getCalculatedWidth();Math.round(p.width)!==Math.round(L)&&h(cQ({id:t,width:L}))}}},[x,p,h,s,t,r,w]),p==null||v==null||w==null)return null;var{dangerouslySetInnerHTML:_,ticks:S,scale:O}=e,M=f0(e,yee),{id:j,scale:N}=w,k=f0(w,vee);return A.createElement(Sx,c0({},M,k,{ref:o,labelRef:u,x:v.x,y:v.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:p.width,height:p.height,className:et("recharts-".concat(m," ").concat(m),n),viewBox:f,ticks:x,axisType:m,axisId:t}))}var Tee={allowDataOverflow:_t.allowDataOverflow,allowDecimals:_t.allowDecimals,allowDuplicatedCategory:_t.allowDuplicatedCategory,angle:_t.angle,axisLine:ii.axisLine,hide:!1,includeHidden:_t.includeHidden,interval:_t.interval,label:!1,minTickGap:_t.minTickGap,mirror:_t.mirror,orientation:_t.orientation,padding:_t.padding,reversed:_t.reversed,scale:_t.scale,tick:_t.tick,tickCount:_t.tickCount,tickLine:ii.tickLine,tickSize:ii.tickSize,type:_t.type,niceTicks:_t.niceTicks,width:_t.width,yAxisId:0},Oee=e=>{var t=vn(e,Tee);return A.createElement(A.Fragment,null,A.createElement(See,{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}),A.createElement(Aee,t))},P5=A.memo(Oee,C5);P5.displayName="YAxis";var Eee=(e,t)=>t,Ax=$([Eee,ht,o3,Dt,FD,vi,rG,Xt],cG);function jee(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function Tx(e){var t=e.currentTarget.getBoundingClientRect(),n,r;if(jee(e)){var s=e.currentTarget.getBBox();n=s.width>0?t.width/s.width:1,r=s.height>0?t.height/s.height:1}else{var o=e.currentTarget;n=o.offsetWidth>0?t.width/o.offsetWidth:1,r=o.offsetHeight>0?t.height/o.offsetHeight:1}var u=(f,d)=>({relativeX:Math.round((f-t.left)/n),relativeY:Math.round((d-t.top)/r)});return"touches"in e?Array.from(e.touches).map(f=>u(f.clientX,f.clientY)):u(e.clientX,e.clientY)}var R5=Pn("mouseClick"),L5=ju();L5.startListening({actionCreator:R5,effect:(e,t)=>{var n=e.payload,r=Ax(t.getState(),Tx(n));r?.activeIndex!=null&&t.dispatch(WX({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var d0=Pn("mouseMove"),z5=ju(),Xs=null,ka=null,Fy=null;z5.startListening({actionCreator:d0,effect:(e,t)=>{var n=e.payload,r=t.getState(),{throttleDelay:s,throttledEvents:o}=r.eventSettings,u=o==="all"||o?.includes("mousemove");Xs!==null&&(cancelAnimationFrame(Xs),Xs=null),ka!==null&&(typeof s!="number"||!u)&&(clearTimeout(ka),ka=null),Fy=Tx(n);var f=()=>{var d=t.getState(),h=ux(d,d.tooltip.settings.shared);if(!Fy){Xs=null,ka=null;return}if(h==="axis"){var m=Ax(d,Fy);m?.activeIndex!=null?t.dispatch(RD({activeIndex:m.activeIndex,activeDataKey:void 0,activeCoordinate:m.activeCoordinate})):t.dispatch(PD())}Xs=null,ka=null};if(!u){f();return}s==="raf"?Xs=requestAnimationFrame(f):typeof s=="number"&&ka===null&&(ka=setTimeout(f,s))}});function Mee(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var Vj={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},I5=Qt({name:"rootProps",initialState:Vj,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:Vj.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}}}),Nee=I5.reducer,{updateOptions:kee}=I5.actions,Cee=null,Dee={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)},B5=Qt({name:"polarOptions",initialState:Cee,reducers:Dee}),{updatePolarOptions:Wne}=B5.actions,Pee=B5.reducer,U5=Pn("keyDown"),V5=Pn("focus"),q5=Pn("blur"),Nh=ju(),Ys=null,Ca=null,Mf=null;Nh.startListening({actionCreator:U5,effect:(e,t)=>{Mf=e.payload,Ys!==null&&(cancelAnimationFrame(Ys),Ys=null);var n=t.getState(),{throttleDelay:r,throttledEvents:s}=n.eventSettings,o=s==="all"||s.includes("keydown");Ca!==null&&(typeof r!="number"||!o)&&(clearTimeout(Ca),Ca=null);var u=()=>{try{var f=t.getState(),d=f.rootProps.accessibilityLayer!==!1;if(!d)return;var{keyboardInteraction:h}=f.tooltip,m=Mf;if(m!=="ArrowRight"&&m!=="ArrowLeft"&&m!=="Enter")return;var p=cx(h,Co(f),qu(f),Fu(f)),v=p==null?-1:Number(p);if(!Number.isFinite(v)||v<0)return;var x=vi(f);if(m==="Enter"){var w=zd(f,"axis","hover",String(h.index));t.dispatch(Ld({active:!h.active,activeIndex:h.index,activeCoordinate:w}));return}var _=BX(f),S=_==="left-to-right"?1:-1,O=m==="ArrowRight"?1:-1,M=v+O*S;if(x==null||M>=x.length||M<0)return;var j=zd(f,"axis","hover",String(M));t.dispatch(Ld({active:!0,activeIndex:M.toString(),activeCoordinate:j}))}finally{Ys=null,Ca=null}};if(!o){u();return}r==="raf"?Ys=requestAnimationFrame(u):typeof r=="number"&&Ca===null&&(u(),Mf=null,Ca=setTimeout(()=>{Mf?u():(Ca=null,Ys=null)},r))}});Nh.startListening({actionCreator:V5,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:s}=n.tooltip;if(!s.active&&s.index==null){var o="0",u=zd(n,"axis","hover",String(o));t.dispatch(Ld({active:!0,activeIndex:o,activeCoordinate:u}))}}}});Nh.startListening({actionCreator:q5,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:s}=n.tooltip;s.active&&t.dispatch(Ld({active:!1,activeIndex:s.index,activeCoordinate:s.coordinate}))}}});function $5(e){e.persist();var{currentTarget:t}=e;return new Proxy(e,{get:(n,r)=>{if(r==="currentTarget")return t;var s=Reflect.get(n,r);return typeof s=="function"?s.bind(n):s}})}var Yn=Pn("externalEvent"),F5=ju(),Nf=new Map,Il=new Map,Hy=new Map;F5.startListening({actionCreator:Yn,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){var s=r.type,o=$5(r);Hy.set(s,{handler:n,reactEvent:o});var u=Nf.get(s);u!==void 0&&(cancelAnimationFrame(u),Nf.delete(s));var f=t.getState(),{throttleDelay:d,throttledEvents:h}=f.eventSettings,m=h,p=m==="all"||m?.includes(s),v=Il.get(s);v!==void 0&&(typeof d!="number"||!p)&&(clearTimeout(v),Il.delete(s));var x=()=>{var S=Hy.get(s);try{if(!S)return;var{handler:O,reactEvent:M}=S,j=t.getState(),N={activeCoordinate:qY(j),activeDataKey:BY(j),activeIndex:vu(j),activeLabel:XD(j),activeTooltipIndex:vu(j),isTooltipActive:$Y(j)};O&&O(N,M)}finally{Nf.delete(s),Il.delete(s),Hy.delete(s)}};if(!p){x();return}if(d==="raf"){var w=requestAnimationFrame(x);Nf.set(s,w)}else if(typeof d=="number"){if(!Il.has(s)){x();var _=setTimeout(x,d);Il.set(s,_)}}else x()}}});var Ree=$([No],e=>e.tooltipItemPayloads),Lee=$([Ree,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(o=>o.settings.graphicalItemId===n);if(r!=null){var{getPosition:s}=r;if(s!=null)return s(t)}}}),H5=Pn("touchMove"),K5=ju(),Da=null,Hi=null,qj=null,Bl=null;K5.startListening({actionCreator:H5,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){Bl=$5(n);var r=t.getState(),{throttleDelay:s,throttledEvents:o}=r.eventSettings,u=o==="all"||o.includes("touchmove");Da!==null&&(cancelAnimationFrame(Da),Da=null),Hi!==null&&(typeof s!="number"||!u)&&(clearTimeout(Hi),Hi=null),qj=Array.from(n.touches).map(d=>Tx({clientX:d.clientX,clientY:d.clientY,currentTarget:n.currentTarget}));var f=()=>{if(Bl!=null){var d=t.getState(),h=ux(d,d.tooltip.settings.shared);if(h==="axis"){var m,p=(m=qj)===null||m===void 0?void 0:m[0];if(p==null){Da=null,Hi=null;return}var v=Ax(d,p);v?.activeIndex!=null&&t.dispatch(RD({activeIndex:v.activeIndex,activeDataKey:void 0,activeCoordinate:v.activeCoordinate}))}else if(h==="item"){var x,w=Bl.touches[0];if(document.elementFromPoint==null||w==null)return;var _=document.elementFromPoint(w.clientX,w.clientY);if(!_||!_.getAttribute)return;var S=_.getAttribute(iV),O=(x=_.getAttribute(gC))!==null&&x!==void 0?x:void 0,M=ko(d).find(k=>k.id===O);if(S==null||M==null||O==null)return;var{dataKey:j}=M,N=Lee(d,S,O);t.dispatch(DD({activeDataKey:j,activeIndex:S,activeCoordinate:N,activeGraphicalItemId:O}))}Da=null,Hi=null}};if(!u){f();return}s==="raf"?Da=requestAnimationFrame(f):typeof s=="number"&&Hi===null&&(f(),Bl=null,Hi=setTimeout(()=>{Bl?f():(Hi=null,Da=null)},s))}}});var X5={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},Y5=Qt({name:"eventSettings",initialState:X5,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=t.payload.throttledEvents)}}}),{setEventSettings:zee}=Y5.actions,Iee=Y5.reducer,Bee=zk({brush:yQ,cartesianAxis:fQ,chartData:qG,errorBars:gJ,eventSettings:Iee,graphicalItems:ZZ,layout:$U,legend:WV,options:zG,polarAxis:hZ,polarOptions:Pee,referenceElements:wQ,renderedTicks:IQ,rootProps:Nee,tooltip:ZX,zIndex:AG}),Uee=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return mU({reducer:Bee,preloadedState:t,middleware:r=>{var s;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((s="es6")!==null&&s!==void 0?s:"")}).concat([L5.middleware,z5.middleware,Nh.middleware,F5.middleware,K5.middleware])},enhancers:r=>{var s=r;return typeof r=="function"&&(s=r()),s.concat(Qk({type:"raf"}))},devTools:{serialize:{replacer:Mee},name:"recharts-".concat(n)}})};function Vee(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,s=Jt(),o=A.useRef(null);if(s)return n;o.current==null&&(o.current=Uee(t,r));var u=ib;return A.createElement(mq,{context:u,store:o.current},n)}function qee(e){var{layout:t,margin:n}=e,r=it(),s=Jt();return A.useEffect(()=>{s||(r(UU(t)),r(BU(n)))},[r,s,t,n]),null}var $ee=A.memo(qee,mh);function Fee(e){var t=it();return A.useEffect(()=>{t(kee(e))},[t,e]),null}var Hee=e=>{var t=it();return A.useEffect(()=>{t(zee(e))},[t,e]),null},Kee=A.memo(Hee,mh);function $j(e){var{zIndex:t,isPanorama:n}=e,r=A.useRef(null),s=it();return A.useLayoutEffect(()=>(r.current&&s(_G({zIndex:t,element:r.current,isPanorama:n})),()=>{s(SG({zIndex:t,isPanorama:n}))}),[s,t,n]),A.createElement("g",{tabIndex:-1,ref:r,className:"recharts-zIndex-layer_".concat(t)})}function Fj(e){var{children:t,isPanorama:n}=e,r=ve(dG);if(!r||r.length===0)return t;var s=r.filter(u=>u<0),o=r.filter(u=>u>0);return A.createElement(A.Fragment,null,s.map(u=>A.createElement($j,{key:u,zIndex:u,isPanorama:n})),t,o.map(u=>A.createElement($j,{key:u,zIndex:u,isPanorama:n})))}var Xee=["children"];function Yee(e,t){if(e==null)return{};var n,r,s=Gee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var n=_C(),r=SC(),s=PC();if(!Cr(n)||!Cr(r))return null;var{children:o,otherAttributes:u,title:f,desc:d}=e,h,m;return u!=null&&(typeof u.tabIndex=="number"?h=u.tabIndex:h=s?0:void 0,typeof u.role=="string"?m=u.role:m=s?"application":void 0),A.createElement(ek,qd({},u,{title:f,desc:d,role:m,tabIndex:h,width:n,height:r,style:Wee,ref:t}),o)}),Qee=e=>{var{children:t}=e,n=ve(ch);if(!n)return null;var{width:r,height:s,y:o,x:u}=n;return A.createElement(ek,{width:r,height:s,x:u,y:o},t)},Hj=A.forwardRef((e,t)=>{var{children:n}=e,r=Yee(e,Xee),s=Jt();return s?A.createElement(Qee,null,A.createElement(Fj,{isPanorama:!0},n)):A.createElement(Zee,qd({ref:t},r),A.createElement(Fj,{isPanorama:!1},n))});function Jee(){var e=it(),[t,n]=A.useState(null),r=ve(rV);return A.useEffect(()=>{if(t!=null){var s=t.getBoundingClientRect(),o=s.width/t.offsetWidth;Le(o)&&o!==r&&e(qU(o))}},[t,e,r]),n}function Kj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ete(e){for(var t=1;t(ZG(),null);function $d(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var ate=A.forwardRef((e,t)=>{var n,r,s=A.useRef(null),[o,u]=A.useState({containerWidth:$d((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:$d((r=e.style)===null||r===void 0?void 0:r.height)}),f=A.useCallback((h,m)=>{u(p=>{var v=Math.round(h),x=Math.round(m);return p.containerWidth===v&&p.containerHeight===x?p:{containerWidth:v,containerHeight:x}})},[]),d=A.useCallback(h=>{if(typeof t=="function"&&t(h),h!=null&&typeof ResizeObserver<"u"){var{width:m,height:p}=h.getBoundingClientRect();f(m,p);var v=w=>{var _=w[0];if(_!=null){var{width:S,height:O}=_.contentRect;f(S,O)}},x=new ResizeObserver(v);x.observe(h),s.current=x}},[t,f]);return A.useEffect(()=>()=>{var h=s.current;h?.disconnect()},[f]),A.createElement(A.Fragment,null,A.createElement(Cu,{width:o.containerWidth,height:o.containerHeight}),A.createElement("div",ta({ref:d},e)))}),ste=A.forwardRef((e,t)=>{var{width:n,height:r}=e,[s,o]=A.useState({containerWidth:$d(n),containerHeight:$d(r)}),u=A.useCallback((d,h)=>{o(m=>{var p=Math.round(d),v=Math.round(h);return m.containerWidth===p&&m.containerHeight===v?m:{containerWidth:p,containerHeight:v}})},[]),f=A.useCallback(d=>{if(typeof t=="function"&&t(d),d!=null){var{width:h,height:m}=d.getBoundingClientRect();u(h,m)}},[t,u]);return A.createElement(A.Fragment,null,A.createElement(Cu,{width:s.containerWidth,height:s.containerHeight}),A.createElement("div",ta({ref:f},e)))}),ote=A.forwardRef((e,t)=>{var{width:n,height:r}=e;return A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement("div",ta({ref:t},e)))}),lte=A.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?A.createElement(ste,ta({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?A.createElement(ote,ta({},e,{width:n,height:r,ref:t})):A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement("div",ta({ref:t},e)))});function ute(e){return e?ate:lte}var cte=A.forwardRef((e,t)=>{var{children:n,className:r,height:s,onClick:o,onContextMenu:u,onDoubleClick:f,onMouseDown:d,onMouseEnter:h,onMouseLeave:m,onMouseMove:p,onMouseUp:v,onTouchEnd:x,onTouchMove:w,onTouchStart:_,style:S,width:O,responsive:M,dispatchTouchEvents:j=!0}=e,N=A.useRef(null),k=it(),[C,L]=A.useState(null),[I,Y]=A.useState(null),te=Jee(),ie=fb(),K=ie?.width>0?ie.width:O,be=ie?.height>0?ie.height:s,pe=A.useCallback(re=>{te(re),typeof t=="function"&&t(re),L(re),Y(re),re!=null&&(N.current=re)},[te,t,L,Y]),xe=A.useCallback(re=>{k(R5(re)),k(Yn({handler:o,reactEvent:re}))},[k,o]),V=A.useCallback(re=>{k(d0(re)),k(Yn({handler:h,reactEvent:re}))},[k,h]),Q=A.useCallback(re=>{k(PD()),k(Yn({handler:m,reactEvent:re}))},[k,m]),ne=A.useCallback(re=>{k(d0(re)),k(Yn({handler:p,reactEvent:re}))},[k,p]),le=A.useCallback(()=>{k(V5())},[k]),ue=A.useCallback(()=>{k(q5())},[k]),P=A.useCallback(re=>{k(U5(re.key))},[k]),H=A.useCallback(re=>{k(Yn({handler:u,reactEvent:re}))},[k,u]),ae=A.useCallback(re=>{k(Yn({handler:f,reactEvent:re}))},[k,f]),se=A.useCallback(re=>{k(Yn({handler:d,reactEvent:re}))},[k,d]),Z=A.useCallback(re=>{k(Yn({handler:v,reactEvent:re}))},[k,v]),oe=A.useCallback(re=>{k(Yn({handler:_,reactEvent:re}))},[k,_]),he=A.useCallback(re=>{j&&k(H5(re)),k(Yn({handler:w,reactEvent:re}))},[k,j,w]),_e=A.useCallback(re=>{k(Yn({handler:x,reactEvent:re}))},[k,x]),J=ute(M);return A.createElement(e5.Provider,{value:C},A.createElement(HB.Provider,{value:I},A.createElement(J,{width:K??S?.width,height:be??S?.height,className:et("recharts-wrapper",r),style:ete({position:"relative",cursor:"default",width:K,height:be},S),onClick:xe,onContextMenu:H,onDoubleClick:ae,onFocus:le,onBlur:ue,onKeyDown:P,onMouseDown:se,onMouseEnter:V,onMouseLeave:Q,onMouseMove:ne,onMouseUp:Z,onTouchEnd:_e,onTouchMove:he,onTouchStart:oe,ref:pe},A.createElement(ite,null),n)))}),fte=["width","height","responsive","children","className","style","compact","title","desc"];function dte(e,t){if(e==null)return{};var n,r,s=hte(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:s,children:o,className:u,style:f,compact:d,title:h,desc:m}=e,p=dte(e,fte),v=Nr(p);return d?A.createElement(A.Fragment,null,A.createElement(Cu,{width:n,height:r}),A.createElement(Hj,{otherAttributes:v,title:h,desc:m},o)):A.createElement(cte,{className:u,style:f,width:n,height:r,responsive:s??!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},A.createElement(Hj,{otherAttributes:v,title:h,desc:m,ref:t},A.createElement(SQ,null,o)))});function h0(){return h0=Object.assign?Object.assign.bind():function(e){for(var t=1;tA.createElement(wte,{chartName:"ScatterChart",defaultTooltipEventType:"item",validateTooltipEventTypes:_te,tooltipPayloadSearcher:RG,categoricalChartProps:e,ref:t}));const Ox={bg:{primary:"#0B0D17",secondary:"#12152A",tertiary:"#1A1F3D",hover:"#222850"},accent:{purple:"#8B5CF6",purpleLight:"#A78BFA",purpleDim:"#6D28D9",blue:"#38BDF8",blueLight:"#7DD3FC",blueDim:"#0284C7",cyan:"#06B6D4",amber:"#F59E0B"},text:{primary:"#F1F5F9",secondary:"#94A3B8",muted:"#64748B"},heatmap:{bad:"#EF4444",badBg:"#7F1D1D",mid:"#EAB308",midBg:"#713F12",good:"#22C55E",goodBg:"#14532D"}},Ate={bg:{primary:"#FFFFFF",secondary:"#F8FAFC",tertiary:"#F1F5F9",hover:"#E2E8F0"},accent:{purple:"#7C3AED",purpleLight:"#6D28D9",purpleDim:"#5B21B6",blue:"#0284C7",blueLight:"#0369A1",blueDim:"#075985",cyan:"#0891B2",amber:"#D97706"},text:{primary:"#0F172A",secondary:"#334155",muted:"#64748B"},heatmap:{bad:"#DC2626",badBg:"#FEE2E2",mid:"#CA8A04",midBg:"#FEF9C3",good:"#16A34A",goodBg:"#DCFCE7"}},Tte={dark:Ox,light:Ate},Ex=A.createContext({mode:"dark",colors:Ox});function jx(){return A.useContext(Ex).colors}function Ote(){return A.useContext(Ex).mode}function kf(e,t,n,r,s=!1,o){const u=o??Ox,f=n-t;let d=f===0?.5:(e-t)/f;s&&(d=1-d);const h=.1+d*.55;return{bg:Ete(r,h),text:u.text.primary}}function Ete(e,t){const n=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),s=parseInt(e.slice(5,7),16);return`rgba(${n}, ${r}, ${s}, ${t.toFixed(2)})`}function jte(e=640){const[t,n]=A.useState(!1);return A.useEffect(()=>{const r=()=>n(window.innerWidthwindow.removeEventListener("resize",r)},[e]),t}function Yj({base:e,sub:t}){return b.jsxs(b.Fragment,{children:[e,b.jsx("sub",{className:"text-[0.7em]",children:t})]})}function Mte({active:e,payload:t,xSub:n,ySub:r}){if(!e||!t?.length)return null;const s=t[0].payload,o=s.type==="cascade"?"Cascade":s.type==="2-part"?"2-Part":"Speech-to-Speech",u=s.type==="cascade"?"bg-purple/20 text-purple-light":s.type==="2-part"?"bg-emerald-500/20 text-emerald-400":"bg-blue/20 text-blue-light";return b.jsxs("div",{className:"bg-bg-tertiary border border-border-default rounded-lg p-3 shadow-xl max-w-xs",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1",children:s.name}),b.jsxs("div",{className:"flex gap-4 text-xs",children:[b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[b.jsx(Yj,{base:"EVA-A",sub:n}),":"]})," ",b.jsx("span",{className:"text-purple-light font-mono",children:s.plotX.toFixed(2)})]}),b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[b.jsx(Yj,{base:"EVA-X",sub:r}),":"]})," ",b.jsx("span",{className:"text-blue-light font-mono",children:s.plotY.toFixed(2)})]})]}),s.type==="cascade"&&b.jsxs("div",{className:"text-[10px] text-text-muted mt-1.5 space-y-0.5",children:[b.jsxs("div",{children:["STT: ",s.stt]}),b.jsxs("div",{children:["LLM: ",s.llm]}),b.jsxs("div",{children:["TTS: ",s.tts]})]}),b.jsx("div",{className:"mt-1.5",children:b.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium ${u}`,children:o})})]})}function Gj({x:e,y:t,base:n,sub:r,suffix:s,fill:o,angle:u,small:f}){const d=f?12:20,h=f?9:14,m=f?3:5;return b.jsxs("text",{x:e,y:t,fill:o,fontSize:d,fontWeight:600,textAnchor:"middle",transform:u?`rotate(${u}, ${e}, ${t})`:void 0,children:[n,b.jsx("tspan",{fontSize:h,dy:m,children:r}),s&&b.jsx("tspan",{fontSize:d,dy:-m,children:s})]})}const Wj=[0,.2,.4,.6,.8,1],m0="#A78BFA",Nte="#C4B5FD",G5="#F59E0B",kte="#FBBF24",W5="#34D399",Cte="#6EE7B7",Z5="#06B6D4";function Dte(e){const t=[];for(const n of e)e.some(s=>s.plotY>=n.plotY&&s.plotX>=n.plotX&&(s.plotY>n.plotY||s.plotX>n.plotX))||t.push(n);return t.sort((n,r)=>n.plotX-r.plotX).map(n=>({plotX:n.plotX,plotY:n.plotY}))}function Pte({frontier:e}){const t=mQ(),n=pQ();if(!t||!n||e.length<2)return null;const r=e.map(s=>`${t(s.plotX)},${n(s.plotY)}`).join(" ");return b.jsx("polyline",{points:r,fill:"none",stroke:Z5,strokeWidth:2,strokeDasharray:"6 3",pointerEvents:"none"})}const Ul=[{title:"pass@1",description:b.jsx(b.Fragment,{children:"Average of per-sample scores, where each sample scores 1 if all metrics in category surpass metric-specific threshold, else 0."}),subscript:"pass@1",getX:e=>e.successRates.accuracy.pass_threshold,getY:e=>e.successRates.experience.pass_threshold,domain:[0,1]},{title:"pass@k (k=3)",description:b.jsx(b.Fragment,{children:"Percent of scenarios where at least 1 of k=3 trials surpasses metric-specific thresholds in all metrics in the category. ."}),subscript:"pass@k",getX:e=>e.successRates.accuracy.pass_at_k,getY:e=>e.successRates.experience.pass_at_k,domain:[0,1]},{title:"pass^k (k=3)",description:b.jsx(b.Fragment,{children:"Per-scenario probability of all k=3 trials succeeding (scenario pass rate raised to the k-th power) for that category, averaged across scenarios."}),subscript:"pass^k",getX:e=>e.successRates.accuracy.pass_k,getY:e=>e.successRates.experience.pass_k,domain:[0,1]},{title:"Mean",description:b.jsx(b.Fragment,{children:"Average of per-sample scores, where each sample's score is the mean of the submetrics in that category."}),subscript:"mean",getX:e=>e.successRates.accuracy.mean,getY:e=>e.successRates.experience.mean,domain:[0,1]}];function Rte(e){return e==="2-part"?{fill:W5,stroke:Cte}:e==="s2s"?{fill:G5,stroke:kte}:{fill:m0,stroke:Nte}}function Lte({systems:e}){const t=jx(),[n,r]=A.useState(0),s=jte(),o=Ul[n],u=e.map(m=>({...m,plotX:o.getX(m),plotY:o.getY(m)})),f=Dte(u),d=()=>r(m=>(m-1+Ul.length)%Ul.length),h=()=>r(m=>(m+1)%Ul.length);return b.jsxs("div",{className:"bg-bg-secondary rounded-xl border border-border-default p-6",children:[b.jsx("div",{className:"flex flex-wrap justify-center gap-2 mb-6",children:Ul.map((m,p)=>b.jsx("button",{onClick:()=>r(p),className:`px-3 py-1 rounded-full text-xs font-medium transition-colors ${p===n?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:m.title},p))}),b.jsxs("div",{className:"flex items-center justify-between mb-6",children:[b.jsx("button",{onClick:d,className:"p-2 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(YR,{className:"w-6 h-6"})}),b.jsxs("div",{className:"text-center flex-1 px-4",children:[b.jsx("h3",{className:"text-xl font-semibold text-text-primary mb-2",children:o.title}),b.jsx("p",{className:"text-sm text-text-muted leading-loose max-w-xl mx-auto",children:o.description})]}),b.jsx("button",{onClick:h,className:"p-2 rounded-lg hover:bg-bg-hover transition-colors text-text-muted hover:text-text-primary",children:b.jsx(sM,{className:"w-6 h-6"})})]}),b.jsxs("div",{className:"flex flex-col lg:flex-row lg:items-center gap-6 max-w-4xl mx-auto",children:[b.jsx("div",{className:"flex-1 min-w-0",children:b.jsx("div",{style:{width:"100%",aspectRatio:"1"},className:"[&_.recharts-surface]:overflow-visible min-h-[300px] sm:min-h-[400px]",children:b.jsx(CV,{width:"100%",height:"100%",children:b.jsxs(Ste,{margin:{top:15,right:15,bottom:s?45:60,left:s?25:40},style:{overflow:"visible"},children:[b.jsx(E5,{strokeDasharray:"3 3",stroke:t.bg.tertiary}),b.jsx(D5,{type:"number",dataKey:"plotX",domain:o.domain,ticks:Wj,allowDataOverflow:!0,tickFormatter:m=>m.toFixed(1),stroke:t.text.muted,tick:{fill:t.text.secondary,fontSize:11},label:({viewBox:m})=>{const{x:p,y:v,width:x}=m;return b.jsx(Gj,{x:p+x/2,y:v+(s?35:50),base:"Accuracy (EVA-A",sub:o.subscript,suffix:")",fill:t.accent.purpleLight,small:s})}}),b.jsx(P5,{type:"number",dataKey:"plotY",domain:o.domain,ticks:Wj,allowDataOverflow:!0,tickFormatter:m=>m.toFixed(1),stroke:t.text.muted,tick:{fill:t.text.secondary,fontSize:11},label:({viewBox:m})=>{const{x:p,y:v,height:x}=m;return b.jsx(Gj,{x:p-(s?2:8),y:v+x/2,base:"Experience (EVA-X",sub:o.subscript,suffix:")",fill:t.accent.blueLight,angle:-90,small:s})}}),b.jsx(aW,{content:b.jsx(Mte,{xSub:o.subscript,ySub:o.subscript}),cursor:!1}),b.jsx(Pte,{frontier:f}),b.jsx(k5,{data:u,fill:m0,children:u.map(m=>{const{fill:p,stroke:v}=Rte(m.type);return b.jsx(bx,{fill:p,stroke:v,strokeWidth:1.5,r:8},m.id)})})]})})})}),b.jsxs("div",{className:"flex flex-wrap justify-center gap-x-4 gap-y-2 lg:flex-col lg:gap-3 lg:flex-shrink-0 lg:pr-2",children:[b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:m0}}),b.jsx("span",{className:"whitespace-nowrap",children:"Cascade"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:W5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Audio Native"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-3 h-3 sm:w-3.5 sm:h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:G5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Speech-to-Speech"})]}),b.jsxs("div",{className:"flex items-center gap-2 text-xs sm:text-sm text-text-secondary",children:[b.jsx("div",{className:"w-5 sm:w-6 h-0 border-t-2 border-dashed flex-shrink-0",style:{borderColor:Z5}}),b.jsx("span",{className:"whitespace-nowrap",children:"Pareto Frontier"})]})]})]})]})}const zte=["task_completion","agent_tts_fidelity","faithfulness"],Ite=["turn_taking","conciseness","conversation_progression"],Bte={task_completion:"Task Completion",agent_tts_fidelity:"Agent Speech Fidelity",faithfulness:"Faithfulness"},Ute={turn_taking:"Turn Taking",conciseness:"Conciseness",conversation_progression:"Conversation Progression"},Zj=new Set(["response_speed"]),Vte=[{id:"ultravox-v0-7-kokoro",name:"ultravox v0.7 + kokoro",shortName:"ultravox v0.7 + kokoro",stt:"-",llm:"ultravox v0.7",tts:"kokoro",type:"2-part",evaA:.3933,evaX:.3067,accuracyMetrics:{task_completion:.58,agent_tts_fidelity:.9662,faithfulness:.45},experienceMetrics:{turn_taking:.3782,conciseness:.7532,conversation_progression:.64},diagnosticMetrics:{key_entity_transcription:.784,response_speed:5.9224},successRates:{accuracy:{pass_threshold:.3933,mean:.6654,pass_at_k:.56,pass_k:.2793},experience:{pass_threshold:.3067,mean:.5905,pass_at_k:.54,pass_k:.1807}}},{id:"gpt-realtime-mini",name:"gpt-realtime-mini",shortName:"gpt-realtime-mini",stt:"-",llm:"gpt-realtime-mini",tts:"-",type:"s2s",evaA:.1867,evaX:.4333,accuracyMetrics:{task_completion:.2867,agent_tts_fidelity:.9882,faithfulness:.1833},experienceMetrics:{turn_taking:.7607,conciseness:.8116,conversation_progression:.3567},diagnosticMetrics:{key_entity_transcription:0,response_speed:3.7524},successRates:{accuracy:{pass_threshold:.1867,mean:.4861,pass_at_k:.28,pass_k:.1185},experience:{pass_threshold:.4333,mean:.643,pass_at_k:.7,pass_k:.2615}}},{id:"ultravox-realtime",name:"ultravox-realtime",shortName:"ultravox-realtime",stt:"-",llm:"ultravox-realtime",tts:"-",type:"2-part",evaA:.28,evaX:.44,accuracyMetrics:{task_completion:.4867,agent_tts_fidelity:.9426,faithfulness:.3167},experienceMetrics:{turn_taking:.519,conciseness:.6948,conversation_progression:.5933},diagnosticMetrics:{key_entity_transcription:.8484,response_speed:4.847},successRates:{accuracy:{pass_threshold:.28,mean:.582,pass_at_k:.46,pass_k:.1511},experience:{pass_threshold:.44,mean:.6024,pass_at_k:.76,pass_k:.2356}}},{id:"gpt-4o-mini-transcribe-gpt-5-mini-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-5-mini + gpt-4o-mini-tts",shortName:"gpt-5-mini (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-5-mini",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.2095,evaX:.1267,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9707,faithfulness:.3},experienceMetrics:{turn_taking:.2703,conciseness:.7162,conversation_progression:.4533},diagnosticMetrics:{key_entity_transcription:.6801,response_speed:5.9619},successRates:{accuracy:{pass_threshold:.2095,mean:.5398,pass_at_k:.5,pass_k:.0694},experience:{pass_threshold:.1267,mean:.4799,pass_at_k:.32,pass_k:.0274}}},{id:"gpt-4o-mini-transcribe-sonnet-4-6-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + sonnet-4.6 + gpt-4o-mini-tts",shortName:"sonnet-4.6 (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"sonnet-4.6",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.36,evaX:.02,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.9605,faithfulness:.6433},experienceMetrics:{turn_taking:.1043,conciseness:.8298,conversation_progression:.7767},diagnosticMetrics:{key_entity_transcription:.6167,response_speed:8.2609},successRates:{accuracy:{pass_threshold:.36,mean:.7146,pass_at_k:.62,pass_k:.1867},experience:{pass_threshold:.02,mean:.5703,pass_at_k:.06,pass_k:.0022}}},{id:"gpt-4o-mini-transcribe-gpt-oss-20b-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-oss-20b + gpt-4o-mini-tts",shortName:"gpt-oss-20b (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-oss-20b",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.1267,evaX:.3,accuracyMetrics:{task_completion:.3,agent_tts_fidelity:.9516,faithfulness:.1767},experienceMetrics:{turn_taking:.5225,conciseness:.6871,conversation_progression:.3567},diagnosticMetrics:{key_entity_transcription:.617,response_speed:4.8793},successRates:{accuracy:{pass_threshold:.1267,mean:.4761,pass_at_k:.24,pass_k:.0541},experience:{pass_threshold:.3,mean:.5221,pass_at_k:.6,pass_k:.1356}}},{id:"gpt-4o-mini-transcribe-gpt-oss-120b-gpt-4o-mini-tts",name:"gpt-4o-mini-transcribe + gpt-oss-120b + gpt-4o-mini-tts",shortName:"gpt-oss-120b (gpt-4o-mini-transcribe)",stt:"gpt-4o-mini-transcribe",llm:"gpt-oss-120b",tts:"gpt-4o-mini-tts",type:"cascade",evaA:.1733,evaX:.54,accuracyMetrics:{task_completion:.2867,agent_tts_fidelity:.9668,faithfulness:.3433},experienceMetrics:{turn_taking:.6251,conciseness:.7655,conversation_progression:.5367},diagnosticMetrics:{key_entity_transcription:.5824,response_speed:4.2443},successRates:{accuracy:{pass_threshold:.1733,mean:.5323,pass_at_k:.34,pass_k:.077},experience:{pass_threshold:.54,mean:.6424,pass_at_k:.94,pass_k:.2467}}},{id:"parakeet-ctc-1-1b-gpt-oss-20b-magpie",name:"parakeet-ctc-1.1b + gpt-oss-20b + magpie",shortName:"gpt-oss-20b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-20b",tts:"magpie",type:"cascade",evaA:.16,evaX:.34,accuracyMetrics:{task_completion:.4,agent_tts_fidelity:.935,faithfulness:.14},experienceMetrics:{turn_taking:.418,conciseness:.7205,conversation_progression:.4933},diagnosticMetrics:{key_entity_transcription:.8148,response_speed:5.9816},successRates:{accuracy:{pass_threshold:.16,mean:.4917,pass_at_k:.32,pass_k:.0711},experience:{pass_threshold:.34,mean:.5439,pass_at_k:.7,pass_k:.1444}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-magpie",name:"parakeet-ctc-1.1b + gpt-oss-120b + magpie",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"magpie",type:"cascade",evaA:.1678,evaX:.42,accuracyMetrics:{task_completion:.3667,agent_tts_fidelity:.9065,faithfulness:.36},experienceMetrics:{turn_taking:.4663,conciseness:.7522,conversation_progression:.63},diagnosticMetrics:{key_entity_transcription:.8415,response_speed:5.2856},successRates:{accuracy:{pass_threshold:.1678,mean:.544,pass_at_k:.3061,pass_k:.0718},experience:{pass_threshold:.42,mean:.6162,pass_at_k:.72,pass_k:.2022}}},{id:"parakeet-ctc-1-1b-qwen3-5-27b-kokoro",name:"parakeet-ctc-1.1b + qwen3.5-27b + kokoro",shortName:"qwen3.5-27b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"qwen3.5-27b",tts:"kokoro",type:"cascade",evaA:.4133,evaX:.06,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.9896,faithfulness:.47},experienceMetrics:{turn_taking:.2249,conciseness:.6823,conversation_progression:.6167},diagnosticMetrics:{key_entity_transcription:.8093,response_speed:7.4968},successRates:{accuracy:{pass_threshold:.4133,mean:.6665,pass_at_k:.7,pass_k:.2104},experience:{pass_threshold:.06,mean:.508,pass_at_k:.14,pass_k:.0156}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-kokoro",name:"parakeet-ctc-1.1b + gpt-oss-120b + kokoro",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"kokoro",type:"cascade",evaA:.2333,evaX:.24,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9601,faithfulness:.3267},experienceMetrics:{turn_taking:.3569,conciseness:.7582,conversation_progression:.6167},diagnosticMetrics:{key_entity_transcription:.7951,response_speed:6.0521},successRates:{accuracy:{pass_threshold:.2333,mean:.5489,pass_at_k:.46,pass_k:.1059},experience:{pass_threshold:.24,mean:.5772,pass_at_k:.5,pass_k:.0844}}},{id:"parakeet-ctc-1-1b-gpt-oss-120b-chatterbox",name:"parakeet-ctc-1.1b + gpt-oss-120b + chatterbox",shortName:"gpt-oss-120b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"gpt-oss-120b",tts:"chatterbox",type:"cascade",evaA:.1533,evaX:.0267,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.8883,faithfulness:.32},experienceMetrics:{turn_taking:.0645,conciseness:.7841,conversation_progression:.49},diagnosticMetrics:{key_entity_transcription:.8053,response_speed:9.8321},successRates:{accuracy:{pass_threshold:.1533,mean:.5228,pass_at_k:.32,pass_k:.057},experience:{pass_threshold:.0267,mean:.4462,pass_at_k:.06,pass_k:.0074}}},{id:"parakeet-ctc-1-1b-qwen3-5-27b-chatterbox",name:"parakeet-ctc-1.1b + qwen3.5-27b + chatterbox",shortName:"qwen3.5-27b (parakeet-ctc-1.1b)",stt:"parakeet-ctc-1.1b",llm:"qwen3.5-27b",tts:"chatterbox",type:"cascade",evaA:.2533,evaX:0,accuracyMetrics:{task_completion:.5333,agent_tts_fidelity:.8513,faithfulness:.42},experienceMetrics:{turn_taking:.0225,conciseness:.6914,conversation_progression:.56},diagnosticMetrics:{key_entity_transcription:.8268,response_speed:12.0952},successRates:{accuracy:{pass_threshold:.2533,mean:.6015,pass_at_k:.56,pass_k:.0815},experience:{pass_threshold:0,mean:.4246,pass_at_k:0,pass_k:0}}},{id:"voxtral-mini-3b-gpt-oss-20b-magpie",name:"voxtral-mini-3b + gpt-oss-20b + magpie",shortName:"gpt-oss-20b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-20b",tts:"magpie",type:"cascade",evaA:.1133,evaX:.3867,accuracyMetrics:{task_completion:.3733,agent_tts_fidelity:.9349,faithfulness:.1367},experienceMetrics:{turn_taking:.5951,conciseness:.6917,conversation_progression:.3667},diagnosticMetrics:{key_entity_transcription:.6618,response_speed:4.4834},successRates:{accuracy:{pass_threshold:.1133,mean:.4816,pass_at_k:.24,pass_k:.0526},experience:{pass_threshold:.3867,mean:.5512,pass_at_k:.78,pass_k:.1541}}},{id:"voxtral-mini-3b-gpt-oss-120b-magpie",name:"voxtral-mini-3b + gpt-oss-120b + magpie",shortName:"gpt-oss-120b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-120b",tts:"magpie",type:"cascade",evaA:.1477,evaX:.5667,accuracyMetrics:{task_completion:.3467,agent_tts_fidelity:.9467,faithfulness:.2967},experienceMetrics:{turn_taking:.6659,conciseness:.7494,conversation_progression:.4767},diagnosticMetrics:{key_entity_transcription:.6906,response_speed:3.3998},successRates:{accuracy:{pass_threshold:.1477,mean:.5279,pass_at_k:.3265,pass_k:.062},experience:{pass_threshold:.5667,mean:.6307,pass_at_k:.92,pass_k:.3341}}},{id:"voxtral-mini-3b-gpt-oss-120b-chatterbox",name:"voxtral-mini-3b + gpt-oss-120b + chatterbox",shortName:"gpt-oss-120b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"gpt-oss-120b",tts:"chatterbox",type:"cascade",evaA:.16,evaX:.0933,accuracyMetrics:{task_completion:.36,agent_tts_fidelity:.9049,faithfulness:.3467},experienceMetrics:{turn_taking:.204,conciseness:.7701,conversation_progression:.5233},diagnosticMetrics:{key_entity_transcription:.6376,response_speed:7.2744},successRates:{accuracy:{pass_threshold:.16,mean:.5372,pass_at_k:.28,pass_k:.08},experience:{pass_threshold:.0933,mean:.4991,pass_at_k:.28,pass_k:.0104}}},{id:"voxtral-mini-3b-qwen3-5-27b-chatterbox",name:"voxtral-mini-3b + qwen3.5-27b + chatterbox",shortName:"qwen3.5-27b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"qwen3.5-27b",tts:"chatterbox",type:"cascade",evaA:.2067,evaX:0,accuracyMetrics:{task_completion:.54,agent_tts_fidelity:.796,faithfulness:.3967},experienceMetrics:{turn_taking:.0296,conciseness:.7165,conversation_progression:.5167},diagnosticMetrics:{key_entity_transcription:.7408,response_speed:14.4124},successRates:{accuracy:{pass_threshold:.2067,mean:.5775,pass_at_k:.52,pass_k:.0452},experience:{pass_threshold:0,mean:.4209,pass_at_k:0,pass_k:0}}},{id:"voxtral-mini-3b-qwen3-5-27b-kokoro",name:"voxtral-mini-3b + qwen3.5-27b + kokoro",shortName:"qwen3.5-27b (voxtral-mini-3b)",stt:"voxtral-mini-3b",llm:"qwen3.5-27b",tts:"kokoro",type:"cascade",evaA:.4933,evaX:.2467,accuracyMetrics:{task_completion:.5933,agent_tts_fidelity:.9949,faithfulness:.5067},experienceMetrics:{turn_taking:.374,conciseness:.6838,conversation_progression:.5433},diagnosticMetrics:{key_entity_transcription:.7518,response_speed:5.8276},successRates:{accuracy:{pass_threshold:.4933,mean:.6983,pass_at_k:.74,pass_k:.3348},experience:{pass_threshold:.2467,mean:.5337,pass_at_k:.5,pass_k:.0985}}},{id:"whisper-large-v3-gpt-oss-20b-chatterbox",name:"whisper-large-v3 + gpt-oss-20b + chatterbox",shortName:"gpt-oss-20b (whisper-large-v3)",stt:"whisper-large-v3",llm:"gpt-oss-20b",tts:"chatterbox",type:"cascade",evaA:.0733,evaX:.04,accuracyMetrics:{task_completion:.38,agent_tts_fidelity:.8849,faithfulness:.1533},experienceMetrics:{turn_taking:.1816,conciseness:.7343,conversation_progression:.44},diagnosticMetrics:{key_entity_transcription:.6696,response_speed:7.5545},successRates:{accuracy:{pass_threshold:.0733,mean:.4728,pass_at_k:.18,pass_k:.017},experience:{pass_threshold:.04,mean:.4519,pass_at_k:.12,pass_k:.0044}}},{id:"whisper-large-v3-gpt-oss-120b-kokoro",name:"whisper-large-v3 + gpt-oss-120b + kokoro",shortName:"gpt-oss-120b (whisper-large-v3)",stt:"whisper-large-v3",llm:"gpt-oss-120b",tts:"kokoro",type:"cascade",evaA:.1667,evaX:.52,accuracyMetrics:{task_completion:.28,agent_tts_fidelity:.9645,faithfulness:.2967},experienceMetrics:{turn_taking:.6148,conciseness:.7536,conversation_progression:.5433},diagnosticMetrics:{key_entity_transcription:.6573,response_speed:4.1026},successRates:{accuracy:{pass_threshold:.1667,mean:.5137,pass_at_k:.32,pass_k:.0763},experience:{pass_threshold:.52,mean:.6372,pass_at_k:.84,pass_k:.3244}}}],qte=["#F59E0B","#38BDF8","#34D399","#A78BFA","#F87171","#22D3EE","#FB923C","#818CF8","#F472B6","#4ADE80","#FACC15","#2DD4BF","#C084FC","#FB7185","#67E8F9","#A3E635"],$te=["#B45309","#0369A1","#047857","#6D28D9","#B91C1C","#0E7490","#C2410C","#4338CA","#BE185D","#15803D","#A16207","#0D9488","#7C3AED","#E11D48","#0891B2","#65A30D"];function Fte(e,t){const n=new Set;for(const o of e)o.stt!=="-"&&n.add(o.stt),n.add(o.llm),o.tts!=="-"&&n.add(o.tts);const r=new Map;let s=0;for(const o of n)r.set(o,t[s%t.length]),s++;return r}function Qj({system:e,componentColors:t}){if(e.type==="s2s"||e.type==="2-part"){if(e.tts!=="-")return b.jsxs("span",{className:"text-sm leading-relaxed inline-flex flex-wrap items-baseline",children:[b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.llm)},children:e.llm}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.tts)},children:e.tts})]});const n=t.get(e.llm)||"#F1F5F9";return b.jsx("span",{style:{color:n},children:e.llm})}return b.jsxs("span",{className:"text-sm leading-relaxed inline-flex flex-wrap items-baseline",children:[b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.stt)},children:e.stt}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.llm)},children:e.llm}),b.jsx("span",{className:"text-text-muted whitespace-nowrap",children:" + "}),b.jsx("span",{className:"whitespace-nowrap",style:{color:t.get(e.tts)},children:e.tts})]})}const Hte=[{key:null,label:"Default"},{key:"system_stt",label:"STT"},{key:"system_llm",label:"LLM"},{key:"system_tts",label:"TTS"}];function Vl({active:e,dir:t}){return e?t==="desc"?b.jsx(VR,{className:"w-3 h-3 inline ml-0.5"}):b.jsx($R,{className:"w-3 h-3 inline ml-0.5"}):null}function Jj({title:e,description:t,metricKeys:n,metricLabels:r,dataKey:s,baseColor:o,aggregateColumns:u,aggregateColor:f="#F59E0B",systems:d}){const h=jx(),m=Ote(),p=u??[],v=m==="light"?$te:qte,x=A.useMemo(()=>Fte(d,v),[d,v]),[w,_]=A.useState(null),[S,O]=A.useState("desc"),[M,j]=A.useState(!1),[N,k]=A.useState({top:0,left:0}),C=A.useRef(null),L=A.useRef(null),[I,Y]=A.useState("scores"),te=A.useCallback(()=>{if(C.current){const Z=C.current.getBoundingClientRect();k({top:Z.bottom+4,left:Z.left})}j(Z=>!Z)},[]);A.useEffect(()=>{function Z(oe){L.current&&!L.current.contains(oe.target)&&C.current&&!C.current.contains(oe.target)&&j(!1)}if(M)return document.addEventListener("mousedown",Z),()=>document.removeEventListener("mousedown",Z)},[M]);function ie(Z){w===Z?O(oe=>oe==="desc"?"asc":"desc"):(_(Z),O("desc"))}function K(Z){Z===null?_(null):w===Z?O(oe=>oe==="desc"?"asc":"desc"):(_(Z),O("asc")),j(!1)}const be=A.useMemo(()=>{if(!w)return[...d].sort((he,_e)=>{const J=he.type==="s2s"||he.type==="2-part",re=_e.type==="s2s"||_e.type==="2-part";return J&&!re?-1:!J&&re?1:he.stt.localeCompare(_e.stt)});const Z=he=>{if(w==="system_stt")return he.stt;if(w==="system_llm")return he.llm;if(w==="system_tts")return he.tts;const _e=p.find(J=>J.key===w);return _e?_e.getValue(he):he[s][w]??0},oe=(he,_e)=>{const J=Z(he),re=Z(_e);if(typeof J=="string"&&typeof re=="string")return S==="asc"?J.localeCompare(re):re.localeCompare(J);const Se=J,ee=re;return S==="desc"?ee-Se:Se-ee};return[...d].sort(oe)},[w,S,p,s]),pe={};for(const Z of n){const oe=d.map(he=>he[s][Z]??0);pe[Z]={min:Math.min(...oe),max:Math.max(...oe)}}const xe={};for(const Z of p){const oe=d.map(he=>Z.getValue(he));xe[Z.key]={min:Math.min(...oe),max:Math.max(...oe)}}const V=p.length+n.length,Q=35,ne=`${(100-Q)/V}%`,le=`${Q}%`,ue="text-center py-3 px-1 font-bold text-xs leading-snug cursor-pointer select-none hover:bg-bg-hover/50 transition-colors",P=I==="scores"?p:[],H=I==="metrics"?n:[],ae=I==="scores"?p.length:n.length,se=`${(100-Q)/ae}%`;return b.jsxs("div",{className:"bg-bg-secondary rounded-xl border border-border-default p-4 sm:p-6",children:[b.jsx("h3",{className:"text-lg font-semibold text-text-primary mb-1",children:e}),b.jsx("p",{className:"text-sm text-text-secondary mb-4",children:t}),p.length>0&&n.length>0&&b.jsxs("div",{className:"flex gap-2 mb-4 md:hidden",children:[b.jsx("button",{onClick:()=>Y("scores"),className:`flex-1 px-3 py-2 rounded-lg text-xs font-medium transition-colors ${I==="scores"?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:"Aggregate Scores"}),b.jsx("button",{onClick:()=>Y("metrics"),className:`flex-1 px-3 py-2 rounded-lg text-xs font-medium transition-colors ${I==="metrics"?"bg-purple/20 text-purple-light":"bg-bg-hover text-text-muted hover:text-text-secondary"}`,children:"Individual Metrics"})]}),b.jsx("div",{className:"hidden md:block overflow-x-auto",children:b.jsxs("table",{className:"w-full text-sm",style:{tableLayout:"fixed"},children:[b.jsx("thead",{children:b.jsxs("tr",{className:"border-b border-border-default",children:[b.jsxs("th",{className:"text-left py-3 px-3 text-text-muted font-medium text-sm sticky left-0 bg-bg-secondary z-10",style:{width:le},children:[b.jsxs("button",{ref:C,onClick:te,className:"flex items-center gap-1 hover:text-text-primary transition-colors",children:["System",b.jsx(ai,{className:"w-3.5 h-3.5"}),w?.startsWith("system_")&&b.jsx(Vl,{active:!0,dir:S})]}),M&&G0.createPortal(b.jsx("div",{ref:L,className:"bg-bg-tertiary border border-border-default rounded-lg shadow-xl py-1 min-w-[100px]",style:{position:"fixed",top:N.top,left:N.left,zIndex:9999},children:Hte.map(Z=>b.jsx("button",{onClick:()=>K(Z.key),className:`block w-full text-left px-3 py-1.5 text-xs hover:bg-bg-hover transition-colors ${w===Z.key||Z.key===null&&w===null?"text-purple-light font-medium":"text-text-secondary"}`,children:Z.label},Z.key??"default"))}),document.body)]}),p.map((Z,oe)=>b.jsxs("th",{className:`${ue} ${oe===p.length-1?"border-r-2 border-border-default":""}`,style:{color:f,width:ne},onClick:()=>ie(Z.key),children:[Z.label,b.jsx(Vl,{active:w===Z.key,dir:S})]},Z.key)),n.map(Z=>b.jsxs("th",{className:`${ue} text-text-primary`,style:{width:ne},onClick:()=>ie(Z),children:[r[Z]||Z,b.jsx(Vl,{active:w===Z,dir:S})]},Z))]})}),b.jsx("tbody",{children:be.map(Z=>b.jsxs("tr",{className:"border-b border-border-default/30",children:[b.jsx("td",{className:"py-2.5 px-3 sticky left-0 bg-bg-secondary z-10 whitespace-nowrap",children:b.jsx(Qj,{system:Z,componentColors:x})}),p.map((oe,he)=>{const _e=oe.getValue(Z),{min:J,max:re}=xe[oe.key],{bg:Se,text:ee}=kf(_e,J,re,f,!1,h);return b.jsx("td",{className:`py-1.5 px-1 text-center ${he===p.length-1?"border-r-2 border-border-default":""}`,children:b.jsx("div",{className:"rounded-md px-0.5 py-1.5 font-mono text-xs font-medium",style:{backgroundColor:Se,color:ee},children:_e.toFixed(2)})},oe.key)}),n.map(oe=>{const he=Z[s][oe]??0,{min:_e,max:J}=pe[oe],re=Zj.has(oe),{bg:Se,text:ee}=kf(he,_e,J,o,re,h);return b.jsx("td",{className:"py-1.5 px-1 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1.5 font-mono text-xs font-medium",style:{backgroundColor:Se,color:ee},children:he.toFixed(2)})},oe)})]},Z.id))})]})}),b.jsx("div",{className:"md:hidden overflow-x-auto",children:b.jsxs("table",{className:"w-full text-sm",style:{tableLayout:"fixed"},children:[b.jsx("thead",{children:b.jsxs("tr",{className:"border-b border-border-default",children:[b.jsx("th",{className:"text-left py-3 px-2 text-text-muted font-medium text-xs sticky left-0 bg-bg-secondary z-10",style:{width:le},children:"System"}),P.map(Z=>b.jsxs("th",{className:`${ue} text-[10px] sm:text-xs`,style:{color:f,width:se},onClick:()=>ie(Z.key),children:[Z.label.replace("EVA-A ",""),b.jsx(Vl,{active:w===Z.key,dir:S})]},Z.key)),H.map(Z=>b.jsxs("th",{className:`${ue} text-text-primary text-[10px] sm:text-xs`,style:{width:se},onClick:()=>ie(Z),children:[r[Z]||Z,b.jsx(Vl,{active:w===Z,dir:S})]},Z))]})}),b.jsx("tbody",{children:be.map(Z=>b.jsxs("tr",{className:"border-b border-border-default/30",children:[b.jsx("td",{className:"py-2 px-2 sticky left-0 bg-bg-secondary z-10 text-xs",children:b.jsx(Qj,{system:Z,componentColors:x})}),P.map(oe=>{const he=oe.getValue(Z),{min:_e,max:J}=xe[oe.key],{bg:re,text:Se}=kf(he,_e,J,f,!1,h);return b.jsx("td",{className:"py-1 px-0.5 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1 font-mono text-[10px] sm:text-xs font-medium",style:{backgroundColor:re,color:Se},children:he.toFixed(2)})},oe.key)}),H.map(oe=>{const he=Z[s][oe]??0,{min:_e,max:J}=pe[oe],re=Zj.has(oe),{bg:Se,text:ee}=kf(he,_e,J,o,re,h);return b.jsx("td",{className:"py-1 px-0.5 text-center",children:b.jsx("div",{className:"rounded-md px-0.5 py-1 font-mono text-[10px] sm:text-xs font-medium",style:{backgroundColor:Se,color:ee},children:he.toFixed(2)})},oe)})]},Z.id))})]})})]})}const Kte=[{title:"Transcription failures cascade into low task completion",description:"Transcription failures around last names and confirmation codes cascade into low task completion as the agent is unable to pull up the user's booking and proceed with the request."},{title:"Turn taking remains a key challenge",description:"Effective turn taking remains a key challenge for cascade systems — most turns are late (>4 seconds)."},{title:"Speech synthesis struggles with alphanumeric codes",description:"Speech synthesis systems generally produce the intended speech but struggle the most with alphanumeric codes, often dropping or switching characters and letters."},{title:"LLMs produce verbose, non-voice-appropriate content",description:"LLMs struggle to produce concise, voice-appropriate content, particularly when trying to list flight options for the user."},{title:"Transcription failures reduce conversation efficiency",description:"Transcription failures also lead to inefficient conversation progression, as the agent cannot move the conversation forward when it's stuck trying to retrieve the user's reservation."},{title:"Audio-native systems show promise",description:"Both audio-native systems sit on the Pareto frontier, while the single speech-to-speech system does not — we aim to benchmark more audio-native and s2s systems to see if this holds across the architectural classes."}],Xte=[{title:"Accuracy–experience trade-off",description:"The Pareto frontier reveals a clear accuracy-experience tradeoff across systems, systems that push harder on accuracy are doing so at the cost of conversational experience, and vice versa."},{title:"Low Pass Rates",description:"Performance remains far from saturated — no system clears 0.5 pass@1 on accuracy, and only a few systems exceed 0.50 EVA-X pass@1, suggesting ample opportunities for improvement."},{title:"Sparse Frontier",description:"Only a few systems sit on the Pareto frontier, meaning most systems are strictly dominated. This concentrates the real decision space: only a small subset of system choices actually matter for navigating the accuracy–experience tradeoff."}],Yte=[{key:"eva_a_pass",label:"EVA-A pass@1",getValue:e=>e.successRates.accuracy.pass_threshold},{key:"eva_a_mean",label:"EVA-A Mean",getValue:e=>e.successRates.accuracy.mean}],Gte=[{key:"eva_x_pass",label:"EVA-X pass@1",getValue:e=>e.successRates.experience.pass_threshold},{key:"eva_x_mean",label:"EVA-X Mean",getValue:e=>e.successRates.experience.mean}];function Wte(){const e=jx(),t=Vte;return b.jsx(wo,{id:"leaderboard",title:"Early Results",subtitle:"Early results on the airline domain (50 scenarios, 3 trials each).",children:b.jsxs("div",{className:"space-y-8",children:[b.jsx(Lte,{systems:t}),b.jsxs("div",{className:"rounded-xl border border-purple/20 bg-purple/5 p-6",children:[b.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[b.jsx("div",{className:"w-9 h-9 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(US,{className:"w-5 h-5 text-purple-light"})}),b.jsx("h3",{className:"text-lg font-bold text-text-primary",children:"Pareto Analysis"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:Xte.map((n,r)=>b.jsxs("div",{className:"rounded-lg bg-bg-secondary border border-border-default p-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-2",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:n.description})]},r))})]}),b.jsx(Jj,{title:"Accuracy Metrics (EVA-A)",description:"Per-metric scores for accuracy. All values normalized to 0-1 (higher is better).",metricKeys:zte,metricLabels:Bte,dataKey:"accuracyMetrics",baseColor:e.accent.purple,aggregateColumns:Yte,aggregateColor:"#F59E0B",systems:t}),b.jsx(Jj,{title:"Experience Metrics (EVA-X)",description:"Per-metric scores for conversational experience. All values normalized to 0-1 (higher is better).",metricKeys:Ite,metricLabels:Ute,dataKey:"experienceMetrics",baseColor:e.accent.blue,aggregateColumns:Gte,aggregateColor:"#F59E0B",systems:t}),b.jsxs("div",{className:"rounded-xl border border-purple/20 bg-purple/5 p-6",children:[b.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[b.jsx("div",{className:"w-9 h-9 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(US,{className:"w-5 h-5 text-purple-light"})}),b.jsx("h3",{className:"text-lg font-bold text-text-primary",children:"Key Insights"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:Kte.map((n,r)=>b.jsxs("div",{className:"rounded-lg bg-bg-secondary border border-border-default p-4",children:[b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-2",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed",children:n.description})]},r))})]})]})})}const Zte={high_level_user_goal:"You want to move your LAX to SFO flight today from the late afternoon to an earlier direct flight that leaves before 2:00 PM, as long as the same-day change fee stays under $80.",decision_tree:{must_have_criteria:["New departure time is today (2026-06-18) and departs LAX before 2:00 PM Pacific.","Same-day change fee is under $80 total (acceptable: $0 to $79.99).","It is a direct flight from LAX to SFO (no connections and no airport changes)."],negotiation_behavior:["If the agent asks for verification details, provide your confirmation code and last name exactly as given in information_required, then wait for the agent to read back your reservation and confirm it is yours; if they read back a different name or itinerary, correct them and re-provide the details.","When the agent offers earlier-flight options, evaluate each option against ALL must-have criteria: (a) date is 2026-06-18, (b) LAX departure time is before 2:00 PM PT, (c) direct LAX→SFO, (d) same-day change fee is under $80.","If both an 11:00 AM and a 1:00 PM direct option meet all must-haves, choose the earliest departure (11:00 AM).","If only one option meets all must-haves, accept that option.",'Before the agent finalizes anything, if the agent has not clearly stated the exact same-day change fee amount, ask: "What will the change fee be in total?" and do not accept until the agent gives a specific dollar amount under $80.','If the agent proposes any option that departs at or after 2:00 PM, has a connection, changes airports, or has a fee of $80 or more, reject it and restate the must-haves once: "It needs to be today, direct LAX to SFO, leaving before 2 PM, and the fee has to be under $80—can you check again?"',"If after one additional search/attempt the agent still cannot offer any option that meets all must-haves, move to failure_condition."],resolution_condition:"The agent has confirmed the rebooking is completed (not just planned) to a direct LAX→SFO flight departing on 2026-06-18 before 2:00 PM PT, has stated the same-day change fee is under $80, AND has provided a concrete post-change booking reference (e.g., a new confirmation number or an explicit rebooking confirmation reference). End the call.",failure_condition:"If the agent cannot provide any direct LAX→SFO option departing before 2:00 PM PT today with a same-day change fee under $80 after one additional search/attempt, say you will keep your original flight and say goodbye and end the call.",escalation_behavior:"Do not ask to speak to a supervisor or live agent. If the agent offers to transfer you to a live agent, you must decline. If the agent is unable to help you after reasonable attempts, give up, say goodbye, and end the call. Never speak to a live agent. If the agent attempts to transfer you anyways, hang up using end_call.",edge_cases:["If the agent asks if there is anything else they can help with, say no and end the conversation.","Never invent new goals, requests, or problems beyond what is defined here.","Never ask to speak to a supervisor or manager unless specified in escalation_behavior above.","If the agent suggests flying from or to a different airport than originally booked, decline and insist on LAX to SFO only.","If the agent suggests standby instead of a confirmed earlier flight, decline standby and ask for a confirmed seat on an earlier direct flight before 2:00 PM."]},information_required:{confirmation_number:"6VORJU",first_name:"Kenji",last_name:"Thompson",travel_date:"2026-06-18",origin_airport:"LAX",destination_airport:"SFO",seat_preference:{first_choice:"window",second_choice:"aisle",third_choice:"middle"},original_travel_details:[{origin:"LAX",destination:"SFO",flight_date:"2026-06-18",departure_time:"17:30",status:"confirmed"}]}},Qte="You're direct and to the point—you don't have time for lengthy explanations or unnecessary back-and-forth. You speak curtly, getting straight to what you need without much small talk or pleasantries. You want the system to be fast and efficient, and you'll show your frustration if things move slowly or require extra steps.",Jte=JSON.parse(`[{"role":"assistant","content":"Hello! How can I help you today?","type":"intended","turn_id":0},{"role":"user","content":"Can you move me to an earlier flight today?","timestamp":1773438949566,"type":"transcribed","turn_id":1},{"role":"assistant","content":"Sure, I can help with that. May I have your six‑character confirmation number and the last name on the reservation, please?","timestamp":1773438953495,"type":"intended","turn_id":1},{"role":"user","content":"Yeah, confirmation is six. Victor Oscar Romeo Juliet Uniform. And the last name is Tom. Thompson.","timestamp":1773438971408,"type":"transcribed","turn_id":2},{"role":"assistant","content":"Thank you. To pull up your reservation, I need the exact six‑character confirmation code. I heard “V O R J U”. Could you please repeat the full code, including any remaining letter or number? Also, just to confirm, the last name is Thompson, correct?","timestamp":1773438978057,"type":"intended","turn_id":2},{"role":"user","content":"Yes. Last name is Thompson. The code is 6-8-1-1. Victor. Oscar Romeo Juliet Uniform.","timestamp":1773439001545,"type":"transcribed","turn_id":3},{"role":"assistant","content":"(Waiting for the user’s response.)","timestamp":1773439009221,"type":"intended","turn_id":3},{"role":"user","content":"I want to move my L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A-L-A- p.m. you you Thank you. Thank you. Same day change fee is under $80.","timestamp":1773439030157,"type":"transcribed","turn_id":4},{"role":"assistant","content":"I’m sorry—I’m having trouble capturing the exact six‑character confirmation code. Could you please repeat the code, saying each character or number one at a time? For example, you might say “six, eight, one, one, V, O.” Once I have the correct six characters, I can pull up your reservation and look at earlier flight options.","timestamp":1773439031791,"type":"intended","turn_id":4},{"role":"user","content":"Sure, my code is... Six. Victor. Oscar, Romeo, Juliet uniform.","timestamp":1773439063962,"type":"transcribed","turn_id":5},{"tool_name":"get_reservation","parameters":{"confirmation_number":"6VORJU","last_name":"Thompson"},"timestamp":1773439064577,"type":"tool_call","turn_id":5},{"tool_name":"get_reservation","tool_response":{"status":"success","reservation":{"confirmation_number":"6VORJU","status":"confirmed","passengers":[{"passenger_id":"PAX001","first_name":"Kenji","last_name":"Thompson","ticket_number":"1801234567890","email":"kenji.thompson@example.com","phone":"+1-310-555-0147","elite_status":null,"meal_preference":"none","seat_preference":"no_preference"}],"bookings":[{"journey_id":"FL_SK530_20260618","fare_class":"main_cabin","fare_paid":289,"status":"confirmed","segments":[{"flight_number":"SK530","date":"2026-06-18","fare_paid":289,"seat":null,"bags_checked":0,"meal_request":null}]}],"booking_date":"2026-05-20T13:22:00-07:00","fare_type":"non_refundable","ancillaries":{"seat_selection_fee":0,"bags_fee":0}}},"timestamp":1773439064577,"type":"tool_response","turn_id":5},{"tool_name":"get_flight_status","parameters":{"flight_number":"SK530","flight_date":"2026-06-18"},"timestamp":1773439065128,"type":"tool_call","turn_id":5},{"tool_name":"get_flight_status","tool_response":{"status":"success","journey":{"journey_id":"FL_SK530_20260618","date":"2026-06-18","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"status":"scheduled","bookable":true,"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null}}},"timestamp":1773439065128,"type":"tool_response","turn_id":5},{"tool_name":"search_rebooking_options","parameters":{"origin":"LAX","destination":"SFO","date":"2026-06-18","passenger_count":1,"fare_class":"any"},"timestamp":1773439065959,"type":"tool_call","turn_id":5},{"tool_name":"search_rebooking_options","tool_response":{"status":"success","options":[{"journey_id":"FL_SK090_SK410_20260618","origin":"LAX","destination":"SFO","num_stops":1,"total_duration_minutes":170,"segments":[{"segment_number":1,"flight_number":"SK090","origin":"LAX","destination":"SJC","scheduled_departure":"09:20","origin_utc_offset":-8,"scheduled_arrival":"10:30","destination_utc_offset":-8,"duration_minutes":70,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"33A","available_seats":{"basic_economy":8,"main_cabin":14,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":139,"main_cabin":229,"premium_economy":489,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}},{"segment_number":2,"flight_number":"SK410","origin":"SJC","destination":"SFO","scheduled_departure":"11:35","origin_utc_offset":-8,"scheduled_arrival":"12:10","destination_utc_offset":-8,"duration_minutes":35,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"12B","available_seats":{"basic_economy":9,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":89,"main_cabin":129,"premium_economy":239,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}}],"departure_time":"09:20","arrival_time":"12:10","available_seats":{"basic_economy":8,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fare":228},{"journey_id":"FL_SK130_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"13:00","arrival_time":"14:25","available_seats":{"basic_economy":6,"main_cabin":9,"premium_economy":3,"business":2,"first":0},"fare":189},{"journey_id":"FL_SK215_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK215","origin":"LAX","destination":"SFO","scheduled_departure":"14:40","origin_utc_offset":-8,"scheduled_arrival":"16:05","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"737-800","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"47D","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fares":{"basic_economy":169,"main_cabin":259,"premium_economy":529,"business":979,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"14:40","arrival_time":"16:05","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fare":169},{"journey_id":"FL_SK530_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":23,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"17:30","arrival_time":"18:55","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fare":179}],"count":4,"message":"4 flight(s) found"},"timestamp":1773439065959,"type":"tool_response","turn_id":5},{"role":"assistant","content":"I’ve found a few earlier flights from Los Angeles to San Francisco today.\\n\\n1. **One‑stop option** – depart at nine twenty a.m., connect in San Jose and arrive at twelve ten p.m. (fare $228 in main cabin). \\n2. **Direct flight** – depart at one o’clock p.m., arrive at two twenty‑five p.m. (fare $289, same as your current ticket). \\n3. **Direct flight** – depart at two forty p.m., arrive at four oh‑five p.m. (fare $259, a little cheaper).\\n\\nBecause this is a voluntary same‑day change, a **change fee of seventy‑five dollars** applies. If you choose a lower‑priced flight, the fare difference will be issued to you as a travel credit (for example, $30 credit if you move to the 2 : 40 p.m. flight, or $61 credit for the early morning connection).\\n\\nDo any of these options work for you? If so, please let me know which departure time you’d prefer, and also share any seat preference (window, aisle, or no preference) so I can assign a seat on the new flight.","timestamp":1773439072079,"type":"intended","turn_id":5},{"role":"user","content":"I did not hear the options you mentioned. Can you repeat the earlier LAX to SFO flights? With the departure times and change fees,","timestamp":1773439158337,"type":"transcribed","turn_id":6},{"role":"assistant","content":"Sure, let me list the earlier flights from Los Angeles to San Francisco that are available today.\\n\\n**Option 1 – one‑stop connection** \\n- Departure from LAX at nine twenty a.m. \\n- Connect in San Jose and arrive at San Francisco at twelve ten p.m. \\n- Main‑cabin fare is two‑hundred twenty‑eight dollars. \\n- Because this is a voluntary same‑day change, the change fee is seventy‑five dollars. Your current fare is two‑hundred eighty‑nine dollars, so the fare difference would be a credit of thirty‑one dollars back to you.\\n\\n**Option 2 – direct flight** \\n- Departure from LAX at one o’clock p.m. \\n- Arrive at San Francisco at two twenty‑five p.m. \\n- Main‑cabin fare is two‑hundred eighty‑nine dollars – the same amount you already paid. \\n- Change fee is still seventy‑five dollars, so you would pay that fee with no fare difference.\\n\\n**Option 3 – direct flight** \\n- Departure from LAX at two forty p.m. \\n- Arrive at San Francisco at four oh‑five p.m. \\n- Main‑cabin fare is two‑hundred fifty‑nine dollars. \\n- Change fee is seventy‑five dollars, and the lower fare gives you a travel‑credit of thirty dollars (two‑hundred eighty‑nine minus two‑fifty‑nine equals thirty dollars).\\n\\nAll of these flights are still open for booking today. Which departure time would you like to switch to? Also, do you have a seat preference—window, aisle, or no preference?","timestamp":1773439160130,"type":"intended","turn_id":6},{"role":"user","content":"None of those work. It needs to be today. Direct LAX. to SS. F-O. Leaving before 2 p.m. and the fee has to be under $80. Can you check again?","timestamp":1773439255746,"type":"transcribed","turn_id":7},{"tool_name":"search_rebooking_options","parameters":{"origin":"LAX","destination":"SFO","date":"2026-06-18","passenger_count":1,"fare_class":"any"},"timestamp":1773439268671,"type":"tool_call","turn_id":7},{"tool_name":"search_rebooking_options","tool_response":{"status":"success","options":[{"journey_id":"FL_SK090_SK410_20260618","origin":"LAX","destination":"SFO","num_stops":1,"total_duration_minutes":170,"segments":[{"segment_number":1,"flight_number":"SK090","origin":"LAX","destination":"SJC","scheduled_departure":"09:20","origin_utc_offset":-8,"scheduled_arrival":"10:30","destination_utc_offset":-8,"duration_minutes":70,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"33A","available_seats":{"basic_economy":8,"main_cabin":14,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":139,"main_cabin":229,"premium_economy":489,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}},{"segment_number":2,"flight_number":"SK410","origin":"SJC","destination":"SFO","scheduled_departure":"11:35","origin_utc_offset":-8,"scheduled_arrival":"12:10","destination_utc_offset":-8,"duration_minutes":35,"aircraft_type":"E175","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"12B","available_seats":{"basic_economy":9,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fares":{"basic_economy":89,"main_cabin":129,"premium_economy":239,"business":null,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":[],"first":[]}}],"departure_time":"09:20","arrival_time":"12:10","available_seats":{"basic_economy":8,"main_cabin":12,"premium_economy":2,"business":0,"first":0},"fare":228},{"journey_id":"FL_SK130_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"13:00","arrival_time":"14:25","available_seats":{"basic_economy":6,"main_cabin":9,"premium_economy":3,"business":2,"first":0},"fare":189},{"journey_id":"FL_SK215_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK215","origin":"LAX","destination":"SFO","scheduled_departure":"14:40","origin_utc_offset":-8,"scheduled_arrival":"16:05","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"737-800","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"47D","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fares":{"basic_economy":169,"main_cabin":259,"premium_economy":529,"business":979,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"14:40","arrival_time":"16:05","available_seats":{"basic_economy":10,"main_cabin":18,"premium_economy":4,"business":2,"first":0},"fare":169},{"journey_id":"FL_SK530_20260618","origin":"LAX","destination":"SFO","num_stops":0,"total_duration_minutes":85,"segments":[{"segment_number":1,"flight_number":"SK530","origin":"LAX","destination":"SFO","scheduled_departure":"17:30","origin_utc_offset":-8,"scheduled_arrival":"18:55","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"scheduled","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"54B","available_seats":{"basic_economy":12,"main_cabin":23,"premium_economy":6,"business":2,"first":0},"fares":{"basic_economy":179,"main_cabin":289,"premium_economy":569,"business":999,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure_time":"17:30","arrival_time":"18:55","available_seats":{"basic_economy":12,"main_cabin":22,"premium_economy":6,"business":2,"first":0},"fare":179}],"count":4,"message":"4 flight(s) found"},"timestamp":1773439268671,"type":"tool_response","turn_id":7},{"role":"assistant","content":"I do have a direct flight that meets those criteria:\\n\\n- **Flight SK 130** – departs Los Angeles at **one o’clock p.m.**, arrives San Francisco at **two twenty‑five p.m.** \\n- It’s a nonstop service, just like your current booking. \\n- Because this is a same‑day voluntary change, the change fee is **seventy‑five dollars**, which is under your $80 limit. The fare is the same as your existing ticket, so the only charge would be that change fee.\\n\\nWould you like to switch to flight SK 130? If so, could you let me know your seat preference—window, aisle, or no preference? Once I have that, I’ll go ahead and rebook you.","timestamp":1773439270267,"type":"intended","turn_id":7},{"role":"user","content":"That one works. I'll take the flight that leaves at 1:00 PM. Seek Preferences window.","timestamp":1773439326852,"type":"transcribed","turn_id":8},{"tool_name":"rebook_flight","parameters":{"confirmation_number":"6VORJU","journey_id":"FL_SK530_20260618","new_journey_id":"FL_SK130_20260618","rebooking_type":"voluntary","waive_change_fee":false,"new_fare_class":null},"timestamp":1773439328182,"type":"tool_call","turn_id":8},{"tool_name":"rebook_flight","tool_response":{"status":"success","confirmation_number":"6VORJU","new_journey":{"journey_id":"FL_SK130_20260618","num_stops":0,"segments":[{"segment_number":1,"flight_number":"SK130","origin":"LAX","destination":"SFO","scheduled_departure":"13:00","origin_utc_offset":-8,"scheduled_arrival":"14:25","destination_utc_offset":-8,"duration_minutes":85,"aircraft_type":"A320","status":"on_time","delay_minutes":null,"delay_reason":null,"cancellation_reason":null,"gate":"45C","available_seats":{"basic_economy":6,"main_cabin":8,"premium_economy":3,"business":2,"first":0},"fares":{"basic_economy":189,"main_cabin":289,"premium_economy":559,"business":1029,"first":null},"available_seat_types":{"basic_economy":["window","aisle","middle"],"main_cabin":["window","aisle","middle"],"premium_economy":["window","aisle","middle"],"business":["window","aisle","middle"],"first":[]}}],"departure":"13:00","arrival":"14:25","origin":"LAX","destination":"SFO"},"cost_summary":{"original_fare_class":"main_cabin","new_fare_class":"main_cabin","cabin_changed":false,"change_fee":75,"fare_difference":0,"credit_due":0,"total_collected":75,"fee_waived":false},"message":"Successfully rebooked to flight FL_SK130_20260618"},"timestamp":1773439328182,"type":"tool_response","turn_id":8},{"tool_name":"assign_seat","parameters":{"confirmation_number":"6VORJU","passenger_id":"PAX001","journey_id":"FL_SK130_20260618","seat_preference":"window"},"timestamp":1773439329163,"type":"tool_call","turn_id":8},{"tool_name":"assign_seat","tool_response":{"status":"success","confirmation_number":"6VORJU","passenger_id":"PAX001","journey_id":"FL_SK130_20260618","flight_number":"SK130","seat_assigned":"21A","fare_class":"main_cabin","preference":"window","message":"Seat 21A (window) successfully assigned"},"timestamp":1773439329163,"type":"tool_response","turn_id":8},{"role":"assistant","content":"Your reservation has been updated:\\n\\n- New flight SK 130 departs Los Angeles at **one o’clock p.m.** and arrives in San Francisco at **two twenty‑five p.m.** today. \\n- A **change fee of seventy‑five dollars** has been applied; the fare itself remains the same. \\n- Your seat is a **window seat, 21 A**, on the new flight.\\n\\nEverything else from your original booking—name, ticket number, and any existing preferences—has been transferred.\\n\\nIf you’d like to add checked bags or make any other changes, just let me know. Otherwise, you’re all set. Thank you for flying SkyWay Airlines, and have a pleasant trip!","timestamp":1773439330430,"type":"intended","turn_id":8},{"role":"user","content":"No, that is all. Thanks. Goodbye.","timestamp":1773439384679,"type":"transcribed","turn_id":9},{"role":"assistant","content":"You’re very welcome. Have a great flight, and thank you for choosing SkyWay Airlines. Goodbye. [speaker likely cut itself off]","timestamp":1773439385281,"type":"intended","turn_id":9}]`),ene=JSON.parse(`[{"name":"task_completion","displayName":"Task Completion","category":"eva-a","type":"deterministic","score":1,"normalizedScore":1,"details":{"match":true,"message":"Final database state matches expected state exactly"}},{"name":"agent_speech_fidelity","displayName":"Agent Speech Fidelity","category":"eva-a","type":"lalm_judge","score":1,"normalizedScore":1,"details":{"aggregation":"mean","num_turns":10,"num_evaluated":9,"per_turn_ratings":{"0":1,"1":1,"2":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1},"per_turn_explanations":{"0":"The audio faithfully reproduces the intended text 'Hello! How can I help you today?' without any errors.","1":"The audio faithfully reproduces the intended text 'Sure, I can help with that. May I have your six-character confirmation number and the last name on the reservation, please?' without any errors.","2":"The audio faithfully reproduces the intended text, including the spelled-out confirmation code 'V O R J U' and the last name 'Thompson'.","4":"The audio faithfully reproduces the intended text, including the example spelled-out code 'six, eight, one, one, V, O.' without any errors.","5":"The audio faithfully reproduces the intended text, including all flight times, dollar amounts, and city names.","6":"The audio faithfully reproduces the intended text, including all flight options, times, dollar amounts, and city names.","7":"The audio faithfully reproduces the intended text, including the flight number 'SK 130', times, and dollar amounts.","8":"The audio faithfully reproduces the intended text, including the flight number 'SK 130', times, dollar amounts, and seat number '21 A'.","9":"The audio faithfully reproduces the intended text up to the point where the speaker cuts itself off, as indicated by the tag."}}},{"name":"faithfulness","displayName":"Faithfulness","category":"eva-a","type":"llm_judge","score":1,"normalizedScore":0,"details":{"rating":1,"explanation":{"dimensions":{"fabricating_tool_parameters":{"evidence":"In Turn 8, the rebook_flight call uses \`rebooking_type: 'voluntary'\` instead of \`'same_day'\`. The assistant had been describing this as a 'same-day voluntary change' throughout the conversation and applying the same-day confirmed change fee of $75. However, looking at the tool specification, 'same_day' is a valid rebooking_type option, and since this is indeed a same-day change, using 'voluntary' instead of 'same_day' could be considered a minor categorization issue. That said, the fee outcome ($75) is the same for a main_cabin voluntary change and a same-day confirmed change, so this doesn't materially affect the result. The \`new_fare_class: None\` parameter is passed explicitly as null, which is reasonable since the fare class isn't changing.","flagged":false,"rating":3},"misrepresenting_tool_result":{"evidence":"In Turn 5, the assistant presents Option 1 (the connection) fare as $228 in main cabin. However, the tool result shows the connection's individual segment fares for main_cabin are $229 (SK090) + $129 (SK410), while the journey-level 'fare' field shows $228. The assistant used the journey-level fare of $228. In Turn 5, the assistant states for Option 3 (SK215): 'fare $259, a little cheaper' - the tool shows the main_cabin fare for SK215 is $259, which is correct. However, looking more carefully at the fare difference calculations in Turn 6: for Option 1, the assistant says 'credit of thirty-one dollars' ($289-$228=$61, not $31) - wait, let me recheck. The fare difference is $289-$228=$61, but the assistant says $31. Actually in Turn 5 the assistant says '$61 credit for the early morning connection' which is correct. In Turn 6, the assistant says 'credit of thirty-one dollars' for Option 1. $289-$228=$61, not $31. This is a misrepresentation of a calculated value from tool results. For Option 3 in Turn 6, the assistant says 'credit of thirty dollars' ($289-$259=$30), which is correct.","flagged":true,"rating":1},"violating_policies":{"evidence":"The assistant used rebooking_type 'voluntary' with the standard $75 change fee. For a same-day change, the same-day confirmed change fee is also $75, so the financial outcome is identical. The assistant did explain fees before acting in early turns, and obtained explicit user confirmation in Turn 8 before rebooking. The assistant asked for seat preference before assigning seats. The assistant provided a summary at the end. The assistant did not mention the standby option (same-day standby is free for all fare classes), which could be considered a failure to offer alternatives, but this is minor since the user specifically asked for a confirmed change. One potential issue: the assistant told the user about the $75 change fee and fare implications across Turns 5-7, and the user confirmed in Turn 8, so the 'explain before acting' requirement was met. No significant policy violations detected.","flagged":false,"rating":3},"failing_to_disambiguate":{"evidence":"In Turns 2-4, the user provided the confirmation code in a confusing manner across multiple turns ('six Victor Oscar Romeo Juliet Uniform', then '6-8-1-1 Victor Oscar Romeo Juliet Uniform'). In Turn 3, the user says '6-8-1-1. Victor. Oscar Romeo Juliet Uniform' which could be interpreted as '6811VORJU' (9 characters) or some other combination. The assistant appropriately asked for clarification. In Turn 5, the user said 'Six. Victor. Oscar, Romeo, Juliet uniform' which the assistant interpreted as '6VORJU' (6 characters) and it worked. However, the earlier Turn 3 included '6-8-1-1' which was never reconciled - the assistant could have tried combinations including those digits. Since the final attempt succeeded, this is not a material issue. The user's Turn 4 was garbled (repeated 'L-A' many times and mentioned 'Same day change fee is under $80') which the assistant appropriately handled by re-asking.","flagged":false,"rating":3},"hallucination":{"evidence":"In Turn 5, the assistant mentions issuing a 'travel credit' for fare differences on downgrade scenarios. Per policy, downgrade to lower fare results in travel credit, so this is grounded. In Turn 8's summary, the assistant says 'Everything else from your original booking—name, ticket number, and any existing preferences—has been transferred.' The original booking had no seat assigned, no bags, and no meal request, so saying preferences were 'transferred' slightly embellishes, but this is a conversational courtesy rather than a factual claim. No significant hallucinations detected.","flagged":false,"rating":3}}},"num_turns":31}},{"name":"conciseness","displayName":"Conciseness","category":"eva-x","type":"llm_judge","score":2.2,"normalizedScore":0.6,"details":{"aggregation":"mean","num_turns":10,"num_evaluated":10,"mean_rating":2.2,"per_turn_ratings":{"0":3,"1":3,"2":2,"3":1,"4":3,"5":1,"6":1,"7":3,"8":2,"9":3},"per_turn_explanations":{"0":"Brief, friendly opening question with no extra detail; ideal for voice.","1":"Directly asks for the two required identifiers (confirmation code and last name) in one concise prompt; easy to follow.","2":"Appropriately requests clarification after mishearing the code and confirms the last name. Slightly wordier than necessary (\\"including any remaining letter or number\\") but still very manageable in voice and justified by the identification problem.","3":"The assistant provides no spoken guidance and effectively stalls with “waiting,” which is not helpful in a voice flow and forces the user to carry the conversation without direction.","4":"Clear request to repeat the confirmation code one character at a time, with a helpful example, and explains why (to pull up the reservation). This is appropriate given prior confusion and stays focused.","5":"Presents three alternatives with multiple times, fares, a fee, and multiple example credit calculations in one turn, then adds an additional request for seat preference. For voice, this is a lot to retain and includes extra arithmetic/explanatory detail that could be deferred until the user picks an option.","6":"The user asked for repetition, so listing options again is warranted, but the assistant over-structures it with many bullet points, repeats the same $75 fee three times, and includes detailed fare-difference math and credit explanations for each option. This increases cognitive load for spoken delivery.","7":"Concise: identifies the single flight meeting the constraints, states key times, confirms nonstop, and gives the fee under $80. Ends with a simple confirmation question plus seat preference request—reasonable for the next step.","8":"Clear recap of the successful change with the essential details (new flight/time, change fee, seat assignment). The extra line about transferring everything else and offering bags/other changes adds slight unnecessary length, but it’s still easy to digest and appropriate as a booking-confirmation wrap-up.","9":"Short, polite closing suitable for voice; no overload."},"per_turn_failure_modes":{"0":[],"1":[],"2":["verbosity_or_filler"],"3":["contextually_disproportionate_detail"],"4":[],"5":["excess_information_density","over_enumeration_or_list_exhaustion","contextually_disproportionate_detail"],"6":["over_enumeration_or_list_exhaustion","excess_information_density","verbosity_or_filler"],"7":[],"8":["verbosity_or_filler"],"9":[]}}},{"name":"conversation_progression","displayName":"Conversation Progression","category":"eva-x","type":"llm_judge","score":2,"normalizedScore":0.5,"details":{"rating":2,"explanation":{"dimensions":{"unnecessary_tool_calls":{"evidence":"At Turn 7 the assistant calls \`search_rebooking_options\` again with the same parameters as in Turn 5, despite no new constraints that would change the search results and the prior call already returned the full set of options.","flagged":true,"rating":2},"information_loss":{"evidence":"The assistant generally retains key facts once established (e.g., uses confirmation number 6VORJU and last name Thompson successfully in Turn 5, and then rebooks correctly in Turn 8). Earlier requests to repeat the confirmation code are justified by clearly garbled/partial user input (Turns 2–4).","flagged":false,"rating":3},"redundant_statements":{"evidence":"The assistant repeats the flight options in Turn 6, but this is explicitly requested by the user (“Can you repeat the earlier LAX to SFO flights?”). The final confirmation after rebooking (Turn 8) is a standard helpful recap rather than unnecessary repetition.","flagged":false,"rating":3},"question_quality":{"evidence":"The assistant’s questions are targeted and action-enabling (confirmation code/last name for lookup; then asks which option and seat preference). When the user adds constraints (direct, before 2 p.m., fee under $80), the assistant returns the matching option and asks for confirmation/seat preference.","flagged":false,"rating":3}},"flags_count":""},"num_turns":31}},{"name":"turn_taking","displayName":"Turn Taking","category":"eva-x","type":"llm_judge","score":4.5,"normalizedScore":0.25,"details":{"aggregation":"abs_mean","num_turns":9,"num_evaluated":9,"per_turn_judge_timing_ratings":{"1":"Late","2":"Late","3":"Early / Interrupting","4":"On-Time","5":"Late","6":"On-Time","7":"Late","8":"Late"},"per_turn_judge_timing_explanations":{"1":"The user’s request is complete (“…earlier flight today?”) with no overlap tags. The agent starts 5.507s later, which exceeds the 4s threshold and would feel like an awkward pause.","2":"User finishes providing the confirmation code and last name; the utterance is complete and there are no interruption indicators. The agent begins 4.940s after user end, which is >4s and thus late.","3":"The user’s statement ends at 67.744s, but the agent starts at 67.917s (0.172s later), which is under the 200ms cutoff. Even without explicit interruption tags, this is effectively too early/over-eager turn-taking.","4":"User’s request about changing the LAX→SFO flight is syntactically complete, and no interruption tags indicate overlap. The agent responds after a 2.286s gap, which is within the on-time range.","5":"User finishes spelling the code and stops; no overlap tags are present. The agent waits 9.466s to respond, which is well beyond 4s and clearly late.","6":"The user asks to repeat the options and finishes the question; no interruption tags suggest they were still talking. The agent begins 2.759s later, a normal conversational gap.","7":"User completes the request to check again (direct flight before 2pm, fee under $80) with no overlap markers. The agent starts 4.407s later, slightly over the 4s threshold, so it’s late.","8":"User accepts the 1pm flight and states a window preference, which is complete. The agent waits 5.500s before confirming, exceeding 4s and thus late."},"num_not_applicable":1}},{"name":"transcription_accuracy_key_entities","displayName":"Transcription Accuracy (Key Entities)","category":"diagnostic","type":"llm_judge","score":0.762,"normalizedScore":0.762,"details":{"aggregation":"mean","num_turns":9,"num_evaluated":9,"per_turn_ratings":{"1":-1,"2":1,"3":0.3333333333333333,"4":0.25,"5":1,"6":1,"7":0.75,"8":1,"9":-1},"per_turn_explanations":{"1":"No key entities (names, codes, dates/times, amounts, etc.) present to evaluate.","2":"All 2 key entities transcribed correctly (confirmation code and last name).","3":"1 out of 3 entities correct. Last name correct; confirmation code mis-transcribed (extra digits).","4":"1 out of 4 entities correct. $80 captured, but LAX/SFO and '2 PM' were not correctly transcribed.","5":"Confirmation code transcribed correctly.","6":"Both airport codes (LAX and SFO) transcribed correctly.","7":"3 out of 4 entities correct. SFO was mis-transcribed; LAX, 2 PM, and $80 were correct.","8":"Both entities (1 PM and window seat preference) transcribed correctly.","9":"No key entities present to evaluate."},"per_turn_entity_details":{"1":{"turn_id":1,"entities":[],"summary":"No key entities (names, codes, dates/times, amounts, etc.) present to evaluate."},"2":{"turn_id":2,"entities":[{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"six Victor Oscar Romeo Juliet Uniform","analysis":"Confirmation code phrase matches (minor punctuation/pauses ignored).","correct":true,"skipped":false},{"type":"name","value":"Thompson","transcribed_value":"Tom. Thompson","analysis":"Last name 'Thompson' is present exactly; extra 'Tom' does not change that the entity was captured.","correct":true,"skipped":false}],"summary":"All 2 key entities transcribed correctly (confirmation code and last name)."},"3":{"turn_id":3,"entities":[{"type":"name","value":"Thompson","transcribed_value":"Thompson","analysis":"Matches exactly.","correct":true,"skipped":false},{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"6-8-1-1 Victor Oscar Romeo Juliet Uniform","analysis":"Code corrupted: expected starts with 'six' then letters; transcription inserted extra digits '8-1-1' not in expected.","correct":false,"skipped":false},{"type":"confirmation_code","value":"six","transcribed_value":"6-8-1-1","analysis":"The repeated final 'six' was transcribed as '6-8-1-1', which does not match.","correct":false,"skipped":false}],"summary":"1 out of 3 entities correct. Last name correct; confirmation code mis-transcribed (extra digits)."},"4":{"turn_id":4,"entities":[{"type":"place","value":"L A X","transcribed_value":"L-A (repeated many times)","analysis":"Expected airport code 'LAX' was not captured; transcription devolves into repeated 'L-A' and does not clearly contain 'LAX'.","correct":false,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"missing","analysis":"Expected 'SFO' not present in transcription.","correct":false,"skipped":false},{"type":"time","value":"two p m","transcribed_value":"p.m.","analysis":"Time value missing the 'two/2' component; only 'p.m.' appears.","correct":false,"skipped":false},{"type":"amount","value":"eighty dollars","transcribed_value":"$80","analysis":"Matches semantically ($80).","correct":true,"skipped":false}],"summary":"1 out of 4 entities correct. $80 captured, but LAX/SFO and '2 PM' were not correctly transcribed."},"5":{"turn_id":5,"entities":[{"type":"confirmation_code","value":"six Victor Oscar Romeo Juliet Uniform","transcribed_value":"Six Victor Oscar Romeo Juliet uniform","analysis":"Matches exactly aside from capitalization/punctuation.","correct":true,"skipped":false}],"summary":"Confirmation code transcribed correctly."},"6":{"turn_id":6,"entities":[{"type":"place","value":"L A X","transcribed_value":"LAX","analysis":"Matches (formatting difference only).","correct":true,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"SFO","analysis":"Matches (formatting difference only).","correct":true,"skipped":false}],"summary":"Both airport codes (LAX and SFO) transcribed correctly."},"7":{"turn_id":7,"entities":[{"type":"place","value":"L A X","transcribed_value":"LAX","analysis":"Matches (formatting difference only).","correct":true,"skipped":false},{"type":"place","value":"S F O","transcribed_value":"SS. F-O","analysis":"Does not match exactly; 'SS F-O' is not 'SFO'.","correct":false,"skipped":false},{"type":"time","value":"two p m","transcribed_value":"2 p.m.","analysis":"Matches semantically.","correct":true,"skipped":false},{"type":"amount","value":"eighty dollars","transcribed_value":"$80","analysis":"Matches semantically ($80).","correct":true,"skipped":false}],"summary":"3 out of 4 entities correct. SFO was mis-transcribed; LAX, 2 PM, and $80 were correct."},"8":{"turn_id":8,"entities":[{"type":"time","value":"one p m","transcribed_value":"1:00 PM","analysis":"Matches semantically.","correct":true,"skipped":false},{"type":"seat_preference","value":"window","transcribed_value":"window","analysis":"Seat preference 'window' present (minor wording error 'Seek Preferences' ignored).","correct":true,"skipped":false}],"summary":"Both entities (1 PM and window seat preference) transcribed correctly."},"9":{"turn_id":9,"entities":[],"summary":"No key entities present to evaluate."}},"per_turn_normalized":{"1":-1,"2":1,"3":0.3333333333333333,"4":0.25,"5":1,"6":1,"7":0.75,"8":1,"9":-1},"num_not_applicable":2}}]`),kh={userGoal:Zte,userPersona:Qte,conversationTrace:Jte,metrics:ene},Ki=kh.userGoal,Xi={highLevelGoal:Ki.high_level_user_goal,decisionTree:{mustHaveCriteria:Ki.decision_tree.must_have_criteria,negotiationBehavior:Ki.decision_tree.negotiation_behavior,resolutionCondition:Ki.decision_tree.resolution_condition,failureCondition:Ki.decision_tree.failure_condition,escalationBehavior:Ki.decision_tree.escalation_behavior,edgeCases:Ki.decision_tree.edge_cases},informationRequired:Ki.information_required},tne=kh.userPersona;function nne(e){const t=[];for(let n=0;n({name:e.name,displayName:e.displayName,category:e.category,type:e.type,score:e.score,normalizedScore:e.normalizedScore,details:e.details})),rne=Mx.filter(e=>e.category==="eva-a"),ine=Mx.filter(e=>e.category==="eva-x"),ane=Mx.filter(e=>e.category==="diagnostic");function eM(e){const t=Math.floor(e/60),n=Math.floor(e%60);return`${t}:${n.toString().padStart(2,"0")}`}function sne({src:e}){const t=A.useRef(null),n=A.useRef(null),[r,s]=A.useState(!1),[o,u]=A.useState(0),[f,d]=A.useState(0),[h,m]=A.useState(!1);A.useEffect(()=>{const _=t.current;if(!_)return;const S=()=>u(_.currentTime),O=()=>d(_.duration),M=()=>s(!1);return _.addEventListener("timeupdate",S),_.addEventListener("loadedmetadata",O),_.addEventListener("ended",M),()=>{_.removeEventListener("timeupdate",S),_.removeEventListener("loadedmetadata",O),_.removeEventListener("ended",M)}},[]);const p=A.useCallback(()=>{const _=t.current;_&&(r?_.pause():_.play(),s(!r))},[r]),v=A.useCallback(()=>{const _=t.current;_&&(_.muted=!h,m(!h))},[h]),x=A.useCallback(_=>{const S=t.current,O=n.current;if(!S||!O)return;const M=O.getBoundingClientRect(),j=Math.max(0,Math.min(1,(_.clientX-M.left)/M.width));S.currentTime=j*f},[f]),w=f>0?o/f*100:0;return b.jsxs("div",{className:"rounded-xl bg-bg-secondary border border-border-default p-4",children:[b.jsx("audio",{ref:t,preload:"metadata",children:b.jsx("source",{src:e,type:"audio/wav"})}),b.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[b.jsx(Gy,{className:"w-5 h-5 text-purple-light"}),b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:"Conversation Audio"}),b.jsx("span",{className:"text-[10px] px-2 py-0.5 rounded-full bg-bg-tertiary text-text-muted border border-border-default",children:"Recording"})]}),b.jsxs("div",{className:"flex items-center gap-3",children:[b.jsx("button",{onClick:p,className:"w-10 h-10 rounded-full bg-purple/20 hover:bg-purple/30 flex items-center justify-center transition-colors flex-shrink-0",children:r?b.jsx(f6,{className:"w-5 h-5 text-purple-light"}):b.jsx(p6,{className:"w-5 h-5 text-purple-light ml-0.5"})}),b.jsx("span",{className:"text-xs font-mono text-text-muted w-10 text-right flex-shrink-0",children:eM(o)}),b.jsx("div",{ref:n,onClick:x,className:"flex-1 h-2 bg-bg-tertiary rounded-full cursor-pointer group relative",children:b.jsx("div",{className:"h-full bg-purple rounded-full transition-[width] duration-100 relative",style:{width:`${w}%`},children:b.jsx("div",{className:"absolute right-0 top-1/2 -translate-y-1/2 w-3.5 h-3.5 rounded-full bg-purple-light border-2 border-bg-secondary opacity-0 group-hover:opacity-100 transition-opacity"})})}),b.jsx("span",{className:"text-xs font-mono text-text-muted w-10 flex-shrink-0",children:f>0?eM(f):"--:--"}),b.jsx("button",{onClick:v,className:"w-8 h-8 rounded-lg hover:bg-bg-tertiary flex items-center justify-center transition-colors flex-shrink-0",children:h?b.jsx(M6,{className:"w-4 h-4 text-text-muted"}):b.jsx(Gy,{className:"w-4 h-4 text-text-muted"})})]})]})}function one(e){const t=new Map;for(let n=0;nb.jsxs("div",{className:"flex gap-2 text-xs",children:[b.jsxs("span",{className:"text-text-muted font-mono",children:[u,":"]}),b.jsx("span",{className:"text-text-secondary font-mono",children:JSON.stringify(f)})]},u))})]}),t?.toolResponse&&b.jsxs("div",{className:"border-t border-border-default/50",children:[b.jsxs("button",{onClick:()=>o(!s),className:"w-full flex items-center gap-2 px-3 py-2 text-[10px] text-text-muted font-semibold uppercase tracking-wider hover:bg-bg-hover/30 transition-colors",children:[s?b.jsx(ai,{className:"w-3 h-3"}):b.jsx(sM,{className:"w-3 h-3"}),"Response"]}),s&&b.jsx("div",{className:"px-3 pb-3",children:b.jsx("pre",{className:"text-xs text-text-secondary font-mono leading-relaxed max-h-48 overflow-y-auto overflow-x-auto bg-bg-tertiary rounded-lg p-3",children:JSON.stringify(t.toolResponse,null,2)})})]})]})})}function ql({title:e,icon:t,children:n,defaultOpen:r=!1}){const[s,o]=A.useState(r);return b.jsxs("div",{children:[b.jsxs("button",{onClick:()=>o(!s),className:"w-full flex items-center gap-2 rounded-lg border border-border-default bg-bg-primary px-3 py-2 hover:bg-bg-hover/30 transition-colors",children:[b.jsx(t,{className:"w-3.5 h-3.5 text-text-muted"}),b.jsx("span",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider flex-1 text-left",children:e}),b.jsx(ai,{className:`w-3.5 h-3.5 text-text-muted transition-transform ${s?"rotate-180":""}`})]}),s&&b.jsx("div",{className:"mt-2 bg-bg-primary rounded-lg p-3",children:n})]})}function cne(){const[e,t]=A.useState(!0),n=Object.entries(Xi.informationRequired).map(([r,s])=>{const o=r.replace(/_/g," ").replace(/\b\w/g,f=>f.toUpperCase()),u=typeof s=="object"?JSON.stringify(s):String(s);return[o,u]});return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center gap-3 mb-0 hover:opacity-80 transition-opacity",children:[b.jsx("div",{className:"w-10 h-10 rounded-full bg-blue/20 flex items-center justify-center flex-shrink-0",children:b.jsx(Yy,{className:"w-5 h-5 text-blue-light"})}),b.jsxs("div",{className:"flex-1 text-left",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"User Goal"}),b.jsx("div",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:"Scenario Briefing"})]}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${e?"rotate-180":""}`})]}),e&&b.jsxs("div",{className:"mt-4",children:[b.jsx("div",{className:"border-l-2 border-blue/40 pl-4 mb-5",children:b.jsx("p",{className:"text-sm text-text-primary leading-relaxed",children:Xi.highLevelGoal})}),b.jsxs("div",{className:"mb-4 bg-bg-tertiary rounded-lg p-3",children:[b.jsx("div",{className:"text-[10px] font-semibold text-text-muted uppercase tracking-wider mb-1.5",children:"Persona"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:tne})]}),b.jsxs("div",{className:"mb-4",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider mb-2.5",children:"Must-Have Criteria"}),b.jsx("div",{className:"space-y-2",children:Xi.decisionTree.mustHaveCriteria.map((r,s)=>b.jsxs("div",{className:"flex gap-2 items-start",children:[b.jsx(Xy,{className:"w-3.5 h-3.5 text-blue-light mt-0.5 flex-shrink-0"}),b.jsx("span",{className:"text-xs text-text-secondary leading-relaxed",children:r})]},s))})]}),b.jsxs("div",{className:"space-y-2",children:[b.jsx(ql,{title:"Negotiation Behavior",icon:lM,children:b.jsx("div",{className:"space-y-2.5",children:Xi.decisionTree.negotiationBehavior.map((r,s)=>b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:r},s))})}),b.jsx(ql,{title:"Resolution & Failure",icon:uM,children:b.jsxs("div",{className:"space-y-3",children:[b.jsxs("div",{children:[b.jsx("div",{className:"text-[10px] font-semibold text-emerald-400 uppercase tracking-wider mb-1",children:"Resolution"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.resolutionCondition})]}),b.jsxs("div",{children:[b.jsx("div",{className:"text-[10px] font-semibold text-red-400 uppercase tracking-wider mb-1",children:"Failure"}),b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.failureCondition})]})]})}),b.jsx(ql,{title:"Escalation",icon:w6,children:b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:Xi.decisionTree.escalationBehavior})}),b.jsx(ql,{title:"Edge Cases",icon:Jl,children:b.jsx("div",{className:"space-y-2",children:Xi.decisionTree.edgeCases.map((r,s)=>b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:r},s))})}),b.jsx(ql,{title:"Scenario Details",icon:Yy,children:b.jsx("div",{className:"space-y-2",children:n.map(([r,s])=>b.jsxs("div",{className:"flex justify-between gap-3",children:[b.jsx("span",{className:"text-[11px] text-text-muted flex-shrink-0",children:r}),b.jsx("span",{className:"text-[11px] text-text-primary font-medium text-right break-all",children:s})]},r))})})]})]})]})}const Ky=[{name:"get_reservation",description:"Retrieve flight reservation using confirmation number and passenger last name",toolType:"read"},{name:"get_flight_status",description:"Get flight info including status, delays, cancellations, and gate information",toolType:"read"},{name:"get_disruption_info",description:"Get detailed disruption info for IRROPS handling and rebooking entitlements",toolType:"read"},{name:"search_rebooking_options",description:"Search for available flights to rebook a passenger",toolType:"read"},{name:"rebook_flight",description:"Rebook passenger(s) to a new flight (voluntary, IRROPS, or missed flight)",toolType:"write"},{name:"add_to_standby",description:"Add passenger to standby list for a flight",toolType:"write"},{name:"assign_seat",description:"Assign a seat to a passenger based on preference",toolType:"write"},{name:"add_baggage_allowance",description:"Add checked baggage allowance to a flight segment",toolType:"write"},{name:"add_meal_request",description:"Add or update special meal request for a passenger",toolType:"write"},{name:"issue_travel_credit",description:"Issue a travel credit or future flight voucher",toolType:"write"},{name:"issue_hotel_voucher",description:"Issue a hotel voucher for delays or disruptions",toolType:"write"},{name:"issue_meal_voucher",description:"Issue a meal voucher for delays or disruptions",toolType:"write"},{name:"cancel_reservation",description:"Cancel a flight booking",toolType:"write"},{name:"process_refund",description:"Process a refund for a cancelled or eligible reservation",toolType:"write"},{name:"transfer_to_agent",description:"Transfer the call to a live human agent",toolType:"system"}];function fne(e){const t=new Map;for(const n of e)if(n.type==="tool_response"&&n.toolName){const r=t.get(n.toolName)??{calls:0,success:0,error:0};r.calls++,n.toolStatus==="success"?r.success++:r.error++,t.set(n.toolName,r)}return t}function dne({tool:e,isUsed:t,typeColors:n}){const[r,s]=A.useState(!1);return b.jsxs("div",{className:`rounded-lg border ${t?"border-amber/30 bg-amber/5":"border-border-default bg-bg-primary opacity-60"}`,children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center gap-2 px-3 py-2 hover:opacity-80 transition-opacity",children:[b.jsx(p0,{className:`w-3.5 h-3.5 flex-shrink-0 ${t?"text-amber":"text-text-muted"}`}),b.jsx("span",{className:`text-xs font-semibold font-mono flex-1 text-left ${t?"text-text-primary":"text-text-muted"}`,children:e.name}),b.jsx("span",{className:`text-[9px] px-1.5 py-0.5 rounded-full font-medium border ${n[e.toolType]}`,children:e.toolType})]}),r&&b.jsx("div",{className:"px-3 pb-2.5 pt-0",children:b.jsx("p",{className:"text-xs text-text-secondary leading-relaxed",children:e.description})})]})}function hne(){const e=fne(Zs),t=Ky.filter(o=>e.has(o.name)).length,n={read:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20",write:"bg-purple/10 text-purple-light border-purple/20",system:"bg-amber/10 text-amber border-amber/20"},[r,s]=A.useState(!0);return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary p-5",children:[b.jsxs("button",{onClick:()=>s(!r),className:"w-full flex items-center gap-3 mb-0 hover:opacity-80 transition-opacity",children:[b.jsx("div",{className:"w-10 h-10 rounded-full bg-amber/20 flex items-center justify-center flex-shrink-0",children:b.jsx(p0,{className:"w-5 h-5 text-amber"})}),b.jsxs("div",{className:"flex-1 text-left",children:[b.jsx("div",{className:"text-base font-semibold text-text-primary",children:"Agent Tools"}),b.jsxs("div",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:[t," of ",Ky.length," used in this conversation"]})]}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${r?"rotate-180":""}`})]}),r&&b.jsx("div",{className:"mt-4 space-y-1.5",children:Ky.map(o=>{const u=e.has(o.name);return b.jsx(dne,{tool:o,isUsed:u,typeColors:n},o.name)})})]})}function mne({score:e,size:t="md"}){const n=e>=.8?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":e>=.5?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20",r=t==="sm"?"text-[10px] px-1.5 py-0.5":"text-xs px-2 py-0.5";return b.jsxs("span",{className:`${r} rounded-full font-semibold border ${n}`,children:[(e*100).toFixed(0),"%"]})}function pne({type:e}){const t={deterministic:"Deterministic",llm_judge:"LLM Judge",lalm_judge:"Audio Judge"},n={deterministic:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20",llm_judge:"bg-purple/10 text-purple-light border-purple/20",lalm_judge:"bg-amber/10 text-amber border-amber/20"};return b.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium border ${n[e]??"bg-bg-tertiary text-text-muted border-border-default"}`,children:t[e]??e})}function gne({metric:e}){const[t,n]=A.useState(!1),r=e.details,s=r.per_turn_ratings,o=r.per_turn_explanations,u=r.per_turn_judge_timing_ratings,f=r.per_turn_judge_timing_explanations,d=r.explanation,h=r.per_turn_entity_details,p=(typeof d=="object"&&d!==null?d:void 0)?.dimensions;return b.jsxs("div",{className:"rounded-xl border border-border-default bg-bg-secondary overflow-hidden",children:[b.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-bg-hover/30 transition-colors",children:[b.jsxs("div",{className:"flex-1 flex items-center gap-3",children:[b.jsx("span",{className:"text-base font-semibold text-text-primary",children:e.displayName}),b.jsx(pne,{type:e.type})]}),b.jsx(mne,{score:e.normalizedScore}),b.jsx(ai,{className:`w-4 h-4 text-text-muted transition-transform ${t?"rotate-180":""}`})]}),t&&b.jsxs("div",{className:"px-5 pb-5 border-t border-border-default/50 pt-4 space-y-5",children:[e.name==="task_completion"&&b.jsxs("div",{className:"flex items-center gap-2",children:[r.match?b.jsx(Xy,{className:"w-5 h-5 text-emerald-400"}):b.jsx(Jl,{className:"w-5 h-5 text-red-400"}),b.jsx("span",{className:"text-base text-text-secondary",children:r.message})]}),p&&b.jsx("div",{className:"space-y-3",children:Object.entries(p).map(([v,x])=>{const w=e.name==="faithfulness";let _,S;return w?x.rating===3?(_="OK",S="bg-emerald-500/10 text-emerald-400 border-emerald-500/20"):x.rating===2?(_="Minor/Ambiguous Issue",S="bg-amber/10 text-amber border-amber/20"):(_="Clear Error",S="bg-red-500/10 text-red-400 border-red-500/20"):e.name==="conversation_progression"?x.rating===3?(_="OK",S="bg-emerald-500/10 text-emerald-400 border-emerald-500/20"):x.rating===2?(_="Minor Issue",S="bg-amber/10 text-amber border-amber/20"):(_="Clear Issue",S="bg-red-500/10 text-red-400 border-red-500/20"):(_=x.flagged?"Flagged":"OK",S=x.flagged?"bg-amber/10 text-amber border-amber/20":"bg-emerald-500/10 text-emerald-400 border-emerald-500/20"),b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsx("span",{className:"text-sm font-semibold text-text-primary",children:v.replace(/_/g," ").replace(/\b\w/g,O=>O.toUpperCase())}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${S}`,children:_}),b.jsxs("span",{className:"text-xs text-text-muted ml-auto",children:[x.rating,"/3"]})]}),b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:x.evidence})]},v)})}),s&&!p&&!h&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Breakdown"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(s).map(([v,x])=>{const w=o?.[v];return x===-1?null:b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsxs("span",{className:"text-xs font-semibold text-text-muted",children:["Turn ",v]}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${x>=3||x===1&&e.name==="agent_speech_fidelity"?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":x>=2?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20"}`,children:x})]}),w&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:w})]},v)})})]}),u&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Timing"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(u).map(([v,x])=>{const w=f?.[v],_=x==="On-Time"?"bg-emerald-500/10 text-emerald-400 border-emerald-500/20":x==="Late"?"bg-amber/10 text-amber border-amber/20":"bg-red-500/10 text-red-400 border-red-500/20";return b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[b.jsxs("span",{className:"text-xs font-semibold text-text-muted",children:["Turn ",v]}),b.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium border ${_}`,children:x})]}),w&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:w})]},v)})})]}),h&&b.jsxs("div",{className:"space-y-3",children:[b.jsx("div",{className:"text-xs font-semibold text-text-muted uppercase tracking-wider",children:"Per-Turn Entity Accuracy"}),b.jsx("div",{className:"space-y-3 max-h-[32rem] overflow-y-auto",children:Object.entries(h).map(([v,x])=>!x.entities||x.entities.length===0?null:b.jsxs("div",{className:"rounded-lg bg-bg-primary p-4",children:[b.jsxs("div",{className:"text-xs font-semibold text-text-muted mb-2",children:["Turn ",v]}),b.jsx("div",{className:"space-y-2",children:x.entities.map((w,_)=>b.jsxs("div",{className:"flex items-start gap-2 text-base",children:[w.correct?b.jsx(Xy,{className:"w-4 h-4 text-emerald-400 mt-0.5 flex-shrink-0"}):b.jsx(Jl,{className:"w-4 h-4 text-red-400 mt-0.5 flex-shrink-0"}),b.jsxs("div",{children:[b.jsxs("span",{className:"text-text-muted",children:[w.type,":"]})," ",b.jsx("span",{className:"text-text-secondary",children:w.value}),!w.correct&&b.jsxs("span",{className:"text-red-400",children:[" → ",w.transcribed_value]})]})]},_))}),b.jsx("p",{className:"text-xs text-text-muted mt-2",children:x.summary})]},v))})]}),typeof d=="string"&&b.jsx("p",{className:"text-base text-text-secondary leading-relaxed",children:d})]})]})}function yne(){const e=[{label:"Accuracy (EVA-A)",icon:uM,metrics:rne,color:"text-emerald-400"},{label:"Experience (EVA-X)",icon:BR,metrics:ine,color:"text-purple-light"},{label:"Relevant Diagnostic Metric",icon:b6,metrics:ane,color:"text-cyan-400"}];return b.jsx(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.2},className:"mt-12",children:b.jsx("div",{className:"space-y-8",children:e.map(t=>b.jsxs("div",{children:[b.jsx("div",{className:"flex items-center gap-3 mb-4 pb-3 border-b border-border-default",children:b.jsx("span",{className:"text-lg font-bold text-text-primary",children:t.label})}),b.jsx("div",{className:"space-y-2",children:t.metrics.map(n=>b.jsx(gne,{metric:n},n.name))})]},t.label))})})}function vne(){const e=one(Zs),t=[];let n=0;for(;n{const t=tM[e.category]??nM;return e.items.map((n,r)=>b.jsxs("div",{className:`rounded-xl border ${t.border} ${t.bg} p-5 flex flex-col`,children:[b.jsx("div",{className:"flex items-center gap-2 mb-2",children:b.jsx("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-full ${t.badge} ${t.text} border ${t.badgeBorder}`,children:e.category})}),b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1.5",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed flex-1",children:n.description})]},`${e.category}-${r}`))})})]}),b.jsxs(Tt.div,{initial:{opacity:0,y:20},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.5,delay:.1},children:[b.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[b.jsx("div",{className:"w-10 h-10 rounded-lg bg-purple/10 flex items-center justify-center",children:b.jsx(y6,{className:"w-5 h-5 text-purple"})}),b.jsx("h3",{className:"text-xl font-bold text-text-primary",children:"Roadmap"})]}),b.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:xne.flatMap(e=>{const t=tM[e.category]??nM;return e.items.map((n,r)=>b.jsxs("div",{className:`rounded-xl border ${t.border} ${t.bg} p-5 flex flex-col`,children:[b.jsx("div",{className:"flex items-center gap-2 mb-2",children:b.jsx("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-full ${t.badge} ${t.text} border ${t.badgeBorder}`,children:e.category})}),b.jsx("div",{className:"text-sm font-semibold text-text-primary mb-1.5",children:n.title}),b.jsx("p",{className:"text-sm text-text-secondary leading-relaxed flex-1",children:n.description})]},`${e.category}-${r}`))})})]})]})})}const _ne=new Set(["intro","architecture","metrics","early-results","demo","limitations","acknowledgements"]);function rM(){const e=window.location.hash.slice(1);return e&&_ne.has(e)?e:"intro"}function Sne(){if(typeof window<"u"){const e=localStorage.getItem("eva-theme");if(e==="light"||e==="dark")return e}return"dark"}function Ane(){const[e,t]=A.useState(rM),[n,r]=A.useState(Sne);A.useEffect(()=>{const f=()=>t(rM());return window.addEventListener("hashchange",f),()=>window.removeEventListener("hashchange",f)},[]);const s=A.useCallback(f=>{t(f),window.history.pushState(null,"",`#${f}`)},[]);A.useEffect(()=>{document.documentElement.setAttribute("data-theme",n),localStorage.setItem("eva-theme",n)},[n]);const o=A.useCallback(()=>{r(f=>f==="dark"?"light":"dark")},[]),u=A.useMemo(()=>({mode:n,colors:Tte[n]}),[n]);return b.jsx(Ex.Provider,{value:u,children:b.jsxs("div",{className:"min-h-screen bg-bg-primary",children:[b.jsx(C6,{activeTab:e,onTabChange:s,theme:n,onToggleTheme:o}),b.jsxs("main",{children:[e==="intro"&&b.jsx(EB,{}),e==="architecture"&&b.jsx(jB,{}),e==="metrics"&&b.jsx(RB,{}),e==="early-results"&&b.jsx(Wte,{}),e==="demo"&&b.jsx(vne,{}),e==="limitations"&&b.jsx(wne,{}),e==="acknowledgements"&&b.jsx(OB,{})]})]})})}CR.createRoot(document.getElementById("root")).render(b.jsx(A.StrictMode,{children:b.jsx(Ane,{})})); diff --git a/docs/assets/index-DNsPq0CK.css b/docs/assets/index-DNsPq0CK.css new file mode 100644 index 00000000..af54cf03 --- /dev/null +++ b/docs/assets/index-DNsPq0CK.css @@ -0,0 +1 @@ +@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-500:oklch(71.5% .143 215.221);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--leading-loose:2;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-sm:8px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg-primary:#0b0d17;--color-bg-secondary:#12152a;--color-bg-tertiary:#1a1f3d;--color-bg-hover:#222850;--color-purple:#8b5cf6;--color-purple-light:#a78bfa;--color-purple-dim:#6d28d9;--color-blue:#38bdf8;--color-blue-light:#7dd3fc;--color-cyan:#06b6d4;--color-amber:#f59e0b;--color-text-primary:#f1f5f9;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--color-border-default:#1e293b}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.\!container{width:100%!important}@media(min-width:40rem){.\!container{max-width:40rem!important}}@media(min-width:48rem){.\!container{max-width:48rem!important}}@media(min-width:64rem){.\!container{max-width:64rem!important}}@media(min-width:80rem){.\!container{max-width:80rem!important}}@media(min-width:96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-4{margin-block:calc(var(--spacing) * 4)}.-mt-1{margin-top:calc(var(--spacing) * -1)}.-mt-2{margin-top:calc(var(--spacing) * -2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-auto{margin-top:auto}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0{height:calc(var(--spacing) * 0)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-4\.5{height:calc(var(--spacing) * 4.5)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-full{height:100%}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-\[32rem\]{max-height:32rem}.max-h-\[85vh\]{max-height:85vh}.min-h-\[300px\]{min-height:300px}.min-h-screen{min-height:100vh}.w-0{width:calc(var(--spacing) * 0)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-4\.5{width:calc(var(--spacing) * 4.5)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-72{width:calc(var(--spacing) * 72)}.w-\[60\%\]{width:60%}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-64{max-width:calc(var(--spacing) * 64)}.max-w-72{max-width:calc(var(--spacing) * 72)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-\[28rem\]{max-width:28rem}.max-w-\[85\%\]{max-width:85%}.max-w-\[1600px\]{max-width:1600px}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[100px\]{min-width:100px}.min-w-\[160px\]{min-width:160px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-3d{scale:var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z)}.rotate-45{rotate:45deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.resize{resize:both}.columns-2{columns:2}.columns-3{columns:3}.columns-4{columns:4}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-2{border-right-style:var(--tw-border-style);border-right-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber\/20{border-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.border-amber\/20{border-color:color-mix(in oklab,var(--color-amber) 20%,transparent)}}.border-amber\/25{border-color:#f59e0b40}@supports (color:color-mix(in lab,red,red)){.border-amber\/25{border-color:color-mix(in oklab,var(--color-amber) 25%,transparent)}}.border-amber\/30{border-color:#f59e0b4d}@supports (color:color-mix(in lab,red,red)){.border-amber\/30{border-color:color-mix(in oklab,var(--color-amber) 30%,transparent)}}.border-amber\/40{border-color:#f59e0b66}@supports (color:color-mix(in lab,red,red)){.border-amber\/40{border-color:color-mix(in oklab,var(--color-amber) 40%,transparent)}}.border-bg-secondary{border-color:var(--color-bg-secondary)}.border-blue\/20{border-color:#38bdf833}@supports (color:color-mix(in lab,red,red)){.border-blue\/20{border-color:color-mix(in oklab,var(--color-blue) 20%,transparent)}}.border-blue\/25{border-color:#38bdf840}@supports (color:color-mix(in lab,red,red)){.border-blue\/25{border-color:color-mix(in oklab,var(--color-blue) 25%,transparent)}}.border-blue\/30{border-color:#38bdf84d}@supports (color:color-mix(in lab,red,red)){.border-blue\/30{border-color:color-mix(in oklab,var(--color-blue) 30%,transparent)}}.border-blue\/40{border-color:#38bdf866}@supports (color:color-mix(in lab,red,red)){.border-blue\/40{border-color:color-mix(in oklab,var(--color-blue) 40%,transparent)}}.border-border-default{border-color:var(--color-border-default)}.border-border-default\/30{border-color:#1e293b4d}@supports (color:color-mix(in lab,red,red)){.border-border-default\/30{border-color:color-mix(in oklab,var(--color-border-default) 30%,transparent)}}.border-border-default\/50{border-color:#1e293b80}@supports (color:color-mix(in lab,red,red)){.border-border-default\/50{border-color:color-mix(in oklab,var(--color-border-default) 50%,transparent)}}.border-cyan-500\/20{border-color:#00b7d733}@supports (color:color-mix(in lab,red,red)){.border-cyan-500\/20{border-color:color-mix(in oklab,var(--color-cyan-500) 20%,transparent)}}.border-cyan\/30{border-color:#06b6d44d}@supports (color:color-mix(in lab,red,red)){.border-cyan\/30{border-color:color-mix(in oklab,var(--color-cyan) 30%,transparent)}}.border-cyan\/40{border-color:#06b6d466}@supports (color:color-mix(in lab,red,red)){.border-cyan\/40{border-color:color-mix(in oklab,var(--color-cyan) 40%,transparent)}}.border-emerald-500\/20{border-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/20{border-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.border-purple\/20{border-color:#8b5cf633}@supports (color:color-mix(in lab,red,red)){.border-purple\/20{border-color:color-mix(in oklab,var(--color-purple) 20%,transparent)}}.border-purple\/25{border-color:#8b5cf640}@supports (color:color-mix(in lab,red,red)){.border-purple\/25{border-color:color-mix(in oklab,var(--color-purple) 25%,transparent)}}.border-purple\/30{border-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.border-purple\/30{border-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.border-purple\/40{border-color:#8b5cf666}@supports (color:color-mix(in lab,red,red)){.border-purple\/40{border-color:color-mix(in oklab,var(--color-purple) 40%,transparent)}}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.border-transparent{border-color:#0000}.bg-amber\/5{background-color:#f59e0b0d}@supports (color:color-mix(in lab,red,red)){.bg-amber\/5{background-color:color-mix(in oklab,var(--color-amber) 5%,transparent)}}.bg-amber\/10{background-color:#f59e0b1a}@supports (color:color-mix(in lab,red,red)){.bg-amber\/10{background-color:color-mix(in oklab,var(--color-amber) 10%,transparent)}}.bg-amber\/20{background-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.bg-amber\/20{background-color:color-mix(in oklab,var(--color-amber) 20%,transparent)}}.bg-bg-hover{background-color:var(--color-bg-hover)}.bg-bg-primary{background-color:var(--color-bg-primary)}.bg-bg-primary\/80{background-color:#0b0d17cc}@supports (color:color-mix(in lab,red,red)){.bg-bg-primary\/80{background-color:color-mix(in oklab,var(--color-bg-primary) 80%,transparent)}}.bg-bg-primary\/95{background-color:#0b0d17f2}@supports (color:color-mix(in lab,red,red)){.bg-bg-primary\/95{background-color:color-mix(in oklab,var(--color-bg-primary) 95%,transparent)}}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-tertiary{background-color:var(--color-bg-tertiary)}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.bg-blue\/5{background-color:#38bdf80d}@supports (color:color-mix(in lab,red,red)){.bg-blue\/5{background-color:color-mix(in oklab,var(--color-blue) 5%,transparent)}}.bg-blue\/10{background-color:#38bdf81a}@supports (color:color-mix(in lab,red,red)){.bg-blue\/10{background-color:color-mix(in oklab,var(--color-blue) 10%,transparent)}}.bg-blue\/20{background-color:#38bdf833}@supports (color:color-mix(in lab,red,red)){.bg-blue\/20{background-color:color-mix(in oklab,var(--color-blue) 20%,transparent)}}.bg-blue\/30{background-color:#38bdf84d}@supports (color:color-mix(in lab,red,red)){.bg-blue\/30{background-color:color-mix(in oklab,var(--color-blue) 30%,transparent)}}.bg-cyan-500\/5{background-color:#00b7d70d}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/5{background-color:color-mix(in oklab,var(--color-cyan-500) 5%,transparent)}}.bg-cyan-500\/10{background-color:#00b7d71a}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/10{background-color:color-mix(in oklab,var(--color-cyan-500) 10%,transparent)}}.bg-cyan\/5{background-color:#06b6d40d}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/5{background-color:color-mix(in oklab,var(--color-cyan) 5%,transparent)}}.bg-cyan\/10{background-color:#06b6d41a}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/10{background-color:color-mix(in oklab,var(--color-cyan) 10%,transparent)}}.bg-cyan\/20{background-color:#06b6d433}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/20{background-color:color-mix(in oklab,var(--color-cyan) 20%,transparent)}}.bg-emerald-500\/5{background-color:#00bb7f0d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/5{background-color:color-mix(in oklab,var(--color-emerald-500) 5%,transparent)}}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-emerald-500\/20{background-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/20{background-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.bg-purple{background-color:var(--color-purple)}.bg-purple-light{background-color:var(--color-purple-light)}.bg-purple-light\/20{background-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.bg-purple-light\/20{background-color:color-mix(in oklab,var(--color-purple-light) 20%,transparent)}}.bg-purple\/5{background-color:#8b5cf60d}@supports (color:color-mix(in lab,red,red)){.bg-purple\/5{background-color:color-mix(in oklab,var(--color-purple) 5%,transparent)}}.bg-purple\/10{background-color:#8b5cf61a}@supports (color:color-mix(in lab,red,red)){.bg-purple\/10{background-color:color-mix(in oklab,var(--color-purple) 10%,transparent)}}.bg-purple\/15{background-color:#8b5cf626}@supports (color:color-mix(in lab,red,red)){.bg-purple\/15{background-color:color-mix(in oklab,var(--color-purple) 15%,transparent)}}.bg-purple\/20{background-color:#8b5cf633}@supports (color:color-mix(in lab,red,red)){.bg-purple\/20{background-color:color-mix(in oklab,var(--color-purple) 20%,transparent)}}.bg-purple\/30{background-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.bg-purple\/30{background-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-28{padding-top:calc(var(--spacing) * 28)}.pt-32{padding-top:calc(var(--spacing) * 32)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-2\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.7em\]{font-size:.7em}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-loose{--tw-leading:var(--leading-loose);line-height:var(--leading-loose)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#A78BFA\]{color:#a78bfa}.text-amber{color:var(--color-amber)}.text-blue-light{color:var(--color-blue-light)}.text-cyan{color:var(--color-cyan)}.text-cyan-400{color:var(--color-cyan-400)}.text-emerald-400{color:var(--color-emerald-400)}.text-purple{color:var(--color-purple)}.text-purple-light{color:var(--color-purple-light)}.text-red-400{color:var(--color-red-400)}.text-text-muted{color:var(--color-text-muted)}.text-text-primary{color:var(--color-text-primary)}.text-text-primary\/80{color:#f1f5f9cc}@supports (color:color-mix(in lab,red,red)){.text-text-primary\/80{color:color-mix(in oklab,var(--color-text-primary) 80%,transparent)}}.text-text-secondary{color:var(--color-text-secondary)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/issue\:visible:is(:where(.group\/issue):hover *){visibility:visible}.group-hover\/issue\:opacity-100:is(:where(.group\/issue):hover *){opacity:1}.hover\:bg-bg-hover:hover{background-color:var(--color-bg-hover)}.hover\:bg-bg-hover\/30:hover{background-color:#2228504d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-bg-hover\/30:hover{background-color:color-mix(in oklab,var(--color-bg-hover) 30%,transparent)}}.hover\:bg-bg-hover\/50:hover{background-color:#22285080}@supports (color:color-mix(in lab,red,red)){.hover\:bg-bg-hover\/50:hover{background-color:color-mix(in oklab,var(--color-bg-hover) 50%,transparent)}}.hover\:bg-bg-tertiary:hover{background-color:var(--color-bg-tertiary)}.hover\:bg-purple-dim:hover{background-color:var(--color-purple-dim)}.hover\:bg-purple\/30:hover{background-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-purple\/30:hover{background-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.hover\:text-purple:hover{color:var(--color-purple)}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:text-text-secondary:hover{color:var(--color-text-secondary)}.hover\:opacity-80:hover{opacity:.8}}@media(min-width:40rem){.sm\:mx-8{margin-inline:calc(var(--spacing) * 8)}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:h-3{height:calc(var(--spacing) * 3)}.sm\:h-3\.5{height:calc(var(--spacing) * 3.5)}.sm\:min-h-\[400px\]{min-height:400px}.sm\:w-3{width:calc(var(--spacing) * 3)}.sm\:w-3\.5{width:calc(var(--spacing) * 3.5)}.sm\:w-6{width:calc(var(--spacing) * 6)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-baseline{align-items:baseline}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-x-6{column-gap:calc(var(--spacing) * 6)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:px-3{padding-inline:calc(var(--spacing) * 3)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-left{text-align:left}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media(min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:w-\[250px\]{width:250px}.md\:w-auto{width:auto}.md\:max-w-none{max-width:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-6{gap:calc(var(--spacing) * 6)}}@media(min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-8{top:calc(var(--spacing) * 8)}.lg\:max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.lg\:w-\[22\%\]{width:22%}.lg\:w-\[25\%\]{width:25%}.lg\:flex-shrink-0{flex-shrink:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-col{flex-direction:column}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-start{align-items:flex-start}.lg\:gap-3{gap:calc(var(--spacing) * 3)}.lg\:overflow-y-auto{overflow-y:auto}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:pr-2{padding-right:calc(var(--spacing) * 2)}.lg\:text-\[2\.75rem\]{font-size:2.75rem}}.\[\&_\.recharts-surface\]\:overflow-visible .recharts-surface{overflow:visible}}[data-theme=light]{--color-bg-primary:#fff;--color-bg-secondary:#f8fafc;--color-bg-tertiary:#f1f5f9;--color-bg-hover:#e2e8f0;--color-purple:#7c3aed;--color-purple-light:#6d28d9;--color-purple-dim:#5b21b6;--color-blue:#0284c7;--color-blue-light:#0369a1;--color-blue-dim:#075985;--color-cyan:#0891b2;--color-amber:#d97706;--color-text-primary:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-border-default:#e2e8f0;--color-border-accent:#7c3aed;--color-heatmap-bad:#dc2626;--color-heatmap-bad-bg:#fee2e2;--color-heatmap-mid:#ca8a04;--color-heatmap-mid-bg:#fef9c3;--color-heatmap-good:#16a34a;--color-heatmap-good-bg:#dcfce7}html{scroll-behavior:smooth}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-bg-hover)}@keyframes dash{to{stroke-dashoffset:-20px}}.animate-dash{animation:1s linear infinite dash}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false} diff --git a/docs/assets/index-DcU8EScs.css b/docs/assets/index-DcU8EScs.css deleted file mode 100644 index 2c375c5f..00000000 --- a/docs/assets/index-DcU8EScs.css +++ /dev/null @@ -1 +0,0 @@ -@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-500:oklch(71.5% .143 215.221);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--leading-loose:2;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--blur-sm:8px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg-primary:#0b0d17;--color-bg-secondary:#12152a;--color-bg-tertiary:#1a1f3d;--color-bg-hover:#222850;--color-purple:#8b5cf6;--color-purple-light:#a78bfa;--color-purple-dim:#6d28d9;--color-blue:#38bdf8;--color-blue-light:#7dd3fc;--color-cyan:#06b6d4;--color-amber:#f59e0b;--color-text-primary:#f1f5f9;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--color-border-default:#1e293b}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-4{margin-block:calc(var(--spacing) * 4)}.-mt-1{margin-top:calc(var(--spacing) * -1)}.-mt-2{margin-top:calc(var(--spacing) * -2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-auto{margin-top:auto}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0{height:calc(var(--spacing) * 0)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-4\.5{height:calc(var(--spacing) * 4.5)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-full{height:100%}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-\[32rem\]{max-height:32rem}.max-h-\[85vh\]{max-height:85vh}.min-h-\[300px\]{min-height:300px}.min-h-screen{min-height:100vh}.w-0{width:calc(var(--spacing) * 0)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-4\.5{width:calc(var(--spacing) * 4.5)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-72{width:calc(var(--spacing) * 72)}.w-\[60\%\]{width:60%}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-64{max-width:calc(var(--spacing) * 64)}.max-w-72{max-width:calc(var(--spacing) * 72)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-\[28rem\]{max-width:28rem}.max-w-\[85\%\]{max-width:85%}.max-w-\[1600px\]{max-width:1600px}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[100px\]{min-width:100px}.min-w-\[160px\]{min-width:160px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-2{border-right-style:var(--tw-border-style);border-right-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber\/20{border-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.border-amber\/20{border-color:color-mix(in oklab,var(--color-amber) 20%,transparent)}}.border-amber\/25{border-color:#f59e0b40}@supports (color:color-mix(in lab,red,red)){.border-amber\/25{border-color:color-mix(in oklab,var(--color-amber) 25%,transparent)}}.border-amber\/30{border-color:#f59e0b4d}@supports (color:color-mix(in lab,red,red)){.border-amber\/30{border-color:color-mix(in oklab,var(--color-amber) 30%,transparent)}}.border-amber\/40{border-color:#f59e0b66}@supports (color:color-mix(in lab,red,red)){.border-amber\/40{border-color:color-mix(in oklab,var(--color-amber) 40%,transparent)}}.border-bg-secondary{border-color:var(--color-bg-secondary)}.border-blue\/20{border-color:#38bdf833}@supports (color:color-mix(in lab,red,red)){.border-blue\/20{border-color:color-mix(in oklab,var(--color-blue) 20%,transparent)}}.border-blue\/25{border-color:#38bdf840}@supports (color:color-mix(in lab,red,red)){.border-blue\/25{border-color:color-mix(in oklab,var(--color-blue) 25%,transparent)}}.border-blue\/30{border-color:#38bdf84d}@supports (color:color-mix(in lab,red,red)){.border-blue\/30{border-color:color-mix(in oklab,var(--color-blue) 30%,transparent)}}.border-blue\/40{border-color:#38bdf866}@supports (color:color-mix(in lab,red,red)){.border-blue\/40{border-color:color-mix(in oklab,var(--color-blue) 40%,transparent)}}.border-border-default{border-color:var(--color-border-default)}.border-border-default\/30{border-color:#1e293b4d}@supports (color:color-mix(in lab,red,red)){.border-border-default\/30{border-color:color-mix(in oklab,var(--color-border-default) 30%,transparent)}}.border-border-default\/50{border-color:#1e293b80}@supports (color:color-mix(in lab,red,red)){.border-border-default\/50{border-color:color-mix(in oklab,var(--color-border-default) 50%,transparent)}}.border-cyan-500\/20{border-color:#00b7d733}@supports (color:color-mix(in lab,red,red)){.border-cyan-500\/20{border-color:color-mix(in oklab,var(--color-cyan-500) 20%,transparent)}}.border-cyan\/30{border-color:#06b6d44d}@supports (color:color-mix(in lab,red,red)){.border-cyan\/30{border-color:color-mix(in oklab,var(--color-cyan) 30%,transparent)}}.border-cyan\/40{border-color:#06b6d466}@supports (color:color-mix(in lab,red,red)){.border-cyan\/40{border-color:color-mix(in oklab,var(--color-cyan) 40%,transparent)}}.border-emerald-500\/20{border-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/20{border-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.border-purple\/20{border-color:#8b5cf633}@supports (color:color-mix(in lab,red,red)){.border-purple\/20{border-color:color-mix(in oklab,var(--color-purple) 20%,transparent)}}.border-purple\/25{border-color:#8b5cf640}@supports (color:color-mix(in lab,red,red)){.border-purple\/25{border-color:color-mix(in oklab,var(--color-purple) 25%,transparent)}}.border-purple\/30{border-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.border-purple\/30{border-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.border-purple\/40{border-color:#8b5cf666}@supports (color:color-mix(in lab,red,red)){.border-purple\/40{border-color:color-mix(in oklab,var(--color-purple) 40%,transparent)}}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.border-transparent{border-color:#0000}.bg-amber\/5{background-color:#f59e0b0d}@supports (color:color-mix(in lab,red,red)){.bg-amber\/5{background-color:color-mix(in oklab,var(--color-amber) 5%,transparent)}}.bg-amber\/10{background-color:#f59e0b1a}@supports (color:color-mix(in lab,red,red)){.bg-amber\/10{background-color:color-mix(in oklab,var(--color-amber) 10%,transparent)}}.bg-amber\/20{background-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.bg-amber\/20{background-color:color-mix(in oklab,var(--color-amber) 20%,transparent)}}.bg-bg-hover{background-color:var(--color-bg-hover)}.bg-bg-primary{background-color:var(--color-bg-primary)}.bg-bg-primary\/80{background-color:#0b0d17cc}@supports (color:color-mix(in lab,red,red)){.bg-bg-primary\/80{background-color:color-mix(in oklab,var(--color-bg-primary) 80%,transparent)}}.bg-bg-primary\/95{background-color:#0b0d17f2}@supports (color:color-mix(in lab,red,red)){.bg-bg-primary\/95{background-color:color-mix(in oklab,var(--color-bg-primary) 95%,transparent)}}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-tertiary{background-color:var(--color-bg-tertiary)}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.bg-blue\/5{background-color:#38bdf80d}@supports (color:color-mix(in lab,red,red)){.bg-blue\/5{background-color:color-mix(in oklab,var(--color-blue) 5%,transparent)}}.bg-blue\/10{background-color:#38bdf81a}@supports (color:color-mix(in lab,red,red)){.bg-blue\/10{background-color:color-mix(in oklab,var(--color-blue) 10%,transparent)}}.bg-blue\/20{background-color:#38bdf833}@supports (color:color-mix(in lab,red,red)){.bg-blue\/20{background-color:color-mix(in oklab,var(--color-blue) 20%,transparent)}}.bg-blue\/30{background-color:#38bdf84d}@supports (color:color-mix(in lab,red,red)){.bg-blue\/30{background-color:color-mix(in oklab,var(--color-blue) 30%,transparent)}}.bg-cyan-500\/5{background-color:#00b7d70d}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/5{background-color:color-mix(in oklab,var(--color-cyan-500) 5%,transparent)}}.bg-cyan-500\/10{background-color:#00b7d71a}@supports (color:color-mix(in lab,red,red)){.bg-cyan-500\/10{background-color:color-mix(in oklab,var(--color-cyan-500) 10%,transparent)}}.bg-cyan\/5{background-color:#06b6d40d}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/5{background-color:color-mix(in oklab,var(--color-cyan) 5%,transparent)}}.bg-cyan\/10{background-color:#06b6d41a}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/10{background-color:color-mix(in oklab,var(--color-cyan) 10%,transparent)}}.bg-cyan\/20{background-color:#06b6d433}@supports (color:color-mix(in lab,red,red)){.bg-cyan\/20{background-color:color-mix(in oklab,var(--color-cyan) 20%,transparent)}}.bg-emerald-500\/5{background-color:#00bb7f0d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/5{background-color:color-mix(in oklab,var(--color-emerald-500) 5%,transparent)}}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-emerald-500\/20{background-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/20{background-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.bg-purple{background-color:var(--color-purple)}.bg-purple-light{background-color:var(--color-purple-light)}.bg-purple-light\/20{background-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.bg-purple-light\/20{background-color:color-mix(in oklab,var(--color-purple-light) 20%,transparent)}}.bg-purple\/5{background-color:#8b5cf60d}@supports (color:color-mix(in lab,red,red)){.bg-purple\/5{background-color:color-mix(in oklab,var(--color-purple) 5%,transparent)}}.bg-purple\/10{background-color:#8b5cf61a}@supports (color:color-mix(in lab,red,red)){.bg-purple\/10{background-color:color-mix(in oklab,var(--color-purple) 10%,transparent)}}.bg-purple\/15{background-color:#8b5cf626}@supports (color:color-mix(in lab,red,red)){.bg-purple\/15{background-color:color-mix(in oklab,var(--color-purple) 15%,transparent)}}.bg-purple\/20{background-color:#8b5cf633}@supports (color:color-mix(in lab,red,red)){.bg-purple\/20{background-color:color-mix(in oklab,var(--color-purple) 20%,transparent)}}.bg-purple\/30{background-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.bg-purple\/30{background-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-28{padding-top:calc(var(--spacing) * 28)}.pt-32{padding-top:calc(var(--spacing) * 32)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-2\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.7em\]{font-size:.7em}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-loose{--tw-leading:var(--leading-loose);line-height:var(--leading-loose)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#A78BFA\]{color:#a78bfa}.text-amber{color:var(--color-amber)}.text-blue-light{color:var(--color-blue-light)}.text-cyan{color:var(--color-cyan)}.text-cyan-400{color:var(--color-cyan-400)}.text-emerald-400{color:var(--color-emerald-400)}.text-purple{color:var(--color-purple)}.text-purple-light{color:var(--color-purple-light)}.text-red-400{color:var(--color-red-400)}.text-text-muted{color:var(--color-text-muted)}.text-text-primary{color:var(--color-text-primary)}.text-text-primary\/80{color:#f1f5f9cc}@supports (color:color-mix(in lab,red,red)){.text-text-primary\/80{color:color-mix(in oklab,var(--color-text-primary) 80%,transparent)}}.text-text-secondary{color:var(--color-text-secondary)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.no-underline{text-decoration-line:none}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/issue\:visible:is(:where(.group\/issue):hover *){visibility:visible}.group-hover\/issue\:opacity-100:is(:where(.group\/issue):hover *){opacity:1}.hover\:bg-bg-hover:hover{background-color:var(--color-bg-hover)}.hover\:bg-bg-hover\/30:hover{background-color:#2228504d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-bg-hover\/30:hover{background-color:color-mix(in oklab,var(--color-bg-hover) 30%,transparent)}}.hover\:bg-bg-hover\/50:hover{background-color:#22285080}@supports (color:color-mix(in lab,red,red)){.hover\:bg-bg-hover\/50:hover{background-color:color-mix(in oklab,var(--color-bg-hover) 50%,transparent)}}.hover\:bg-bg-tertiary:hover{background-color:var(--color-bg-tertiary)}.hover\:bg-purple-dim:hover{background-color:var(--color-purple-dim)}.hover\:bg-purple\/30:hover{background-color:#8b5cf64d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-purple\/30:hover{background-color:color-mix(in oklab,var(--color-purple) 30%,transparent)}}.hover\:text-purple:hover{color:var(--color-purple)}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:text-text-secondary:hover{color:var(--color-text-secondary)}.hover\:opacity-80:hover{opacity:.8}}@media(min-width:40rem){.sm\:mx-8{margin-inline:calc(var(--spacing) * 8)}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:h-3{height:calc(var(--spacing) * 3)}.sm\:h-3\.5{height:calc(var(--spacing) * 3.5)}.sm\:min-h-\[400px\]{min-height:400px}.sm\:w-3{width:calc(var(--spacing) * 3)}.sm\:w-3\.5{width:calc(var(--spacing) * 3.5)}.sm\:w-6{width:calc(var(--spacing) * 6)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-baseline{align-items:baseline}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-x-6{column-gap:calc(var(--spacing) * 6)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:px-3{padding-inline:calc(var(--spacing) * 3)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-left{text-align:left}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media(min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:w-\[250px\]{width:250px}.md\:w-auto{width:auto}.md\:max-w-none{max-width:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-6{gap:calc(var(--spacing) * 6)}}@media(min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-8{top:calc(var(--spacing) * 8)}.lg\:max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.lg\:w-\[22\%\]{width:22%}.lg\:w-\[25\%\]{width:25%}.lg\:flex-shrink-0{flex-shrink:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-col{flex-direction:column}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-start{align-items:flex-start}.lg\:gap-3{gap:calc(var(--spacing) * 3)}.lg\:overflow-y-auto{overflow-y:auto}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:pr-2{padding-right:calc(var(--spacing) * 2)}.lg\:text-\[2\.75rem\]{font-size:2.75rem}}.\[\&_\.recharts-surface\]\:overflow-visible .recharts-surface{overflow:visible}}[data-theme=light]{--color-bg-primary:#fff;--color-bg-secondary:#f8fafc;--color-bg-tertiary:#f1f5f9;--color-bg-hover:#e2e8f0;--color-purple:#7c3aed;--color-purple-light:#6d28d9;--color-purple-dim:#5b21b6;--color-blue:#0284c7;--color-blue-light:#0369a1;--color-blue-dim:#075985;--color-cyan:#0891b2;--color-amber:#d97706;--color-text-primary:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-border-default:#e2e8f0;--color-border-accent:#7c3aed;--color-heatmap-bad:#dc2626;--color-heatmap-bad-bg:#fee2e2;--color-heatmap-mid:#ca8a04;--color-heatmap-mid-bg:#fef9c3;--color-heatmap-good:#16a34a;--color-heatmap-good-bg:#dcfce7}html{scroll-behavior:smooth}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-bg-hover)}@keyframes dash{to{stroke-dashoffset:-20px}}.animate-dash{animation:1s linear infinite dash}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false} diff --git a/docs/index.html b/docs/index.html index 9ba8b8e0..815c36b5 100644 --- a/docs/index.html +++ b/docs/index.html @@ -9,8 +9,8 @@ - - + +
diff --git a/website/src/components/metrics/MetricNode.tsx b/website/src/components/metrics/MetricNode.tsx index 4767490d..285f74b8 100644 --- a/website/src/components/metrics/MetricNode.tsx +++ b/website/src/components/metrics/MetricNode.tsx @@ -1,6 +1,6 @@ import { useState } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; -import { ChevronDown, Code, MessageSquare, Volume2 } from 'lucide-react'; +import { ChevronDown, Code, ExternalLink, MessageSquare, Volume2 } from 'lucide-react'; import { metricTypeLabels, metricTypeColors } from '../../data/metricsData'; import type { MetricDefinition } from '../../data/metricsData'; import { JudgePromptViewer } from './JudgePromptViewer'; @@ -131,10 +131,19 @@ export function MetricNode({ metric }: MetricNodeProps) { ))} - {metric.judgeDevelopmentNotes ? ( + {metric.developmentDocUrl && ( + + View judge development details + + + )} + {metric.judgeDevelopmentNotes && (

{metric.judgeDevelopmentNotes}

- ) : ( -

)} diff --git a/website/src/data/leaderboardData.ts b/website/src/data/leaderboardData.ts index ebd9a816..f2eaa557 100644 --- a/website/src/data/leaderboardData.ts +++ b/website/src/data/leaderboardData.ts @@ -75,13 +75,13 @@ export const ossSystems: SystemScore[] = [ shortName: 'gpt-realtime-mini', stt: '-', llm: 'gpt-realtime-mini', tts: '-', type: 's2s', - evaA: 0.1800, evaX: 0.4267, - accuracyMetrics: { task_completion: 0.2667, agent_tts_fidelity: 0.9833, faithfulness: 0.1733 }, - experienceMetrics: { turn_taking: 0.7801, conciseness: 0.7477, conversation_progression: 0.3533 }, - diagnosticMetrics: { key_entity_transcription: 0.8925, response_speed: 3.6711 }, + evaA: 0.1867, evaX: 0.4333, + accuracyMetrics: { task_completion: 0.2867, agent_tts_fidelity: 0.9882, faithfulness: 0.1833 }, + experienceMetrics: { turn_taking: 0.7607, conciseness: 0.8116, conversation_progression: 0.3567 }, + diagnosticMetrics: { key_entity_transcription: 0.0000, response_speed: 3.7524 }, successRates: { - accuracy: { pass_threshold: 0.1800, mean: 0.4744, pass_at_k: 0.3200, pass_k: 0.1044 }, - experience: { pass_threshold: 0.4267, mean: 0.6270, pass_at_k: 0.7200, pass_k: 0.2163 }, + accuracy: { pass_threshold: 0.1867, mean: 0.4861, pass_at_k: 0.2800, pass_k: 0.1185 }, + experience: { pass_threshold: 0.4333, mean: 0.6430, pass_at_k: 0.7000, pass_k: 0.2615 }, }, }, { @@ -220,10 +220,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'parakeet-ctc-1-1b-gpt-oss-120b-chatterbox-turbo', - name: 'parakeet-ctc-1.1b + gpt-oss-120b + chatterbox-turbo', + id: 'parakeet-ctc-1-1b-gpt-oss-120b-chatterbox', + name: 'parakeet-ctc-1.1b + gpt-oss-120b + chatterbox', shortName: 'gpt-oss-120b (parakeet-ctc-1.1b)', - stt: 'parakeet-ctc-1.1b', llm: 'gpt-oss-120b', tts: 'chatterbox-turbo', + stt: 'parakeet-ctc-1.1b', llm: 'gpt-oss-120b', tts: 'chatterbox', type: 'cascade', evaA: 0.1533, evaX: 0.0267, accuracyMetrics: { task_completion: 0.3600, agent_tts_fidelity: 0.8883, faithfulness: 0.3200 }, @@ -235,10 +235,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'parakeet-ctc-1-1b-qwen3-5-27b-chatterbox-turbo', - name: 'parakeet-ctc-1.1b + qwen3.5-27b + chatterbox-turbo', + id: 'parakeet-ctc-1-1b-qwen3-5-27b-chatterbox', + name: 'parakeet-ctc-1.1b + qwen3.5-27b + chatterbox', shortName: 'qwen3.5-27b (parakeet-ctc-1.1b)', - stt: 'parakeet-ctc-1.1b', llm: 'qwen3.5-27b', tts: 'chatterbox-turbo', + stt: 'parakeet-ctc-1.1b', llm: 'qwen3.5-27b', tts: 'chatterbox', type: 'cascade', evaA: 0.2533, evaX: 0.0000, accuracyMetrics: { task_completion: 0.5333, agent_tts_fidelity: 0.8513, faithfulness: 0.4200 }, @@ -280,10 +280,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'voxtral-mini-3b-gpt-oss-120b-chatterbox-turbo', - name: 'voxtral-mini-3b + gpt-oss-120b + chatterbox-turbo', + id: 'voxtral-mini-3b-gpt-oss-120b-chatterbox', + name: 'voxtral-mini-3b + gpt-oss-120b + chatterbox', shortName: 'gpt-oss-120b (voxtral-mini-3b)', - stt: 'voxtral-mini-3b', llm: 'gpt-oss-120b', tts: 'chatterbox-turbo', + stt: 'voxtral-mini-3b', llm: 'gpt-oss-120b', tts: 'chatterbox', type: 'cascade', evaA: 0.1600, evaX: 0.0933, accuracyMetrics: { task_completion: 0.3600, agent_tts_fidelity: 0.9049, faithfulness: 0.3467 }, @@ -295,10 +295,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'voxtral-mini-3b-qwen3-5-27b-chatterbox-turbo', - name: 'voxtral-mini-3b + qwen3.5-27b + chatterbox-turbo', + id: 'voxtral-mini-3b-qwen3-5-27b-chatterbox', + name: 'voxtral-mini-3b + qwen3.5-27b + chatterbox', shortName: 'qwen3.5-27b (voxtral-mini-3b)', - stt: 'voxtral-mini-3b', llm: 'qwen3.5-27b', tts: 'chatterbox-turbo', + stt: 'voxtral-mini-3b', llm: 'qwen3.5-27b', tts: 'chatterbox', type: 'cascade', evaA: 0.2067, evaX: 0.0000, accuracyMetrics: { task_completion: 0.5400, agent_tts_fidelity: 0.7960, faithfulness: 0.3967 }, @@ -325,10 +325,10 @@ export const ossSystems: SystemScore[] = [ }, }, { - id: 'whisper-large-v3-gpt-oss-20b-chatterbox-turbo', - name: 'whisper-large-v3 + gpt-oss-20b + chatterbox-turbo', + id: 'whisper-large-v3-gpt-oss-20b-chatterbox', + name: 'whisper-large-v3 + gpt-oss-20b + chatterbox', shortName: 'gpt-oss-20b (whisper-large-v3)', - stt: 'whisper-large-v3', llm: 'gpt-oss-20b', tts: 'chatterbox-turbo', + stt: 'whisper-large-v3', llm: 'gpt-oss-20b', tts: 'chatterbox', type: 'cascade', evaA: 0.0733, evaX: 0.0400, accuracyMetrics: { task_completion: 0.3800, agent_tts_fidelity: 0.8849, faithfulness: 0.1533 }, diff --git a/website/src/data/metricsData.ts b/website/src/data/metricsData.ts index b0362d42..deb878f2 100644 --- a/website/src/data/metricsData.ts +++ b/website/src/data/metricsData.ts @@ -16,6 +16,7 @@ export interface MetricDefinition { judgeAccuracy?: number; judgeScores?: { label: string; value: number; std?: number }[]; judgeDevelopmentNotes?: string; + developmentDocUrl?: string; } export const metricTypeLabels: Record = { @@ -52,14 +53,15 @@ export const metrics: MetricDefinition[] = [ judgeAccuracy: 0.8957, judgeScores: [ { label: 'accuracy', value: 0.8957, std: 0.0258 }, - { label: 'macro_f1_classes_0_1', value: 0.856, std: 0.024 }, + { label: 'macro_f1', value: 0.856, std: 0.024 }, ], description: 'Measures whether the agent correctly spoke the information it intended to communicate. TTS systems can mispronounce, skip, or distort words \u2014 in a voice context, if a confirmation code is not spoken correctly, the user cannot act on it regardless of whether the LLM produced the right answer.', inputs: 'Agent audio recording, intended assistant text (what LLM generated)', outputRange: 'Binary per turn (0=low fidelity, 1=high fidelity), aggregated as mean across turns', passThreshold: '≥ 0.95', - judgePrompt: `You are an expert evaluator judging the fidelity of text-to-speech (TTS) audio against the intended text. You will listen to one audio clip and verify that the spoken content faithfully reproduces the intended text, with special attention to TTS-critical entities. - + judgePrompt: `You are an expert evaluator judging the fidelity of this audio file against the intended text. +You will listen to one audio clip and verify that the spoken content faithfully reproduces the intended text, with special attention to TTS-critical entities. +The audio provided is a recording of the agent's side of a conversation, and contains only the agent responses, not the user. ## Intended Turns {intended_turns_formatted} @@ -76,16 +78,9 @@ The intended text may contain non-spoken tags and markers. You must understand t Tags like [slow], [firm], [annoyed] describe how the words were meant to be spoken. They are NOT spoken aloud and should never be expected in the audio. ### Interruption Tags -These are metadata markers inserted during post-processing to describe what happened in the conversation. They are NOT spoken aloud. Never penalize the audio for not containing these tags. -The tags also tell you that certain portions of the intended text were likely never spoken, because the speaker was interrupted or cut themselves off. Do NOT penalize for missing words that fall in a region the tags indicate was not spoken. +{interruption_tags_reference} -Tag definitions: -\u2022 [assistant interrupts] \u2014 The agent started speaking over the user. Text after this tag in the user's intended text may have been partially or fully drowned out by the agent speaking. Expect that some words after this tag may be missing or garbled in the audio. -\u2022 [user interrupts] \u2014 The user started speaking over the agent. Text after this tag in the agent's intended text may have been partially or fully spoken before the agent yielded the floor. Expect that some words after this tag may be missing. -\u2022 [likely cut off by user] \u2014 In agent intended text, marks approximately where the agent's speech was cut off by the user. Text BEFORE this tag was likely cut off at some point \u2014 the speaker may not have finished everything before it. Text AFTER this tag was most likely said (the agent resumed after the interruption). Do not penalize for missing words before this tag. -\u2022 [speaker likely cut itself off] \u2014 The agent stopped talking on its own, probably because it detected the user was speaking. Words before this tag were probably not all said. The text after this tag is what the agent said after resuming. Do not penalize for missing words before this tag. -\u2022 [likely interruption] \u2014 An unexplained break in the speaker's audio. Words around this boundary may be missing or fragmented. -\u2022 [assistant starts replying - user interrupts] \u2014 In user intended text, the user was speaking, the agent began to reply, and the user interrupted the agent. Text around this boundary may have overlapping speech. Some words near this tag may be missing or garbled. +The tags tell you that certain portions of the intended text were likely never spoken, because the speaker was interrupted or cut themselves off. Do NOT penalize for missing words that fall in a region the tags indicate was not spoken. **Key principle:** If a tag indicates that a section of text was likely not spoken aloud (due to interruption or cut-off), do NOT penalize for those words being missing from the audio. Only evaluate fidelity for words that were reasonably expected to have been spoken. @@ -118,8 +113,6 @@ For each intended turn, compare what you hear in the audio against the intended - Non-spoken tags: [slow], [firm], [annoyed], and all interruption tags listed above - Words in regions flagged by interruption tags as likely not spoken -**IMPORTANT: Only rate what you clearly hear.** If you cannot clearly make out a word or entity, note the uncertainty in your explanation rather than guessing. Do not fabricate or assume what was spoken. - ## Rating Scale (per turn) - **1 (High Fidelity)**: All entities are spoken correctly. Non-entity words are faithfully reproduced with no meaningful omissions or additions. - **0 (Low Fidelity)**: One or more entity errors, OR significant non-entity word errors that change the meaning of the turn. @@ -130,12 +123,14 @@ Respond with a JSON object. Each turn entry must include the turn_id matching th "turns": [ {{ "turn_id": , + "transcript": "explanation": "", "rating": <0 or 1> }} ], "explanation": "" }}`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/agent_speech_fidelity_development.md', }, { id: 'faithfulness', @@ -342,6 +337,7 @@ Respond in JSON format: }}, "rating": }}`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/faithfulness_development.md', }, // ─── EVA-X Core Metrics (3) ─── @@ -529,6 +525,7 @@ Return a JSON array with one object per turn: ] Make sure to use the same turn ids as provided in the conversation context. It typically starts at 1. The length of the array must equal the number of assistant turns in the conversation.`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/turn_taking_development.md', }, { id: 'conciseness', @@ -649,6 +646,7 @@ Provide your response as a valid JSON array, one entry per turn. Each entry must ] If the turn is rated 3 or null, failure_modes must be an empty list: [].`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/conciseness_development.md', }, { id: 'conversation_progression', @@ -821,6 +819,7 @@ Respond in JSON format. The "evidence" field must ALWAYS contain 1-2 sentences r }}, "rating": }}`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/conversation_progression_development.md', }, // ─── Debug Metrics (6) ─── @@ -1036,6 +1035,7 @@ Transcribed: \`My phone number is 404-555.\` "summary": "<1-2 sentence summary for this turn>" }} ]`, + developmentDocUrl: 'https://github.com/ServiceNow/eva/blob/main/docs/metrics/metric_development/transcription_accuracy_key_entities.md', }, // ─── Validation Metrics (3) ───