diff --git a/eval_protocol/benchmarks/test_aime25.py b/eval_protocol/benchmarks/test_aime25.py index 91a67f77..6eb785a7 100644 --- a/eval_protocol/benchmarks/test_aime25.py +++ b/eval_protocol/benchmarks/test_aime25.py @@ -5,6 +5,7 @@ EvaluationRow, Message, MetricResult, + ChatCompletionContentPartParam, ChatCompletionContentPartTextParam, ) from eval_protocol.pytest.default_single_turn_rollout_process import ( @@ -18,10 +19,12 @@ def _coerce_content_to_str( - content: str | list[ChatCompletionContentPartTextParam] | None, + content: str | list[ChatCompletionContentPartParam] | None, ) -> str: if isinstance(content, list): - return "".join([getattr(p, "text", str(p)) for p in content]) + return "".join( + getattr(p, "text", str(p)) if isinstance(p, ChatCompletionContentPartTextParam) else "" for p in content + ) return str(content or "") diff --git a/eval_protocol/benchmarks/test_gpqa.py b/eval_protocol/benchmarks/test_gpqa.py index 102eb294..55a96b6f 100644 --- a/eval_protocol/benchmarks/test_gpqa.py +++ b/eval_protocol/benchmarks/test_gpqa.py @@ -10,6 +10,7 @@ EvaluationRow, Message, MetricResult, + ChatCompletionContentPartParam, ChatCompletionContentPartTextParam, ) from eval_protocol.pytest.default_single_turn_rollout_process import ( @@ -54,10 +55,12 @@ def _load_gpqa_messages_from_csv() -> list[list[list[Message]]]: def _coerce_content_to_str( - content: str | list[ChatCompletionContentPartTextParam] | None, + content: str | list[ChatCompletionContentPartParam] | None, ) -> str: if isinstance(content, list): - return "".join([getattr(p, "text", str(p)) for p in content]) + return "".join( + getattr(p, "text", str(p)) if isinstance(p, ChatCompletionContentPartTextParam) else "" for p in content + ) return str(content or "") diff --git a/eval_protocol/benchmarks/test_livebench_data_analysis.py b/eval_protocol/benchmarks/test_livebench_data_analysis.py index 6baa7b89..787340d4 100644 --- a/eval_protocol/benchmarks/test_livebench_data_analysis.py +++ b/eval_protocol/benchmarks/test_livebench_data_analysis.py @@ -8,6 +8,7 @@ EvaluationRow, Message, MetricResult, + ChatCompletionContentPartParam, ChatCompletionContentPartTextParam, ) from eval_protocol.pytest.default_single_turn_rollout_process import ( @@ -37,9 +38,11 @@ def _extract_last_boxed_segment(text: str) -> Optional[str]: return matches[-1] -def _coerce_content_to_str(content: str | list[ChatCompletionContentPartTextParam] | None) -> str: +def _coerce_content_to_str(content: str | list[ChatCompletionContentPartParam] | None) -> str: if isinstance(content, list): - return "".join([getattr(p, "text", str(p)) for p in content]) + return "".join( + getattr(p, "text", str(p)) if isinstance(p, ChatCompletionContentPartTextParam) else "" for p in content + ) return str(content or "") diff --git a/eval_protocol/models.py b/eval_protocol/models.py index be964b1a..88861471 100644 --- a/eval_protocol/models.py +++ b/eval_protocol/models.py @@ -458,11 +458,46 @@ def __iter__(self): return iter(["text", "type"]) +class ChatCompletionContentPartImageParam(BaseModel): + type: Literal["image_url"] = Field("image_url", description="The type of the content part.") + image_url: Dict[str, Any] = Field( + ..., description="Image descriptor (e.g., {'url': 'data:image/png;base64,...', 'detail': 'high'})." + ) + + def __getitem__(self, key: str) -> Any: + if key == "image_url": + return self.image_url + if key == "type": + return self.type + raise KeyError(key) + + def get(self, key: str, default: Any = None) -> Any: + try: + return self[key] + except KeyError: + return default + + def keys(self): + return (k for k in ("image_url", "type")) + + def values(self): + return (self.image_url, self.type) + + def items(self): + return [("image_url", self.image_url), ("type", self.type)] + + def __iter__(self): + return iter(["image_url", "type"]) + + +ChatCompletionContentPartParam = Union[ChatCompletionContentPartTextParam, ChatCompletionContentPartImageParam] + + class Message(BaseModel): """Chat message model with trajectory evaluation support.""" role: str # assistant, user, system, tool - content: Optional[Union[str, List[ChatCompletionContentPartTextParam]]] = Field( + content: Optional[Union[str, List[ChatCompletionContentPartParam]]] = Field( default="", description="The content of the message." ) reasoning_content: Optional[str] = Field( diff --git a/eval_protocol/pytest/default_agent_rollout_processor.py b/eval_protocol/pytest/default_agent_rollout_processor.py index c2a10ba2..d8d4aada 100644 --- a/eval_protocol/pytest/default_agent_rollout_processor.py +++ b/eval_protocol/pytest/default_agent_rollout_processor.py @@ -13,7 +13,12 @@ from eval_protocol.dataset_logger.dataset_logger import DatasetLogger from eval_protocol.mcp.execution.policy import LiteLLMPolicy from eval_protocol.mcp.mcp_multi_client import MCPMultiClient -from eval_protocol.models import EvaluationRow, Message, ChatCompletionContentPartTextParam +from eval_protocol.models import ( + EvaluationRow, + Message, + ChatCompletionContentPartParam, + ChatCompletionContentPartTextParam, +) from openai.types import CompletionUsage from eval_protocol.pytest.rollout_processor import RolloutProcessor from eval_protocol.pytest.types import Dataset, RolloutProcessorConfig @@ -98,7 +103,7 @@ def append_message_and_log(self, message: Message): self.messages.append(message) self.logger.log(self.evaluation_row) - async def call_agent(self) -> Optional[Union[str, List[ChatCompletionContentPartTextParam]]]: + async def call_agent(self) -> Optional[Union[str, List[ChatCompletionContentPartParam]]]: """ Call the assistant with the user query. """ @@ -222,7 +227,7 @@ def _get_content_from_tool_result(self, tool_result: CallToolResult | str) -> Li def _format_tool_message_content( self, content: List[TextContent] - ) -> Union[str, List[ChatCompletionContentPartTextParam]]: + ) -> Union[str, List[ChatCompletionContentPartParam]]: """Format tool result content for inclusion in a tool message. - If a single text item, return plain string per OpenAI semantics. diff --git a/eval_protocol/pytest/default_single_turn_rollout_process.py b/eval_protocol/pytest/default_single_turn_rollout_process.py index 9e4c942a..665da649 100644 --- a/eval_protocol/pytest/default_single_turn_rollout_process.py +++ b/eval_protocol/pytest/default_single_turn_rollout_process.py @@ -166,13 +166,17 @@ async def process_row(row: EvaluationRow) -> EvaluationRow: row.execution_metadata.tool_call_count = ( len(converted_tool_calls) if converted_tool_calls is not None else 0 ) - row.execution_metadata.usage = ( - CompletionUsage( # Note: LiteLLM sets usage dynamically via setattr(), not as a typed field - prompt_tokens=response.usage.prompt_tokens, # pyright: ignore[reportAttributeAccessIssue] - completion_tokens=response.usage.completion_tokens, # pyright: ignore[reportAttributeAccessIssue] - total_tokens=response.usage.total_tokens, # pyright: ignore[reportAttributeAccessIssue] + usage = getattr(response, "usage", None) + if usage: + row.execution_metadata.usage = ( + CompletionUsage( # Note: LiteLLM sets usage dynamically via setattr(), not as a typed field + prompt_tokens=getattr(usage, "prompt_tokens", 0), + completion_tokens=getattr(usage, "completion_tokens", 0), + total_tokens=getattr(usage, "total_tokens", 0), + ) ) - ) + else: + row.execution_metadata.usage = None row.messages = messages diff --git a/eval_protocol/rewards/accuracy.py b/eval_protocol/rewards/accuracy.py index 4c4d8bf4..f7e08510 100644 --- a/eval_protocol/rewards/accuracy.py +++ b/eval_protocol/rewards/accuracy.py @@ -10,10 +10,16 @@ import re from typing import Any, Callable, Dict, List, Optional, Union, cast -from ..models import EvaluateResult, Message, MetricResult, ChatCompletionContentPartTextParam +from ..models import ( + EvaluateResult, + Message, + MetricResult, + ChatCompletionContentPartParam, + ChatCompletionContentPartTextParam, +) -def _to_text(content: Optional[Union[str, List[ChatCompletionContentPartTextParam]]]) -> str: +def _to_text(content: Optional[Union[str, List[ChatCompletionContentPartParam]]]) -> str: """Coerce Message.content into a plain string for regex and comparisons.""" if content is None: return "" @@ -21,7 +27,11 @@ def _to_text(content: Optional[Union[str, List[ChatCompletionContentPartTextPara return content # List[ChatCompletionContentPartTextParam] try: - return "\n".join(part.text for part in content) + texts: List[str] = [] + for part in content: + if isinstance(part, ChatCompletionContentPartTextParam): + texts.append(part.text) + return "\n".join(texts) except Exception: return "" diff --git a/eval_protocol/rewards/json_schema.py b/eval_protocol/rewards/json_schema.py index 9c446e67..abc493cf 100644 --- a/eval_protocol/rewards/json_schema.py +++ b/eval_protocol/rewards/json_schema.py @@ -2,7 +2,13 @@ import re from typing import Any, Dict, List, Optional, Union -from ..models import EvaluateResult, Message, MetricResult, ChatCompletionContentPartTextParam +from ..models import ( + EvaluateResult, + Message, + MetricResult, + ChatCompletionContentPartParam, + ChatCompletionContentPartTextParam, +) from ..typed_interface import reward_function from .function_calling import ( calculate_jaccard_similarity, @@ -59,8 +65,10 @@ def json_schema_reward( content_text = last_message.content else: try: - parts: List[ChatCompletionContentPartTextParam] = last_message.content # type: ignore[assignment] - content_text = "\n".join(getattr(p, "text", "") for p in parts) + parts: List[ChatCompletionContentPartParam] = last_message.content # type: ignore[assignment] + content_text = "\n".join( + getattr(p, "text", "") for p in parts if isinstance(p, ChatCompletionContentPartTextParam) + ) except Exception: content_text = "" else: diff --git a/eval_protocol/rewards/language_consistency.py b/eval_protocol/rewards/language_consistency.py index 5d968f86..356dfb08 100644 --- a/eval_protocol/rewards/language_consistency.py +++ b/eval_protocol/rewards/language_consistency.py @@ -9,7 +9,13 @@ import re from typing import Any, Dict, List, Optional, Set, Tuple, Union -from ..models import EvaluateResult, Message, MetricResult, ChatCompletionContentPartTextParam +from ..models import ( + EvaluateResult, + Message, + MetricResult, + ChatCompletionContentPartParam, + ChatCompletionContentPartTextParam, +) from ..typed_interface import reward_function # Dictionary mapping language codes to common words/patterns in that language @@ -573,13 +579,17 @@ def language_consistency_reward( }, ) - def _to_text(content: Union[str, List[ChatCompletionContentPartTextParam], None]) -> str: + def _to_text(content: Union[str, List[ChatCompletionContentPartParam], None]) -> str: if content is None: return "" if isinstance(content, str): return content try: - return "\n".join(part.text for part in content) + texts: List[str] = [] + for part in content: + if isinstance(part, ChatCompletionContentPartTextParam): + texts.append(part.text) + return "\n".join(texts) except Exception: return "" diff --git a/eval_protocol/rewards/repetition.py b/eval_protocol/rewards/repetition.py index 27c7d644..45ce788a 100644 --- a/eval_protocol/rewards/repetition.py +++ b/eval_protocol/rewards/repetition.py @@ -8,16 +8,26 @@ import re from typing import Any, Callable, Dict, List, Optional, Set, Tuple, Union -from ..models import EvaluateResult, Message, MetricResult, ChatCompletionContentPartTextParam +from ..models import ( + EvaluateResult, + Message, + MetricResult, + ChatCompletionContentPartParam, + ChatCompletionContentPartTextParam, +) -def _to_text(content: Optional[Union[str, List[ChatCompletionContentPartTextParam]]]) -> str: +def _to_text(content: Optional[Union[str, List[ChatCompletionContentPartParam]]]) -> str: if content is None: return "" if isinstance(content, str): return content try: - return "\n".join(part.text for part in content) + texts: List[str] = [] + for part in content: + if isinstance(part, ChatCompletionContentPartTextParam): + texts.append(part.text) + return "\n".join(texts) except Exception: return "" diff --git a/eval_protocol/rewards/tag_count.py b/eval_protocol/rewards/tag_count.py index 72408dee..aee82cf7 100644 --- a/eval_protocol/rewards/tag_count.py +++ b/eval_protocol/rewards/tag_count.py @@ -8,16 +8,26 @@ import re from typing import Any, Dict, List, Set, Union -from ..models import EvaluateResult, Message, MetricResult, ChatCompletionContentPartTextParam +from ..models import ( + EvaluateResult, + Message, + MetricResult, + ChatCompletionContentPartParam, + ChatCompletionContentPartTextParam, +) -def _to_text(content: Union[str, List[ChatCompletionContentPartTextParam], None]) -> str: +def _to_text(content: Union[str, List[ChatCompletionContentPartParam], None]) -> str: if content is None: return "" if isinstance(content, str): return content try: - return "\n".join(part.text for part in content) + texts: List[str] = [] + for part in content: + if isinstance(part, ChatCompletionContentPartTextParam): + texts.append(part.text) + return "\n".join(texts) except Exception: return "" diff --git a/tests/pytest/test_single_turn_rollout_processor.py b/tests/pytest/test_single_turn_rollout_processor.py index 286d3f12..9e8eecae 100644 --- a/tests/pytest/test_single_turn_rollout_processor.py +++ b/tests/pytest/test_single_turn_rollout_processor.py @@ -116,3 +116,50 @@ async def fake_acompletion(**kwargs): assert [m["role"] for m in sent_msgs] == ["user", "assistant"] assert [m.role for m in out.messages] == ["user", "assistant", "assistant"] assert out.messages[-1].content == "Hello again" + + +@pytest.mark.asyncio +async def test_single_turn_handles_missing_usage_block(monkeypatch): + row = EvaluationRow(messages=[Message(role="user", content="Describe the picture")]) + + import eval_protocol.pytest.default_single_turn_rollout_process as mod + + class StubChoices: + pass + + class StubModelResponse: + def __init__(self, text: str): + self.choices = [StubChoices()] + self.choices[0].message = SimpleNamespace(content=text, tool_calls=None) + self.usage = None + + async def fake_acompletion(**kwargs): + return StubModelResponse(text="It looks like creme brulee") + + class StubLogger: + def __init__(self): + self.logged = [] + + def log(self, row): + self.logged.append(row) + + def read(self, rollout_id=None): + return list(self.logged) + + stub_logger = StubLogger() + + monkeypatch.setattr(mod, "ModelResponse", StubModelResponse, raising=True) + monkeypatch.setattr(mod, "Choices", StubChoices, raising=True) + monkeypatch.setattr(mod, "acompletion", fake_acompletion, raising=True) + monkeypatch.setattr(mod, "default_logger", stub_logger, raising=False) + + processor = SingleTurnRolloutProcessor() + config = _DummyConfig() + + tasks = processor([row], config) + out = await tasks[0] + + assert [m.role for m in out.messages] == ["user", "assistant"] + assert out.messages[-1].content == "It looks like creme brulee" + # Usage should remain unset when the provider omits it + assert out.execution_metadata.usage is None diff --git a/vite-app/bun.lockb b/vite-app/bun.lockb new file mode 100755 index 00000000..2dec5a89 Binary files /dev/null and b/vite-app/bun.lockb differ diff --git a/vite-app/dist/assets/index-BIhepl19.css b/vite-app/dist/assets/index-BIhepl19.css deleted file mode 100644 index 987d9670..00000000 --- a/vite-app/dist/assets/index-BIhepl19.css +++ /dev/null @@ -1 +0,0 @@ -/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */@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-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-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-font-weight: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-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-md:.375rem;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--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)}}@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}:-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{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.top-1{top:calc(var(--spacing)*1)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.left-0{left:calc(var(--spacing)*0)}.z-10{z-index:10}.z-50{z-index:50}.\!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-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.block{display:block}.contents{display:contents}.flex{display:flex}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-96{height:calc(var(--spacing)*96)}.max-h-48{max-height:calc(var(--spacing)*48)}.max-h-60{max-height:calc(var(--spacing)*60)}.max-h-\[800px\]{max-height:800px}.max-h-\[calc\(100vh-80px\)\]{max-height:calc(100vh - 80px)}.min-h-4{min-height:calc(var(--spacing)*4)}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing)*1)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-12{width:calc(var(--spacing)*12)}.w-\[500px\]{width:500px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[200px\]{max-width:200px}.max-w-\[1200px\]{max-width:1200px}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-32{min-width:calc(var(--spacing)*32)}.min-w-36{min-width:calc(var(--spacing)*36)}.min-w-40{min-width:calc(var(--spacing)*40)}.min-w-48{min-width:calc(var(--spacing)*48)}.min-w-64{min-width:calc(var(--spacing)*64)}.min-w-max{min-width:max-content}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.grow{flex-grow:1}.rotate-90{rotate:90deg}.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,)}.transform\!{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)!important}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-nw-resize{cursor:nw-resize}.cursor-pointer{cursor:pointer}.cursor-row-resize{cursor:row-resize}.resize{resize:both}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.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)}: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-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-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-t-md{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.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-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-blue-200{border-color:var(--color-blue-200)}.border-current{border-color:currentColor}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-900{border-color:var(--color-gray-900)}.border-green-200{border-color:var(--color-green-200)}.border-red-200{border-color:var(--color-red-200)}.border-transparent{border-color:#0000}.border-yellow-200{border-color:var(--color-yellow-200)}.border-t-gray-600{border-top-color:var(--color-gray-600)}.border-t-transparent{border-top-color:#0000}.border-l-blue-500{border-left-color:var(--color-blue-500)}.border-l-gray-300{border-left-color:var(--color-gray-300)}.border-l-green-500{border-left-color:var(--color-green-500)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-500{background-color:var(--color-red-500)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-yellow-50{background-color:var(--color-yellow-50)}.bg-yellow-100{background-color:var(--color-yellow-100)}.bg-yellow-500{background-color:var(--color-yellow-500)}.p-0{padding:calc(var(--spacing)*0)}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-8{padding:calc(var(--spacing)*8)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-nowrap{text-wrap:nowrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-900{color:var(--color-blue-900)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-green-900{color:var(--color-green-900)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-700{color:var(--color-yellow-700)}.text-yellow-800{color:var(--color-yellow-800)}.text-yellow-900{color:var(--color-yellow-900)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.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)}.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,)}.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,)}.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,)!important}.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,visibility,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-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-200{--tw-duration:.2s;transition-duration:.2s}.select-none{-webkit-user-select:none;user-select:none}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:border-gray-400:hover{border-color:var(--color-gray-400)}.hover\:bg-blue-100:hover{background-color:var(--color-blue-100)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-gray-400:hover{background-color:var(--color-gray-400)}.hover\:bg-green-100:hover{background-color:var(--color-green-100)}.hover\:bg-green-200:hover{background-color:var(--color-green-200)}.hover\:bg-yellow-100:hover{background-color:var(--color-yellow-100)}.hover\:bg-yellow-200:hover{background-color:var(--color-yellow-200)}.hover\:text-blue-800:hover{color:var(--color-blue-800)}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-gray-900:hover{color:var(--color-gray-900)}.hover\:text-red-800:hover{color:var(--color-red-800)}.hover\:no-underline:hover{text-decoration-line:none}.hover\:opacity-100:hover{opacity:1}}.focus\:border-gray-500:focus{border-color:var(--color-gray-500)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (min-width:64rem){.lg\:max-w-md{max-width:var(--container-md)}}@media (min-width:80rem){.xl\:max-w-lg{max-width:var(--container-lg)}}}@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-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{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-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}} diff --git a/vite-app/dist/assets/index-CuQbfdPD.js b/vite-app/dist/assets/index-CuQbfdPD.js new file mode 100644 index 00000000..dcf3d7e0 --- /dev/null +++ b/vite-app/dist/assets/index-CuQbfdPD.js @@ -0,0 +1,46 @@ +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const o of a.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function A(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(i){if(i.ep)return;i.ep=!0;const a=A(i);fetch(i.href,a)}})();function e0(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Vp={exports:{}},xl={};var Rb;function oH(){if(Rb)return xl;Rb=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function A(n,i,a){var o=null;if(a!==void 0&&(o=""+a),i.key!==void 0&&(o=""+i.key),"key"in i){a={};for(var c in i)c!=="key"&&(a[c]=i[c])}else a=i;return i=a.ref,{$$typeof:e,type:n,key:o,ref:i!==void 0?i:null,props:a}}return xl.Fragment=t,xl.jsx=A,xl.jsxs=A,xl}var Ib;function lH(){return Ib||(Ib=1,Vp.exports=oH()),Vp.exports}var _=lH(),Pp={exports:{}},Qe={};var Nb;function cH(){if(Nb)return Qe;Nb=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.consumer"),o=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),B=Symbol.iterator;function v(D){return D===null||typeof D!="object"?null:(D=B&&D[B]||D["@@iterator"],typeof D=="function"?D:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},b=Object.assign,x={};function C(D,j,q){this.props=D,this.context=j,this.refs=x,this.updater=q||w}C.prototype.isReactComponent={},C.prototype.setState=function(D,j){if(typeof D!="object"&&typeof D!="function"&&D!=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,D,j,"setState")},C.prototype.forceUpdate=function(D){this.updater.enqueueForceUpdate(this,D,"forceUpdate")};function Q(){}Q.prototype=C.prototype;function E(D,j,q){this.props=D,this.context=j,this.refs=x,this.updater=q||w}var S=E.prototype=new Q;S.constructor=E,b(S,C.prototype),S.isPureReactComponent=!0;var O=Array.isArray;function H(){}var M={H:null,A:null,T:null,S:null},k=Object.prototype.hasOwnProperty;function R(D,j,q){var X=q.ref;return{$$typeof:e,type:D,key:j,ref:X!==void 0?X:null,props:q}}function J(D,j){return R(D.type,j,D.props)}function te(D){return typeof D=="object"&&D!==null&&D.$$typeof===e}function Ae(D){var j={"=":"=0",":":"=2"};return"$"+D.replace(/[=:]/g,function(q){return j[q]})}var se=/\/+/g;function ue(D,j){return typeof D=="object"&&D!==null&&D.key!=null?Ae(""+D.key):j.toString(36)}function ce(D){switch(D.status){case"fulfilled":return D.value;case"rejected":throw D.reason;default:switch(typeof D.status=="string"?D.then(H,H):(D.status="pending",D.then(function(j){D.status==="pending"&&(D.status="fulfilled",D.value=j)},function(j){D.status==="pending"&&(D.status="rejected",D.reason=j)})),D.status){case"fulfilled":return D.value;case"rejected":throw D.reason}}throw D}function I(D,j,q,X,ne){var de=typeof D;(de==="undefined"||de==="boolean")&&(D=null);var xe=!1;if(D===null)xe=!0;else switch(de){case"bigint":case"string":case"number":xe=!0;break;case"object":switch(D.$$typeof){case e:case t:xe=!0;break;case d:return xe=D._init,I(xe(D._payload),j,q,X,ne)}}if(xe)return ne=ne(D),xe=X===""?"."+ue(D,0):X,O(ne)?(q="",xe!=null&&(q=xe.replace(se,"$&/")+"/"),I(ne,j,q,"",function(St){return St})):ne!=null&&(te(ne)&&(ne=J(ne,q+(ne.key==null||D&&D.key===ne.key?"":(""+ne.key).replace(se,"$&/")+"/")+xe)),j.push(ne)),1;xe=0;var Vt=X===""?".":X+":";if(O(D))for(var ke=0;ke>>1,ve=I[ae];if(0>>1;aei(q,ee))Xi(ne,q)?(I[ae]=ne,I[X]=ee,ae=X):(I[ae]=q,I[j]=ee,ae=j);else if(Xi(ne,ee))I[ae]=ne,I[X]=ee,ae=X;else break e}}return G}function i(I,G){var ee=I.sortIndex-G.sortIndex;return ee!==0?ee:I.id-G.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,c=o.now();e.unstable_now=function(){return o.now()-c}}var u=[],h=[],d=1,p=null,B=3,v=!1,w=!1,b=!1,x=!1,C=typeof setTimeout=="function"?setTimeout:null,Q=typeof clearTimeout=="function"?clearTimeout:null,E=typeof setImmediate<"u"?setImmediate:null;function S(I){for(var G=A(h);G!==null;){if(G.callback===null)n(h);else if(G.startTime<=I)n(h),G.sortIndex=G.expirationTime,t(u,G);else break;G=A(h)}}function O(I){if(b=!1,S(I),!w)if(A(u)!==null)w=!0,H||(H=!0,Ae());else{var G=A(h);G!==null&&ce(O,G.startTime-I)}}var H=!1,M=-1,k=5,R=-1;function J(){return x?!0:!(e.unstable_now()-RI&&J());){var ae=p.callback;if(typeof ae=="function"){p.callback=null,B=p.priorityLevel;var ve=ae(p.expirationTime<=I);if(I=e.unstable_now(),typeof ve=="function"){p.callback=ve,S(I),G=!0;break t}p===A(u)&&n(u),S(I)}else n(u);p=A(u)}if(p!==null)G=!0;else{var D=A(h);D!==null&&ce(O,D.startTime-I),G=!1}}break e}finally{p=null,B=ee,v=!1}G=void 0}}finally{G?Ae():H=!1}}}var Ae;if(typeof E=="function")Ae=function(){E(te)};else if(typeof MessageChannel<"u"){var se=new MessageChannel,ue=se.port2;se.port1.onmessage=te,Ae=function(){ue.postMessage(null)}}else Ae=function(){C(te,0)};function ce(I,G){M=C(function(){I(e.unstable_now())},G)}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(I){I.callback=null},e.unstable_forceFrameRate=function(I){0>I||125ae?(I.sortIndex=ee,t(h,I),A(u)===null&&I===A(h)&&(b?(Q(M),M=-1):b=!0,ce(O,ee-ae))):(I.sortIndex=ve,t(u,I),w||v||(w=!0,H||(H=!0,Ae()))),I},e.unstable_shouldYield=J,e.unstable_wrapCallback=function(I){var G=B;return function(){var ee=B;B=G;try{return I.apply(this,arguments)}finally{B=ee}}}})(Zp)),Zp}var zb;function fH(){return zb||(zb=1,Xp.exports=uH()),Xp.exports}var Yp={exports:{}},wA={};var jb;function hH(){if(jb)return wA;jb=1;var e=Xh();function t(u){var h="https://react.dev/errors/"+u;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Yp.exports=hH(),Yp.exports}var Pb;function dH(){if(Pb)return Ql;Pb=1;var e=fH(),t=Xh(),A=VQ();function n(r){var s="https://react.dev/errors/"+r;if(1ve||(r.current=ae[ve],ae[ve]=null,ve--)}function q(r,s){ve++,ae[ve]=r.current,r.current=s}var X=D(null),ne=D(null),de=D(null),xe=D(null);function Vt(r,s){switch(q(de,s),q(ne,r),q(X,null),s.nodeType){case 9:case 11:r=(r=s.documentElement)&&(r=r.namespaceURI)?sb(r):0;break;default:if(r=s.tagName,s=s.namespaceURI)s=sb(s),r=ab(s,r);else switch(r){case"svg":r=1;break;case"math":r=2;break;default:r=0}}j(X),q(X,r)}function ke(){j(X),j(ne),j(de)}function St(r){r.memoizedState!==null&&q(xe,r);var s=X.current,l=ab(s,r.type);s!==l&&(q(ne,r),q(X,l))}function jA(r){ne.current===r&&(j(X),j(ne)),xe.current===r&&(j(xe),yl._currentValue=ee)}var Pt,EA;function mA(r){if(Pt===void 0)try{throw Error()}catch(l){var s=l.stack.trim().match(/\n( *(at )?)/);Pt=s&&s[1]||"",EA=-1)":-1g||T[f]!==z[g]){var Z=` +`+T[f].replace(" at new "," at ");return r.displayName&&Z.includes("")&&(Z=Z.replace("",r.displayName)),Z}while(1<=f&&0<=g);break}}}finally{on=!1,Error.prepareStackTrace=l}return(l=r?r.displayName||r.name:"")?mA(l):""}function BA(r,s){switch(r.tag){case 26:case 27:case 5:return mA(r.type);case 16:return mA("Lazy");case 13:return r.child!==s&&s!==null?mA("Suspense Fallback"):mA("Suspense");case 19:return mA("SuspenseList");case 0:case 15:return cr(r.type,!1);case 11:return cr(r.type.render,!1);case 1:return cr(r.type,!0);case 31:return mA("Activity");default:return""}}function ur(r){try{var s="",l=null;do s+=BA(r,l),l=r,r=r.return;while(r);return s}catch(f){return` +Error generating stack: `+f.message+` +`+f.stack}}var Yn=Object.prototype.hasOwnProperty,ln=e.unstable_scheduleCallback,ft=e.unstable_cancelCallback,fr=e.unstable_shouldYield,ua=e.unstable_requestPaint,Gt=e.unstable_now,fa=e.unstable_getCurrentPriorityLevel,hr=e.unstable_ImmediatePriority,dr=e.unstable_UserBlockingPriority,VA=e.unstable_NormalPriority,ds=e.unstable_LowPriority,$n=e.unstable_IdlePriority,gr=e.log,ha=e.unstable_setDisableYieldValue,Sn=null,Rt=null;function ht(r){if(typeof gr=="function"&&ha(r),Rt&&typeof Rt.setStrictMode=="function")try{Rt.setStrictMode(Sn,r)}catch{}}var At=Math.clz32?Math.clz32:pr,gs=Math.log,ps=Math.LN2;function pr(r){return r>>>=0,r===0?32:31-(gs(r)/ps|0)|0}var Wn=256,On=262144,Hn=4194304;function HA(r){var s=r&42;if(s!==0)return s;switch(r&-r){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 r&261888;case 262144:case 524288:case 1048576:case 2097152:return r&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return r&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return r}}function Jn(r,s,l){var f=r.pendingLanes;if(f===0)return 0;var g=0,m=r.suspendedLanes,y=r.pingedLanes;r=r.warmLanes;var U=f&134217727;return U!==0?(f=U&~m,f!==0?g=HA(f):(y&=U,y!==0?g=HA(y):l||(l=U&~r,l!==0&&(g=HA(l))))):(U=f&~m,U!==0?g=HA(U):y!==0?g=HA(y):l||(l=f&~r,l!==0&&(g=HA(l)))),g===0?0:s!==0&&s!==g&&(s&m)===0&&(m=g&-g,l=s&-s,m>=l||m===32&&(l&4194048)!==0)?s:g}function qn(r,s){return(r.pendingLanes&~(r.suspendedLanes&~r.pingedLanes)&s)===0}function Ot(r,s){switch(r){case 1:case 2:case 4:case 8:case 64:return s+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 s+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 nA(){var r=Hn;return Hn<<=1,(Hn&62914560)===0&&(Hn=4194304),r}function be(r){for(var s=[],l=0;31>l;l++)s.push(r);return s}function Se(r,s){r.pendingLanes|=s,s!==268435456&&(r.suspendedLanes=0,r.pingedLanes=0,r.warmLanes=0)}function FA(r,s,l,f,g,m){var y=r.pendingLanes;r.pendingLanes=l,r.suspendedLanes=0,r.pingedLanes=0,r.warmLanes=0,r.expiredLanes&=l,r.entangledLanes&=l,r.errorRecoveryDisabledLanes&=l,r.shellSuspendCounter=0;var U=r.entanglements,T=r.expirationTimes,z=r.hiddenUpdates;for(l=y&~l;0"u")return null;try{return r.activeElement||r.body}catch{return r.body}}var A1=/[\n"\\]/g;function un(r){return r.replace(A1,function(s){return"\\"+s.charCodeAt(0).toString(16)+" "})}function Id(r,s,l,f,g,m,y,U){r.name="",y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"?r.type=y:r.removeAttribute("type"),s!=null?y==="number"?(s===0&&r.value===""||r.value!=s)&&(r.value=""+cn(s)):r.value!==""+cn(s)&&(r.value=""+cn(s)):y!=="submit"&&y!=="reset"||r.removeAttribute("value"),s!=null?Nd(r,y,cn(s)):l!=null?Nd(r,y,cn(l)):f!=null&&r.removeAttribute("value"),g==null&&m!=null&&(r.defaultChecked=!!m),g!=null&&(r.checked=g&&typeof g!="function"&&typeof g!="symbol"),U!=null&&typeof U!="function"&&typeof U!="symbol"&&typeof U!="boolean"?r.name=""+cn(U):r.removeAttribute("name")}function ev(r,s,l,f,g,m,y,U){if(m!=null&&typeof m!="function"&&typeof m!="symbol"&&typeof m!="boolean"&&(r.type=m),s!=null||l!=null){if(!(m!=="submit"&&m!=="reset"||s!=null)){Rd(r);return}l=l!=null?""+cn(l):"",s=s!=null?""+cn(s):l,U||s===r.value||(r.value=s),r.defaultValue=s}f=f??g,f=typeof f!="function"&&typeof f!="symbol"&&!!f,r.checked=U?r.checked:!!f,r.defaultChecked=!!f,y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(r.name=y),Rd(r)}function Nd(r,s,l){s==="number"&&Vc(r.ownerDocument)===r||r.defaultValue===""+l||(r.defaultValue=""+l)}function pa(r,s,l,f){if(r=r.options,s){s={};for(var g=0;g"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Vd=!1;if(Ei)try{var No={};Object.defineProperty(No,"passive",{get:function(){Vd=!0}}),window.addEventListener("test",No,No),window.removeEventListener("test",No,No)}catch{Vd=!1}var vr=null,Pd=null,Gc=null;function av(){if(Gc)return Gc;var r,s=Pd,l=s.length,f,g="value"in vr?vr.value:vr.textContent,m=g.length;for(r=0;r=zo),hv=" ",dv=!1;function gv(r,s){switch(r){case"keyup":return S1.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function pv(r){return r=r.detail,typeof r=="object"&&"data"in r?r.data:null}var wa=!1;function H1(r,s){switch(r){case"compositionend":return pv(s);case"keypress":return s.which!==32?null:(dv=!0,hv);case"textInput":return r=s.data,r===hv&&dv?null:r;default:return null}}function T1(r,s){if(wa)return r==="compositionend"||!$d&&gv(r,s)?(r=av(),Gc=Pd=vr=null,wa=!1,r):null;switch(r){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1=s)return{node:l,offset:s-r};r=f}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=_v(l)}}function Qv(r,s){return r&&s?r===s?!0:r&&r.nodeType===3?!1:s&&s.nodeType===3?Qv(r,s.parentNode):"contains"in r?r.contains(s):r.compareDocumentPosition?!!(r.compareDocumentPosition(s)&16):!1:!1}function Uv(r){r=r!=null&&r.ownerDocument!=null&&r.ownerDocument.defaultView!=null?r.ownerDocument.defaultView:window;for(var s=Vc(r.document);s instanceof r.HTMLIFrameElement;){try{var l=typeof s.contentWindow.location.href=="string"}catch{l=!1}if(l)r=s.contentWindow;else break;s=Vc(r.document)}return s}function qd(r){var s=r&&r.nodeName&&r.nodeName.toLowerCase();return s&&(s==="input"&&(r.type==="text"||r.type==="search"||r.type==="tel"||r.type==="url"||r.type==="password")||s==="textarea"||r.contentEditable==="true")}var K1=Ei&&"documentMode"in document&&11>=document.documentMode,ya=null,eg=null,Go=null,tg=!1;function Ev(r,s,l){var f=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;tg||ya==null||ya!==Vc(f)||(f=ya,"selectionStart"in f&&qd(f)?f={start:f.selectionStart,end:f.selectionEnd}:(f=(f.ownerDocument&&f.ownerDocument.defaultView||window).getSelection(),f={anchorNode:f.anchorNode,anchorOffset:f.anchorOffset,focusNode:f.focusNode,focusOffset:f.focusOffset}),Go&&Po(Go,f)||(Go=f,f=Nu(eg,"onSelect"),0>=y,g-=y,Ai=1<<32-At(s)+g|l<Fe?(Me=pe,pe=null):Me=pe.sibling;var Pe=V(N,pe,K[Fe],$);if(Pe===null){pe===null&&(pe=Me);break}r&&pe&&Pe.alternate===null&&s(N,pe),L=m(Pe,L,Fe),Ve===null?ye=Pe:Ve.sibling=Pe,Ve=Pe,pe=Me}if(Fe===K.length)return l(N,pe),Ne&&Si(N,Fe),ye;if(pe===null){for(;FeFe?(Me=pe,pe=null):Me=pe.sibling;var Kr=V(N,pe,Pe.value,$);if(Kr===null){pe===null&&(pe=Me);break}r&&pe&&Kr.alternate===null&&s(N,pe),L=m(Kr,L,Fe),Ve===null?ye=Kr:Ve.sibling=Kr,Ve=Kr,pe=Me}if(Pe.done)return l(N,pe),Ne&&Si(N,Fe),ye;if(pe===null){for(;!Pe.done;Fe++,Pe=K.next())Pe=W(N,Pe.value,$),Pe!==null&&(L=m(Pe,L,Fe),Ve===null?ye=Pe:Ve.sibling=Pe,Ve=Pe);return Ne&&Si(N,Fe),ye}for(pe=f(pe);!Pe.done;Fe++,Pe=K.next())Pe=P(pe,N,Fe,Pe.value,$),Pe!==null&&(r&&Pe.alternate!==null&&pe.delete(Pe.key===null?Fe:Pe.key),L=m(Pe,L,Fe),Ve===null?ye=Pe:Ve.sibling=Pe,Ve=Pe);return r&&pe.forEach(function(aH){return s(N,aH)}),Ne&&Si(N,Fe),ye}function rt(N,L,K,$){if(typeof K=="object"&&K!==null&&K.type===b&&K.key===null&&(K=K.props.children),typeof K=="object"&&K!==null){switch(K.$$typeof){case v:e:{for(var ye=K.key;L!==null;){if(L.key===ye){if(ye=K.type,ye===b){if(L.tag===7){l(N,L.sibling),$=g(L,K.props.children),$.return=N,N=$;break e}}else if(L.elementType===ye||typeof ye=="object"&&ye!==null&&ye.$$typeof===k&&Qs(ye)===L.type){l(N,L.sibling),$=g(L,K.props),Jo($,K),$.return=N,N=$;break e}l(N,L);break}else s(N,L);L=L.sibling}K.type===b?($=ys(K.props.children,N.mode,$,K.key),$.return=N,N=$):($=Au(K.type,K.key,K.props,null,N.mode,$),Jo($,K),$.return=N,N=$)}return y(N);case w:e:{for(ye=K.key;L!==null;){if(L.key===ye)if(L.tag===4&&L.stateNode.containerInfo===K.containerInfo&&L.stateNode.implementation===K.implementation){l(N,L.sibling),$=g(L,K.children||[]),$.return=N,N=$;break e}else{l(N,L);break}else s(N,L);L=L.sibling}$=og(K,N.mode,$),$.return=N,N=$}return y(N);case k:return K=Qs(K),rt(N,L,K,$)}if(ce(K))return ge(N,L,K,$);if(Ae(K)){if(ye=Ae(K),typeof ye!="function")throw Error(n(150));return K=ye.call(K),Ce(N,L,K,$)}if(typeof K.then=="function")return rt(N,L,lu(K),$);if(K.$$typeof===E)return rt(N,L,ru(N,K),$);cu(N,K)}return typeof K=="string"&&K!==""||typeof K=="number"||typeof K=="bigint"?(K=""+K,L!==null&&L.tag===6?(l(N,L.sibling),$=g(L,K),$.return=N,N=$):(l(N,L),$=ag(K,N.mode,$),$.return=N,N=$),y(N)):l(N,L)}return function(N,L,K,$){try{Wo=0;var ye=rt(N,L,K,$);return Ha=null,ye}catch(pe){if(pe===Oa||pe===au)throw pe;var Ve=XA(29,pe,null,N.mode);return Ve.lanes=$,Ve.return=N,Ve}finally{}}}var Es=Wv(!0),Jv=Wv(!1),_r=!1;function wg(r){r.updateQueue={baseState:r.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function yg(r,s){r=r.updateQueue,s.updateQueue===r&&(s.updateQueue={baseState:r.baseState,firstBaseUpdate:r.firstBaseUpdate,lastBaseUpdate:r.lastBaseUpdate,shared:r.shared,callbacks:null})}function xr(r){return{lane:r,tag:0,payload:null,callback:null,next:null}}function Qr(r,s,l){var f=r.updateQueue;if(f===null)return null;if(f=f.shared,(Ye&2)!==0){var g=f.pending;return g===null?s.next=s:(s.next=g.next,g.next=s),f.pending=s,s=tu(r),Mv(r,null,l),s}return eu(r,f,s,l),tu(r)}function qo(r,s,l){if(s=s.updateQueue,s!==null&&(s=s.shared,(l&4194048)!==0)){var f=s.lanes;f&=r.pendingLanes,l|=f,s.lanes=l,le(r,l)}}function bg(r,s){var l=r.updateQueue,f=r.alternate;if(f!==null&&(f=f.updateQueue,l===f)){var g=null,m=null;if(l=l.firstBaseUpdate,l!==null){do{var y={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};m===null?g=m=y:m=m.next=y,l=l.next}while(l!==null);m===null?g=m=s:m=m.next=s}else g=m=s;l={baseState:f.baseState,firstBaseUpdate:g,lastBaseUpdate:m,shared:f.shared,callbacks:f.callbacks},r.updateQueue=l;return}r=l.lastBaseUpdate,r===null?l.firstBaseUpdate=s:r.next=s,l.lastBaseUpdate=s}var Cg=!1;function el(){if(Cg){var r=Sa;if(r!==null)throw r}}function tl(r,s,l,f){Cg=!1;var g=r.updateQueue;_r=!1;var m=g.firstBaseUpdate,y=g.lastBaseUpdate,U=g.shared.pending;if(U!==null){g.shared.pending=null;var T=U,z=T.next;T.next=null,y===null?m=z:y.next=z,y=T;var Z=r.alternate;Z!==null&&(Z=Z.updateQueue,U=Z.lastBaseUpdate,U!==y&&(U===null?Z.firstBaseUpdate=z:U.next=z,Z.lastBaseUpdate=T))}if(m!==null){var W=g.baseState;y=0,Z=z=T=null,U=m;do{var V=U.lane&-536870913,P=V!==U.lane;if(P?(De&V)===V:(f&V)===V){V!==0&&V===Fa&&(Cg=!0),Z!==null&&(Z=Z.next={lane:0,tag:U.tag,payload:U.payload,callback:null,next:null});e:{var ge=r,Ce=U;V=s;var rt=l;switch(Ce.tag){case 1:if(ge=Ce.payload,typeof ge=="function"){W=ge.call(rt,W,V);break e}W=ge;break e;case 3:ge.flags=ge.flags&-65537|128;case 0:if(ge=Ce.payload,V=typeof ge=="function"?ge.call(rt,W,V):ge,V==null)break e;W=p({},W,V);break e;case 2:_r=!0}}V=U.callback,V!==null&&(r.flags|=64,P&&(r.flags|=8192),P=g.callbacks,P===null?g.callbacks=[V]:P.push(V))}else P={lane:V,tag:U.tag,payload:U.payload,callback:U.callback,next:null},Z===null?(z=Z=P,T=W):Z=Z.next=P,y|=V;if(U=U.next,U===null){if(U=g.shared.pending,U===null)break;P=U,U=P.next,P.next=null,g.lastBaseUpdate=P,g.shared.pending=null}}while(!0);Z===null&&(T=W),g.baseState=T,g.firstBaseUpdate=z,g.lastBaseUpdate=Z,m===null&&(g.shared.lanes=0),Or|=y,r.lanes=y,r.memoizedState=W}}function qv(r,s){if(typeof r!="function")throw Error(n(191,r));r.call(s)}function ew(r,s){var l=r.callbacks;if(l!==null)for(r.callbacks=null,r=0;rm?m:8;var y=I.T,U={};I.T=U,zg(r,!1,s,l);try{var T=g(),z=I.S;if(z!==null&&z(U,T),T!==null&&typeof T=="object"&&typeof T.then=="function"){var Z=$1(T,f);il(r,s,Z,JA(r))}else il(r,s,f,JA(r))}catch(W){il(r,s,{then:function(){},status:"rejected",reason:W},JA())}finally{G.p=m,y!==null&&U.types!==null&&(y.types=U.types),I.T=y}}function AO(){}function kg(r,s,l,f){if(r.tag!==5)throw Error(n(476));var g=Hw(r).queue;Ow(r,g,s,ee,l===null?AO:function(){return Tw(r),l(f)})}function Hw(r){var s=r.memoizedState;if(s!==null)return s;s={memoizedState:ee,baseState:ee,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Di,lastRenderedState:ee},next:null};var l={};return s.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Di,lastRenderedState:l},next:null},r.memoizedState=s,r=r.alternate,r!==null&&(r.memoizedState=s),s}function Tw(r){var s=Hw(r);s.next===null&&(s=r.alternate.memoizedState),il(r,s.next.queue,{},JA())}function Kg(){return cA(yl)}function Dw(){return kt().memoizedState}function Mw(){return kt().memoizedState}function nO(r){for(var s=r.return;s!==null;){switch(s.tag){case 24:case 3:var l=JA();r=xr(l);var f=Qr(s,r,l);f!==null&&(IA(f,s,l),qo(f,s,l)),s={cache:pg()},r.payload=s;return}s=s.return}}function iO(r,s,l){var f=JA();l={lane:f,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},wu(r)?Rw(s,l):(l=rg(r,s,l,f),l!==null&&(IA(l,r,f),Iw(l,s,f)))}function Lw(r,s,l){var f=JA();il(r,s,l,f)}function il(r,s,l,f){var g={lane:f,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(wu(r))Rw(s,g);else{var m=r.alternate;if(r.lanes===0&&(m===null||m.lanes===0)&&(m=s.lastRenderedReducer,m!==null))try{var y=s.lastRenderedState,U=m(y,l);if(g.hasEagerState=!0,g.eagerState=U,GA(U,y))return eu(r,s,g,0),lt===null&&qc(),!1}catch{}finally{}if(l=rg(r,s,g,f),l!==null)return IA(l,r,f),Iw(l,s,f),!0}return!1}function zg(r,s,l,f){if(f={lane:2,revertLane:wp(),gesture:null,action:f,hasEagerState:!1,eagerState:null,next:null},wu(r)){if(s)throw Error(n(479))}else s=rg(r,l,f,2),s!==null&&IA(s,r,2)}function wu(r){var s=r.alternate;return r===Ee||s!==null&&s===Ee}function Rw(r,s){Da=hu=!0;var l=r.pending;l===null?s.next=s:(s.next=l.next,l.next=s),r.pending=s}function Iw(r,s,l){if((l&4194048)!==0){var f=s.lanes;f&=r.pendingLanes,l|=f,s.lanes=l,le(r,l)}}var rl={readContext:cA,use:pu,useCallback:Tt,useContext:Tt,useEffect:Tt,useImperativeHandle:Tt,useLayoutEffect:Tt,useInsertionEffect:Tt,useMemo:Tt,useReducer:Tt,useRef:Tt,useState:Tt,useDebugValue:Tt,useDeferredValue:Tt,useTransition:Tt,useSyncExternalStore:Tt,useId:Tt,useHostTransitionStatus:Tt,useFormState:Tt,useActionState:Tt,useOptimistic:Tt,useMemoCache:Tt,useCacheRefresh:Tt};rl.useEffectEvent=Tt;var Nw={readContext:cA,use:pu,useCallback:function(r,s){return SA().memoizedState=[r,s===void 0?null:s],r},useContext:cA,useEffect:bw,useImperativeHandle:function(r,s,l){l=l!=null?l.concat([r]):null,Bu(4194308,4,Qw.bind(null,s,r),l)},useLayoutEffect:function(r,s){return Bu(4194308,4,r,s)},useInsertionEffect:function(r,s){Bu(4,2,r,s)},useMemo:function(r,s){var l=SA();s=s===void 0?null:s;var f=r();if(Fs){ht(!0);try{r()}finally{ht(!1)}}return l.memoizedState=[f,s],f},useReducer:function(r,s,l){var f=SA();if(l!==void 0){var g=l(s);if(Fs){ht(!0);try{l(s)}finally{ht(!1)}}}else g=s;return f.memoizedState=f.baseState=g,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:r,lastRenderedState:g},f.queue=r,r=r.dispatch=iO.bind(null,Ee,r),[f.memoizedState,r]},useRef:function(r){var s=SA();return r={current:r},s.memoizedState=r},useState:function(r){r=Mg(r);var s=r.queue,l=Lw.bind(null,Ee,s);return s.dispatch=l,[r.memoizedState,l]},useDebugValue:Ig,useDeferredValue:function(r,s){var l=SA();return Ng(l,r,s)},useTransition:function(){var r=Mg(!1);return r=Ow.bind(null,Ee,r.queue,!0,!1),SA().memoizedState=r,[!1,r]},useSyncExternalStore:function(r,s,l){var f=Ee,g=SA();if(Ne){if(l===void 0)throw Error(n(407));l=l()}else{if(l=s(),lt===null)throw Error(n(349));(De&127)!==0||sw(f,s,l)}g.memoizedState=l;var m={value:l,getSnapshot:s};return g.queue=m,bw(ow.bind(null,f,m,r),[r]),f.flags|=2048,La(9,{destroy:void 0},aw.bind(null,f,m,l,s),null),l},useId:function(){var r=SA(),s=lt.identifierPrefix;if(Ne){var l=ni,f=Ai;l=(f&~(1<<32-At(f)-1)).toString(32)+l,s="_"+s+"R_"+l,l=du++,0<\/script>",m=m.removeChild(m.firstChild);break;case"select":m=typeof f.is=="string"?y.createElement("select",{is:f.is}):y.createElement("select"),f.multiple?m.multiple=!0:f.size&&(m.size=f.size);break;default:m=typeof f.is=="string"?y.createElement(g,{is:f.is}):y.createElement(g)}}m[Ke]=s,m[ot]=f;e:for(y=s.child;y!==null;){if(y.tag===5||y.tag===6)m.appendChild(y.stateNode);else if(y.tag!==4&&y.tag!==27&&y.child!==null){y.child.return=y,y=y.child;continue}if(y===s)break e;for(;y.sibling===null;){if(y.return===null||y.return===s)break e;y=y.return}y.sibling.return=y.return,y=y.sibling}s.stateNode=m;e:switch(fA(m,g,f),g){case"button":case"input":case"select":case"textarea":f=!!f.autoFocus;break e;case"img":f=!0;break e;default:f=!1}f&&Li(s)}}return Bt(s),Ap(s,s.type,r===null?null:r.memoizedProps,s.pendingProps,l),null;case 6:if(r&&s.stateNode!=null)r.memoizedProps!==f&&Li(s);else{if(typeof f!="string"&&s.stateNode===null)throw Error(n(166));if(r=de.current,Ua(s)){if(r=s.stateNode,l=s.memoizedProps,f=null,g=lA,g!==null)switch(g.tag){case 27:case 5:f=g.memoizedProps}r[Ke]=s,r=!!(r.nodeValue===l||f!==null&&f.suppressHydrationWarning===!0||ib(r.nodeValue,l)),r||br(s,!0)}else r=ku(r).createTextNode(f),r[Ke]=s,s.stateNode=r}return Bt(s),null;case 31:if(l=s.memoizedState,r===null||r.memoizedState!==null){if(f=Ua(s),l!==null){if(r===null){if(!f)throw Error(n(318));if(r=s.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(n(557));r[Ke]=s}else bs(),(s.flags&128)===0&&(s.memoizedState=null),s.flags|=4;Bt(s),r=!1}else l=fg(),r!==null&&r.memoizedState!==null&&(r.memoizedState.hydrationErrors=l),r=!0;if(!r)return s.flags&256?(YA(s),s):(YA(s),null);if((s.flags&128)!==0)throw Error(n(558))}return Bt(s),null;case 13:if(f=s.memoizedState,r===null||r.memoizedState!==null&&r.memoizedState.dehydrated!==null){if(g=Ua(s),f!==null&&f.dehydrated!==null){if(r===null){if(!g)throw Error(n(318));if(g=s.memoizedState,g=g!==null?g.dehydrated:null,!g)throw Error(n(317));g[Ke]=s}else bs(),(s.flags&128)===0&&(s.memoizedState=null),s.flags|=4;Bt(s),g=!1}else g=fg(),r!==null&&r.memoizedState!==null&&(r.memoizedState.hydrationErrors=g),g=!0;if(!g)return s.flags&256?(YA(s),s):(YA(s),null)}return YA(s),(s.flags&128)!==0?(s.lanes=l,s):(l=f!==null,r=r!==null&&r.memoizedState!==null,l&&(f=s.child,g=null,f.alternate!==null&&f.alternate.memoizedState!==null&&f.alternate.memoizedState.cachePool!==null&&(g=f.alternate.memoizedState.cachePool.pool),m=null,f.memoizedState!==null&&f.memoizedState.cachePool!==null&&(m=f.memoizedState.cachePool.pool),m!==g&&(f.flags|=2048)),l!==r&&l&&(s.child.flags|=8192),xu(s,s.updateQueue),Bt(s),null);case 4:return ke(),r===null&&_p(s.stateNode.containerInfo),Bt(s),null;case 10:return Hi(s.type),Bt(s),null;case 19:if(j(Nt),f=s.memoizedState,f===null)return Bt(s),null;if(g=(s.flags&128)!==0,m=f.rendering,m===null)if(g)al(f,!1);else{if(Dt!==0||r!==null&&(r.flags&128)!==0)for(r=s.child;r!==null;){if(m=fu(r),m!==null){for(s.flags|=128,al(f,!1),r=m.updateQueue,s.updateQueue=r,xu(s,r),s.subtreeFlags=0,r=l,l=s.child;l!==null;)Lv(l,r),l=l.sibling;return q(Nt,Nt.current&1|2),Ne&&Si(s,f.treeForkCount),s.child}r=r.sibling}f.tail!==null&&Gt()>Su&&(s.flags|=128,g=!0,al(f,!1),s.lanes=4194304)}else{if(!g)if(r=fu(m),r!==null){if(s.flags|=128,g=!0,r=r.updateQueue,s.updateQueue=r,xu(s,r),al(f,!0),f.tail===null&&f.tailMode==="hidden"&&!m.alternate&&!Ne)return Bt(s),null}else 2*Gt()-f.renderingStartTime>Su&&l!==536870912&&(s.flags|=128,g=!0,al(f,!1),s.lanes=4194304);f.isBackwards?(m.sibling=s.child,s.child=m):(r=f.last,r!==null?r.sibling=m:s.child=m,f.last=m)}return f.tail!==null?(r=f.tail,f.rendering=r,f.tail=r.sibling,f.renderingStartTime=Gt(),r.sibling=null,l=Nt.current,q(Nt,g?l&1|2:l&1),Ne&&Si(s,f.treeForkCount),r):(Bt(s),null);case 22:case 23:return YA(s),xg(),f=s.memoizedState!==null,r!==null?r.memoizedState!==null!==f&&(s.flags|=8192):f&&(s.flags|=8192),f?(l&536870912)!==0&&(s.flags&128)===0&&(Bt(s),s.subtreeFlags&6&&(s.flags|=8192)):Bt(s),l=s.updateQueue,l!==null&&xu(s,l.retryQueue),l=null,r!==null&&r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(l=r.memoizedState.cachePool.pool),f=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(f=s.memoizedState.cachePool.pool),f!==l&&(s.flags|=2048),r!==null&&j(xs),null;case 24:return l=null,r!==null&&(l=r.memoizedState.cache),s.memoizedState.cache!==l&&(s.flags|=2048),Hi(Xt),Bt(s),null;case 25:return null;case 30:return null}throw Error(n(156,s.tag))}function lO(r,s){switch(cg(s),s.tag){case 1:return r=s.flags,r&65536?(s.flags=r&-65537|128,s):null;case 3:return Hi(Xt),ke(),r=s.flags,(r&65536)!==0&&(r&128)===0?(s.flags=r&-65537|128,s):null;case 26:case 27:case 5:return jA(s),null;case 31:if(s.memoizedState!==null){if(YA(s),s.alternate===null)throw Error(n(340));bs()}return r=s.flags,r&65536?(s.flags=r&-65537|128,s):null;case 13:if(YA(s),r=s.memoizedState,r!==null&&r.dehydrated!==null){if(s.alternate===null)throw Error(n(340));bs()}return r=s.flags,r&65536?(s.flags=r&-65537|128,s):null;case 19:return j(Nt),null;case 4:return ke(),null;case 10:return Hi(s.type),null;case 22:case 23:return YA(s),xg(),r!==null&&j(xs),r=s.flags,r&65536?(s.flags=r&-65537|128,s):null;case 24:return Hi(Xt),null;case 25:return null;default:return null}}function ly(r,s){switch(cg(s),s.tag){case 3:Hi(Xt),ke();break;case 26:case 27:case 5:jA(s);break;case 4:ke();break;case 31:s.memoizedState!==null&&YA(s);break;case 13:YA(s);break;case 19:j(Nt);break;case 10:Hi(s.type);break;case 22:case 23:YA(s),xg(),r!==null&&j(xs);break;case 24:Hi(Xt)}}function ol(r,s){try{var l=s.updateQueue,f=l!==null?l.lastEffect:null;if(f!==null){var g=f.next;l=g;do{if((l.tag&r)===r){f=void 0;var m=l.create,y=l.inst;f=m(),y.destroy=f}l=l.next}while(l!==g)}}catch(U){qe(s,s.return,U)}}function Fr(r,s,l){try{var f=s.updateQueue,g=f!==null?f.lastEffect:null;if(g!==null){var m=g.next;f=m;do{if((f.tag&r)===r){var y=f.inst,U=y.destroy;if(U!==void 0){y.destroy=void 0,g=s;var T=l,z=U;try{z()}catch(Z){qe(g,T,Z)}}}f=f.next}while(f!==m)}}catch(Z){qe(s,s.return,Z)}}function cy(r){var s=r.updateQueue;if(s!==null){var l=r.stateNode;try{ew(s,l)}catch(f){qe(r,r.return,f)}}}function uy(r,s,l){l.props=Ss(r.type,r.memoizedProps),l.state=r.memoizedState;try{l.componentWillUnmount()}catch(f){qe(r,s,f)}}function ll(r,s){try{var l=r.ref;if(l!==null){switch(r.tag){case 26:case 27:case 5:var f=r.stateNode;break;case 30:f=r.stateNode;break;default:f=r.stateNode}typeof l=="function"?r.refCleanup=l(f):l.current=f}}catch(g){qe(r,s,g)}}function ii(r,s){var l=r.ref,f=r.refCleanup;if(l!==null)if(typeof f=="function")try{f()}catch(g){qe(r,s,g)}finally{r.refCleanup=null,r=r.alternate,r!=null&&(r.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(g){qe(r,s,g)}else l.current=null}function fy(r){var s=r.type,l=r.memoizedProps,f=r.stateNode;try{e:switch(s){case"button":case"input":case"select":case"textarea":l.autoFocus&&f.focus();break e;case"img":l.src?f.src=l.src:l.srcSet&&(f.srcset=l.srcSet)}}catch(g){qe(r,r.return,g)}}function np(r,s,l){try{var f=r.stateNode;OO(f,r.type,l,s),f[ot]=s}catch(g){qe(r,r.return,g)}}function hy(r){return r.tag===5||r.tag===3||r.tag===26||r.tag===27&&Lr(r.type)||r.tag===4}function ip(r){e:for(;;){for(;r.sibling===null;){if(r.return===null||hy(r.return))return null;r=r.return}for(r.sibling.return=r.return,r=r.sibling;r.tag!==5&&r.tag!==6&&r.tag!==18;){if(r.tag===27&&Lr(r.type)||r.flags&2||r.child===null||r.tag===4)continue e;r.child.return=r,r=r.child}if(!(r.flags&2))return r.stateNode}}function rp(r,s,l){var f=r.tag;if(f===5||f===6)r=r.stateNode,s?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(r,s):(s=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,s.appendChild(r),l=l._reactRootContainer,l!=null||s.onclick!==null||(s.onclick=Ui));else if(f!==4&&(f===27&&Lr(r.type)&&(l=r.stateNode,s=null),r=r.child,r!==null))for(rp(r,s,l),r=r.sibling;r!==null;)rp(r,s,l),r=r.sibling}function Qu(r,s,l){var f=r.tag;if(f===5||f===6)r=r.stateNode,s?l.insertBefore(r,s):l.appendChild(r);else if(f!==4&&(f===27&&Lr(r.type)&&(l=r.stateNode),r=r.child,r!==null))for(Qu(r,s,l),r=r.sibling;r!==null;)Qu(r,s,l),r=r.sibling}function dy(r){var s=r.stateNode,l=r.memoizedProps;try{for(var f=r.type,g=s.attributes;g.length;)s.removeAttributeNode(g[0]);fA(s,f,l),s[Ke]=r,s[ot]=l}catch(m){qe(r,r.return,m)}}var Ri=!1,$t=!1,sp=!1,gy=typeof WeakSet=="function"?WeakSet:Set,iA=null;function cO(r,s){if(r=r.containerInfo,Up=Xu,r=Uv(r),qd(r)){if("selectionStart"in r)var l={start:r.selectionStart,end:r.selectionEnd};else e:{l=(l=r.ownerDocument)&&l.defaultView||window;var f=l.getSelection&&l.getSelection();if(f&&f.rangeCount!==0){l=f.anchorNode;var g=f.anchorOffset,m=f.focusNode;f=f.focusOffset;try{l.nodeType,m.nodeType}catch{l=null;break e}var y=0,U=-1,T=-1,z=0,Z=0,W=r,V=null;t:for(;;){for(var P;W!==l||g!==0&&W.nodeType!==3||(U=y+g),W!==m||f!==0&&W.nodeType!==3||(T=y+f),W.nodeType===3&&(y+=W.nodeValue.length),(P=W.firstChild)!==null;)V=W,W=P;for(;;){if(W===r)break t;if(V===l&&++z===g&&(U=y),V===m&&++Z===f&&(T=y),(P=W.nextSibling)!==null)break;W=V,V=W.parentNode}W=P}l=U===-1||T===-1?null:{start:U,end:T}}else l=null}l=l||{start:0,end:0}}else l=null;for(Ep={focusedElem:r,selectionRange:l},Xu=!1,iA=s;iA!==null;)if(s=iA,r=s.child,(s.subtreeFlags&1028)!==0&&r!==null)r.return=s,iA=r;else for(;iA!==null;){switch(s=iA,m=s.alternate,r=s.flags,s.tag){case 0:if((r&4)!==0&&(r=s.updateQueue,r=r!==null?r.events:null,r!==null))for(l=0;l title"))),fA(m,f,l),m[Ke]=r,Ht(m),f=m;break e;case"link":var y=yb("link","href",g).get(f+(l.href||""));if(y){for(var U=0;Urt&&(y=rt,rt=Ce,Ce=y);var N=xv(U,Ce),L=xv(U,rt);if(N&&L&&(P.rangeCount!==1||P.anchorNode!==N.node||P.anchorOffset!==N.offset||P.focusNode!==L.node||P.focusOffset!==L.offset)){var K=W.createRange();K.setStart(N.node,N.offset),P.removeAllRanges(),Ce>rt?(P.addRange(K),P.extend(L.node,L.offset)):(K.setEnd(L.node,L.offset),P.addRange(K))}}}}for(W=[],P=U;P=P.parentNode;)P.nodeType===1&&W.push({element:P,left:P.scrollLeft,top:P.scrollTop});for(typeof U.focus=="function"&&U.focus(),U=0;Ul?32:l,I.T=null,l=hp,hp=null;var m=Tr,y=zi;if(qt=0,Ka=Tr=null,zi=0,(Ye&6)!==0)throw Error(n(331));var U=Ye;if(Ye|=4,Qy(m.current),Cy(m,m.current,y,l),Ye=U,gl(0,!1),Rt&&typeof Rt.onPostCommitFiberRoot=="function")try{Rt.onPostCommitFiberRoot(Sn,m)}catch{}return!0}finally{G.p=g,I.T=f,Vy(r,s)}}function Gy(r,s,l){s=hn(l,s),s=Gg(r.stateNode,s,2),r=Qr(r,s,2),r!==null&&(Se(r,2),ri(r))}function qe(r,s,l){if(r.tag===3)Gy(r,r,l);else for(;s!==null;){if(s.tag===3){Gy(s,r,l);break}else if(s.tag===1){var f=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof f.componentDidCatch=="function"&&(Hr===null||!Hr.has(f))){r=hn(l,r),l=Xw(2),f=Qr(s,l,2),f!==null&&(Zw(l,f,s,r),Se(f,2),ri(f));break}}s=s.return}}function mp(r,s,l){var f=r.pingCache;if(f===null){f=r.pingCache=new hO;var g=new Set;f.set(s,g)}else g=f.get(s),g===void 0&&(g=new Set,f.set(s,g));g.has(l)||(lp=!0,g.add(l),r=BO.bind(null,r,s,l),s.then(r,r))}function BO(r,s,l){var f=r.pingCache;f!==null&&f.delete(s),r.pingedLanes|=r.suspendedLanes&l,r.warmLanes&=~l,lt===r&&(De&l)===l&&(Dt===4||Dt===3&&(De&62914560)===De&&300>Gt()-Fu?(Ye&2)===0&&za(r,0):cp|=l,ka===De&&(ka=0)),ri(r)}function Xy(r,s){s===0&&(s=nA()),r=ws(r,s),r!==null&&(Se(r,s),ri(r))}function vO(r){var s=r.memoizedState,l=0;s!==null&&(l=s.retryLane),Xy(r,l)}function wO(r,s){var l=0;switch(r.tag){case 31:case 13:var f=r.stateNode,g=r.memoizedState;g!==null&&(l=g.retryLane);break;case 19:f=r.stateNode;break;case 22:f=r.stateNode._retryCache;break;default:throw Error(n(314))}f!==null&&f.delete(s),Xy(r,l)}function yO(r,s){return ln(r,s)}var Lu=null,Va=null,Bp=!1,Ru=!1,vp=!1,Mr=0;function ri(r){r!==Va&&r.next===null&&(Va===null?Lu=Va=r:Va=Va.next=r),Ru=!0,Bp||(Bp=!0,CO())}function gl(r,s){if(!vp&&Ru){vp=!0;do for(var l=!1,f=Lu;f!==null;){if(r!==0){var g=f.pendingLanes;if(g===0)var m=0;else{var y=f.suspendedLanes,U=f.pingedLanes;m=(1<<31-At(42|r)+1)-1,m&=g&~(y&~U),m=m&201326741?m&201326741|1:m?m|2:0}m!==0&&(l=!0,Wy(f,m))}else m=De,m=Jn(f,f===lt?m:0,f.cancelPendingCommit!==null||f.timeoutHandle!==-1),(m&3)===0||qn(f,m)||(l=!0,Wy(f,m));f=f.next}while(l);vp=!1}}function bO(){Zy()}function Zy(){Ru=Bp=!1;var r=0;Mr!==0&&TO()&&(r=Mr);for(var s=Gt(),l=null,f=Lu;f!==null;){var g=f.next,m=Yy(f,s);m===0?(f.next=null,l===null?Lu=g:l.next=g,g===null&&(Va=l)):(l=f,(r!==0||(m&3)!==0)&&(Ru=!0)),f=g}qt!==0&&qt!==5||gl(r),Mr!==0&&(Mr=0)}function Yy(r,s){for(var l=r.suspendedLanes,f=r.pingedLanes,g=r.expirationTimes,m=r.pendingLanes&-62914561;0U)break;var Z=T.transferSize,W=T.initiatorType;Z&&rb(W)&&(T=T.responseEnd,y+=Z*(T"u"?null:document;function mb(r,s,l){var f=Pa;if(f&&typeof s=="string"&&s){var g=un(s);g='link[rel="'+r+'"][href="'+g+'"]',typeof l=="string"&&(g+='[crossorigin="'+l+'"]'),pb.has(g)||(pb.add(g),r={rel:r,crossOrigin:l,href:s},f.querySelector(g)===null&&(s=f.createElement("link"),fA(s,"link",r),Ht(s),f.head.appendChild(s)))}}function zO(r){ji.D(r),mb("dns-prefetch",r,null)}function jO(r,s){ji.C(r,s),mb("preconnect",r,s)}function VO(r,s,l){ji.L(r,s,l);var f=Pa;if(f&&r&&s){var g='link[rel="preload"][as="'+un(s)+'"]';s==="image"&&l&&l.imageSrcSet?(g+='[imagesrcset="'+un(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(g+='[imagesizes="'+un(l.imageSizes)+'"]')):g+='[href="'+un(r)+'"]';var m=g;switch(s){case"style":m=Ga(r);break;case"script":m=Xa(r)}vn.has(m)||(r=p({rel:"preload",href:s==="image"&&l&&l.imageSrcSet?void 0:r,as:s},l),vn.set(m,r),f.querySelector(g)!==null||s==="style"&&f.querySelector(vl(m))||s==="script"&&f.querySelector(wl(m))||(s=f.createElement("link"),fA(s,"link",r),Ht(s),f.head.appendChild(s)))}}function PO(r,s){ji.m(r,s);var l=Pa;if(l&&r){var f=s&&typeof s.as=="string"?s.as:"script",g='link[rel="modulepreload"][as="'+un(f)+'"][href="'+un(r)+'"]',m=g;switch(f){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":m=Xa(r)}if(!vn.has(m)&&(r=p({rel:"modulepreload",href:r},s),vn.set(m,r),l.querySelector(g)===null)){switch(f){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(wl(m)))return}f=l.createElement("link"),fA(f,"link",r),Ht(f),l.head.appendChild(f)}}}function GO(r,s,l){ji.S(r,s,l);var f=Pa;if(f&&r){var g=vA(f).hoistableStyles,m=Ga(r);s=s||"default";var y=g.get(m);if(!y){var U={loading:0,preload:null};if(y=f.querySelector(vl(m)))U.loading=5;else{r=p({rel:"stylesheet",href:r,"data-precedence":s},l),(l=vn.get(m))&&Mp(r,l);var T=y=f.createElement("link");Ht(T),fA(T,"link",r),T._p=new Promise(function(z,Z){T.onload=z,T.onerror=Z}),T.addEventListener("load",function(){U.loading|=1}),T.addEventListener("error",function(){U.loading|=2}),U.loading|=4,zu(y,s,f)}y={type:"stylesheet",instance:y,count:1,state:U},g.set(m,y)}}}function XO(r,s){ji.X(r,s);var l=Pa;if(l&&r){var f=vA(l).hoistableScripts,g=Xa(r),m=f.get(g);m||(m=l.querySelector(wl(g)),m||(r=p({src:r,async:!0},s),(s=vn.get(g))&&Lp(r,s),m=l.createElement("script"),Ht(m),fA(m,"link",r),l.head.appendChild(m)),m={type:"script",instance:m,count:1,state:null},f.set(g,m))}}function ZO(r,s){ji.M(r,s);var l=Pa;if(l&&r){var f=vA(l).hoistableScripts,g=Xa(r),m=f.get(g);m||(m=l.querySelector(wl(g)),m||(r=p({src:r,async:!0,type:"module"},s),(s=vn.get(g))&&Lp(r,s),m=l.createElement("script"),Ht(m),fA(m,"link",r),l.head.appendChild(m)),m={type:"script",instance:m,count:1,state:null},f.set(g,m))}}function Bb(r,s,l,f){var g=(g=de.current)?Ku(g):null;if(!g)throw Error(n(446));switch(r){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(s=Ga(l.href),l=vA(g).hoistableStyles,f=l.get(s),f||(f={type:"style",instance:null,count:0,state:null},l.set(s,f)),f):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){r=Ga(l.href);var m=vA(g).hoistableStyles,y=m.get(r);if(y||(g=g.ownerDocument||g,y={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},m.set(r,y),(m=g.querySelector(vl(r)))&&!m._p&&(y.instance=m,y.state.loading=5),vn.has(r)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},vn.set(r,l),m||YO(g,r,l,y.state))),s&&f===null)throw Error(n(528,""));return y}if(s&&f!==null)throw Error(n(529,""));return null;case"script":return s=l.async,l=l.src,typeof l=="string"&&s&&typeof s!="function"&&typeof s!="symbol"?(s=Xa(l),l=vA(g).hoistableScripts,f=l.get(s),f||(f={type:"script",instance:null,count:0,state:null},l.set(s,f)),f):{type:"void",instance:null,count:0,state:null};default:throw Error(n(444,r))}}function Ga(r){return'href="'+un(r)+'"'}function vl(r){return'link[rel="stylesheet"]['+r+"]"}function vb(r){return p({},r,{"data-precedence":r.precedence,precedence:null})}function YO(r,s,l,f){r.querySelector('link[rel="preload"][as="style"]['+s+"]")?f.loading=1:(s=r.createElement("link"),f.preload=s,s.addEventListener("load",function(){return f.loading|=1}),s.addEventListener("error",function(){return f.loading|=2}),fA(s,"link",l),Ht(s),r.head.appendChild(s))}function Xa(r){return'[src="'+un(r)+'"]'}function wl(r){return"script[async]"+r}function wb(r,s,l){if(s.count++,s.instance===null)switch(s.type){case"style":var f=r.querySelector('style[data-href~="'+un(l.href)+'"]');if(f)return s.instance=f,Ht(f),f;var g=p({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return f=(r.ownerDocument||r).createElement("style"),Ht(f),fA(f,"style",g),zu(f,l.precedence,r),s.instance=f;case"stylesheet":g=Ga(l.href);var m=r.querySelector(vl(g));if(m)return s.state.loading|=4,s.instance=m,Ht(m),m;f=vb(l),(g=vn.get(g))&&Mp(f,g),m=(r.ownerDocument||r).createElement("link"),Ht(m);var y=m;return y._p=new Promise(function(U,T){y.onload=U,y.onerror=T}),fA(m,"link",f),s.state.loading|=4,zu(m,l.precedence,r),s.instance=m;case"script":return m=Xa(l.src),(g=r.querySelector(wl(m)))?(s.instance=g,Ht(g),g):(f=l,(g=vn.get(m))&&(f=p({},l),Lp(f,g)),r=r.ownerDocument||r,g=r.createElement("script"),Ht(g),fA(g,"link",f),r.head.appendChild(g),s.instance=g);case"void":return null;default:throw Error(n(443,s.type))}else s.type==="stylesheet"&&(s.state.loading&4)===0&&(f=s.instance,s.state.loading|=4,zu(f,l.precedence,r));return s.instance}function zu(r,s,l){for(var f=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),g=f.length?f[f.length-1]:null,m=g,y=0;y title"):null)}function $O(r,s,l){if(l===1||s.itemProp!=null)return!1;switch(r){case"meta":case"title":return!0;case"style":if(typeof s.precedence!="string"||typeof s.href!="string"||s.href==="")break;return!0;case"link":if(typeof s.rel!="string"||typeof s.href!="string"||s.href===""||s.onLoad||s.onError)break;switch(s.rel){case"stylesheet":return r=s.disabled,typeof s.precedence=="string"&&r==null;default:return!0}case"script":if(s.async&&typeof s.async!="function"&&typeof s.async!="symbol"&&!s.onLoad&&!s.onError&&s.src&&typeof s.src=="string")return!0}return!1}function Cb(r){return!(r.type==="stylesheet"&&(r.state.loading&3)===0)}function WO(r,s,l,f){if(l.type==="stylesheet"&&(typeof f.media!="string"||matchMedia(f.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var g=Ga(f.href),m=s.querySelector(vl(g));if(m){s=m._p,s!==null&&typeof s=="object"&&typeof s.then=="function"&&(r.count++,r=Vu.bind(r),s.then(r,r)),l.state.loading|=4,l.instance=m,Ht(m);return}m=s.ownerDocument||s,f=vb(f),(g=vn.get(g))&&Mp(f,g),m=m.createElement("link"),Ht(m);var y=m;y._p=new Promise(function(U,T){y.onload=U,y.onerror=T}),fA(m,"link",f),l.instance=m}r.stylesheets===null&&(r.stylesheets=new Map),r.stylesheets.set(l,s),(s=l.state.preload)&&(l.state.loading&3)===0&&(r.count++,l=Vu.bind(r),s.addEventListener("load",l),s.addEventListener("error",l))}}var Rp=0;function JO(r,s){return r.stylesheets&&r.count===0&&Gu(r,r.stylesheets),0Rp?50:800)+s);return r.unsuspend=l,function(){r.unsuspend=null,clearTimeout(f),clearTimeout(g)}}:null}function Vu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Gu(this,this.stylesheets);else if(this.unsuspend){var r=this.unsuspend;this.unsuspend=null,r()}}}var Pu=null;function Gu(r,s){r.stylesheets=null,r.unsuspend!==null&&(r.count++,Pu=new Map,s.forEach(qO,r),Pu=null,Vu.call(r))}function qO(r,s){if(!(s.state.loading&4)){var l=Pu.get(r);if(l)var f=l.get(null);else{l=new Map,Pu.set(r,l);for(var g=r.querySelectorAll("link[data-precedence],style[data-precedence]"),m=0;m"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Gp.exports=dH(),Gp.exports}var pH=gH();const mH=e0(pH);var Xb="popstate";function BH(e={}){function t(n,i){let{pathname:a,search:o,hash:c}=n.location;return Gm("",{pathname:a,search:o,hash:c},i.state&&i.state.usr||null,i.state&&i.state.key||"default")}function A(n,i){return typeof i=="string"?i:rc(i)}return wH(t,A,null,e)}function Qt(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function sn(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function vH(){return Math.random().toString(36).substring(2,10)}function Zb(e,t){return{usr:e.state,key:e.key,idx:t}}function Gm(e,t,A=null,n){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?Eo(t):t,state:A,key:t&&t.key||n||vH()}}function rc({pathname:e="/",search:t="",hash:A=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),A&&A!=="#"&&(e+=A.charAt(0)==="#"?A:"#"+A),e}function Eo(e){let t={};if(e){let A=e.indexOf("#");A>=0&&(t.hash=e.substring(A),e=e.substring(0,A));let n=e.indexOf("?");n>=0&&(t.search=e.substring(n),e=e.substring(0,n)),e&&(t.pathname=e)}return t}function wH(e,t,A,n={}){let{window:i=document.defaultView,v5Compat:a=!1}=n,o=i.history,c="POP",u=null,h=d();h==null&&(h=0,o.replaceState({...o.state,idx:h},""));function d(){return(o.state||{idx:null}).idx}function p(){c="POP";let x=d(),C=x==null?null:x-h;h=x,u&&u({action:c,location:b.location,delta:C})}function B(x,C){c="PUSH";let Q=Gm(b.location,x,C);h=d()+1;let E=Zb(Q,h),S=b.createHref(Q);try{o.pushState(E,"",S)}catch(O){if(O instanceof DOMException&&O.name==="DataCloneError")throw O;i.location.assign(S)}a&&u&&u({action:c,location:b.location,delta:1})}function v(x,C){c="REPLACE";let Q=Gm(b.location,x,C);h=d();let E=Zb(Q,h),S=b.createHref(Q);o.replaceState(E,"",S),a&&u&&u({action:c,location:b.location,delta:0})}function w(x){return yH(x)}let b={get action(){return c},get location(){return e(i,o)},listen(x){if(u)throw new Error("A history only accepts one active listener");return i.addEventListener(Xb,p),u=x,()=>{i.removeEventListener(Xb,p),u=null}},createHref(x){return t(i,x)},createURL:w,encodeLocation(x){let C=w(x);return{pathname:C.pathname,search:C.search,hash:C.hash}},push:B,replace:v,go(x){return o.go(x)}};return b}function yH(e,t=!1){let A="http://localhost";typeof window<"u"&&(A=window.location.origin!=="null"?window.location.origin:window.location.href),Qt(A,"No window.location.(origin|href) available to create URL");let n=typeof e=="string"?e:rc(e);return n=n.replace(/ $/,"%20"),!t&&n.startsWith("//")&&(n=A+n),new URL(n,A)}function PQ(e,t,A="/"){return bH(e,t,A,!1)}function bH(e,t,A,n){let i=typeof t=="string"?Eo(t):t,a=sr(i.pathname||"/",A);if(a==null)return null;let o=GQ(e);CH(o);let c=null;for(let u=0;c==null&&u{let d={relativePath:h===void 0?o.path||"":h,caseSensitive:o.caseSensitive===!0,childrenIndex:c,route:o};if(d.relativePath.startsWith("/")){if(!d.relativePath.startsWith(n)&&u)return;Qt(d.relativePath.startsWith(n),`Absolute route path "${d.relativePath}" nested under path "${n}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),d.relativePath=d.relativePath.slice(n.length)}let p=Ar([n,d.relativePath]),B=A.concat(d);o.children&&o.children.length>0&&(Qt(o.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${p}".`),GQ(o.children,t,B,p,u)),!(o.path==null&&!o.index)&&t.push({path:p,score:SH(p,o.index),routesMeta:B})};return e.forEach((o,c)=>{if(o.path===""||!o.path?.includes("?"))a(o,c);else for(let u of XQ(o.path))a(o,c,!0,u)}),t}function XQ(e){let t=e.split("/");if(t.length===0)return[];let[A,...n]=t,i=A.endsWith("?"),a=A.replace(/\?$/,"");if(n.length===0)return i?[a,""]:[a];let o=XQ(n.join("/")),c=[];return c.push(...o.map(u=>u===""?a:[a,u].join("/"))),i&&c.push(...o),c.map(u=>e.startsWith("/")&&u===""?"/":u)}function CH(e){e.sort((t,A)=>t.score!==A.score?A.score-t.score:OH(t.routesMeta.map(n=>n.childrenIndex),A.routesMeta.map(n=>n.childrenIndex)))}var _H=/^:[\w-]+$/,xH=3,QH=2,UH=1,EH=10,FH=-2,Yb=e=>e==="*";function SH(e,t){let A=e.split("/"),n=A.length;return A.some(Yb)&&(n+=FH),t&&(n+=QH),A.filter(i=>!Yb(i)).reduce((i,a)=>i+(_H.test(a)?xH:a===""?UH:EH),n)}function OH(e,t){return e.length===t.length&&e.slice(0,-1).every((n,i)=>n===t[i])?e[e.length-1]-t[t.length-1]:0}function HH(e,t,A=!1){let{routesMeta:n}=e,i={},a="/",o=[];for(let c=0;c{if(d==="*"){let w=c[B]||"";o=a.slice(0,a.length-w.length).replace(/(.)\/+$/,"$1")}const v=c[B];return p&&!v?h[d]=void 0:h[d]=(v||"").replace(/%2F/g,"/"),h},{}),pathname:a,pathnameBase:o,pattern:e}}function TH(e,t=!1,A=!0){sn(e==="*"||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let n=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,c,u)=>(n.push({paramName:c,isOptional:u!=null}),u?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(n.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):A?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),n]}function DH(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return sn(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function sr(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let A=t.endsWith("/")?t.length-1:t.length,n=e.charAt(A);return n&&n!=="/"?null:e.slice(A)||"/"}var MH=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,LH=e=>MH.test(e);function RH(e,t="/"){let{pathname:A,search:n="",hash:i=""}=typeof e=="string"?Eo(e):e,a;if(A)if(LH(A))a=A;else{if(A.includes("//")){let o=A;A=A.replace(/\/\/+/g,"/"),sn(!1,`Pathnames cannot have embedded double slashes - normalizing ${o} -> ${A}`)}A.startsWith("/")?a=$b(A.substring(1),"/"):a=$b(A,t)}else a=t;return{pathname:a,search:kH(n),hash:KH(i)}}function $b(e,t){let A=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?A.length>1&&A.pop():i!=="."&&A.push(i)}),A.length>1?A.join("/"):"/"}function $p(e,t,A,n){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(n)}]. Please separate it out to the \`to.${A}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function IH(e){return e.filter((t,A)=>A===0||t.route.path&&t.route.path.length>0)}function t0(e){let t=IH(e);return t.map((A,n)=>n===t.length-1?A.pathname:A.pathnameBase)}function A0(e,t,A,n=!1){let i;typeof e=="string"?i=Eo(e):(i={...e},Qt(!i.pathname||!i.pathname.includes("?"),$p("?","pathname","search",i)),Qt(!i.pathname||!i.pathname.includes("#"),$p("#","pathname","hash",i)),Qt(!i.search||!i.search.includes("#"),$p("#","search","hash",i)));let a=e===""||i.pathname==="",o=a?"/":i.pathname,c;if(o==null)c=A;else{let p=t.length-1;if(!n&&o.startsWith("..")){let B=o.split("/");for(;B[0]==="..";)B.shift(),p-=1;i.pathname=B.join("/")}c=p>=0?t[p]:"/"}let u=RH(i,c),h=o&&o!=="/"&&o.endsWith("/"),d=(a||o===".")&&A.endsWith("/");return!u.pathname.endsWith("/")&&(h||d)&&(u.pathname+="/"),u}var Ar=e=>e.join("/").replace(/\/\/+/g,"/"),NH=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),kH=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,KH=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function zH(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var ZQ=["POST","PUT","PATCH","DELETE"];new Set(ZQ);var jH=["GET",...ZQ];new Set(jH);var Fo=F.createContext(null);Fo.displayName="DataRouter";var Zh=F.createContext(null);Zh.displayName="DataRouterState";F.createContext(!1);var YQ=F.createContext({isTransitioning:!1});YQ.displayName="ViewTransition";var VH=F.createContext(new Map);VH.displayName="Fetchers";var PH=F.createContext(null);PH.displayName="Await";var Gn=F.createContext(null);Gn.displayName="Navigation";var Cc=F.createContext(null);Cc.displayName="Location";var vi=F.createContext({outlet:null,matches:[],isDataRoute:!1});vi.displayName="Route";var n0=F.createContext(null);n0.displayName="RouteError";function GH(e,{relative:t}={}){Qt(So(),"useHref() may be used only in the context of a component.");let{basename:A,navigator:n}=F.useContext(Gn),{hash:i,pathname:a,search:o}=_c(e,{relative:t}),c=a;return A!=="/"&&(c=a==="/"?A:Ar([A,a])),n.createHref({pathname:c,search:o,hash:i})}function So(){return F.useContext(Cc)!=null}function wi(){return Qt(So(),"useLocation() may be used only in the context of a component."),F.useContext(Cc).location}var $Q="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function WQ(e){F.useContext(Gn).static||F.useLayoutEffect(e)}function Yh(){let{isDataRoute:e}=F.useContext(vi);return e?rT():XH()}function XH(){Qt(So(),"useNavigate() may be used only in the context of a component.");let e=F.useContext(Fo),{basename:t,navigator:A}=F.useContext(Gn),{matches:n}=F.useContext(vi),{pathname:i}=wi(),a=JSON.stringify(t0(n)),o=F.useRef(!1);return WQ(()=>{o.current=!0}),F.useCallback((u,h={})=>{if(sn(o.current,$Q),!o.current)return;if(typeof u=="number"){A.go(u);return}let d=A0(u,JSON.parse(a),i,h.relative==="path");e==null&&t!=="/"&&(d.pathname=d.pathname==="/"?t:Ar([t,d.pathname])),(h.replace?A.replace:A.push)(d,h.state,h)},[t,A,a,i,e])}F.createContext(null);function _c(e,{relative:t}={}){let{matches:A}=F.useContext(vi),{pathname:n}=wi(),i=JSON.stringify(t0(A));return F.useMemo(()=>A0(e,JSON.parse(i),n,t==="path"),[e,i,n,t])}function ZH(e,t){return JQ(e,t)}function JQ(e,t,A,n,i){Qt(So(),"useRoutes() may be used only in the context of a component.");let{navigator:a}=F.useContext(Gn),{matches:o}=F.useContext(vi),c=o[o.length-1],u=c?c.params:{},h=c?c.pathname:"/",d=c?c.pathnameBase:"/",p=c&&c.route;{let Q=p&&p.path||"";qQ(h,!p||Q.endsWith("*")||Q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${h}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. + +Please change the parent to .`)}let B=wi(),v;if(t){let Q=typeof t=="string"?Eo(t):t;Qt(d==="/"||Q.pathname?.startsWith(d),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${d}" but pathname "${Q.pathname}" was given in the \`location\` prop.`),v=Q}else v=B;let w=v.pathname||"/",b=w;if(d!=="/"){let Q=d.replace(/^\//,"").split("/");b="/"+w.replace(/^\//,"").split("/").slice(Q.length).join("/")}let x=PQ(e,{pathname:b});sn(p||x!=null,`No routes matched location "${v.pathname}${v.search}${v.hash}" `),sn(x==null||x[x.length-1].route.element!==void 0||x[x.length-1].route.Component!==void 0||x[x.length-1].route.lazy!==void 0,`Matched leaf route at location "${v.pathname}${v.search}${v.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let C=qH(x&&x.map(Q=>Object.assign({},Q,{params:Object.assign({},u,Q.params),pathname:Ar([d,a.encodeLocation?a.encodeLocation(Q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Q.pathname]),pathnameBase:Q.pathnameBase==="/"?d:Ar([d,a.encodeLocation?a.encodeLocation(Q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Q.pathnameBase])})),o,A,n,i);return t&&C?F.createElement(Cc.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...v},navigationType:"POP"}},C):C}function YH(){let e=iT(),t=zH(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),A=e instanceof Error?e.stack:null,n="rgba(200,200,200, 0.5)",i={padding:"0.5rem",backgroundColor:n},a={padding:"2px 4px",backgroundColor:n},o=null;return console.error("Error handled by React Router default ErrorBoundary:",e),o=F.createElement(F.Fragment,null,F.createElement("p",null,"💿 Hey developer 👋"),F.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",F.createElement("code",{style:a},"ErrorBoundary")," or"," ",F.createElement("code",{style:a},"errorElement")," prop on your route.")),F.createElement(F.Fragment,null,F.createElement("h2",null,"Unexpected Application Error!"),F.createElement("h3",{style:{fontStyle:"italic"}},t),A?F.createElement("pre",{style:i},A):null,o)}var $H=F.createElement(YH,null),WH=class extends F.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){return this.state.error!==void 0?F.createElement(vi.Provider,{value:this.props.routeContext},F.createElement(n0.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function JH({routeContext:e,match:t,children:A}){let n=F.useContext(Fo);return n&&n.static&&n.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(n.staticContext._deepestRenderedBoundaryId=t.route.id),F.createElement(vi.Provider,{value:e},A)}function qH(e,t=[],A=null,n=null,i=null){if(e==null){if(!A)return null;if(A.errors)e=A.matches;else if(t.length===0&&!A.initialized&&A.matches.length>0)e=A.matches;else return null}let a=e,o=A?.errors;if(o!=null){let d=a.findIndex(p=>p.route.id&&o?.[p.route.id]!==void 0);Qt(d>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(",")}`),a=a.slice(0,Math.min(a.length,d+1))}let c=!1,u=-1;if(A)for(let d=0;d=0?a=a.slice(0,u+1):a=[a[0]];break}}}let h=A&&n?(d,p)=>{n(d,{location:A.location,params:A.matches?.[0]?.params??{},errorInfo:p})}:void 0;return a.reduceRight((d,p,B)=>{let v,w=!1,b=null,x=null;A&&(v=o&&p.route.id?o[p.route.id]:void 0,b=p.route.errorElement||$H,c&&(u<0&&B===0?(qQ("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),w=!0,x=null):u===B&&(w=!0,x=p.route.hydrateFallbackElement||null)));let C=t.concat(a.slice(0,B+1)),Q=()=>{let E;return v?E=b:w?E=x:p.route.Component?E=F.createElement(p.route.Component,null):p.route.element?E=p.route.element:E=d,F.createElement(JH,{match:p,routeContext:{outlet:d,matches:C,isDataRoute:A!=null},children:E})};return A&&(p.route.ErrorBoundary||p.route.errorElement||B===0)?F.createElement(WH,{location:A.location,revalidation:A.revalidation,component:b,error:v,children:Q(),routeContext:{outlet:null,matches:C,isDataRoute:!0},onError:h}):Q()},null)}function i0(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function eT(e){let t=F.useContext(Fo);return Qt(t,i0(e)),t}function tT(e){let t=F.useContext(Zh);return Qt(t,i0(e)),t}function AT(e){let t=F.useContext(vi);return Qt(t,i0(e)),t}function r0(e){let t=AT(e),A=t.matches[t.matches.length-1];return Qt(A.route.id,`${e} can only be used on routes that contain a unique "id"`),A.route.id}function nT(){return r0("useRouteId")}function iT(){let e=F.useContext(n0),t=tT("useRouteError"),A=r0("useRouteError");return e!==void 0?e:t.errors?.[A]}function rT(){let{router:e}=eT("useNavigate"),t=r0("useNavigate"),A=F.useRef(!1);return WQ(()=>{A.current=!0}),F.useCallback(async(i,a={})=>{sn(A.current,$Q),A.current&&(typeof i=="number"?e.navigate(i):await e.navigate(i,{fromRouteId:t,...a}))},[e,t])}var Wb={};function qQ(e,t,A){!t&&!Wb[e]&&(Wb[e]=!0,sn(!1,A))}F.memo(sT);function sT({routes:e,future:t,state:A,unstable_onError:n}){return JQ(e,void 0,A,n,t)}function aT({to:e,replace:t,state:A,relative:n}){Qt(So()," may be used only in the context of a component.");let{static:i}=F.useContext(Gn);sn(!i," must not be used on the initial render in a . This is a no-op, but you should modify your code so the is only ever rendered in response to some user interaction or state change.");let{matches:a}=F.useContext(vi),{pathname:o}=wi(),c=Yh(),u=A0(e,t0(a),o,n==="path"),h=JSON.stringify(u);return F.useEffect(()=>{c(JSON.parse(h),{replace:t,state:A,relative:n})},[c,h,n,t,A]),null}function $f(e){Qt(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function oT({basename:e="/",children:t=null,location:A,navigationType:n="POP",navigator:i,static:a=!1}){Qt(!So(),"You cannot render a inside another . You should never have more than one in your app.");let o=e.replace(/^\/*/,"/"),c=F.useMemo(()=>({basename:o,navigator:i,static:a,future:{}}),[o,i,a]);typeof A=="string"&&(A=Eo(A));let{pathname:u="/",search:h="",hash:d="",state:p=null,key:B="default"}=A,v=F.useMemo(()=>{let w=sr(u,o);return w==null?null:{location:{pathname:w,search:h,hash:d,state:p,key:B},navigationType:n}},[o,u,h,d,p,B,n]);return sn(v!=null,` is not able to match the URL "${u}${h}${d}" because it does not start with the basename, so the won't render anything.`),v==null?null:F.createElement(Gn.Provider,{value:c},F.createElement(Cc.Provider,{children:t,value:v}))}function lT({children:e,location:t}){return ZH(Xm(e),t)}function Xm(e,t=[]){let A=[];return F.Children.forEach(e,(n,i)=>{if(!F.isValidElement(n))return;let a=[...t,i];if(n.type===F.Fragment){A.push.apply(A,Xm(n.props.children,a));return}Qt(n.type===$f,`[${typeof n.type=="string"?n.type:n.type.name}] is not a component. All component children of must be a or `),Qt(!n.props.index||!n.props.children,"An index route cannot have child routes.");let o={id:n.props.id||a.join("-"),caseSensitive:n.props.caseSensitive,element:n.props.element,Component:n.props.Component,index:n.props.index,path:n.props.path,middleware:n.props.middleware,loader:n.props.loader,action:n.props.action,hydrateFallbackElement:n.props.hydrateFallbackElement,HydrateFallback:n.props.HydrateFallback,errorElement:n.props.errorElement,ErrorBoundary:n.props.ErrorBoundary,hasErrorBoundary:n.props.hasErrorBoundary===!0||n.props.ErrorBoundary!=null||n.props.errorElement!=null,shouldRevalidate:n.props.shouldRevalidate,handle:n.props.handle,lazy:n.props.lazy};n.props.children&&(o.children=Xm(n.props.children,a)),A.push(o)}),A}var Wf="get",Jf="application/x-www-form-urlencoded";function $h(e){return e!=null&&typeof e.tagName=="string"}function cT(e){return $h(e)&&e.tagName.toLowerCase()==="button"}function uT(e){return $h(e)&&e.tagName.toLowerCase()==="form"}function fT(e){return $h(e)&&e.tagName.toLowerCase()==="input"}function hT(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function dT(e,t){return e.button===0&&(!t||t==="_self")&&!hT(e)}function Zm(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,A)=>{let n=e[A];return t.concat(Array.isArray(n)?n.map(i=>[A,i]):[[A,n]])},[]))}function gT(e,t){let A=Zm(e);return t&&t.forEach((n,i)=>{A.has(i)||t.getAll(i).forEach(a=>{A.append(i,a)})}),A}var ef=null;function pT(){if(ef===null)try{new FormData(document.createElement("form"),0),ef=!1}catch{ef=!0}return ef}var mT=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Wp(e){return e!=null&&!mT.has(e)?(sn(!1,`"${e}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${Jf}"`),null):e}function BT(e,t){let A,n,i,a,o;if(uT(e)){let c=e.getAttribute("action");n=c?sr(c,t):null,A=e.getAttribute("method")||Wf,i=Wp(e.getAttribute("enctype"))||Jf,a=new FormData(e)}else if(cT(e)||fT(e)&&(e.type==="submit"||e.type==="image")){let c=e.form;if(c==null)throw new Error('Cannot submit a