diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 00eeaf3..004d4c1 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -2,6 +2,7 @@ + diff --git a/.idea/git_toolbox_prj.xml b/.idea/git_toolbox_prj.xml new file mode 100644 index 0000000..02b915b --- /dev/null +++ b/.idea/git_toolbox_prj.xml @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/TODO.md b/TODO.md index 59f8a88..151a330 100644 --- a/TODO.md +++ b/TODO.md @@ -68,7 +68,7 @@ - Настройки хоста: Выбор набора слов, длительность раунда, кол-во очков для победы. - Кнопка "Начать игру" (только для хоста). -- [ ] **3.3. Экран "Игра" (Game)** +- [x] **3.3. Экран "Игра" (Game)** - **Роль "Объясняющий":** - Карточка со словом по центру. - Жесты (Swipe) или кнопки: Вверх/Вправо - Угадал, Вниз/Влево - Пропустил. @@ -78,12 +78,12 @@ - Таймер. - Анимация при угадывании. -- [ ] **3.4. Экран "Результаты раунда"** +- [x] **3.4. Экран "Результаты раунда"** - Список слов, которые были сыграны в раунде (возможность оспорить/изменить статус, если успеем). - Текущий счет команд. - Кнопка "Следующий раунд". -- [ ] **3.5. Экран "Победа"** +- [x] **3.5. Экран "Победа"** - Поздравление победителей. - Кнопка "В лобби". diff --git a/frontend/index.html b/frontend/index.html index 072a57e..9ea996c 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -4,6 +4,9 @@ + frontend diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 679da0e..a0f3fd0 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -2,6 +2,9 @@ import React from 'react'; import { GameProvider, useGame } from './hooks/GameContext'; import StartScreen from './components/StartScreen'; import Lobby from './components/Lobby'; +import Game from './components/Game'; +import RoundResults from './components/RoundResults'; +import GameOver from './components/GameOver'; import { GameStates } from './types'; import WebApp from '@twa-dev/sdk'; @@ -32,9 +35,21 @@ const AppContent: React.FC = () => { return ; } + if (room.state === GameStates.PLAYING) { + return ; + } + + if (room.state === GameStates.ROUND_FINISHED) { + return ; + } + + if (room.state === GameStates.GAME_OVER) { + return ; + } + return (
- Game Started! (Coming soon) + State: {room.state} (Coming soon)
); }; diff --git a/frontend/src/components/Game.tsx b/frontend/src/components/Game.tsx new file mode 100644 index 0000000..3e11641 --- /dev/null +++ b/frontend/src/components/Game.tsx @@ -0,0 +1,136 @@ +import React, { useEffect, useState } from 'react'; +import { useGame } from '../hooks/GameContext'; +import { motion } from 'framer-motion'; + +const Game: React.FC = () => { + const { room, currentPlayer, sendGameAction } = useGame(); + const [timeLeft, setTimeLeft] = useState(0); + + if (!room || !currentPlayer) return null; + + const currentTeam = room.teams[room.currentTeamIndex]; + // Determine who is describing: + // The `nextDescriberIndex` points to the NEXT player to describe, or the CURRENT one if the round is active? + // In `finishRound` (backend), we increment it. So during the round, it points to the CURRENT describer. + const describerId = currentTeam.playerIds[currentTeam.nextDescriberIndex]; + const isMyTurn = currentPlayer.sessionId === describerId; + const isMyTeam = currentPlayer.teamId === currentTeam.id; + + useEffect(() => { + if (room.roundEndTime) { + const interval = setInterval(() => { + const remaining = Math.max(0, Math.ceil((room.roundEndTime! - Date.now()) / 1000)); + setTimeLeft(remaining); + + // If time is up, we could trigger something, but backend controls the flow usually. + // However, to be responsive, we can show "Time's up" or similar. + }, 500); + return () => clearInterval(interval); + } + }, [room.roundEndTime]); + + const handleAction = (action: 'GUESS' | 'SKIP') => { + sendGameAction(action); + // Add haptic feedback here if using Telegram SDK + }; + + return ( +
+ {/* Header Info */} +
+
+ Ход команды: + {currentTeam.name} +
+
+ Время: + + {timeLeft} + +
+
+ + {/* Game Area */} +
+ + {isMyTurn ? ( + // Explainer View +
+
+

Объясняй

+
+ + +

{room.currentWord}

+
+ +
+ + +
+

Свайпы скоро будут доступны

+
+ ) : isMyTeam ? ( + // Guesser (My Team) View +
+
+
+ 👂 +
+

Слушайте внимательно!

+

+ {room.players[describerId]?.name || 'Игрок'} объясняет слово. +

+
+
+

Текущий счет за раунд

+

???

+
+
+ ) : ( + // Spectator (Other Team) View +
+
+
+ 🤫 +
+

Тихо!

+

+ Сейчас играет команда противников. +

+
+
+ )} +
+ + {/* Footer Score */} +
+ {room.teams.map(t => ( +
+

{t.name}

+

{t.score}

+
+ ))} +
+
+ ); +}; + +export default Game; diff --git a/frontend/src/components/GameOver.tsx b/frontend/src/components/GameOver.tsx new file mode 100644 index 0000000..b4895cb --- /dev/null +++ b/frontend/src/components/GameOver.tsx @@ -0,0 +1,46 @@ +import React from 'react'; +import { useGame } from '../hooks/GameContext'; + +const GameOver: React.FC = () => { + const { room } = useGame(); + + if (!room) return null; + + // Find winner (team with max score) + const winner = [...room.teams].sort((a, b) => b.score - a.score)[0]; + + return ( +
+
+ 🏆 +

+ ПОБЕДА! +

+
+ +
+

{winner.name}

+

{winner.score}

+

очков

+
+ +
+ {room.teams.filter(t => t.id !== winner.id).map(t => ( +
+ {t.name} + {t.score} +
+ ))} +
+ + +
+ ); +}; + +export default GameOver; \ No newline at end of file diff --git a/frontend/src/components/Lobby.tsx b/frontend/src/components/Lobby.tsx index a246d1d..f0f3ab8 100644 --- a/frontend/src/components/Lobby.tsx +++ b/frontend/src/components/Lobby.tsx @@ -1,9 +1,10 @@ -import React from 'react'; +import React, { useState } from 'react'; import { useGame } from '../hooks/GameContext'; import type { Team } from '../types'; const Lobby: React.FC = () => { - const { room, currentPlayer, joinTeam } = useGame(); + const { room, currentPlayer, joinTeam, startGame } = useGame(); + const [difficulty, setDifficulty] = useState('EASY'); if (!room) return null; @@ -81,13 +82,20 @@ const Lobby: React.FC = () => {
Сложность - setDifficulty(e.target.value)} + className="bg-gray-900 border border-gray-700 rounded px-2 py-1 text-sm outline-none" + > + + +
-
diff --git a/frontend/src/components/RoundResults.tsx b/frontend/src/components/RoundResults.tsx new file mode 100644 index 0000000..4146fbf --- /dev/null +++ b/frontend/src/components/RoundResults.tsx @@ -0,0 +1,57 @@ +import React from 'react'; +import { useGame } from '../hooks/GameContext'; + +const RoundResults: React.FC = () => { + const { room, currentPlayer, startNextRound } = useGame(); + + if (!room) return null; + + // The currentTeamIndex has already been incremented in backend by finishRound. + // So "previous" team just finished. + const prevTeamIndex = (room.currentTeamIndex - 1 + room.teams.length) % room.teams.length; + const teamJustPlayed = room.teams[prevTeamIndex]; + + const nextTeam = room.teams[room.currentTeamIndex]; + const nextDescriberId = nextTeam.playerIds[nextTeam.nextDescriberIndex]; + const nextDescriber = room.players[nextDescriberId]; + + return ( +
+
+

Раунд завершен!

+

Ход переходит к следующей команде

+
+ +
+

Команда

+

{teamJustPlayed.name}

+ +
+ Всего очков: + {teamJustPlayed.score} +
+
+ +
+

Далее

+

{nextTeam.name}

+

+ Объясняет: {nextDescriber?.name || '???'} +

+
+ + {currentPlayer?.host ? ( + + ) : ( +

Ожидание хоста...

+ )} +
+ ); +}; + +export default RoundResults; \ No newline at end of file diff --git a/frontend/src/components/StartScreen.tsx b/frontend/src/components/StartScreen.tsx index 5640caa..18c6eb2 100644 --- a/frontend/src/components/StartScreen.tsx +++ b/frontend/src/components/StartScreen.tsx @@ -88,6 +88,25 @@ const StartScreen: React.FC = () => { + + ); }; diff --git a/frontend/src/hooks/GameContext.tsx b/frontend/src/hooks/GameContext.tsx index 97e20f1..f1bb5a3 100644 --- a/frontend/src/hooks/GameContext.tsx +++ b/frontend/src/hooks/GameContext.tsx @@ -1,3 +1,4 @@ +import SockJS from 'sockjs-client'; import React, { createContext, useContext, useEffect, useState, useCallback } from 'react'; import { Client } from '@stomp/stompjs'; import type { IMessage } from '@stomp/stompjs'; @@ -11,6 +12,9 @@ interface GameContextType { createRoom: (playerName: string, userId?: string) => void; joinRoom: (roomId: string, playerName: string, userId?: string) => void; joinTeam: (teamId: string) => void; + startGame: (difficulty: string) => void; + sendGameAction: (action: 'GUESS' | 'SKIP') => void; + startNextRound: () => void; } const GameContext = createContext(null); @@ -30,19 +34,24 @@ export const GameProvider: React.FC<{ children: React.ReactNode }> = ({ children const [currentPlayer, setCurrentPlayer] = useState(null); const [error, setError] = useState(null); - useEffect(() => { - // Determine WebSocket URL (ws:// or wss://) - const protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:'; - const brokerURL = `${protocol}//${window.location.host}/ws`; - - const stompClient = new Client({ - brokerURL: brokerURL, - reconnectDelay: 5000, - debug: (str) => { - console.log(str); - }, - onConnect: (frame) => { - console.log('Connected: ' + frame); + useEffect(() => { + // Determine WebSocket URL (http:// or https:// for SockJS) + const isDev = window.location.hostname === 'localhost' && window.location.port === '5173'; + const protocol = window.location.protocol === 'https:' ? 'https:' : 'http:'; + // SockJS endpoint is typically HTTP/HTTPS, not WS/WSS + const sockJsEndpoint = isDev + ? 'http://localhost:8080/ws' + : `${protocol}//${window.location.host}/ws`; + + console.log("Connecting to WebSocket (SockJS) at:", sockJsEndpoint); + + const stompClient = new Client({ + webSocketFactory: () => new SockJS(sockJsEndpoint), + reconnectDelay: 5000, + debug: (str) => { + console.log(str); + }, + onConnect: (frame) => { console.log('Connected: ' + frame); setConnected(true); // Subscribe to user-specific errors @@ -124,8 +133,35 @@ export const GameProvider: React.FC<{ children: React.ReactNode }> = ({ children } }, [client, connected, room]); + const startGame = useCallback((difficulty: string) => { + if (client && connected && room) { + client.publish({ + destination: '/app/start', + body: JSON.stringify({ roomId: room.roomId, difficulty }), + }); + } + }, [client, connected, room]); + + const sendGameAction = useCallback((action: 'GUESS' | 'SKIP') => { + if (client && connected && room) { + client.publish({ + destination: '/app/game-action', + body: JSON.stringify({ roomId: room.roomId, action }), + }); + } + }, [client, connected, room]); + + const startNextRound = useCallback(() => { + if (client && connected && room) { + client.publish({ + destination: '/app/next-round', + body: JSON.stringify({ roomId: room.roomId }), + }); + } + }, [client, connected, room]); + return ( - + {children} ); diff --git a/frontend/src/types/index.ts b/frontend/src/types/index.ts index e49c21c..029328c 100644 --- a/frontend/src/types/index.ts +++ b/frontend/src/types/index.ts @@ -21,6 +21,7 @@ export interface Team { name: string; score: number; playerIds: string[]; + nextDescriberIndex: number; } export interface Settings { @@ -36,6 +37,6 @@ export interface Room { players: Record; // Map sessionId -> Player settings: Settings; currentTeamIndex: number; - currentDescriberIndex: number; roundEndTime?: number; + currentWord?: string; } \ No newline at end of file diff --git a/pom.xml b/pom.xml index be62620..d265dc3 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,74 @@ org.springframework.boot spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + com.github.eirslett + frontend-maven-plugin + 1.15.0 + + frontend + target + + + + install node and npm + + install-node-and-npm + + + v20.11.0 + + + + npm install + + npm + + + install + + + + npm run build + + npm + + generate-resources + + run build + + + + + + maven-resources-plugin + + + copy-frontend-resources + process-resources + + copy-resources + + + ${project.build.outputDirectory}/static + + + frontend/dist + + + + + + diff --git a/src/main/java/com/example/telegaapp/config/CustomHandshakeHandler.java b/src/main/java/com/example/telegaapp/config/CustomHandshakeHandler.java new file mode 100644 index 0000000..4eefc2a --- /dev/null +++ b/src/main/java/com/example/telegaapp/config/CustomHandshakeHandler.java @@ -0,0 +1,18 @@ +package com.example.telegaapp.config; + +import org.springframework.http.server.ServerHttpRequest; +import org.springframework.web.socket.WebSocketHandler; +import org.springframework.web.socket.server.support.DefaultHandshakeHandler; + +import java.security.Principal; +import java.util.Map; +import java.util.UUID; + +public class CustomHandshakeHandler extends DefaultHandshakeHandler { + @Override + protected Principal determineUser(ServerHttpRequest request, WebSocketHandler wsHandler, Map attributes) { + String uuid = UUID.randomUUID().toString(); + System.out.println("CustomHandshakeHandler: Assigning Principal: " + uuid); + return new StompPrincipal(uuid); + } +} diff --git a/src/main/java/com/example/telegaapp/config/StompPrincipal.java b/src/main/java/com/example/telegaapp/config/StompPrincipal.java new file mode 100644 index 0000000..08e829a --- /dev/null +++ b/src/main/java/com/example/telegaapp/config/StompPrincipal.java @@ -0,0 +1,16 @@ +package com.example.telegaapp.config; + +import java.security.Principal; + +public class StompPrincipal implements Principal { + private final String name; + + public StompPrincipal(String name) { + this.name = name; + } + + @Override + public String getName() { + return name; + } +} diff --git a/src/main/java/com/example/telegaapp/config/WebSocketConfig.java b/src/main/java/com/example/telegaapp/config/WebSocketConfig.java index c08c8e4..670c67f 100644 --- a/src/main/java/com/example/telegaapp/config/WebSocketConfig.java +++ b/src/main/java/com/example/telegaapp/config/WebSocketConfig.java @@ -29,27 +29,8 @@ public class WebSocketConfig implements WebSocketMessageBrokerConfigurer { public void registerStompEndpoints(StompEndpointRegistry registry) { // Endpoint for connection registry.addEndpoint("/ws") - .setHandshakeHandler(new DefaultHandshakeHandler() { - @Override - protected Principal determineUser(ServerHttpRequest request, WebSocketHandler wsHandler, Map attributes) { - String uuid = UUID.randomUUID().toString(); - System.out.println("New WS connection. Assigning Principal: " + uuid); - return new StompPrincipal(uuid); - } - }) - .setAllowedOriginPatterns("*"); - } - - private static class StompPrincipal implements Principal { - private final String name; - - public StompPrincipal(String name) { - this.name = name; - } - - @Override - public String getName() { - return name; - } + .setAllowedOriginPatterns("*") // Allow all origins + .setHandshakeHandler(new CustomHandshakeHandler()) + .withSockJS(); // Enable SockJS } } diff --git a/src/main/java/com/example/telegaapp/controller/SocketController.java b/src/main/java/com/example/telegaapp/controller/SocketController.java index 09e453a..00af629 100644 --- a/src/main/java/com/example/telegaapp/controller/SocketController.java +++ b/src/main/java/com/example/telegaapp/controller/SocketController.java @@ -1,8 +1,6 @@ package com.example.telegaapp.controller; -import com.example.telegaapp.dto.CreateRequest; -import com.example.telegaapp.dto.JoinRequest; -import com.example.telegaapp.dto.TeamJoinRequest; +import com.example.telegaapp.dto.*; import com.example.telegaapp.model.Player; import com.example.telegaapp.model.Room; import com.example.telegaapp.service.GameService; @@ -22,6 +20,10 @@ public class SocketController { @MessageMapping("/create") public void createRoom(@Payload CreateRequest request, SimpMessageHeaderAccessor headerAccessor) { + if (headerAccessor.getUser() == null) { + System.err.println("Error: User is null in createRoom. SessionID: " + headerAccessor.getSessionId()); + return; + } String sessionId = headerAccessor.getUser().getName(); System.out.println("Received create request from session: " + sessionId + ", name: " + request.getPlayerName()); Player host = new Player(sessionId, request.getUserId(), request.getPlayerName(), null, true); @@ -37,6 +39,10 @@ public class SocketController { @MessageMapping("/join") public void joinRoom(@Payload JoinRequest request, SimpMessageHeaderAccessor headerAccessor) { + if (headerAccessor.getUser() == null) { + System.err.println("Error: User is null in joinRoom. SessionID: " + headerAccessor.getSessionId()); + return; + } String sessionId = headerAccessor.getUser().getName(); System.out.println("Received join request from session: " + sessionId + ", room: " + request.getRoomId()); Player player = new Player(sessionId, request.getUserId(), request.getPlayerName(), null, false); @@ -47,6 +53,9 @@ public class SocketController { // Send the player info back to the user messagingTemplate.convertAndSendToUser(sessionId, "/queue/player-info", player); + // Send the room info back to the user + messagingTemplate.convertAndSendToUser(sessionId, "/queue/created", room); + // Notify everyone in the room messagingTemplate.convertAndSend("/topic/room/" + room.getRoomId(), room); } else { @@ -57,6 +66,10 @@ public class SocketController { @MessageMapping("/team/join") public void joinTeam(@Payload TeamJoinRequest request, SimpMessageHeaderAccessor headerAccessor) { + if (headerAccessor.getUser() == null) { + System.err.println("Error: User is null in joinTeam."); + return; + } String sessionId = headerAccessor.getUser().getName(); gameService.joinTeam(request.getRoomId(), sessionId, request.getTeamId()); @@ -64,4 +77,42 @@ public class SocketController { messagingTemplate.convertAndSend("/topic/room/" + room.getRoomId(), room); }); } + + @MessageMapping("/start") + public void startGame(@Payload StartGameRequest request, SimpMessageHeaderAccessor headerAccessor) { + if (headerAccessor.getUser() == null) { + System.err.println("Error: User is null in startGame."); + return; + } + gameService.startGame(request.getRoomId(), request.getDifficulty()); + + gameService.getRoom(request.getRoomId()).ifPresent(room -> { + messagingTemplate.convertAndSend("/topic/room/" + room.getRoomId(), room); + }); + } + + @MessageMapping("/game-action") + public void gameAction(@Payload GameActionRequest request, SimpMessageHeaderAccessor headerAccessor) { + if (headerAccessor.getUser() == null) { + return; + } + gameService.handleGameAction(request); + + gameService.getRoom(request.getRoomId()).ifPresent(room -> { + messagingTemplate.convertAndSend("/topic/room/" + room.getRoomId(), room); + }); + } + + @MessageMapping("/next-round") + public void nextRound(@Payload StartGameRequest request, SimpMessageHeaderAccessor headerAccessor) { + // Reusing StartGameRequest as it contains roomId + if (headerAccessor.getUser() == null) { + return; + } + gameService.nextRound(request.getRoomId()); + + gameService.getRoom(request.getRoomId()).ifPresent(room -> { + messagingTemplate.convertAndSend("/topic/room/" + room.getRoomId(), room); + }); + } } diff --git a/src/main/java/com/example/telegaapp/dto/GameActionRequest.java b/src/main/java/com/example/telegaapp/dto/GameActionRequest.java new file mode 100644 index 0000000..304e3bf --- /dev/null +++ b/src/main/java/com/example/telegaapp/dto/GameActionRequest.java @@ -0,0 +1,9 @@ +package com.example.telegaapp.dto; + +import lombok.Data; + +@Data +public class GameActionRequest { + private String roomId; + private String action; // "GUESS" or "SKIP" +} diff --git a/src/main/java/com/example/telegaapp/dto/StartGameRequest.java b/src/main/java/com/example/telegaapp/dto/StartGameRequest.java new file mode 100644 index 0000000..d0a4992 --- /dev/null +++ b/src/main/java/com/example/telegaapp/dto/StartGameRequest.java @@ -0,0 +1,9 @@ +package com.example.telegaapp.dto; + +import lombok.Data; + +@Data +public class StartGameRequest { + private String roomId; + private String difficulty; +} diff --git a/src/main/java/com/example/telegaapp/model/Room.java b/src/main/java/com/example/telegaapp/model/Room.java index 3f1110f..77947c8 100644 --- a/src/main/java/com/example/telegaapp/model/Room.java +++ b/src/main/java/com/example/telegaapp/model/Room.java @@ -16,8 +16,8 @@ public class Room { // Game state specific private int currentTeamIndex; - private int currentDescriberIndex; // Index in the player list of the current team private long roundEndTime; // Timestamp when round ends + private String currentWord; public Room(String roomId) { this.roomId = roomId; @@ -31,7 +31,6 @@ public class Room { this.teams.add(new Team("Team B")); this.currentTeamIndex = 0; - this.currentDescriberIndex = 0; } @Data diff --git a/src/main/java/com/example/telegaapp/model/Team.java b/src/main/java/com/example/telegaapp/model/Team.java index ae7ac6d..b3f8abf 100644 --- a/src/main/java/com/example/telegaapp/model/Team.java +++ b/src/main/java/com/example/telegaapp/model/Team.java @@ -11,11 +11,13 @@ public class Team { private String name; private int score; private List playerIds; // List of sessionIds/userIds + private int nextDescriberIndex; public Team(String name) { this.id = UUID.randomUUID().toString(); this.name = name; this.score = 0; this.playerIds = new ArrayList<>(); + this.nextDescriberIndex = 0; } } diff --git a/src/main/java/com/example/telegaapp/service/GameService.java b/src/main/java/com/example/telegaapp/service/GameService.java index df13388..803cc1e 100644 --- a/src/main/java/com/example/telegaapp/service/GameService.java +++ b/src/main/java/com/example/telegaapp/service/GameService.java @@ -1,8 +1,10 @@ package com.example.telegaapp.service; +import com.example.telegaapp.dto.GameActionRequest; import com.example.telegaapp.model.Player; import com.example.telegaapp.model.Room; import com.example.telegaapp.model.Team; +import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import java.util.Map; @@ -11,10 +13,12 @@ import java.util.Random; import java.util.concurrent.ConcurrentHashMap; @Service +@RequiredArgsConstructor public class GameService { private final Map rooms = new ConcurrentHashMap<>(); private final Random random = new Random(); + private final WordService wordService; public Room createRoom(Player host) { String roomId = generateRoomId(); @@ -83,4 +87,84 @@ public class GameService { } } } + + public void startGame(String roomId, String difficulty) { + Room room = rooms.get(roomId); + if (room != null) { + // Validate teams (at least 2 teams with 1 player each, or 1 team with 2 players for testing? Let's stick to standard) + long teamsWithPlayers = room.getTeams().stream().filter(t -> !t.getPlayerIds().isEmpty()).count(); + if (teamsWithPlayers < 2) { + // For now, just log or ignore. In real app, throw exception or send error. + // But for "dev" mode let's allow it or assume players know what they are doing. + } + + room.setState(com.example.telegaapp.model.GameState.PLAYING); + room.getSettings().setDifficulty(difficulty); + + // Start Round + startRound(room); + } + } + + private void startRound(Room room) { + room.setRoundEndTime(System.currentTimeMillis() + room.getSettings().getRoundTimeSeconds() * 1000L); + room.setCurrentWord(wordService.getRandomWord(room.getSettings().getDifficulty())); + } + + public void handleGameAction(GameActionRequest request) { + Room room = rooms.get(request.getRoomId()); + if (room != null && room.getState() == com.example.telegaapp.model.GameState.PLAYING) { + // Check if round ended + if (System.currentTimeMillis() > room.getRoundEndTime()) { + finishRound(room); + return; + } + + if ("GUESS".equals(request.getAction())) { + Team currentTeam = room.getTeams().get(room.getCurrentTeamIndex()); + currentTeam.setScore(currentTeam.getScore() + 1); + } + + // Next word + room.setCurrentWord(wordService.getRandomWord(room.getSettings().getDifficulty())); + } + } + + public void checkRoundTimer(String roomId) { + Room room = rooms.get(roomId); + if (room != null && room.getState() == com.example.telegaapp.model.GameState.PLAYING) { + if (System.currentTimeMillis() > room.getRoundEndTime()) { + finishRound(room); + } + } + } + + private void finishRound(Room room) { + Team currentTeam = room.getTeams().get(room.getCurrentTeamIndex()); + + // Check for win condition + if (currentTeam.getScore() >= room.getSettings().getWordsToWin()) { + room.setState(com.example.telegaapp.model.GameState.GAME_OVER); + return; + } + + room.setState(com.example.telegaapp.model.GameState.ROUND_FINISHED); + + // Rotate Team + // Rotate describer for this team + int nextIdx = (currentTeam.getNextDescriberIndex() + 1) % Math.max(1, currentTeam.getPlayerIds().size()); + currentTeam.setNextDescriberIndex(nextIdx); + + // Move to next team + int nextTeamIdx = (room.getCurrentTeamIndex() + 1) % room.getTeams().size(); + room.setCurrentTeamIndex(nextTeamIdx); + } + + public void nextRound(String roomId) { + Room room = rooms.get(roomId); + if (room != null && room.getState() == com.example.telegaapp.model.GameState.ROUND_FINISHED) { + room.setState(com.example.telegaapp.model.GameState.PLAYING); + startRound(room); + } + } } diff --git a/src/main/resources/static/assets/index-C-Uqvy09.css b/src/main/resources/static/assets/index-C-Uqvy09.css new file mode 100644 index 0000000..fffa8ea --- /dev/null +++ b/src/main/resources/static/assets/index-C-Uqvy09.css @@ -0,0 +1 @@ +@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-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-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@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-500:oklch(63.7% .237 25.331);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-blue-400:oklch(70.7% .165 254.624);--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-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--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;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-medium:500;--font-weight-bold:700;--tracking-widest:.1em;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--blur-md:12px;--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%;-moz-tab-size:4;-o-tab-size:4;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}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.-mx-4{margin-inline:calc(var(--spacing)*-4)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.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-6{margin-bottom:calc(var(--spacing)*6)}.mb-auto{margin-bottom:auto}.ml-1{margin-left:calc(var(--spacing)*1)}.block{display:block}.flex{display:flex}.h-8{height:calc(var(--spacing)*8)}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-8{width:calc(var(--spacing)*8)}.w-full{width:100%}.max-w-sm{max-width:var(--container-sm)}.min-w-\[45\%\]{min-width:45%}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.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-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-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-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)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-gray-700{border-color:var(--color-gray-700)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-gray-600{background-color:var(--color-gray-600)}.bg-gray-700{background-color:var(--color-gray-700)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-800\/50{background-color:#1e293980}@supports (color:color-mix(in lab,red,red)){.bg-gray-800\/50{background-color:color-mix(in oklab,var(--color-gray-800)50%,transparent)}}.bg-gray-900{background-color:var(--color-gray-900)}.bg-gray-900\/50{background-color:#10182880}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/50{background-color:color-mix(in oklab,var(--color-gray-900)50%,transparent)}}.bg-gray-900\/60{background-color:#10182899}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/60{background-color:color-mix(in oklab,var(--color-gray-900)60%,transparent)}}.bg-green-600{background-color:var(--color-green-600)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-blue-400{--tw-gradient-from:var(--color-blue-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-blue-600{--tw-gradient-from:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-700{--tw-gradient-to:var(--color-blue-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-purple-500{--tw-gradient-to:var(--color-purple-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-purple-600{--tw-gradient-to:var(--color-purple-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.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)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-blue-500{color:var(--color-blue-500)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-red-500{color:var(--color-red-500)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-yellow-500{color:var(--color-yellow-500)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.placeholder-gray-600::-moz-placeholder{color:var(--color-gray-600)}.placeholder-gray-600::placeholder{color:var(--color-gray-600)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}@media(hover:hover){.hover\:bg-gray-600:hover{background-color:var(--color-gray-600)}.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.hover\:bg-green-500:hover{background-color:var(--color-green-500)}.hover\:from-blue-500:hover{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-blue-600:hover{--tw-gradient-to:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:text-white:hover{color:var(--color-white)}}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}}:root{color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#242424;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}body{place-items:center;min-width:320px;min-height:100vh;margin:0;display:flex}#root{text-align:center;width:100%;max-width:1280px;margin:0 auto;padding:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1} diff --git a/src/main/resources/static/assets/index-CtkN2yzV.js b/src/main/resources/static/assets/index-CtkN2yzV.js new file mode 100644 index 0000000..73c2898 --- /dev/null +++ b/src/main/resources/static/assets/index-CtkN2yzV.js @@ -0,0 +1,17 @@ +(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))o(s);new MutationObserver(s=>{for(const m of s)if(m.type==="childList")for(const b of m.addedNodes)b.tagName==="LINK"&&b.rel==="modulepreload"&&o(b)}).observe(document,{childList:!0,subtree:!0});function c(s){const m={};return s.integrity&&(m.integrity=s.integrity),s.referrerPolicy&&(m.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?m.credentials="include":s.crossOrigin==="anonymous"?m.credentials="omit":m.credentials="same-origin",m}function o(s){if(s.ep)return;s.ep=!0;const m=c(s);fetch(s.href,m)}})();var F=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function qm(h){return h&&h.__esModule&&Object.prototype.hasOwnProperty.call(h,"default")?h.default:h}var xc={exports:{}},Bi={};var dp;function Kb(){if(dp)return Bi;dp=1;var h=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function c(o,s,m){var b=null;if(m!==void 0&&(b=""+m),s.key!==void 0&&(b=""+s.key),"key"in s){m={};for(var E in s)E!=="key"&&(m[E]=s[E])}else m=s;return s=m.ref,{$$typeof:h,type:o,key:b,ref:s!==void 0?s:null,props:m}}return Bi.Fragment=r,Bi.jsx=c,Bi.jsxs=c,Bi}var hp;function Ib(){return hp||(hp=1,xc.exports=Kb()),xc.exports}var de=Ib(),Cc={exports:{}},Ae={};var pp;function Fb(){if(pp)return Ae;pp=1;var h=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),m=Symbol.for("react.consumer"),b=Symbol.for("react.context"),E=Symbol.for("react.forward_ref"),_=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),O=Symbol.for("react.lazy"),C=Symbol.for("react.activity"),G=Symbol.iterator;function le(A){return A===null||typeof A!="object"?null:(A=G&&A[G]||A["@@iterator"],typeof A=="function"?A:null)}var be={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},J=Object.assign,he={};function ge(A,W,Q){this.props=A,this.context=W,this.refs=he,this.updater=Q||be}ge.prototype.isReactComponent={},ge.prototype.setState=function(A,W){if(typeof A!="object"&&typeof A!="function"&&A!=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,A,W,"setState")},ge.prototype.forceUpdate=function(A){this.updater.enqueueForceUpdate(this,A,"forceUpdate")};function T(){}T.prototype=ge.prototype;function N(A,W,Q){this.props=A,this.context=W,this.refs=he,this.updater=Q||be}var w=N.prototype=new T;w.constructor=N,J(w,ge.prototype),w.isPureReactComponent=!0;var q=Array.isArray;function Z(){}var X={H:null,A:null,T:null,S:null},j=Object.prototype.hasOwnProperty;function V(A,W,Q){var ie=Q.ref;return{$$typeof:h,type:A,key:W,ref:ie!==void 0?ie:null,props:Q}}function ve(A,W){return V(A.type,W,A.props)}function Ee(A){return typeof A=="object"&&A!==null&&A.$$typeof===h}function qe(A){var W={"=":"=0",":":"=2"};return"$"+A.replace(/[=:]/g,function(Q){return W[Q]})}var K=/\/+/g;function lt(A,W){return typeof A=="object"&&A!==null&&A.key!=null?qe(""+A.key):W.toString(36)}function Ye(A){switch(A.status){case"fulfilled":return A.value;case"rejected":throw A.reason;default:switch(typeof A.status=="string"?A.then(Z,Z):(A.status="pending",A.then(function(W){A.status==="pending"&&(A.status="fulfilled",A.value=W)},function(W){A.status==="pending"&&(A.status="rejected",A.reason=W)})),A.status){case"fulfilled":return A.value;case"rejected":throw A.reason}}throw A}function D(A,W,Q,ie,_e){var xe=typeof A;(xe==="undefined"||xe==="boolean")&&(A=null);var De=!1;if(A===null)De=!0;else switch(xe){case"bigint":case"string":case"number":De=!0;break;case"object":switch(A.$$typeof){case h:case r:De=!0;break;case O:return De=A._init,D(De(A._payload),W,Q,ie,_e)}}if(De)return _e=_e(A),De=ie===""?"."+lt(A,0):ie,q(_e)?(Q="",De!=null&&(Q=De.replace(K,"$&/")+"/"),D(_e,W,Q,"",function(cn){return cn})):_e!=null&&(Ee(_e)&&(_e=ve(_e,Q+(_e.key==null||A&&A.key===_e.key?"":(""+_e.key).replace(K,"$&/")+"/")+De)),W.push(_e)),1;De=0;var $e=ie===""?".":ie+":";if(q(A))for(var tt=0;tt>>1,ee=D[ze];if(0>>1;zes(Q,pe))ies(_e,Q)?(D[ze]=_e,D[ie]=pe,ze=ie):(D[ze]=Q,D[W]=pe,ze=W);else if(ies(_e,pe))D[ze]=_e,D[ie]=pe,ze=ie;else break e}}return I}function s(D,I){var pe=D.sortIndex-I.sortIndex;return pe!==0?pe:D.id-I.id}if(h.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var m=performance;h.unstable_now=function(){return m.now()}}else{var b=Date,E=b.now();h.unstable_now=function(){return b.now()-E}}var _=[],v=[],O=1,C=null,G=3,le=!1,be=!1,J=!1,he=!1,ge=typeof setTimeout=="function"?setTimeout:null,T=typeof clearTimeout=="function"?clearTimeout:null,N=typeof setImmediate<"u"?setImmediate:null;function w(D){for(var I=c(v);I!==null;){if(I.callback===null)o(v);else if(I.startTime<=D)o(v),I.sortIndex=I.expirationTime,r(_,I);else break;I=c(v)}}function q(D){if(J=!1,w(D),!be)if(c(_)!==null)be=!0,Z||(Z=!0,qe());else{var I=c(v);I!==null&&Ye(q,I.startTime-D)}}var Z=!1,X=-1,j=5,V=-1;function ve(){return he?!0:!(h.unstable_now()-VD&&ve());){var ze=C.callback;if(typeof ze=="function"){C.callback=null,G=C.priorityLevel;var ee=ze(C.expirationTime<=D);if(D=h.unstable_now(),typeof ee=="function"){C.callback=ee,w(D),I=!0;break t}C===c(_)&&o(_),w(D)}else o(_);C=c(_)}if(C!==null)I=!0;else{var A=c(v);A!==null&&Ye(q,A.startTime-D),I=!1}}break e}finally{C=null,G=pe,le=!1}I=void 0}}finally{I?qe():Z=!1}}}var qe;if(typeof N=="function")qe=function(){N(Ee)};else if(typeof MessageChannel<"u"){var K=new MessageChannel,lt=K.port2;K.port1.onmessage=Ee,qe=function(){lt.postMessage(null)}}else qe=function(){ge(Ee,0)};function Ye(D,I){X=ge(function(){D(h.unstable_now())},I)}h.unstable_IdlePriority=5,h.unstable_ImmediatePriority=1,h.unstable_LowPriority=4,h.unstable_NormalPriority=3,h.unstable_Profiling=null,h.unstable_UserBlockingPriority=2,h.unstable_cancelCallback=function(D){D.callback=null},h.unstable_forceFrameRate=function(D){0>D||125ze?(D.sortIndex=pe,r(v,D),c(_)===null&&D===c(v)&&(J?(T(X),X=-1):J=!0,Ye(q,pe-ze))):(D.sortIndex=ee,r(_,D),be||le||(be=!0,Z||(Z=!0,qe()))),D},h.unstable_shouldYield=ve,h.unstable_wrapCallback=function(D){var I=G;return function(){var pe=G;G=I;try{return D.apply(this,arguments)}finally{G=pe}}}})(zc)),zc}var bp;function Pb(){return bp||(bp=1,Rc.exports=$b()),Rc.exports}var Mc={exports:{}},wt={};var gp;function eg(){if(gp)return wt;gp=1;var h=Ms();function r(_){var v="https://react.dev/errors/"+_;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(h)}catch(r){console.error(r)}}return h(),Mc.exports=eg(),Mc.exports}var _p;function ng(){if(_p)return ji;_p=1;var h=Pb(),r=Ms(),c=tg();function o(e){var t="https://react.dev/errors/"+e;if(1ee||(e.current=ze[ee],ze[ee]=null,ee--)}function Q(e,t){ee++,ze[ee]=e.current,e.current=t}var ie=A(null),_e=A(null),xe=A(null),De=A(null);function $e(e,t){switch(Q(xe,t),Q(_e,e),Q(ie,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Bh(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Bh(t),e=jh(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}W(ie),Q(ie,e)}function tt(){W(ie),W(_e),W(xe)}function cn(e){e.memoizedState!==null&&Q(De,e);var t=ie.current,n=jh(t,e.type);t!==n&&(Q(_e,e),Q(ie,n))}function bn(e){_e.current===e&&(W(ie),W(_e)),De.current===e&&(W(De),Mi._currentValue=pe)}var el,tl;function St(e){if(el===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);el=t&&t[1]||"",tl=-1)":-1l||g[a]!==z[l]){var L=` +`+g[a].replace(" at new "," at ");return e.displayName&&L.includes("")&&(L=L.replace("",e.displayName)),L}while(1<=a&&0<=l);break}}}finally{Xl=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?St(n):""}function gu(e,t){switch(e.tag){case 26:case 27:case 5:return St(e.type);case 16:return St("Lazy");case 13:return e.child!==t&&t!==null?St("Suspense Fallback"):St("Suspense");case 19:return St("SuspenseList");case 0:case 15:return Wt(e.type,!1);case 11:return Wt(e.type.render,!1);case 1:return Wt(e.type,!0);case 31:return St("Activity");default:return""}}function nl(e){try{var t="",n=null;do t+=gu(e,n),n=e,e=e.return;while(e);return t}catch(a){return` +Error generating stack: `+a.message+` +`+a.stack}}var kl=Object.prototype.hasOwnProperty,Ra=h.unstable_scheduleCallback,Wl=h.unstable_cancelCallback,yu=h.unstable_shouldYield,_u=h.unstable_requestPaint,Rt=h.unstable_now,za=h.unstable_getCurrentPriorityLevel,Wi=h.unstable_ImmediatePriority,Yi=h.unstable_UserBlockingPriority,Yt=h.unstable_NormalPriority,Su=h.unstable_LowPriority,Vi=h.unstable_IdlePriority,gn=h.log,Eu=h.unstable_setDisableYieldValue,Ma=null,bt=null;function yn(e){if(typeof gn=="function"&&Eu(e),bt&&typeof bt.setStrictMode=="function")try{bt.setStrictMode(Ma,e)}catch{}}var zt=Math.clz32?Math.clz32:Yl,Au=Math.log,Qi=Math.LN2;function Yl(e){return e>>>=0,e===0?32:31-(Au(e)/Qi|0)|0}var Jn=256,Na=262144,al=4194304;function _n(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Kn(e,t,n){var a=e.pendingLanes;if(a===0)return 0;var l=0,i=e.suspendedLanes,u=e.pingedLanes;e=e.warmLanes;var f=a&134217727;return f!==0?(a=f&~i,a!==0?l=_n(a):(u&=f,u!==0?l=_n(u):n||(n=f&~e,n!==0&&(l=_n(n))))):(f=a&~i,f!==0?l=_n(f):u!==0?l=_n(u):n||(n=a&~e,n!==0&&(l=_n(n)))),l===0?0:t!==0&&t!==l&&(t&i)===0&&(i=l&-l,n=t&-t,i>=n||i===32&&(n&4194048)!==0)?t:l}function sn(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ua(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zi(){var e=al;return al<<=1,(al&62914560)===0&&(al=4194304),e}function ll(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function wn(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function In(e,t,n,a,l,i){var u=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var f=e.entanglements,g=e.expirationTimes,z=e.hiddenUpdates;for(n=u&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Jl=/[\n"\\]/g;function d(e){return e.replace(Jl,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function p(e,t,n,a,l,i,u,f){e.name="",u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"?e.type=u:e.removeAttribute("type"),t!=null?u==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Bt(t)):e.value!==""+Bt(t)&&(e.value=""+Bt(t)):u!=="submit"&&u!=="reset"||e.removeAttribute("value"),t!=null?U(e,u,Bt(t)):n!=null?U(e,u,Bt(n)):a!=null&&e.removeAttribute("value"),l==null&&i!=null&&(e.defaultChecked=!!i),l!=null&&(e.checked=l&&typeof l!="function"&&typeof l!="symbol"),f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?e.name=""+Bt(f):e.removeAttribute("name")}function y(e,t,n,a,l,i,u,f){if(i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(e.type=i),t!=null||n!=null){if(!(i!=="submit"&&i!=="reset"||t!=null)){Mn(e);return}n=n!=null?""+Bt(n):"",t=t!=null?""+Bt(t):n,f||t===e.value||(e.value=t),e.defaultValue=t}a=a??l,a=typeof a!="function"&&typeof a!="symbol"&&!!a,e.checked=f?e.checked:!!a,e.defaultChecked=!!a,u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(e.name=u),Mn(e)}function U(e,t,n){t==="number"&&ol(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function H(e,t,n,a){if(e=e.options,t){t={};for(var l=0;l"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ba=!1;if(dn)try{var ja={};Object.defineProperty(ja,"passive",{get:function(){Ba=!0}}),window.addEventListener("test",ja,ja),window.removeEventListener("test",ja,ja)}catch{Ba=!1}var An=null,te=null,jt=null;function Nn(){if(jt)return jt;var e,t=te,n=t.length,a,l="value"in An?An.value:An.textContent,i=l.length;for(e=0;e=$l),Xs=" ",ks=!1;function Ws(e,t){switch(e){case"keyup":return bv.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ys(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var cl=!1;function yv(e,t){switch(e){case"compositionend":return Ys(t);case"keypress":return t.which!==32?null:(ks=!0,Xs);case"textInput":return e=t.data,e===Xs&&ks?null:e;default:return null}}function _v(e,t){if(cl)return e==="compositionend"||!Mu&&Ws(e,t)?(e=Nn(),jt=te=An=null,cl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=a}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=$s(n)}}function ef(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?ef(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function tf(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ol(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ol(e.document)}return t}function qu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var wv=dn&&"documentMode"in document&&11>=document.documentMode,sl=null,Bu=null,ni=null,ju=!1;function nf(e,t,n){var a=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ju||sl==null||sl!==ol(a)||(a=sl,"selectionStart"in a&&qu(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),ni&&ti(ni,a)||(ni=a,a=Zr(Bu,"onSelect"),0>=u,l-=u,Tn=1<<32-zt(t)+l|n<we?(je=fe,fe=null):je=fe.sibling;var Xe=M(x,fe,R[we],k);if(Xe===null){fe===null&&(fe=je);break}e&&fe&&Xe.alternate===null&&t(x,fe),S=i(Xe,S,we),Ge===null?me=Xe:Ge.sibling=Xe,Ge=Xe,fe=je}if(we===R.length)return n(x,fe),He&&qn(x,we),me;if(fe===null){for(;wewe?(je=fe,fe=null):je=fe.sibling;var Oa=M(x,fe,Xe.value,k);if(Oa===null){fe===null&&(fe=je);break}e&&fe&&Oa.alternate===null&&t(x,fe),S=i(Oa,S,we),Ge===null?me=Oa:Ge.sibling=Oa,Ge=Oa,fe=je}if(Xe.done)return n(x,fe),He&&qn(x,we),me;if(fe===null){for(;!Xe.done;we++,Xe=R.next())Xe=Y(x,Xe.value,k),Xe!==null&&(S=i(Xe,S,we),Ge===null?me=Xe:Ge.sibling=Xe,Ge=Xe);return He&&qn(x,we),me}for(fe=a(fe);!Xe.done;we++,Xe=R.next())Xe=B(fe,x,we,Xe.value,k),Xe!==null&&(e&&Xe.alternate!==null&&fe.delete(Xe.key===null?we:Xe.key),S=i(Xe,S,we),Ge===null?me=Xe:Ge.sibling=Xe,Ge=Xe);return e&&fe.forEach(function(Jb){return t(x,Jb)}),He&&qn(x,we),me}function Ie(x,S,R,k){if(typeof R=="object"&&R!==null&&R.type===J&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case le:e:{for(var me=R.key;S!==null;){if(S.key===me){if(me=R.type,me===J){if(S.tag===7){n(x,S.sibling),k=l(S,R.props.children),k.return=x,x=k;break e}}else if(S.elementType===me||typeof me=="object"&&me!==null&&me.$$typeof===j&&Za(me)===S.type){n(x,S.sibling),k=l(S,R.props),oi(k,R),k.return=x,x=k;break e}n(x,S);break}else t(x,S);S=S.sibling}R.type===J?(k=ka(R.props.children,x.mode,k,R.key),k.return=x,x=k):(k=sr(R.type,R.key,R.props,null,x.mode,k),oi(k,R),k.return=x,x=k)}return u(x);case be:e:{for(me=R.key;S!==null;){if(S.key===me)if(S.tag===4&&S.stateNode.containerInfo===R.containerInfo&&S.stateNode.implementation===R.implementation){n(x,S.sibling),k=l(S,R.children||[]),k.return=x,x=k;break e}else{n(x,S);break}else t(x,S);S=S.sibling}k=Wu(R,x.mode,k),k.return=x,x=k}return u(x);case j:return R=Za(R),Ie(x,S,R,k)}if(Ye(R))return ue(x,S,R,k);if(qe(R)){if(me=qe(R),typeof me!="function")throw Error(o(150));return R=me.call(R),ye(x,S,R,k)}if(typeof R.then=="function")return Ie(x,S,br(R),k);if(R.$$typeof===N)return Ie(x,S,hr(x,R),k);gr(x,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,S!==null&&S.tag===6?(n(x,S.sibling),k=l(S,R),k.return=x,x=k):(n(x,S),k=ku(R,x.mode,k),k.return=x,x=k),u(x)):n(x,S)}return function(x,S,R,k){try{ui=0;var me=Ie(x,S,R,k);return Sl=null,me}catch(fe){if(fe===_l||fe===mr)throw fe;var Ge=Qt(29,fe,null,x.mode);return Ge.lanes=k,Ge.return=x,Ge}finally{}}}var Ka=xf(!0),Cf=xf(!1),oa=!1;function to(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function no(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function ca(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function sa(e,t,n){var a=e.updateQueue;if(a===null)return null;if(a=a.shared,(ke&2)!==0){var l=a.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),a.pending=t,t=cr(e),sf(e,null,n),t}return or(e,a,t,n),cr(e)}function ci(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var a=t.lanes;a&=e.pendingLanes,n|=a,t.lanes=n,Ki(e,n)}}function ao(e,t){var n=e.updateQueue,a=e.alternate;if(a!==null&&(a=a.updateQueue,n===a)){var l=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var u={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};i===null?l=i=u:i=i.next=u,n=n.next}while(n!==null);i===null?l=i=t:i=i.next=t}else l=i=t;n={baseState:a.baseState,firstBaseUpdate:l,lastBaseUpdate:i,shared:a.shared,callbacks:a.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var lo=!1;function si(){if(lo){var e=yl;if(e!==null)throw e}}function fi(e,t,n,a){lo=!1;var l=e.updateQueue;oa=!1;var i=l.firstBaseUpdate,u=l.lastBaseUpdate,f=l.shared.pending;if(f!==null){l.shared.pending=null;var g=f,z=g.next;g.next=null,u===null?i=z:u.next=z,u=g;var L=e.alternate;L!==null&&(L=L.updateQueue,f=L.lastBaseUpdate,f!==u&&(f===null?L.firstBaseUpdate=z:f.next=z,L.lastBaseUpdate=g))}if(i!==null){var Y=l.baseState;u=0,L=z=g=null,f=i;do{var M=f.lane&-536870913,B=M!==f.lane;if(B?(Be&M)===M:(a&M)===M){M!==0&&M===gl&&(lo=!0),L!==null&&(L=L.next={lane:0,tag:f.tag,payload:f.payload,callback:null,next:null});e:{var ue=e,ye=f;M=t;var Ie=n;switch(ye.tag){case 1:if(ue=ye.payload,typeof ue=="function"){Y=ue.call(Ie,Y,M);break e}Y=ue;break e;case 3:ue.flags=ue.flags&-65537|128;case 0:if(ue=ye.payload,M=typeof ue=="function"?ue.call(Ie,Y,M):ue,M==null)break e;Y=C({},Y,M);break e;case 2:oa=!0}}M=f.callback,M!==null&&(e.flags|=64,B&&(e.flags|=8192),B=l.callbacks,B===null?l.callbacks=[M]:B.push(M))}else B={lane:M,tag:f.tag,payload:f.payload,callback:f.callback,next:null},L===null?(z=L=B,g=Y):L=L.next=B,u|=M;if(f=f.next,f===null){if(f=l.shared.pending,f===null)break;B=f,f=B.next,B.next=null,l.lastBaseUpdate=B,l.shared.pending=null}}while(!0);L===null&&(g=Y),l.baseState=g,l.firstBaseUpdate=z,l.lastBaseUpdate=L,i===null&&(l.shared.lanes=0),ma|=u,e.lanes=u,e.memoizedState=Y}}function wf(e,t){if(typeof e!="function")throw Error(o(191,e));e.call(t)}function Rf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ei?i:8;var u=D.T,f={};D.T=f,To(e,!1,t,n);try{var g=l(),z=D.S;if(z!==null&&z(f,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var L=Hv(g,a);pi(e,t,L,Ft(e))}else pi(e,t,a,Ft(e))}catch(Y){pi(e,t,{then:function(){},status:"rejected",reason:Y},Ft())}finally{I.p=i,u!==null&&f.types!==null&&(u.types=f.types),D.T=u}}function Wv(){}function Eo(e,t,n,a){if(e.tag!==5)throw Error(o(476));var l=ud(e).queue;rd(e,l,t,pe,n===null?Wv:function(){return od(e),n(a)})}function ud(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:pe,baseState:pe,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Dn,lastRenderedState:pe},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Dn,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function od(e){var t=ud(e);t.next===null&&(t=e.alternate.memoizedState),pi(e,t.next.queue,{},Ft())}function Ao(){return Tt(Mi)}function cd(){return st().memoizedState}function sd(){return st().memoizedState}function Yv(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=Ft();e=ca(n);var a=sa(t,e,n);a!==null&&(kt(a,t,n),ci(a,t,n)),t={cache:Fu()},e.payload=t;return}t=t.return}}function Vv(e,t,n){var a=Ft();n={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},wr(e)?dd(t,n):(n=Gu(e,t,n,a),n!==null&&(kt(n,e,a),hd(n,t,a)))}function fd(e,t,n){var a=Ft();pi(e,t,n,a)}function pi(e,t,n,a){var l={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(wr(e))dd(t,l);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var u=t.lastRenderedState,f=i(u,n);if(l.hasEagerState=!0,l.eagerState=f,Vt(f,u))return or(e,t,l,0),Fe===null&&ur(),!1}catch{}finally{}if(n=Gu(e,t,l,a),n!==null)return kt(n,e,a),hd(n,t,a),!0}return!1}function To(e,t,n,a){if(a={lane:2,revertLane:nc(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},wr(e)){if(t)throw Error(o(479))}else t=Gu(e,n,a,2),t!==null&&kt(t,e,2)}function wr(e){var t=e.alternate;return e===Oe||t!==null&&t===Oe}function dd(e,t){Al=Sr=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function hd(e,t,n){if((n&4194048)!==0){var a=t.lanes;a&=e.pendingLanes,n|=a,t.lanes=n,Ki(e,n)}}var mi={readContext:Tt,use:Tr,useCallback:ut,useContext:ut,useEffect:ut,useImperativeHandle:ut,useLayoutEffect:ut,useInsertionEffect:ut,useMemo:ut,useReducer:ut,useRef:ut,useState:ut,useDebugValue:ut,useDeferredValue:ut,useTransition:ut,useSyncExternalStore:ut,useId:ut,useHostTransitionStatus:ut,useFormState:ut,useActionState:ut,useOptimistic:ut,useMemoCache:ut,useCacheRefresh:ut};mi.useEffectEvent=ut;var pd={readContext:Tt,use:Tr,useCallback:function(e,t){return Nt().memoizedState=[e,t===void 0?null:t],e},useContext:Tt,useEffect:Ff,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,xr(4194308,4,td.bind(null,t,e),n)},useLayoutEffect:function(e,t){return xr(4194308,4,e,t)},useInsertionEffect:function(e,t){xr(4,2,e,t)},useMemo:function(e,t){var n=Nt();t=t===void 0?null:t;var a=e();if(Ia){yn(!0);try{e()}finally{yn(!1)}}return n.memoizedState=[a,t],a},useReducer:function(e,t,n){var a=Nt();if(n!==void 0){var l=n(t);if(Ia){yn(!0);try{n(t)}finally{yn(!1)}}}else l=t;return a.memoizedState=a.baseState=l,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:l},a.queue=e,e=e.dispatch=Vv.bind(null,Oe,e),[a.memoizedState,e]},useRef:function(e){var t=Nt();return e={current:e},t.memoizedState=e},useState:function(e){e=bo(e);var t=e.queue,n=fd.bind(null,Oe,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:_o,useDeferredValue:function(e,t){var n=Nt();return So(n,e,t)},useTransition:function(){var e=bo(!1);return e=rd.bind(null,Oe,e.queue,!0,!1),Nt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var a=Oe,l=Nt();if(He){if(n===void 0)throw Error(o(407));n=n()}else{if(n=t(),Fe===null)throw Error(o(349));(Be&127)!==0||Bf(a,t,n)}l.memoizedState=n;var i={value:n,getSnapshot:t};return l.queue=i,Ff(Hf.bind(null,a,i,e),[e]),a.flags|=2048,Ol(9,{destroy:void 0},jf.bind(null,a,i,n,t),null),n},useId:function(){var e=Nt(),t=Fe.identifierPrefix;if(He){var n=On,a=Tn;n=(a&~(1<<32-zt(a)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Er++,0<\/script>",i=i.removeChild(i.firstChild);break;case"select":i=typeof a.is=="string"?u.createElement("select",{is:a.is}):u.createElement("select"),a.multiple?i.multiple=!0:a.size&&(i.size=a.size);break;default:i=typeof a.is=="string"?u.createElement(l,{is:a.is}):u.createElement(l)}}i[ft]=t,i[Et]=a;e:for(u=t.child;u!==null;){if(u.tag===5||u.tag===6)i.appendChild(u.stateNode);else if(u.tag!==4&&u.tag!==27&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===t)break e;for(;u.sibling===null;){if(u.return===null||u.return===t)break e;u=u.return}u.sibling.return=u.return,u=u.sibling}t.stateNode=i;e:switch(xt(i,l,a),l){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}a&&Gn(t)}}return et(t),Do(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==a&&Gn(t);else{if(typeof a!="string"&&t.stateNode===null)throw Error(o(166));if(e=xe.current,vl(t)){if(e=t.stateNode,n=t.memoizedProps,a=null,l=At,l!==null)switch(l.tag){case 27:case 5:a=l.memoizedProps}e[ft]=t,e=!!(e.nodeValue===n||a!==null&&a.suppressHydrationWarning===!0||Uh(e.nodeValue,n)),e||ra(t,!0)}else e=Jr(e).createTextNode(a),e[ft]=t,t.stateNode=e}return et(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(a=vl(t),n!==null){if(e===null){if(!a)throw Error(o(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(557));e[ft]=t}else Wa(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;et(t),e=!1}else n=Zu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Jt(t),t):(Jt(t),null);if((t.flags&128)!==0)throw Error(o(558))}return et(t),null;case 13:if(a=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(l=vl(t),a!==null&&a.dehydrated!==null){if(e===null){if(!l)throw Error(o(318));if(l=t.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(o(317));l[ft]=t}else Wa(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;et(t),l=!1}else l=Zu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=l),l=!0;if(!l)return t.flags&256?(Jt(t),t):(Jt(t),null)}return Jt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=a!==null,e=e!==null&&e.memoizedState!==null,n&&(a=t.child,l=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(l=a.alternate.memoizedState.cachePool.pool),i=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(i=a.memoizedState.cachePool.pool),i!==l&&(a.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Ur(t,t.updateQueue),et(t),null);case 4:return tt(),e===null&&rc(t.stateNode.containerInfo),et(t),null;case 10:return jn(t.type),et(t),null;case 19:if(W(ct),a=t.memoizedState,a===null)return et(t),null;if(l=(t.flags&128)!==0,i=a.rendering,i===null)if(l)bi(a,!1);else{if(ot!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(i=_r(e),i!==null){for(t.flags|=128,bi(a,!1),e=i.updateQueue,t.updateQueue=e,Ur(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)ff(n,e),n=n.sibling;return Q(ct,ct.current&1|2),He&&qn(t,a.treeForkCount),t.child}e=e.sibling}a.tail!==null&&Rt()>Dr&&(t.flags|=128,l=!0,bi(a,!1),t.lanes=4194304)}else{if(!l)if(e=_r(i),e!==null){if(t.flags|=128,l=!0,e=e.updateQueue,t.updateQueue=e,Ur(t,e),bi(a,!0),a.tail===null&&a.tailMode==="hidden"&&!i.alternate&&!He)return et(t),null}else 2*Rt()-a.renderingStartTime>Dr&&n!==536870912&&(t.flags|=128,l=!0,bi(a,!1),t.lanes=4194304);a.isBackwards?(i.sibling=t.child,t.child=i):(e=a.last,e!==null?e.sibling=i:t.child=i,a.last=i)}return a.tail!==null?(e=a.tail,a.rendering=e,a.tail=e.sibling,a.renderingStartTime=Rt(),e.sibling=null,n=ct.current,Q(ct,l?n&1|2:n&1),He&&qn(t,a.treeForkCount),e):(et(t),null);case 22:case 23:return Jt(t),ro(),a=t.memoizedState!==null,e!==null?e.memoizedState!==null!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?(n&536870912)!==0&&(t.flags&128)===0&&(et(t),t.subtreeFlags&6&&(t.flags|=8192)):et(t),n=t.updateQueue,n!==null&&Ur(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),a=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),a!==n&&(t.flags|=2048),e!==null&&W(Qa),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),jn(ht),et(t),null;case 25:return null;case 30:return null}throw Error(o(156,t.tag))}function Iv(e,t){switch(Vu(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return jn(ht),tt(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return bn(t),null;case 31:if(t.memoizedState!==null){if(Jt(t),t.alternate===null)throw Error(o(340));Wa()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Jt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(o(340));Wa()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return W(ct),null;case 4:return tt(),null;case 10:return jn(t.type),null;case 22:case 23:return Jt(t),ro(),e!==null&&W(Qa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return jn(ht),null;case 25:return null;default:return null}}function Dd(e,t){switch(Vu(t),t.tag){case 3:jn(ht),tt();break;case 26:case 27:case 5:bn(t);break;case 4:tt();break;case 31:t.memoizedState!==null&&Jt(t);break;case 13:Jt(t);break;case 19:W(ct);break;case 10:jn(t.type);break;case 22:case 23:Jt(t),ro(),e!==null&&W(Qa);break;case 24:jn(ht)}}function gi(e,t){try{var n=t.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var l=a.next;n=l;do{if((n.tag&e)===e){a=void 0;var i=n.create,u=n.inst;a=i(),u.destroy=a}n=n.next}while(n!==l)}}catch(f){Qe(t,t.return,f)}}function ha(e,t,n){try{var a=t.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var i=l.next;a=i;do{if((a.tag&e)===e){var u=a.inst,f=u.destroy;if(f!==void 0){u.destroy=void 0,l=t;var g=n,z=f;try{z()}catch(L){Qe(l,g,L)}}}a=a.next}while(a!==i)}}catch(L){Qe(t,t.return,L)}}function Ld(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Rf(t,n)}catch(a){Qe(e,e.return,a)}}}function Gd(e,t,n){n.props=Fa(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(a){Qe(e,t,a)}}function yi(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var a=e.stateNode;break;case 30:a=e.stateNode;break;default:a=e.stateNode}typeof n=="function"?e.refCleanup=n(a):n.current=a}}catch(l){Qe(e,t,l)}}function xn(e,t){var n=e.ref,a=e.refCleanup;if(n!==null)if(typeof a=="function")try{a()}catch(l){Qe(e,t,l)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(l){Qe(e,t,l)}else n.current=null}function Xd(e){var t=e.type,n=e.memoizedProps,a=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&a.focus();break e;case"img":n.src?a.src=n.src:n.srcSet&&(a.srcset=n.srcSet)}}catch(l){Qe(e,e.return,l)}}function Lo(e,t,n){try{var a=e.stateNode;gb(a,e.type,n,t),a[Et]=t}catch(l){Qe(e,e.return,l)}}function kd(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&_a(e.type)||e.tag===4}function Go(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||kd(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&_a(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Xo(e,t,n){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=se));else if(a!==4&&(a===27&&_a(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Xo(e,t,n),e=e.sibling;e!==null;)Xo(e,t,n),e=e.sibling}function qr(e,t,n){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(a!==4&&(a===27&&_a(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(qr(e,t,n),e=e.sibling;e!==null;)qr(e,t,n),e=e.sibling}function Wd(e){var t=e.stateNode,n=e.memoizedProps;try{for(var a=e.type,l=t.attributes;l.length;)t.removeAttributeNode(l[0]);xt(t,a,n),t[ft]=e,t[Et]=n}catch(i){Qe(e,e.return,i)}}var Xn=!1,vt=!1,ko=!1,Yd=typeof WeakSet=="function"?WeakSet:Set,_t=null;function Fv(e,t){if(e=e.containerInfo,cc=tu,e=tf(e),qu(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var a=n.getSelection&&n.getSelection();if(a&&a.rangeCount!==0){n=a.anchorNode;var l=a.anchorOffset,i=a.focusNode;a=a.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var u=0,f=-1,g=-1,z=0,L=0,Y=e,M=null;t:for(;;){for(var B;Y!==n||l!==0&&Y.nodeType!==3||(f=u+l),Y!==i||a!==0&&Y.nodeType!==3||(g=u+a),Y.nodeType===3&&(u+=Y.nodeValue.length),(B=Y.firstChild)!==null;)M=Y,Y=B;for(;;){if(Y===e)break t;if(M===n&&++z===l&&(f=u),M===i&&++L===a&&(g=u),(B=Y.nextSibling)!==null)break;Y=M,M=Y.parentNode}Y=B}n=f===-1||g===-1?null:{start:f,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(sc={focusedElem:e,selectionRange:n},tu=!1,_t=t;_t!==null;)if(t=_t,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,_t=e;else for(;_t!==null;){switch(t=_t,i=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),xt(i,a,n),i[ft]=e,dt(i),a=i;break e;case"link":var u=Ih("link","href",l).get(a+(n.href||""));if(u){for(var f=0;fIe&&(u=Ie,Ie=ye,ye=u);var x=Ps(f,ye),S=Ps(f,Ie);if(x&&S&&(B.rangeCount!==1||B.anchorNode!==x.node||B.anchorOffset!==x.offset||B.focusNode!==S.node||B.focusOffset!==S.offset)){var R=Y.createRange();R.setStart(x.node,x.offset),B.removeAllRanges(),ye>Ie?(B.addRange(R),B.extend(S.node,S.offset)):(R.setEnd(S.node,S.offset),B.addRange(R))}}}}for(Y=[],B=f;B=B.parentNode;)B.nodeType===1&&Y.push({element:B,left:B.scrollLeft,top:B.scrollTop});for(typeof f.focus=="function"&&f.focus(),f=0;fn?32:n,D.T=null,n=Ko,Ko=null;var i=ba,u=Qn;if(gt=0,zl=ba=null,Qn=0,(ke&6)!==0)throw Error(o(331));var f=ke;if(ke|=4,th(i.current),$d(i,i.current,u,n),ke=f,Oi(0,!1),bt&&typeof bt.onPostCommitFiberRoot=="function")try{bt.onPostCommitFiberRoot(Ma,i)}catch{}return!0}finally{I.p=l,D.T=a,yh(e,t)}}function Sh(e,t,n){t=en(n,t),t=wo(e.stateNode,t,2),e=sa(e,t,2),e!==null&&(wn(e,2),Cn(e))}function Qe(e,t,n){if(e.tag===3)Sh(e,e,n);else for(;t!==null;){if(t.tag===3){Sh(t,e,n);break}else if(t.tag===1){var a=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(va===null||!va.has(a))){e=en(n,e),n=Ed(2),a=sa(t,n,2),a!==null&&(Ad(n,a,t,e),wn(a,2),Cn(a));break}}t=t.return}}function Po(e,t,n){var a=e.pingCache;if(a===null){a=e.pingCache=new eb;var l=new Set;a.set(t,l)}else l=a.get(t),l===void 0&&(l=new Set,a.set(t,l));l.has(n)||(Vo=!0,l.add(n),e=ib.bind(null,e,t,n),t.then(e,e))}function ib(e,t,n){var a=e.pingCache;a!==null&&a.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Fe===e&&(Be&n)===n&&(ot===4||ot===3&&(Be&62914560)===Be&&300>Rt()-Hr?(ke&2)===0&&Ml(e,0):Qo|=n,Rl===Be&&(Rl=0)),Cn(e)}function Eh(e,t){t===0&&(t=Zi()),e=Xa(e,t),e!==null&&(wn(e,t),Cn(e))}function rb(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Eh(e,n)}function ub(e,t){var n=0;switch(e.tag){case 31:case 13:var a=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:a=e.stateNode;break;case 22:a=e.stateNode._retryCache;break;default:throw Error(o(314))}a!==null&&a.delete(t),Eh(e,n)}function ob(e,t){return Ra(e,t)}var Yr=null,Ul=null,ec=!1,Vr=!1,tc=!1,ya=0;function Cn(e){e!==Ul&&e.next===null&&(Ul===null?Yr=Ul=e:Ul=Ul.next=e),Vr=!0,ec||(ec=!0,sb())}function Oi(e,t){if(!tc&&Vr){tc=!0;do for(var n=!1,a=Yr;a!==null;){if(e!==0){var l=a.pendingLanes;if(l===0)var i=0;else{var u=a.suspendedLanes,f=a.pingedLanes;i=(1<<31-zt(42|e)+1)-1,i&=l&~(u&~f),i=i&201326741?i&201326741|1:i?i|2:0}i!==0&&(n=!0,xh(a,i))}else i=Be,i=Kn(a,a===Fe?i:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(i&3)===0||sn(a,i)||(n=!0,xh(a,i));a=a.next}while(n);tc=!1}}function cb(){Ah()}function Ah(){Vr=ec=!1;var e=0;ya!==0&&_b()&&(e=ya);for(var t=Rt(),n=null,a=Yr;a!==null;){var l=a.next,i=Th(a,t);i===0?(a.next=null,n===null?Yr=l:n.next=l,l===null&&(Ul=n)):(n=a,(e!==0||(i&3)!==0)&&(Vr=!0)),a=l}gt!==0&>!==5||Oi(e),ya!==0&&(ya=0)}function Th(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,l=e.expirationTimes,i=e.pendingLanes&-62914561;0f)break;var L=g.transferSize,Y=g.initiatorType;L&&qh(Y)&&(g=g.responseEnd,u+=L*(g"u"?null:document;function Qh(e,t,n){var a=ql;if(a&&typeof t=="string"&&t){var l=d(t);l='link[rel="'+e+'"][href="'+l+'"]',typeof n=="string"&&(l+='[crossorigin="'+n+'"]'),Vh.has(l)||(Vh.add(l),e={rel:e,crossOrigin:n,href:t},a.querySelector(l)===null&&(t=a.createElement("link"),xt(t,"link",e),dt(t),a.head.appendChild(t)))}}function Rb(e){Zn.D(e),Qh("dns-prefetch",e,null)}function zb(e,t){Zn.C(e,t),Qh("preconnect",e,t)}function Mb(e,t,n){Zn.L(e,t,n);var a=ql;if(a&&e&&t){var l='link[rel="preload"][as="'+d(t)+'"]';t==="image"&&n&&n.imageSrcSet?(l+='[imagesrcset="'+d(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(l+='[imagesizes="'+d(n.imageSizes)+'"]')):l+='[href="'+d(e)+'"]';var i=l;switch(t){case"style":i=Bl(e);break;case"script":i=jl(e)}un.has(i)||(e=C({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),un.set(i,e),a.querySelector(l)!==null||t==="style"&&a.querySelector(Ri(i))||t==="script"&&a.querySelector(zi(i))||(t=a.createElement("link"),xt(t,"link",e),dt(t),a.head.appendChild(t)))}}function Nb(e,t){Zn.m(e,t);var n=ql;if(n&&e){var a=t&&typeof t.as=="string"?t.as:"script",l='link[rel="modulepreload"][as="'+d(a)+'"][href="'+d(e)+'"]',i=l;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":i=jl(e)}if(!un.has(i)&&(e=C({rel:"modulepreload",href:e},t),un.set(i,e),n.querySelector(l)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(zi(i)))return}a=n.createElement("link"),xt(a,"link",e),dt(a),n.head.appendChild(a)}}}function Ub(e,t,n){Zn.S(e,t,n);var a=ql;if(a&&e){var l=ea(a).hoistableStyles,i=Bl(e);t=t||"default";var u=l.get(i);if(!u){var f={loading:0,preload:null};if(u=a.querySelector(Ri(i)))f.loading=5;else{e=C({rel:"stylesheet",href:e,"data-precedence":t},n),(n=un.get(i))&&bc(e,n);var g=u=a.createElement("link");dt(g),xt(g,"link",e),g._p=new Promise(function(z,L){g.onload=z,g.onerror=L}),g.addEventListener("load",function(){f.loading|=1}),g.addEventListener("error",function(){f.loading|=2}),f.loading|=4,Ir(u,t,a)}u={type:"stylesheet",instance:u,count:1,state:f},l.set(i,u)}}}function qb(e,t){Zn.X(e,t);var n=ql;if(n&&e){var a=ea(n).hoistableScripts,l=jl(e),i=a.get(l);i||(i=n.querySelector(zi(l)),i||(e=C({src:e,async:!0},t),(t=un.get(l))&&gc(e,t),i=n.createElement("script"),dt(i),xt(i,"link",e),n.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},a.set(l,i))}}function Bb(e,t){Zn.M(e,t);var n=ql;if(n&&e){var a=ea(n).hoistableScripts,l=jl(e),i=a.get(l);i||(i=n.querySelector(zi(l)),i||(e=C({src:e,async:!0,type:"module"},t),(t=un.get(l))&&gc(e,t),i=n.createElement("script"),dt(i),xt(i,"link",e),n.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},a.set(l,i))}}function Zh(e,t,n,a){var l=(l=xe.current)?Kr(l):null;if(!l)throw Error(o(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Bl(n.href),n=ea(l).hoistableStyles,a=n.get(t),a||(a={type:"style",instance:null,count:0,state:null},n.set(t,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Bl(n.href);var i=ea(l).hoistableStyles,u=i.get(e);if(u||(l=l.ownerDocument||l,u={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},i.set(e,u),(i=l.querySelector(Ri(e)))&&!i._p&&(u.instance=i,u.state.loading=5),un.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},un.set(e,n),i||jb(l,e,n,u.state))),t&&a===null)throw Error(o(528,""));return u}if(t&&a!==null)throw Error(o(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=jl(n),n=ea(l).hoistableScripts,a=n.get(t),a||(a={type:"script",instance:null,count:0,state:null},n.set(t,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,e))}}function Bl(e){return'href="'+d(e)+'"'}function Ri(e){return'link[rel="stylesheet"]['+e+"]"}function Jh(e){return C({},e,{"data-precedence":e.precedence,precedence:null})}function jb(e,t,n,a){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?a.loading=1:(t=e.createElement("link"),a.preload=t,t.addEventListener("load",function(){return a.loading|=1}),t.addEventListener("error",function(){return a.loading|=2}),xt(t,"link",n),dt(t),e.head.appendChild(t))}function jl(e){return'[src="'+d(e)+'"]'}function zi(e){return"script[async]"+e}function Kh(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var a=e.querySelector('style[data-href~="'+d(n.href)+'"]');if(a)return t.instance=a,dt(a),a;var l=C({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return a=(e.ownerDocument||e).createElement("style"),dt(a),xt(a,"style",l),Ir(a,n.precedence,e),t.instance=a;case"stylesheet":l=Bl(n.href);var i=e.querySelector(Ri(l));if(i)return t.state.loading|=4,t.instance=i,dt(i),i;a=Jh(n),(l=un.get(l))&&bc(a,l),i=(e.ownerDocument||e).createElement("link"),dt(i);var u=i;return u._p=new Promise(function(f,g){u.onload=f,u.onerror=g}),xt(i,"link",a),t.state.loading|=4,Ir(i,n.precedence,e),t.instance=i;case"script":return i=jl(n.src),(l=e.querySelector(zi(i)))?(t.instance=l,dt(l),l):(a=n,(l=un.get(i))&&(a=C({},n),gc(a,l)),e=e.ownerDocument||e,l=e.createElement("script"),dt(l),xt(l,"link",a),e.head.appendChild(l),t.instance=l);case"void":return null;default:throw Error(o(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(a=t.instance,t.state.loading|=4,Ir(a,n.precedence,e));return t.instance}function Ir(e,t,n){for(var a=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),l=a.length?a[a.length-1]:null,i=l,u=0;u title"):null)}function Hb(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function $h(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function Db(e,t,n,a){if(n.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var l=Bl(a.href),i=t.querySelector(Ri(l));if(i){t=i._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=$r.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=i,dt(i);return}i=t.ownerDocument||t,a=Jh(a),(l=un.get(l))&&bc(a,l),i=i.createElement("link"),dt(i);var u=i;u._p=new Promise(function(f,g){u.onload=f,u.onerror=g}),xt(i,"link",a),n.instance=i}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=$r.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var yc=0;function Lb(e,t){return e.stylesheets&&e.count===0&&eu(e,e.stylesheets),0yc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(a),clearTimeout(l)}}:null}function $r(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)eu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Pr=null;function eu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Pr=new Map,t.forEach(Gb,e),Pr=null,$r.call(e))}function Gb(e,t){if(!(t.state.loading&4)){var n=Pr.get(e);if(n)var a=n.get(null);else{n=new Map,Pr.set(e,n);for(var l=e.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(h)}catch(r){console.error(r)}}return h(),wc.exports=ng(),wc.exports}var lg=ag(),Nc={exports:{}},ou={},Ep;function ig(){return Ep||(Ep=1,F.crypto&&F.crypto.getRandomValues?ou.randomBytes=function(h){var r=new Uint8Array(h);return F.crypto.getRandomValues(r),r}:ou.randomBytes=function(h){for(var r=new Array(h),c=0;c=2&&(V=V.slice(2)):G(q)?V=w[4]:q?Z&&(V=V.slice(2)):j>=2&&G(N.protocol)&&(V=w[4]),{protocol:q,slashes:Z||G(q),slashesCount:j,rest:V}}function be(T,N){if(T==="")return N;for(var w=(N||"/").split("/").slice(0,-1).concat(T.split("/")),q=w.length,Z=w[q-1],X=!1,j=0;q--;)w[q]==="."?w.splice(q,1):w[q]===".."?(w.splice(q,1),j++):j&&(q===0&&(X=!0),w.splice(q,1),j--);return X&&w.unshift(""),(Z==="."||Z==="..")&&w.push(""),w.join("/")}function J(T,N,w){if(T=_(T),T=T.replace(o,""),!(this instanceof J))return new J(T,N,w);var q,Z,X,j,V,ve,Ee=v.slice(),qe=typeof N,K=this,lt=0;for(qe!=="object"&&qe!=="string"&&(w=N,N=null),w&&typeof w!="function"&&(w=r.parse),N=C(N),Z=le(T||"",N),q=!Z.protocol&&!Z.slashes,K.slashes=Z.slashes||q&&N.slashes,K.protocol=Z.protocol||N.protocol||"",T=Z.rest,(Z.protocol==="file:"&&(Z.slashesCount!==2||E.test(T))||!Z.slashes&&(Z.protocol||Z.slashesCount<2||!G(K.protocol)))&&(Ee[3]=[/(.*)/,"pathname"]);lt1?this._listeners[r]=o.slice(0,s).concat(o.slice(s+1)):delete this._listeners[r];return}}},h.prototype.dispatchEvent=function(){var r=arguments[0],c=r.type,o=arguments.length===1?[r]:Array.apply(null,arguments);if(this["on"+c]&&this["on"+c].apply(this,o),c in this._listeners)for(var s=this._listeners[c],m=0;m0){var m="["+this.sendBuffer.join(",")+"]";this.sendStop=this.sender(this.url,m,function(b){s.sendStop=null,b?(s.emit("close",b.code||1006,"Sending error: "+b),s.close()):s.sendScheduleWait()}),this.sendBuffer=[]}},o.prototype._cleanup=function(){this.removeAllListeners()},o.prototype.close=function(){this._cleanup(),this.sendStop&&(this.sendStop(),this.sendStop=null)},Gc=o,Gc}var Xc,Bp;function fg(){if(Bp)return Xc;Bp=1;var h=We(),r=qt().EventEmitter,c=function(){};function o(s,m,b){r.call(this),this.Receiver=s,this.receiveUrl=m,this.AjaxObject=b,this._scheduleReceiver()}return h(o,r),o.prototype._scheduleReceiver=function(){var s=this,m=this.poll=new this.Receiver(this.receiveUrl,this.AjaxObject);m.on("message",function(b){s.emit("message",b)}),m.once("close",function(b,E){c("close",b,E,s.pollIsClosing),s.poll=m=null,s.pollIsClosing||(E==="network"?s._scheduleReceiver():(s.emit("close",b||1006,E),s.removeAllListeners()))})},o.prototype.abort=function(){this.removeAllListeners(),this.pollIsClosing=!0,this.poll&&this.poll.abort()},Xc=o,Xc}var kc,jp;function Hm(){if(jp)return kc;jp=1;var h=We(),r=on(),c=sg(),o=fg();function s(m,b,E,_,v){var O=r.addPath(m,b),C=this;c.call(this,m,E),this.poll=new o(_,O,v),this.poll.on("message",function(G){C.emit("message",G)}),this.poll.once("close",function(G,le){C.poll=null,C.emit("close",G,le),C.close()})}return h(s,c),s.prototype.close=function(){c.prototype.close.call(this),this.removeAllListeners(),this.poll&&(this.poll.abort(),this.poll=null)},kc=s,kc}var Wc,Hp;function Gl(){if(Hp)return Wc;Hp=1;var h=We(),r=on(),c=Hm();function o(m){return function(b,E,_){var v={};typeof E=="string"&&(v.headers={"Content-type":"text/plain"});var O=r.addPath(b,"/xhr_send"),C=new m("POST",O,E,v);return C.once("finish",function(G){if(C=null,G!==200&&G!==204)return _(new Error("http status "+G));_()}),function(){C.close(),C=null;var G=new Error("Aborted");G.code=1e3,_(G)}}}function s(m,b,E,_){c.call(this,m,b,o(_),E,_)}return h(s,c),Wc=s,Wc}var Yc,Dp;function vu(){if(Dp)return Yc;Dp=1;var h=We(),r=qt().EventEmitter;function c(o,s){r.call(this);var m=this;this.bufferPosition=0,this.xo=new s("POST",o,null),this.xo.on("chunk",this._chunkHandler.bind(this)),this.xo.once("finish",function(b,E){m._chunkHandler(b,E),m.xo=null;var _=b===200?"network":"permanent";m.emit("close",null,_),m._cleanup()})}return h(c,r),c.prototype._chunkHandler=function(o,s){if(!(o!==200||!s))for(var m=-1;;this.bufferPosition+=m+1){var b=s.slice(this.bufferPosition);if(m=b.indexOf(` +`),m===-1)break;var E=b.slice(0,m);E&&this.emit("message",E)}},c.prototype._cleanup=function(){this.removeAllListeners()},c.prototype.abort=function(){this.xo&&(this.xo.close(),this.emit("close",null,"user"),this.xo=null),this._cleanup()},Yc=c,Yc}var Vc,Lp;function Dm(){if(Lp)return Vc;Lp=1;var h=qt().EventEmitter,r=We(),c=wa(),o=on(),s=F.XMLHttpRequest,m=function(){};function b(v,O,C,G){var le=this;h.call(this),setTimeout(function(){le._start(v,O,C,G)},0)}r(b,h),b.prototype._start=function(v,O,C,G){var le=this;try{this.xhr=new s}catch{}if(!this.xhr){this.emit("finish",0,"no xhr support"),this._cleanup();return}O=o.addQuery(O,"t="+ +new Date),this.unloadRef=c.unloadAdd(function(){le._cleanup(!0)});try{this.xhr.open(v,O,!0),this.timeout&&"timeout"in this.xhr&&(this.xhr.timeout=this.timeout,this.xhr.ontimeout=function(){m("xhr timeout"),le.emit("finish",0,""),le._cleanup(!1)})}catch{this.emit("finish",0,""),this._cleanup(!1);return}if((!G||!G.noCredentials)&&b.supportsCORS&&(this.xhr.withCredentials=!0),G&&G.headers)for(var be in G.headers)this.xhr.setRequestHeader(be,G.headers[be]);this.xhr.onreadystatechange=function(){if(le.xhr){var J=le.xhr,he,ge;switch(m("readyState",J.readyState),J.readyState){case 3:try{ge=J.status,he=J.responseText}catch{}ge===1223&&(ge=204),ge===200&&he&&he.length>0&&le.emit("chunk",ge,he);break;case 4:ge=J.status,ge===1223&&(ge=204),(ge===12005||ge===12029)&&(ge=0),m("finish",ge,J.responseText),le.emit("finish",ge,J.responseText),le._cleanup(!1);break}}};try{le.xhr.send(C)}catch{le.emit("finish",0,""),le._cleanup(!1)}},b.prototype._cleanup=function(v){if(this.xhr){if(this.removeAllListeners(),c.unloadDel(this.unloadRef),this.xhr.onreadystatechange=function(){},this.xhr.ontimeout&&(this.xhr.ontimeout=null),v)try{this.xhr.abort()}catch{}this.unloadRef=this.xhr=null}},b.prototype.close=function(){this._cleanup(!0)},b.enabled=!!s;var E=["Active"].concat("Object").join("X");!b.enabled&&E in F&&(s=function(){try{return new F[E]("Microsoft.XMLHTTP")}catch{return null}},b.enabled=!!new s);var _=!1;try{_="withCredentials"in new s}catch{}return b.supportsCORS=_,Vc=b,Vc}var Qc,Gp;function bu(){if(Gp)return Qc;Gp=1;var h=We(),r=Dm();function c(o,s,m,b){r.call(this,o,s,m,b)}return h(c,r),c.enabled=r.enabled&&r.supportsCORS,Qc=c,Qc}var Zc,Xp;function Gi(){if(Xp)return Zc;Xp=1;var h=We(),r=Dm();function c(o,s,m){r.call(this,o,s,m,{noCredentials:!0})}return h(c,r),c.enabled=r.enabled,Zc=c,Zc}var Jc,kp;function Xi(){return kp||(kp=1,Jc={isOpera:function(){return F.navigator&&/opera/i.test(F.navigator.userAgent)},isKonqueror:function(){return F.navigator&&/konqueror/i.test(F.navigator.userAgent)},hasDomain:function(){if(!F.document)return!0;try{return!!F.document.domain}catch{return!1}}}),Jc}var Kc,Wp;function dg(){if(Wp)return Kc;Wp=1;var h=We(),r=Gl(),c=vu(),o=bu(),s=Gi(),m=Xi();function b(E){if(!s.enabled&&!o.enabled)throw new Error("Transport created when disabled");r.call(this,E,"/xhr_streaming",c,o)}return h(b,r),b.enabled=function(E){return E.nullOrigin||m.isOpera()?!1:o.enabled},b.transportName="xhr-streaming",b.roundTrips=2,b.needBody=!!F.document,Kc=b,Kc}var Ic,Yp;function Ns(){if(Yp)return Ic;Yp=1;var h=qt().EventEmitter,r=We(),c=wa(),o=Xi(),s=on(),m=function(){};function b(E,_,v){var O=this;h.call(this),setTimeout(function(){O._start(E,_,v)},0)}return r(b,h),b.prototype._start=function(E,_,v){var O=this,C=new F.XDomainRequest;_=s.addQuery(_,"t="+ +new Date),C.onerror=function(){O._error()},C.ontimeout=function(){O._error()},C.onprogress=function(){m("progress",C.responseText),O.emit("chunk",200,C.responseText)},C.onload=function(){O.emit("finish",200,C.responseText),O._cleanup(!1)},this.xdr=C,this.unloadRef=c.unloadAdd(function(){O._cleanup(!0)});try{this.xdr.open(E,_),this.timeout&&(this.xdr.timeout=this.timeout),this.xdr.send(v)}catch{this._error()}},b.prototype._error=function(){this.emit("finish",0,""),this._cleanup(!1)},b.prototype._cleanup=function(E){if(this.xdr){if(this.removeAllListeners(),c.unloadDel(this.unloadRef),this.xdr.ontimeout=this.xdr.onerror=this.xdr.onprogress=this.xdr.onload=null,E)try{this.xdr.abort()}catch{}this.unloadRef=this.xdr=null}},b.prototype.close=function(){this._cleanup(!0)},b.enabled=!!(F.XDomainRequest&&o.hasDomain()),Ic=b,Ic}var Fc,Vp;function Lm(){if(Vp)return Fc;Vp=1;var h=We(),r=Gl(),c=vu(),o=Ns();function s(m){if(!o.enabled)throw new Error("Transport created when disabled");r.call(this,m,"/xhr_streaming",c,o)}return h(s,r),s.enabled=function(m){return m.cookie_needed||m.nullOrigin?!1:o.enabled&&m.sameScheme},s.transportName="xdr-streaming",s.roundTrips=2,Fc=s,Fc}var $c,Qp;function Gm(){return Qp||(Qp=1,$c=F.EventSource),$c}var Pc,Zp;function hg(){if(Zp)return Pc;Zp=1;var h=We(),r=qt().EventEmitter,c=Gm(),o=function(){};function s(m){r.call(this);var b=this,E=this.es=new c(m);E.onmessage=function(_){o("message",_.data),b.emit("message",decodeURI(_.data))},E.onerror=function(_){o("error",E.readyState);var v=E.readyState!==2?"network":"permanent";b._cleanup(),b._close(v)}}return h(s,r),s.prototype.abort=function(){this._cleanup(),this._close("user")},s.prototype._cleanup=function(){var m=this.es;m&&(m.onmessage=m.onerror=null,m.close(),this.es=null)},s.prototype._close=function(m){var b=this;setTimeout(function(){b.emit("close",null,m),b.removeAllListeners()},200)},Pc=s,Pc}var es,Jp;function Kp(){if(Jp)return es;Jp=1;var h=We(),r=Gl(),c=hg(),o=bu(),s=Gm();function m(b){if(!m.enabled())throw new Error("Transport created when disabled");r.call(this,b,"/eventsource",c,o)}return h(m,r),m.enabled=function(){return!!s},m.transportName="eventsource",m.roundTrips=2,es=m,es}var ts,Ip;function Xm(){return Ip||(Ip=1,ts="1.6.1"),ts}var ns={exports:{}},Fp;function ki(){return Fp||(Fp=1,(function(h){var r=wa(),c=Xi();h.exports={WPrefix:"_jp",currentWindowId:null,polluteGlobalNamespace:function(){h.exports.WPrefix in F||(F[h.exports.WPrefix]={})},postMessage:function(o,s){F.parent!==F&&F.parent.postMessage(JSON.stringify({windowId:h.exports.currentWindowId,type:o,data:s||""}),"*")},createIframe:function(o,s){var m=F.document.createElement("iframe"),b,E,_=function(){clearTimeout(b);try{m.onload=null}catch{}m.onerror=null},v=function(){m&&(_(),setTimeout(function(){m&&m.parentNode.removeChild(m),m=null},0),r.unloadDel(E))},O=function(G){m&&(v(),s(G))},C=function(G,le){setTimeout(function(){try{m&&m.contentWindow&&m.contentWindow.postMessage(G,le)}catch{}},0)};return m.src=o,m.style.display="none",m.style.position="absolute",m.onerror=function(){O("onerror")},m.onload=function(){clearTimeout(b),b=setTimeout(function(){O("onload timeout")},2e3)},F.document.body.appendChild(m),b=setTimeout(function(){O("timeout")},15e3),E=r.unloadAdd(v),{post:C,cleanup:v,loaded:_}},createHtmlfile:function(o,s){var m=["Active"].concat("Object").join("X"),b=new F[m]("htmlfile"),E,_,v,O=function(){clearTimeout(E),v.onerror=null},C=function(){b&&(O(),r.unloadDel(_),v.parentNode.removeChild(v),v=b=null,CollectGarbage())},G=function(J){b&&(C(),s(J))},le=function(J,he){try{setTimeout(function(){v&&v.contentWindow&&v.contentWindow.postMessage(J,he)},0)}catch{}};b.open(),b.write(' frontend - - + +
diff --git a/target/classes/com/example/telegaapp/config/CustomHandshakeHandler.class b/target/classes/com/example/telegaapp/config/CustomHandshakeHandler.class new file mode 100644 index 0000000..abe6e55 Binary files /dev/null and b/target/classes/com/example/telegaapp/config/CustomHandshakeHandler.class differ diff --git a/target/classes/com/example/telegaapp/config/StompPrincipal.class b/target/classes/com/example/telegaapp/config/StompPrincipal.class new file mode 100644 index 0000000..302b297 Binary files /dev/null and b/target/classes/com/example/telegaapp/config/StompPrincipal.class differ diff --git a/target/classes/com/example/telegaapp/config/WebSocketConfig$1.class b/target/classes/com/example/telegaapp/config/WebSocketConfig$1.class deleted file mode 100644 index 45f5854..0000000 Binary files a/target/classes/com/example/telegaapp/config/WebSocketConfig$1.class and /dev/null differ diff --git a/target/classes/com/example/telegaapp/config/WebSocketConfig$StompPrincipal.class b/target/classes/com/example/telegaapp/config/WebSocketConfig$StompPrincipal.class deleted file mode 100644 index e3425d6..0000000 Binary files a/target/classes/com/example/telegaapp/config/WebSocketConfig$StompPrincipal.class and /dev/null differ diff --git a/target/classes/com/example/telegaapp/config/WebSocketConfig.class b/target/classes/com/example/telegaapp/config/WebSocketConfig.class index c0a8305..cac9687 100644 Binary files a/target/classes/com/example/telegaapp/config/WebSocketConfig.class and b/target/classes/com/example/telegaapp/config/WebSocketConfig.class differ diff --git a/target/classes/com/example/telegaapp/controller/SocketController.class b/target/classes/com/example/telegaapp/controller/SocketController.class index d16a7f8..f0e0e41 100644 Binary files a/target/classes/com/example/telegaapp/controller/SocketController.class and b/target/classes/com/example/telegaapp/controller/SocketController.class differ diff --git a/target/classes/com/example/telegaapp/dto/GameActionRequest.class b/target/classes/com/example/telegaapp/dto/GameActionRequest.class new file mode 100644 index 0000000..a8c7179 Binary files /dev/null and b/target/classes/com/example/telegaapp/dto/GameActionRequest.class differ diff --git a/target/classes/com/example/telegaapp/dto/StartGameRequest.class b/target/classes/com/example/telegaapp/dto/StartGameRequest.class new file mode 100644 index 0000000..a373415 Binary files /dev/null and b/target/classes/com/example/telegaapp/dto/StartGameRequest.class differ diff --git a/target/classes/com/example/telegaapp/model/Room$Settings.class b/target/classes/com/example/telegaapp/model/Room$Settings.class index 36b5027..a58b281 100644 Binary files a/target/classes/com/example/telegaapp/model/Room$Settings.class and b/target/classes/com/example/telegaapp/model/Room$Settings.class differ diff --git a/target/classes/com/example/telegaapp/model/Room.class b/target/classes/com/example/telegaapp/model/Room.class index 77be20d..8b8ba8b 100644 Binary files a/target/classes/com/example/telegaapp/model/Room.class and b/target/classes/com/example/telegaapp/model/Room.class differ diff --git a/target/classes/com/example/telegaapp/model/Team.class b/target/classes/com/example/telegaapp/model/Team.class index 4818d90..8065c37 100644 Binary files a/target/classes/com/example/telegaapp/model/Team.class and b/target/classes/com/example/telegaapp/model/Team.class differ diff --git a/target/classes/com/example/telegaapp/service/GameService.class b/target/classes/com/example/telegaapp/service/GameService.class index 8bd51a3..210bdc9 100644 Binary files a/target/classes/com/example/telegaapp/service/GameService.class and b/target/classes/com/example/telegaapp/service/GameService.class differ diff --git a/target/classes/static/assets/index-C-Uqvy09.css b/target/classes/static/assets/index-C-Uqvy09.css new file mode 100644 index 0000000..fffa8ea --- /dev/null +++ b/target/classes/static/assets/index-C-Uqvy09.css @@ -0,0 +1 @@ +@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-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-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@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-500:oklch(63.7% .237 25.331);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-blue-400:oklch(70.7% .165 254.624);--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-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--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;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-medium:500;--font-weight-bold:700;--tracking-widest:.1em;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--blur-md:12px;--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%;-moz-tab-size:4;-o-tab-size:4;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}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.-mx-4{margin-inline:calc(var(--spacing)*-4)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.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-6{margin-bottom:calc(var(--spacing)*6)}.mb-auto{margin-bottom:auto}.ml-1{margin-left:calc(var(--spacing)*1)}.block{display:block}.flex{display:flex}.h-8{height:calc(var(--spacing)*8)}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-8{width:calc(var(--spacing)*8)}.w-full{width:100%}.max-w-sm{max-width:var(--container-sm)}.min-w-\[45\%\]{min-width:45%}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.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-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-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-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)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-gray-700{border-color:var(--color-gray-700)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-gray-600{background-color:var(--color-gray-600)}.bg-gray-700{background-color:var(--color-gray-700)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-800\/50{background-color:#1e293980}@supports (color:color-mix(in lab,red,red)){.bg-gray-800\/50{background-color:color-mix(in oklab,var(--color-gray-800)50%,transparent)}}.bg-gray-900{background-color:var(--color-gray-900)}.bg-gray-900\/50{background-color:#10182880}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/50{background-color:color-mix(in oklab,var(--color-gray-900)50%,transparent)}}.bg-gray-900\/60{background-color:#10182899}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/60{background-color:color-mix(in oklab,var(--color-gray-900)60%,transparent)}}.bg-green-600{background-color:var(--color-green-600)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-blue-400{--tw-gradient-from:var(--color-blue-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-blue-600{--tw-gradient-from:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-700{--tw-gradient-to:var(--color-blue-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-purple-500{--tw-gradient-to:var(--color-purple-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-purple-600{--tw-gradient-to:var(--color-purple-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.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)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-blue-500{color:var(--color-blue-500)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-red-500{color:var(--color-red-500)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-yellow-500{color:var(--color-yellow-500)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.placeholder-gray-600::-moz-placeholder{color:var(--color-gray-600)}.placeholder-gray-600::placeholder{color:var(--color-gray-600)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}@media(hover:hover){.hover\:bg-gray-600:hover{background-color:var(--color-gray-600)}.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.hover\:bg-green-500:hover{background-color:var(--color-green-500)}.hover\:from-blue-500:hover{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-blue-600:hover{--tw-gradient-to:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:text-white:hover{color:var(--color-white)}}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}}:root{color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#242424;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}body{place-items:center;min-width:320px;min-height:100vh;margin:0;display:flex}#root{text-align:center;width:100%;max-width:1280px;margin:0 auto;padding:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1} diff --git a/target/classes/static/assets/index-CtkN2yzV.js b/target/classes/static/assets/index-CtkN2yzV.js new file mode 100644 index 0000000..73c2898 --- /dev/null +++ b/target/classes/static/assets/index-CtkN2yzV.js @@ -0,0 +1,17 @@ +(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))o(s);new MutationObserver(s=>{for(const m of s)if(m.type==="childList")for(const b of m.addedNodes)b.tagName==="LINK"&&b.rel==="modulepreload"&&o(b)}).observe(document,{childList:!0,subtree:!0});function c(s){const m={};return s.integrity&&(m.integrity=s.integrity),s.referrerPolicy&&(m.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?m.credentials="include":s.crossOrigin==="anonymous"?m.credentials="omit":m.credentials="same-origin",m}function o(s){if(s.ep)return;s.ep=!0;const m=c(s);fetch(s.href,m)}})();var F=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function qm(h){return h&&h.__esModule&&Object.prototype.hasOwnProperty.call(h,"default")?h.default:h}var xc={exports:{}},Bi={};var dp;function Kb(){if(dp)return Bi;dp=1;var h=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function c(o,s,m){var b=null;if(m!==void 0&&(b=""+m),s.key!==void 0&&(b=""+s.key),"key"in s){m={};for(var E in s)E!=="key"&&(m[E]=s[E])}else m=s;return s=m.ref,{$$typeof:h,type:o,key:b,ref:s!==void 0?s:null,props:m}}return Bi.Fragment=r,Bi.jsx=c,Bi.jsxs=c,Bi}var hp;function Ib(){return hp||(hp=1,xc.exports=Kb()),xc.exports}var de=Ib(),Cc={exports:{}},Ae={};var pp;function Fb(){if(pp)return Ae;pp=1;var h=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),m=Symbol.for("react.consumer"),b=Symbol.for("react.context"),E=Symbol.for("react.forward_ref"),_=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),O=Symbol.for("react.lazy"),C=Symbol.for("react.activity"),G=Symbol.iterator;function le(A){return A===null||typeof A!="object"?null:(A=G&&A[G]||A["@@iterator"],typeof A=="function"?A:null)}var be={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},J=Object.assign,he={};function ge(A,W,Q){this.props=A,this.context=W,this.refs=he,this.updater=Q||be}ge.prototype.isReactComponent={},ge.prototype.setState=function(A,W){if(typeof A!="object"&&typeof A!="function"&&A!=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,A,W,"setState")},ge.prototype.forceUpdate=function(A){this.updater.enqueueForceUpdate(this,A,"forceUpdate")};function T(){}T.prototype=ge.prototype;function N(A,W,Q){this.props=A,this.context=W,this.refs=he,this.updater=Q||be}var w=N.prototype=new T;w.constructor=N,J(w,ge.prototype),w.isPureReactComponent=!0;var q=Array.isArray;function Z(){}var X={H:null,A:null,T:null,S:null},j=Object.prototype.hasOwnProperty;function V(A,W,Q){var ie=Q.ref;return{$$typeof:h,type:A,key:W,ref:ie!==void 0?ie:null,props:Q}}function ve(A,W){return V(A.type,W,A.props)}function Ee(A){return typeof A=="object"&&A!==null&&A.$$typeof===h}function qe(A){var W={"=":"=0",":":"=2"};return"$"+A.replace(/[=:]/g,function(Q){return W[Q]})}var K=/\/+/g;function lt(A,W){return typeof A=="object"&&A!==null&&A.key!=null?qe(""+A.key):W.toString(36)}function Ye(A){switch(A.status){case"fulfilled":return A.value;case"rejected":throw A.reason;default:switch(typeof A.status=="string"?A.then(Z,Z):(A.status="pending",A.then(function(W){A.status==="pending"&&(A.status="fulfilled",A.value=W)},function(W){A.status==="pending"&&(A.status="rejected",A.reason=W)})),A.status){case"fulfilled":return A.value;case"rejected":throw A.reason}}throw A}function D(A,W,Q,ie,_e){var xe=typeof A;(xe==="undefined"||xe==="boolean")&&(A=null);var De=!1;if(A===null)De=!0;else switch(xe){case"bigint":case"string":case"number":De=!0;break;case"object":switch(A.$$typeof){case h:case r:De=!0;break;case O:return De=A._init,D(De(A._payload),W,Q,ie,_e)}}if(De)return _e=_e(A),De=ie===""?"."+lt(A,0):ie,q(_e)?(Q="",De!=null&&(Q=De.replace(K,"$&/")+"/"),D(_e,W,Q,"",function(cn){return cn})):_e!=null&&(Ee(_e)&&(_e=ve(_e,Q+(_e.key==null||A&&A.key===_e.key?"":(""+_e.key).replace(K,"$&/")+"/")+De)),W.push(_e)),1;De=0;var $e=ie===""?".":ie+":";if(q(A))for(var tt=0;tt>>1,ee=D[ze];if(0>>1;zes(Q,pe))ies(_e,Q)?(D[ze]=_e,D[ie]=pe,ze=ie):(D[ze]=Q,D[W]=pe,ze=W);else if(ies(_e,pe))D[ze]=_e,D[ie]=pe,ze=ie;else break e}}return I}function s(D,I){var pe=D.sortIndex-I.sortIndex;return pe!==0?pe:D.id-I.id}if(h.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var m=performance;h.unstable_now=function(){return m.now()}}else{var b=Date,E=b.now();h.unstable_now=function(){return b.now()-E}}var _=[],v=[],O=1,C=null,G=3,le=!1,be=!1,J=!1,he=!1,ge=typeof setTimeout=="function"?setTimeout:null,T=typeof clearTimeout=="function"?clearTimeout:null,N=typeof setImmediate<"u"?setImmediate:null;function w(D){for(var I=c(v);I!==null;){if(I.callback===null)o(v);else if(I.startTime<=D)o(v),I.sortIndex=I.expirationTime,r(_,I);else break;I=c(v)}}function q(D){if(J=!1,w(D),!be)if(c(_)!==null)be=!0,Z||(Z=!0,qe());else{var I=c(v);I!==null&&Ye(q,I.startTime-D)}}var Z=!1,X=-1,j=5,V=-1;function ve(){return he?!0:!(h.unstable_now()-VD&&ve());){var ze=C.callback;if(typeof ze=="function"){C.callback=null,G=C.priorityLevel;var ee=ze(C.expirationTime<=D);if(D=h.unstable_now(),typeof ee=="function"){C.callback=ee,w(D),I=!0;break t}C===c(_)&&o(_),w(D)}else o(_);C=c(_)}if(C!==null)I=!0;else{var A=c(v);A!==null&&Ye(q,A.startTime-D),I=!1}}break e}finally{C=null,G=pe,le=!1}I=void 0}}finally{I?qe():Z=!1}}}var qe;if(typeof N=="function")qe=function(){N(Ee)};else if(typeof MessageChannel<"u"){var K=new MessageChannel,lt=K.port2;K.port1.onmessage=Ee,qe=function(){lt.postMessage(null)}}else qe=function(){ge(Ee,0)};function Ye(D,I){X=ge(function(){D(h.unstable_now())},I)}h.unstable_IdlePriority=5,h.unstable_ImmediatePriority=1,h.unstable_LowPriority=4,h.unstable_NormalPriority=3,h.unstable_Profiling=null,h.unstable_UserBlockingPriority=2,h.unstable_cancelCallback=function(D){D.callback=null},h.unstable_forceFrameRate=function(D){0>D||125ze?(D.sortIndex=pe,r(v,D),c(_)===null&&D===c(v)&&(J?(T(X),X=-1):J=!0,Ye(q,pe-ze))):(D.sortIndex=ee,r(_,D),be||le||(be=!0,Z||(Z=!0,qe()))),D},h.unstable_shouldYield=ve,h.unstable_wrapCallback=function(D){var I=G;return function(){var pe=G;G=I;try{return D.apply(this,arguments)}finally{G=pe}}}})(zc)),zc}var bp;function Pb(){return bp||(bp=1,Rc.exports=$b()),Rc.exports}var Mc={exports:{}},wt={};var gp;function eg(){if(gp)return wt;gp=1;var h=Ms();function r(_){var v="https://react.dev/errors/"+_;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(h)}catch(r){console.error(r)}}return h(),Mc.exports=eg(),Mc.exports}var _p;function ng(){if(_p)return ji;_p=1;var h=Pb(),r=Ms(),c=tg();function o(e){var t="https://react.dev/errors/"+e;if(1ee||(e.current=ze[ee],ze[ee]=null,ee--)}function Q(e,t){ee++,ze[ee]=e.current,e.current=t}var ie=A(null),_e=A(null),xe=A(null),De=A(null);function $e(e,t){switch(Q(xe,t),Q(_e,e),Q(ie,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Bh(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Bh(t),e=jh(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}W(ie),Q(ie,e)}function tt(){W(ie),W(_e),W(xe)}function cn(e){e.memoizedState!==null&&Q(De,e);var t=ie.current,n=jh(t,e.type);t!==n&&(Q(_e,e),Q(ie,n))}function bn(e){_e.current===e&&(W(ie),W(_e)),De.current===e&&(W(De),Mi._currentValue=pe)}var el,tl;function St(e){if(el===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);el=t&&t[1]||"",tl=-1)":-1l||g[a]!==z[l]){var L=` +`+g[a].replace(" at new "," at ");return e.displayName&&L.includes("")&&(L=L.replace("",e.displayName)),L}while(1<=a&&0<=l);break}}}finally{Xl=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?St(n):""}function gu(e,t){switch(e.tag){case 26:case 27:case 5:return St(e.type);case 16:return St("Lazy");case 13:return e.child!==t&&t!==null?St("Suspense Fallback"):St("Suspense");case 19:return St("SuspenseList");case 0:case 15:return Wt(e.type,!1);case 11:return Wt(e.type.render,!1);case 1:return Wt(e.type,!0);case 31:return St("Activity");default:return""}}function nl(e){try{var t="",n=null;do t+=gu(e,n),n=e,e=e.return;while(e);return t}catch(a){return` +Error generating stack: `+a.message+` +`+a.stack}}var kl=Object.prototype.hasOwnProperty,Ra=h.unstable_scheduleCallback,Wl=h.unstable_cancelCallback,yu=h.unstable_shouldYield,_u=h.unstable_requestPaint,Rt=h.unstable_now,za=h.unstable_getCurrentPriorityLevel,Wi=h.unstable_ImmediatePriority,Yi=h.unstable_UserBlockingPriority,Yt=h.unstable_NormalPriority,Su=h.unstable_LowPriority,Vi=h.unstable_IdlePriority,gn=h.log,Eu=h.unstable_setDisableYieldValue,Ma=null,bt=null;function yn(e){if(typeof gn=="function"&&Eu(e),bt&&typeof bt.setStrictMode=="function")try{bt.setStrictMode(Ma,e)}catch{}}var zt=Math.clz32?Math.clz32:Yl,Au=Math.log,Qi=Math.LN2;function Yl(e){return e>>>=0,e===0?32:31-(Au(e)/Qi|0)|0}var Jn=256,Na=262144,al=4194304;function _n(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Kn(e,t,n){var a=e.pendingLanes;if(a===0)return 0;var l=0,i=e.suspendedLanes,u=e.pingedLanes;e=e.warmLanes;var f=a&134217727;return f!==0?(a=f&~i,a!==0?l=_n(a):(u&=f,u!==0?l=_n(u):n||(n=f&~e,n!==0&&(l=_n(n))))):(f=a&~i,f!==0?l=_n(f):u!==0?l=_n(u):n||(n=a&~e,n!==0&&(l=_n(n)))),l===0?0:t!==0&&t!==l&&(t&i)===0&&(i=l&-l,n=t&-t,i>=n||i===32&&(n&4194048)!==0)?t:l}function sn(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ua(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zi(){var e=al;return al<<=1,(al&62914560)===0&&(al=4194304),e}function ll(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function wn(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function In(e,t,n,a,l,i){var u=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var f=e.entanglements,g=e.expirationTimes,z=e.hiddenUpdates;for(n=u&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Jl=/[\n"\\]/g;function d(e){return e.replace(Jl,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function p(e,t,n,a,l,i,u,f){e.name="",u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"?e.type=u:e.removeAttribute("type"),t!=null?u==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Bt(t)):e.value!==""+Bt(t)&&(e.value=""+Bt(t)):u!=="submit"&&u!=="reset"||e.removeAttribute("value"),t!=null?U(e,u,Bt(t)):n!=null?U(e,u,Bt(n)):a!=null&&e.removeAttribute("value"),l==null&&i!=null&&(e.defaultChecked=!!i),l!=null&&(e.checked=l&&typeof l!="function"&&typeof l!="symbol"),f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?e.name=""+Bt(f):e.removeAttribute("name")}function y(e,t,n,a,l,i,u,f){if(i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(e.type=i),t!=null||n!=null){if(!(i!=="submit"&&i!=="reset"||t!=null)){Mn(e);return}n=n!=null?""+Bt(n):"",t=t!=null?""+Bt(t):n,f||t===e.value||(e.value=t),e.defaultValue=t}a=a??l,a=typeof a!="function"&&typeof a!="symbol"&&!!a,e.checked=f?e.checked:!!a,e.defaultChecked=!!a,u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(e.name=u),Mn(e)}function U(e,t,n){t==="number"&&ol(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function H(e,t,n,a){if(e=e.options,t){t={};for(var l=0;l"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ba=!1;if(dn)try{var ja={};Object.defineProperty(ja,"passive",{get:function(){Ba=!0}}),window.addEventListener("test",ja,ja),window.removeEventListener("test",ja,ja)}catch{Ba=!1}var An=null,te=null,jt=null;function Nn(){if(jt)return jt;var e,t=te,n=t.length,a,l="value"in An?An.value:An.textContent,i=l.length;for(e=0;e=$l),Xs=" ",ks=!1;function Ws(e,t){switch(e){case"keyup":return bv.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ys(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var cl=!1;function yv(e,t){switch(e){case"compositionend":return Ys(t);case"keypress":return t.which!==32?null:(ks=!0,Xs);case"textInput":return e=t.data,e===Xs&&ks?null:e;default:return null}}function _v(e,t){if(cl)return e==="compositionend"||!Mu&&Ws(e,t)?(e=Nn(),jt=te=An=null,cl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=a}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=$s(n)}}function ef(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?ef(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function tf(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ol(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ol(e.document)}return t}function qu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var wv=dn&&"documentMode"in document&&11>=document.documentMode,sl=null,Bu=null,ni=null,ju=!1;function nf(e,t,n){var a=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ju||sl==null||sl!==ol(a)||(a=sl,"selectionStart"in a&&qu(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),ni&&ti(ni,a)||(ni=a,a=Zr(Bu,"onSelect"),0>=u,l-=u,Tn=1<<32-zt(t)+l|n<we?(je=fe,fe=null):je=fe.sibling;var Xe=M(x,fe,R[we],k);if(Xe===null){fe===null&&(fe=je);break}e&&fe&&Xe.alternate===null&&t(x,fe),S=i(Xe,S,we),Ge===null?me=Xe:Ge.sibling=Xe,Ge=Xe,fe=je}if(we===R.length)return n(x,fe),He&&qn(x,we),me;if(fe===null){for(;wewe?(je=fe,fe=null):je=fe.sibling;var Oa=M(x,fe,Xe.value,k);if(Oa===null){fe===null&&(fe=je);break}e&&fe&&Oa.alternate===null&&t(x,fe),S=i(Oa,S,we),Ge===null?me=Oa:Ge.sibling=Oa,Ge=Oa,fe=je}if(Xe.done)return n(x,fe),He&&qn(x,we),me;if(fe===null){for(;!Xe.done;we++,Xe=R.next())Xe=Y(x,Xe.value,k),Xe!==null&&(S=i(Xe,S,we),Ge===null?me=Xe:Ge.sibling=Xe,Ge=Xe);return He&&qn(x,we),me}for(fe=a(fe);!Xe.done;we++,Xe=R.next())Xe=B(fe,x,we,Xe.value,k),Xe!==null&&(e&&Xe.alternate!==null&&fe.delete(Xe.key===null?we:Xe.key),S=i(Xe,S,we),Ge===null?me=Xe:Ge.sibling=Xe,Ge=Xe);return e&&fe.forEach(function(Jb){return t(x,Jb)}),He&&qn(x,we),me}function Ie(x,S,R,k){if(typeof R=="object"&&R!==null&&R.type===J&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case le:e:{for(var me=R.key;S!==null;){if(S.key===me){if(me=R.type,me===J){if(S.tag===7){n(x,S.sibling),k=l(S,R.props.children),k.return=x,x=k;break e}}else if(S.elementType===me||typeof me=="object"&&me!==null&&me.$$typeof===j&&Za(me)===S.type){n(x,S.sibling),k=l(S,R.props),oi(k,R),k.return=x,x=k;break e}n(x,S);break}else t(x,S);S=S.sibling}R.type===J?(k=ka(R.props.children,x.mode,k,R.key),k.return=x,x=k):(k=sr(R.type,R.key,R.props,null,x.mode,k),oi(k,R),k.return=x,x=k)}return u(x);case be:e:{for(me=R.key;S!==null;){if(S.key===me)if(S.tag===4&&S.stateNode.containerInfo===R.containerInfo&&S.stateNode.implementation===R.implementation){n(x,S.sibling),k=l(S,R.children||[]),k.return=x,x=k;break e}else{n(x,S);break}else t(x,S);S=S.sibling}k=Wu(R,x.mode,k),k.return=x,x=k}return u(x);case j:return R=Za(R),Ie(x,S,R,k)}if(Ye(R))return ue(x,S,R,k);if(qe(R)){if(me=qe(R),typeof me!="function")throw Error(o(150));return R=me.call(R),ye(x,S,R,k)}if(typeof R.then=="function")return Ie(x,S,br(R),k);if(R.$$typeof===N)return Ie(x,S,hr(x,R),k);gr(x,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,S!==null&&S.tag===6?(n(x,S.sibling),k=l(S,R),k.return=x,x=k):(n(x,S),k=ku(R,x.mode,k),k.return=x,x=k),u(x)):n(x,S)}return function(x,S,R,k){try{ui=0;var me=Ie(x,S,R,k);return Sl=null,me}catch(fe){if(fe===_l||fe===mr)throw fe;var Ge=Qt(29,fe,null,x.mode);return Ge.lanes=k,Ge.return=x,Ge}finally{}}}var Ka=xf(!0),Cf=xf(!1),oa=!1;function to(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function no(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function ca(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function sa(e,t,n){var a=e.updateQueue;if(a===null)return null;if(a=a.shared,(ke&2)!==0){var l=a.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),a.pending=t,t=cr(e),sf(e,null,n),t}return or(e,a,t,n),cr(e)}function ci(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var a=t.lanes;a&=e.pendingLanes,n|=a,t.lanes=n,Ki(e,n)}}function ao(e,t){var n=e.updateQueue,a=e.alternate;if(a!==null&&(a=a.updateQueue,n===a)){var l=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var u={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};i===null?l=i=u:i=i.next=u,n=n.next}while(n!==null);i===null?l=i=t:i=i.next=t}else l=i=t;n={baseState:a.baseState,firstBaseUpdate:l,lastBaseUpdate:i,shared:a.shared,callbacks:a.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var lo=!1;function si(){if(lo){var e=yl;if(e!==null)throw e}}function fi(e,t,n,a){lo=!1;var l=e.updateQueue;oa=!1;var i=l.firstBaseUpdate,u=l.lastBaseUpdate,f=l.shared.pending;if(f!==null){l.shared.pending=null;var g=f,z=g.next;g.next=null,u===null?i=z:u.next=z,u=g;var L=e.alternate;L!==null&&(L=L.updateQueue,f=L.lastBaseUpdate,f!==u&&(f===null?L.firstBaseUpdate=z:f.next=z,L.lastBaseUpdate=g))}if(i!==null){var Y=l.baseState;u=0,L=z=g=null,f=i;do{var M=f.lane&-536870913,B=M!==f.lane;if(B?(Be&M)===M:(a&M)===M){M!==0&&M===gl&&(lo=!0),L!==null&&(L=L.next={lane:0,tag:f.tag,payload:f.payload,callback:null,next:null});e:{var ue=e,ye=f;M=t;var Ie=n;switch(ye.tag){case 1:if(ue=ye.payload,typeof ue=="function"){Y=ue.call(Ie,Y,M);break e}Y=ue;break e;case 3:ue.flags=ue.flags&-65537|128;case 0:if(ue=ye.payload,M=typeof ue=="function"?ue.call(Ie,Y,M):ue,M==null)break e;Y=C({},Y,M);break e;case 2:oa=!0}}M=f.callback,M!==null&&(e.flags|=64,B&&(e.flags|=8192),B=l.callbacks,B===null?l.callbacks=[M]:B.push(M))}else B={lane:M,tag:f.tag,payload:f.payload,callback:f.callback,next:null},L===null?(z=L=B,g=Y):L=L.next=B,u|=M;if(f=f.next,f===null){if(f=l.shared.pending,f===null)break;B=f,f=B.next,B.next=null,l.lastBaseUpdate=B,l.shared.pending=null}}while(!0);L===null&&(g=Y),l.baseState=g,l.firstBaseUpdate=z,l.lastBaseUpdate=L,i===null&&(l.shared.lanes=0),ma|=u,e.lanes=u,e.memoizedState=Y}}function wf(e,t){if(typeof e!="function")throw Error(o(191,e));e.call(t)}function Rf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ei?i:8;var u=D.T,f={};D.T=f,To(e,!1,t,n);try{var g=l(),z=D.S;if(z!==null&&z(f,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var L=Hv(g,a);pi(e,t,L,Ft(e))}else pi(e,t,a,Ft(e))}catch(Y){pi(e,t,{then:function(){},status:"rejected",reason:Y},Ft())}finally{I.p=i,u!==null&&f.types!==null&&(u.types=f.types),D.T=u}}function Wv(){}function Eo(e,t,n,a){if(e.tag!==5)throw Error(o(476));var l=ud(e).queue;rd(e,l,t,pe,n===null?Wv:function(){return od(e),n(a)})}function ud(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:pe,baseState:pe,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Dn,lastRenderedState:pe},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Dn,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function od(e){var t=ud(e);t.next===null&&(t=e.alternate.memoizedState),pi(e,t.next.queue,{},Ft())}function Ao(){return Tt(Mi)}function cd(){return st().memoizedState}function sd(){return st().memoizedState}function Yv(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=Ft();e=ca(n);var a=sa(t,e,n);a!==null&&(kt(a,t,n),ci(a,t,n)),t={cache:Fu()},e.payload=t;return}t=t.return}}function Vv(e,t,n){var a=Ft();n={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},wr(e)?dd(t,n):(n=Gu(e,t,n,a),n!==null&&(kt(n,e,a),hd(n,t,a)))}function fd(e,t,n){var a=Ft();pi(e,t,n,a)}function pi(e,t,n,a){var l={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(wr(e))dd(t,l);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var u=t.lastRenderedState,f=i(u,n);if(l.hasEagerState=!0,l.eagerState=f,Vt(f,u))return or(e,t,l,0),Fe===null&&ur(),!1}catch{}finally{}if(n=Gu(e,t,l,a),n!==null)return kt(n,e,a),hd(n,t,a),!0}return!1}function To(e,t,n,a){if(a={lane:2,revertLane:nc(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},wr(e)){if(t)throw Error(o(479))}else t=Gu(e,n,a,2),t!==null&&kt(t,e,2)}function wr(e){var t=e.alternate;return e===Oe||t!==null&&t===Oe}function dd(e,t){Al=Sr=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function hd(e,t,n){if((n&4194048)!==0){var a=t.lanes;a&=e.pendingLanes,n|=a,t.lanes=n,Ki(e,n)}}var mi={readContext:Tt,use:Tr,useCallback:ut,useContext:ut,useEffect:ut,useImperativeHandle:ut,useLayoutEffect:ut,useInsertionEffect:ut,useMemo:ut,useReducer:ut,useRef:ut,useState:ut,useDebugValue:ut,useDeferredValue:ut,useTransition:ut,useSyncExternalStore:ut,useId:ut,useHostTransitionStatus:ut,useFormState:ut,useActionState:ut,useOptimistic:ut,useMemoCache:ut,useCacheRefresh:ut};mi.useEffectEvent=ut;var pd={readContext:Tt,use:Tr,useCallback:function(e,t){return Nt().memoizedState=[e,t===void 0?null:t],e},useContext:Tt,useEffect:Ff,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,xr(4194308,4,td.bind(null,t,e),n)},useLayoutEffect:function(e,t){return xr(4194308,4,e,t)},useInsertionEffect:function(e,t){xr(4,2,e,t)},useMemo:function(e,t){var n=Nt();t=t===void 0?null:t;var a=e();if(Ia){yn(!0);try{e()}finally{yn(!1)}}return n.memoizedState=[a,t],a},useReducer:function(e,t,n){var a=Nt();if(n!==void 0){var l=n(t);if(Ia){yn(!0);try{n(t)}finally{yn(!1)}}}else l=t;return a.memoizedState=a.baseState=l,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:l},a.queue=e,e=e.dispatch=Vv.bind(null,Oe,e),[a.memoizedState,e]},useRef:function(e){var t=Nt();return e={current:e},t.memoizedState=e},useState:function(e){e=bo(e);var t=e.queue,n=fd.bind(null,Oe,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:_o,useDeferredValue:function(e,t){var n=Nt();return So(n,e,t)},useTransition:function(){var e=bo(!1);return e=rd.bind(null,Oe,e.queue,!0,!1),Nt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var a=Oe,l=Nt();if(He){if(n===void 0)throw Error(o(407));n=n()}else{if(n=t(),Fe===null)throw Error(o(349));(Be&127)!==0||Bf(a,t,n)}l.memoizedState=n;var i={value:n,getSnapshot:t};return l.queue=i,Ff(Hf.bind(null,a,i,e),[e]),a.flags|=2048,Ol(9,{destroy:void 0},jf.bind(null,a,i,n,t),null),n},useId:function(){var e=Nt(),t=Fe.identifierPrefix;if(He){var n=On,a=Tn;n=(a&~(1<<32-zt(a)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Er++,0<\/script>",i=i.removeChild(i.firstChild);break;case"select":i=typeof a.is=="string"?u.createElement("select",{is:a.is}):u.createElement("select"),a.multiple?i.multiple=!0:a.size&&(i.size=a.size);break;default:i=typeof a.is=="string"?u.createElement(l,{is:a.is}):u.createElement(l)}}i[ft]=t,i[Et]=a;e:for(u=t.child;u!==null;){if(u.tag===5||u.tag===6)i.appendChild(u.stateNode);else if(u.tag!==4&&u.tag!==27&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===t)break e;for(;u.sibling===null;){if(u.return===null||u.return===t)break e;u=u.return}u.sibling.return=u.return,u=u.sibling}t.stateNode=i;e:switch(xt(i,l,a),l){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}a&&Gn(t)}}return et(t),Do(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==a&&Gn(t);else{if(typeof a!="string"&&t.stateNode===null)throw Error(o(166));if(e=xe.current,vl(t)){if(e=t.stateNode,n=t.memoizedProps,a=null,l=At,l!==null)switch(l.tag){case 27:case 5:a=l.memoizedProps}e[ft]=t,e=!!(e.nodeValue===n||a!==null&&a.suppressHydrationWarning===!0||Uh(e.nodeValue,n)),e||ra(t,!0)}else e=Jr(e).createTextNode(a),e[ft]=t,t.stateNode=e}return et(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(a=vl(t),n!==null){if(e===null){if(!a)throw Error(o(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(557));e[ft]=t}else Wa(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;et(t),e=!1}else n=Zu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Jt(t),t):(Jt(t),null);if((t.flags&128)!==0)throw Error(o(558))}return et(t),null;case 13:if(a=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(l=vl(t),a!==null&&a.dehydrated!==null){if(e===null){if(!l)throw Error(o(318));if(l=t.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(o(317));l[ft]=t}else Wa(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;et(t),l=!1}else l=Zu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=l),l=!0;if(!l)return t.flags&256?(Jt(t),t):(Jt(t),null)}return Jt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=a!==null,e=e!==null&&e.memoizedState!==null,n&&(a=t.child,l=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(l=a.alternate.memoizedState.cachePool.pool),i=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(i=a.memoizedState.cachePool.pool),i!==l&&(a.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Ur(t,t.updateQueue),et(t),null);case 4:return tt(),e===null&&rc(t.stateNode.containerInfo),et(t),null;case 10:return jn(t.type),et(t),null;case 19:if(W(ct),a=t.memoizedState,a===null)return et(t),null;if(l=(t.flags&128)!==0,i=a.rendering,i===null)if(l)bi(a,!1);else{if(ot!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(i=_r(e),i!==null){for(t.flags|=128,bi(a,!1),e=i.updateQueue,t.updateQueue=e,Ur(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)ff(n,e),n=n.sibling;return Q(ct,ct.current&1|2),He&&qn(t,a.treeForkCount),t.child}e=e.sibling}a.tail!==null&&Rt()>Dr&&(t.flags|=128,l=!0,bi(a,!1),t.lanes=4194304)}else{if(!l)if(e=_r(i),e!==null){if(t.flags|=128,l=!0,e=e.updateQueue,t.updateQueue=e,Ur(t,e),bi(a,!0),a.tail===null&&a.tailMode==="hidden"&&!i.alternate&&!He)return et(t),null}else 2*Rt()-a.renderingStartTime>Dr&&n!==536870912&&(t.flags|=128,l=!0,bi(a,!1),t.lanes=4194304);a.isBackwards?(i.sibling=t.child,t.child=i):(e=a.last,e!==null?e.sibling=i:t.child=i,a.last=i)}return a.tail!==null?(e=a.tail,a.rendering=e,a.tail=e.sibling,a.renderingStartTime=Rt(),e.sibling=null,n=ct.current,Q(ct,l?n&1|2:n&1),He&&qn(t,a.treeForkCount),e):(et(t),null);case 22:case 23:return Jt(t),ro(),a=t.memoizedState!==null,e!==null?e.memoizedState!==null!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?(n&536870912)!==0&&(t.flags&128)===0&&(et(t),t.subtreeFlags&6&&(t.flags|=8192)):et(t),n=t.updateQueue,n!==null&&Ur(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),a=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),a!==n&&(t.flags|=2048),e!==null&&W(Qa),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),jn(ht),et(t),null;case 25:return null;case 30:return null}throw Error(o(156,t.tag))}function Iv(e,t){switch(Vu(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return jn(ht),tt(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return bn(t),null;case 31:if(t.memoizedState!==null){if(Jt(t),t.alternate===null)throw Error(o(340));Wa()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Jt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(o(340));Wa()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return W(ct),null;case 4:return tt(),null;case 10:return jn(t.type),null;case 22:case 23:return Jt(t),ro(),e!==null&&W(Qa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return jn(ht),null;case 25:return null;default:return null}}function Dd(e,t){switch(Vu(t),t.tag){case 3:jn(ht),tt();break;case 26:case 27:case 5:bn(t);break;case 4:tt();break;case 31:t.memoizedState!==null&&Jt(t);break;case 13:Jt(t);break;case 19:W(ct);break;case 10:jn(t.type);break;case 22:case 23:Jt(t),ro(),e!==null&&W(Qa);break;case 24:jn(ht)}}function gi(e,t){try{var n=t.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var l=a.next;n=l;do{if((n.tag&e)===e){a=void 0;var i=n.create,u=n.inst;a=i(),u.destroy=a}n=n.next}while(n!==l)}}catch(f){Qe(t,t.return,f)}}function ha(e,t,n){try{var a=t.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var i=l.next;a=i;do{if((a.tag&e)===e){var u=a.inst,f=u.destroy;if(f!==void 0){u.destroy=void 0,l=t;var g=n,z=f;try{z()}catch(L){Qe(l,g,L)}}}a=a.next}while(a!==i)}}catch(L){Qe(t,t.return,L)}}function Ld(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Rf(t,n)}catch(a){Qe(e,e.return,a)}}}function Gd(e,t,n){n.props=Fa(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(a){Qe(e,t,a)}}function yi(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var a=e.stateNode;break;case 30:a=e.stateNode;break;default:a=e.stateNode}typeof n=="function"?e.refCleanup=n(a):n.current=a}}catch(l){Qe(e,t,l)}}function xn(e,t){var n=e.ref,a=e.refCleanup;if(n!==null)if(typeof a=="function")try{a()}catch(l){Qe(e,t,l)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(l){Qe(e,t,l)}else n.current=null}function Xd(e){var t=e.type,n=e.memoizedProps,a=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&a.focus();break e;case"img":n.src?a.src=n.src:n.srcSet&&(a.srcset=n.srcSet)}}catch(l){Qe(e,e.return,l)}}function Lo(e,t,n){try{var a=e.stateNode;gb(a,e.type,n,t),a[Et]=t}catch(l){Qe(e,e.return,l)}}function kd(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&_a(e.type)||e.tag===4}function Go(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||kd(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&_a(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Xo(e,t,n){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=se));else if(a!==4&&(a===27&&_a(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Xo(e,t,n),e=e.sibling;e!==null;)Xo(e,t,n),e=e.sibling}function qr(e,t,n){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(a!==4&&(a===27&&_a(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(qr(e,t,n),e=e.sibling;e!==null;)qr(e,t,n),e=e.sibling}function Wd(e){var t=e.stateNode,n=e.memoizedProps;try{for(var a=e.type,l=t.attributes;l.length;)t.removeAttributeNode(l[0]);xt(t,a,n),t[ft]=e,t[Et]=n}catch(i){Qe(e,e.return,i)}}var Xn=!1,vt=!1,ko=!1,Yd=typeof WeakSet=="function"?WeakSet:Set,_t=null;function Fv(e,t){if(e=e.containerInfo,cc=tu,e=tf(e),qu(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var a=n.getSelection&&n.getSelection();if(a&&a.rangeCount!==0){n=a.anchorNode;var l=a.anchorOffset,i=a.focusNode;a=a.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var u=0,f=-1,g=-1,z=0,L=0,Y=e,M=null;t:for(;;){for(var B;Y!==n||l!==0&&Y.nodeType!==3||(f=u+l),Y!==i||a!==0&&Y.nodeType!==3||(g=u+a),Y.nodeType===3&&(u+=Y.nodeValue.length),(B=Y.firstChild)!==null;)M=Y,Y=B;for(;;){if(Y===e)break t;if(M===n&&++z===l&&(f=u),M===i&&++L===a&&(g=u),(B=Y.nextSibling)!==null)break;Y=M,M=Y.parentNode}Y=B}n=f===-1||g===-1?null:{start:f,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(sc={focusedElem:e,selectionRange:n},tu=!1,_t=t;_t!==null;)if(t=_t,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,_t=e;else for(;_t!==null;){switch(t=_t,i=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),xt(i,a,n),i[ft]=e,dt(i),a=i;break e;case"link":var u=Ih("link","href",l).get(a+(n.href||""));if(u){for(var f=0;fIe&&(u=Ie,Ie=ye,ye=u);var x=Ps(f,ye),S=Ps(f,Ie);if(x&&S&&(B.rangeCount!==1||B.anchorNode!==x.node||B.anchorOffset!==x.offset||B.focusNode!==S.node||B.focusOffset!==S.offset)){var R=Y.createRange();R.setStart(x.node,x.offset),B.removeAllRanges(),ye>Ie?(B.addRange(R),B.extend(S.node,S.offset)):(R.setEnd(S.node,S.offset),B.addRange(R))}}}}for(Y=[],B=f;B=B.parentNode;)B.nodeType===1&&Y.push({element:B,left:B.scrollLeft,top:B.scrollTop});for(typeof f.focus=="function"&&f.focus(),f=0;fn?32:n,D.T=null,n=Ko,Ko=null;var i=ba,u=Qn;if(gt=0,zl=ba=null,Qn=0,(ke&6)!==0)throw Error(o(331));var f=ke;if(ke|=4,th(i.current),$d(i,i.current,u,n),ke=f,Oi(0,!1),bt&&typeof bt.onPostCommitFiberRoot=="function")try{bt.onPostCommitFiberRoot(Ma,i)}catch{}return!0}finally{I.p=l,D.T=a,yh(e,t)}}function Sh(e,t,n){t=en(n,t),t=wo(e.stateNode,t,2),e=sa(e,t,2),e!==null&&(wn(e,2),Cn(e))}function Qe(e,t,n){if(e.tag===3)Sh(e,e,n);else for(;t!==null;){if(t.tag===3){Sh(t,e,n);break}else if(t.tag===1){var a=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(va===null||!va.has(a))){e=en(n,e),n=Ed(2),a=sa(t,n,2),a!==null&&(Ad(n,a,t,e),wn(a,2),Cn(a));break}}t=t.return}}function Po(e,t,n){var a=e.pingCache;if(a===null){a=e.pingCache=new eb;var l=new Set;a.set(t,l)}else l=a.get(t),l===void 0&&(l=new Set,a.set(t,l));l.has(n)||(Vo=!0,l.add(n),e=ib.bind(null,e,t,n),t.then(e,e))}function ib(e,t,n){var a=e.pingCache;a!==null&&a.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Fe===e&&(Be&n)===n&&(ot===4||ot===3&&(Be&62914560)===Be&&300>Rt()-Hr?(ke&2)===0&&Ml(e,0):Qo|=n,Rl===Be&&(Rl=0)),Cn(e)}function Eh(e,t){t===0&&(t=Zi()),e=Xa(e,t),e!==null&&(wn(e,t),Cn(e))}function rb(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Eh(e,n)}function ub(e,t){var n=0;switch(e.tag){case 31:case 13:var a=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:a=e.stateNode;break;case 22:a=e.stateNode._retryCache;break;default:throw Error(o(314))}a!==null&&a.delete(t),Eh(e,n)}function ob(e,t){return Ra(e,t)}var Yr=null,Ul=null,ec=!1,Vr=!1,tc=!1,ya=0;function Cn(e){e!==Ul&&e.next===null&&(Ul===null?Yr=Ul=e:Ul=Ul.next=e),Vr=!0,ec||(ec=!0,sb())}function Oi(e,t){if(!tc&&Vr){tc=!0;do for(var n=!1,a=Yr;a!==null;){if(e!==0){var l=a.pendingLanes;if(l===0)var i=0;else{var u=a.suspendedLanes,f=a.pingedLanes;i=(1<<31-zt(42|e)+1)-1,i&=l&~(u&~f),i=i&201326741?i&201326741|1:i?i|2:0}i!==0&&(n=!0,xh(a,i))}else i=Be,i=Kn(a,a===Fe?i:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(i&3)===0||sn(a,i)||(n=!0,xh(a,i));a=a.next}while(n);tc=!1}}function cb(){Ah()}function Ah(){Vr=ec=!1;var e=0;ya!==0&&_b()&&(e=ya);for(var t=Rt(),n=null,a=Yr;a!==null;){var l=a.next,i=Th(a,t);i===0?(a.next=null,n===null?Yr=l:n.next=l,l===null&&(Ul=n)):(n=a,(e!==0||(i&3)!==0)&&(Vr=!0)),a=l}gt!==0&>!==5||Oi(e),ya!==0&&(ya=0)}function Th(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,l=e.expirationTimes,i=e.pendingLanes&-62914561;0f)break;var L=g.transferSize,Y=g.initiatorType;L&&qh(Y)&&(g=g.responseEnd,u+=L*(g"u"?null:document;function Qh(e,t,n){var a=ql;if(a&&typeof t=="string"&&t){var l=d(t);l='link[rel="'+e+'"][href="'+l+'"]',typeof n=="string"&&(l+='[crossorigin="'+n+'"]'),Vh.has(l)||(Vh.add(l),e={rel:e,crossOrigin:n,href:t},a.querySelector(l)===null&&(t=a.createElement("link"),xt(t,"link",e),dt(t),a.head.appendChild(t)))}}function Rb(e){Zn.D(e),Qh("dns-prefetch",e,null)}function zb(e,t){Zn.C(e,t),Qh("preconnect",e,t)}function Mb(e,t,n){Zn.L(e,t,n);var a=ql;if(a&&e&&t){var l='link[rel="preload"][as="'+d(t)+'"]';t==="image"&&n&&n.imageSrcSet?(l+='[imagesrcset="'+d(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(l+='[imagesizes="'+d(n.imageSizes)+'"]')):l+='[href="'+d(e)+'"]';var i=l;switch(t){case"style":i=Bl(e);break;case"script":i=jl(e)}un.has(i)||(e=C({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),un.set(i,e),a.querySelector(l)!==null||t==="style"&&a.querySelector(Ri(i))||t==="script"&&a.querySelector(zi(i))||(t=a.createElement("link"),xt(t,"link",e),dt(t),a.head.appendChild(t)))}}function Nb(e,t){Zn.m(e,t);var n=ql;if(n&&e){var a=t&&typeof t.as=="string"?t.as:"script",l='link[rel="modulepreload"][as="'+d(a)+'"][href="'+d(e)+'"]',i=l;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":i=jl(e)}if(!un.has(i)&&(e=C({rel:"modulepreload",href:e},t),un.set(i,e),n.querySelector(l)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(zi(i)))return}a=n.createElement("link"),xt(a,"link",e),dt(a),n.head.appendChild(a)}}}function Ub(e,t,n){Zn.S(e,t,n);var a=ql;if(a&&e){var l=ea(a).hoistableStyles,i=Bl(e);t=t||"default";var u=l.get(i);if(!u){var f={loading:0,preload:null};if(u=a.querySelector(Ri(i)))f.loading=5;else{e=C({rel:"stylesheet",href:e,"data-precedence":t},n),(n=un.get(i))&&bc(e,n);var g=u=a.createElement("link");dt(g),xt(g,"link",e),g._p=new Promise(function(z,L){g.onload=z,g.onerror=L}),g.addEventListener("load",function(){f.loading|=1}),g.addEventListener("error",function(){f.loading|=2}),f.loading|=4,Ir(u,t,a)}u={type:"stylesheet",instance:u,count:1,state:f},l.set(i,u)}}}function qb(e,t){Zn.X(e,t);var n=ql;if(n&&e){var a=ea(n).hoistableScripts,l=jl(e),i=a.get(l);i||(i=n.querySelector(zi(l)),i||(e=C({src:e,async:!0},t),(t=un.get(l))&&gc(e,t),i=n.createElement("script"),dt(i),xt(i,"link",e),n.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},a.set(l,i))}}function Bb(e,t){Zn.M(e,t);var n=ql;if(n&&e){var a=ea(n).hoistableScripts,l=jl(e),i=a.get(l);i||(i=n.querySelector(zi(l)),i||(e=C({src:e,async:!0,type:"module"},t),(t=un.get(l))&&gc(e,t),i=n.createElement("script"),dt(i),xt(i,"link",e),n.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},a.set(l,i))}}function Zh(e,t,n,a){var l=(l=xe.current)?Kr(l):null;if(!l)throw Error(o(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Bl(n.href),n=ea(l).hoistableStyles,a=n.get(t),a||(a={type:"style",instance:null,count:0,state:null},n.set(t,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Bl(n.href);var i=ea(l).hoistableStyles,u=i.get(e);if(u||(l=l.ownerDocument||l,u={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},i.set(e,u),(i=l.querySelector(Ri(e)))&&!i._p&&(u.instance=i,u.state.loading=5),un.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},un.set(e,n),i||jb(l,e,n,u.state))),t&&a===null)throw Error(o(528,""));return u}if(t&&a!==null)throw Error(o(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=jl(n),n=ea(l).hoistableScripts,a=n.get(t),a||(a={type:"script",instance:null,count:0,state:null},n.set(t,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,e))}}function Bl(e){return'href="'+d(e)+'"'}function Ri(e){return'link[rel="stylesheet"]['+e+"]"}function Jh(e){return C({},e,{"data-precedence":e.precedence,precedence:null})}function jb(e,t,n,a){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?a.loading=1:(t=e.createElement("link"),a.preload=t,t.addEventListener("load",function(){return a.loading|=1}),t.addEventListener("error",function(){return a.loading|=2}),xt(t,"link",n),dt(t),e.head.appendChild(t))}function jl(e){return'[src="'+d(e)+'"]'}function zi(e){return"script[async]"+e}function Kh(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var a=e.querySelector('style[data-href~="'+d(n.href)+'"]');if(a)return t.instance=a,dt(a),a;var l=C({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return a=(e.ownerDocument||e).createElement("style"),dt(a),xt(a,"style",l),Ir(a,n.precedence,e),t.instance=a;case"stylesheet":l=Bl(n.href);var i=e.querySelector(Ri(l));if(i)return t.state.loading|=4,t.instance=i,dt(i),i;a=Jh(n),(l=un.get(l))&&bc(a,l),i=(e.ownerDocument||e).createElement("link"),dt(i);var u=i;return u._p=new Promise(function(f,g){u.onload=f,u.onerror=g}),xt(i,"link",a),t.state.loading|=4,Ir(i,n.precedence,e),t.instance=i;case"script":return i=jl(n.src),(l=e.querySelector(zi(i)))?(t.instance=l,dt(l),l):(a=n,(l=un.get(i))&&(a=C({},n),gc(a,l)),e=e.ownerDocument||e,l=e.createElement("script"),dt(l),xt(l,"link",a),e.head.appendChild(l),t.instance=l);case"void":return null;default:throw Error(o(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(a=t.instance,t.state.loading|=4,Ir(a,n.precedence,e));return t.instance}function Ir(e,t,n){for(var a=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),l=a.length?a[a.length-1]:null,i=l,u=0;u title"):null)}function Hb(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function $h(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function Db(e,t,n,a){if(n.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var l=Bl(a.href),i=t.querySelector(Ri(l));if(i){t=i._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=$r.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=i,dt(i);return}i=t.ownerDocument||t,a=Jh(a),(l=un.get(l))&&bc(a,l),i=i.createElement("link"),dt(i);var u=i;u._p=new Promise(function(f,g){u.onload=f,u.onerror=g}),xt(i,"link",a),n.instance=i}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=$r.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var yc=0;function Lb(e,t){return e.stylesheets&&e.count===0&&eu(e,e.stylesheets),0yc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(a),clearTimeout(l)}}:null}function $r(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)eu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Pr=null;function eu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Pr=new Map,t.forEach(Gb,e),Pr=null,$r.call(e))}function Gb(e,t){if(!(t.state.loading&4)){var n=Pr.get(e);if(n)var a=n.get(null);else{n=new Map,Pr.set(e,n);for(var l=e.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(h)}catch(r){console.error(r)}}return h(),wc.exports=ng(),wc.exports}var lg=ag(),Nc={exports:{}},ou={},Ep;function ig(){return Ep||(Ep=1,F.crypto&&F.crypto.getRandomValues?ou.randomBytes=function(h){var r=new Uint8Array(h);return F.crypto.getRandomValues(r),r}:ou.randomBytes=function(h){for(var r=new Array(h),c=0;c=2&&(V=V.slice(2)):G(q)?V=w[4]:q?Z&&(V=V.slice(2)):j>=2&&G(N.protocol)&&(V=w[4]),{protocol:q,slashes:Z||G(q),slashesCount:j,rest:V}}function be(T,N){if(T==="")return N;for(var w=(N||"/").split("/").slice(0,-1).concat(T.split("/")),q=w.length,Z=w[q-1],X=!1,j=0;q--;)w[q]==="."?w.splice(q,1):w[q]===".."?(w.splice(q,1),j++):j&&(q===0&&(X=!0),w.splice(q,1),j--);return X&&w.unshift(""),(Z==="."||Z==="..")&&w.push(""),w.join("/")}function J(T,N,w){if(T=_(T),T=T.replace(o,""),!(this instanceof J))return new J(T,N,w);var q,Z,X,j,V,ve,Ee=v.slice(),qe=typeof N,K=this,lt=0;for(qe!=="object"&&qe!=="string"&&(w=N,N=null),w&&typeof w!="function"&&(w=r.parse),N=C(N),Z=le(T||"",N),q=!Z.protocol&&!Z.slashes,K.slashes=Z.slashes||q&&N.slashes,K.protocol=Z.protocol||N.protocol||"",T=Z.rest,(Z.protocol==="file:"&&(Z.slashesCount!==2||E.test(T))||!Z.slashes&&(Z.protocol||Z.slashesCount<2||!G(K.protocol)))&&(Ee[3]=[/(.*)/,"pathname"]);lt1?this._listeners[r]=o.slice(0,s).concat(o.slice(s+1)):delete this._listeners[r];return}}},h.prototype.dispatchEvent=function(){var r=arguments[0],c=r.type,o=arguments.length===1?[r]:Array.apply(null,arguments);if(this["on"+c]&&this["on"+c].apply(this,o),c in this._listeners)for(var s=this._listeners[c],m=0;m0){var m="["+this.sendBuffer.join(",")+"]";this.sendStop=this.sender(this.url,m,function(b){s.sendStop=null,b?(s.emit("close",b.code||1006,"Sending error: "+b),s.close()):s.sendScheduleWait()}),this.sendBuffer=[]}},o.prototype._cleanup=function(){this.removeAllListeners()},o.prototype.close=function(){this._cleanup(),this.sendStop&&(this.sendStop(),this.sendStop=null)},Gc=o,Gc}var Xc,Bp;function fg(){if(Bp)return Xc;Bp=1;var h=We(),r=qt().EventEmitter,c=function(){};function o(s,m,b){r.call(this),this.Receiver=s,this.receiveUrl=m,this.AjaxObject=b,this._scheduleReceiver()}return h(o,r),o.prototype._scheduleReceiver=function(){var s=this,m=this.poll=new this.Receiver(this.receiveUrl,this.AjaxObject);m.on("message",function(b){s.emit("message",b)}),m.once("close",function(b,E){c("close",b,E,s.pollIsClosing),s.poll=m=null,s.pollIsClosing||(E==="network"?s._scheduleReceiver():(s.emit("close",b||1006,E),s.removeAllListeners()))})},o.prototype.abort=function(){this.removeAllListeners(),this.pollIsClosing=!0,this.poll&&this.poll.abort()},Xc=o,Xc}var kc,jp;function Hm(){if(jp)return kc;jp=1;var h=We(),r=on(),c=sg(),o=fg();function s(m,b,E,_,v){var O=r.addPath(m,b),C=this;c.call(this,m,E),this.poll=new o(_,O,v),this.poll.on("message",function(G){C.emit("message",G)}),this.poll.once("close",function(G,le){C.poll=null,C.emit("close",G,le),C.close()})}return h(s,c),s.prototype.close=function(){c.prototype.close.call(this),this.removeAllListeners(),this.poll&&(this.poll.abort(),this.poll=null)},kc=s,kc}var Wc,Hp;function Gl(){if(Hp)return Wc;Hp=1;var h=We(),r=on(),c=Hm();function o(m){return function(b,E,_){var v={};typeof E=="string"&&(v.headers={"Content-type":"text/plain"});var O=r.addPath(b,"/xhr_send"),C=new m("POST",O,E,v);return C.once("finish",function(G){if(C=null,G!==200&&G!==204)return _(new Error("http status "+G));_()}),function(){C.close(),C=null;var G=new Error("Aborted");G.code=1e3,_(G)}}}function s(m,b,E,_){c.call(this,m,b,o(_),E,_)}return h(s,c),Wc=s,Wc}var Yc,Dp;function vu(){if(Dp)return Yc;Dp=1;var h=We(),r=qt().EventEmitter;function c(o,s){r.call(this);var m=this;this.bufferPosition=0,this.xo=new s("POST",o,null),this.xo.on("chunk",this._chunkHandler.bind(this)),this.xo.once("finish",function(b,E){m._chunkHandler(b,E),m.xo=null;var _=b===200?"network":"permanent";m.emit("close",null,_),m._cleanup()})}return h(c,r),c.prototype._chunkHandler=function(o,s){if(!(o!==200||!s))for(var m=-1;;this.bufferPosition+=m+1){var b=s.slice(this.bufferPosition);if(m=b.indexOf(` +`),m===-1)break;var E=b.slice(0,m);E&&this.emit("message",E)}},c.prototype._cleanup=function(){this.removeAllListeners()},c.prototype.abort=function(){this.xo&&(this.xo.close(),this.emit("close",null,"user"),this.xo=null),this._cleanup()},Yc=c,Yc}var Vc,Lp;function Dm(){if(Lp)return Vc;Lp=1;var h=qt().EventEmitter,r=We(),c=wa(),o=on(),s=F.XMLHttpRequest,m=function(){};function b(v,O,C,G){var le=this;h.call(this),setTimeout(function(){le._start(v,O,C,G)},0)}r(b,h),b.prototype._start=function(v,O,C,G){var le=this;try{this.xhr=new s}catch{}if(!this.xhr){this.emit("finish",0,"no xhr support"),this._cleanup();return}O=o.addQuery(O,"t="+ +new Date),this.unloadRef=c.unloadAdd(function(){le._cleanup(!0)});try{this.xhr.open(v,O,!0),this.timeout&&"timeout"in this.xhr&&(this.xhr.timeout=this.timeout,this.xhr.ontimeout=function(){m("xhr timeout"),le.emit("finish",0,""),le._cleanup(!1)})}catch{this.emit("finish",0,""),this._cleanup(!1);return}if((!G||!G.noCredentials)&&b.supportsCORS&&(this.xhr.withCredentials=!0),G&&G.headers)for(var be in G.headers)this.xhr.setRequestHeader(be,G.headers[be]);this.xhr.onreadystatechange=function(){if(le.xhr){var J=le.xhr,he,ge;switch(m("readyState",J.readyState),J.readyState){case 3:try{ge=J.status,he=J.responseText}catch{}ge===1223&&(ge=204),ge===200&&he&&he.length>0&&le.emit("chunk",ge,he);break;case 4:ge=J.status,ge===1223&&(ge=204),(ge===12005||ge===12029)&&(ge=0),m("finish",ge,J.responseText),le.emit("finish",ge,J.responseText),le._cleanup(!1);break}}};try{le.xhr.send(C)}catch{le.emit("finish",0,""),le._cleanup(!1)}},b.prototype._cleanup=function(v){if(this.xhr){if(this.removeAllListeners(),c.unloadDel(this.unloadRef),this.xhr.onreadystatechange=function(){},this.xhr.ontimeout&&(this.xhr.ontimeout=null),v)try{this.xhr.abort()}catch{}this.unloadRef=this.xhr=null}},b.prototype.close=function(){this._cleanup(!0)},b.enabled=!!s;var E=["Active"].concat("Object").join("X");!b.enabled&&E in F&&(s=function(){try{return new F[E]("Microsoft.XMLHTTP")}catch{return null}},b.enabled=!!new s);var _=!1;try{_="withCredentials"in new s}catch{}return b.supportsCORS=_,Vc=b,Vc}var Qc,Gp;function bu(){if(Gp)return Qc;Gp=1;var h=We(),r=Dm();function c(o,s,m,b){r.call(this,o,s,m,b)}return h(c,r),c.enabled=r.enabled&&r.supportsCORS,Qc=c,Qc}var Zc,Xp;function Gi(){if(Xp)return Zc;Xp=1;var h=We(),r=Dm();function c(o,s,m){r.call(this,o,s,m,{noCredentials:!0})}return h(c,r),c.enabled=r.enabled,Zc=c,Zc}var Jc,kp;function Xi(){return kp||(kp=1,Jc={isOpera:function(){return F.navigator&&/opera/i.test(F.navigator.userAgent)},isKonqueror:function(){return F.navigator&&/konqueror/i.test(F.navigator.userAgent)},hasDomain:function(){if(!F.document)return!0;try{return!!F.document.domain}catch{return!1}}}),Jc}var Kc,Wp;function dg(){if(Wp)return Kc;Wp=1;var h=We(),r=Gl(),c=vu(),o=bu(),s=Gi(),m=Xi();function b(E){if(!s.enabled&&!o.enabled)throw new Error("Transport created when disabled");r.call(this,E,"/xhr_streaming",c,o)}return h(b,r),b.enabled=function(E){return E.nullOrigin||m.isOpera()?!1:o.enabled},b.transportName="xhr-streaming",b.roundTrips=2,b.needBody=!!F.document,Kc=b,Kc}var Ic,Yp;function Ns(){if(Yp)return Ic;Yp=1;var h=qt().EventEmitter,r=We(),c=wa(),o=Xi(),s=on(),m=function(){};function b(E,_,v){var O=this;h.call(this),setTimeout(function(){O._start(E,_,v)},0)}return r(b,h),b.prototype._start=function(E,_,v){var O=this,C=new F.XDomainRequest;_=s.addQuery(_,"t="+ +new Date),C.onerror=function(){O._error()},C.ontimeout=function(){O._error()},C.onprogress=function(){m("progress",C.responseText),O.emit("chunk",200,C.responseText)},C.onload=function(){O.emit("finish",200,C.responseText),O._cleanup(!1)},this.xdr=C,this.unloadRef=c.unloadAdd(function(){O._cleanup(!0)});try{this.xdr.open(E,_),this.timeout&&(this.xdr.timeout=this.timeout),this.xdr.send(v)}catch{this._error()}},b.prototype._error=function(){this.emit("finish",0,""),this._cleanup(!1)},b.prototype._cleanup=function(E){if(this.xdr){if(this.removeAllListeners(),c.unloadDel(this.unloadRef),this.xdr.ontimeout=this.xdr.onerror=this.xdr.onprogress=this.xdr.onload=null,E)try{this.xdr.abort()}catch{}this.unloadRef=this.xdr=null}},b.prototype.close=function(){this._cleanup(!0)},b.enabled=!!(F.XDomainRequest&&o.hasDomain()),Ic=b,Ic}var Fc,Vp;function Lm(){if(Vp)return Fc;Vp=1;var h=We(),r=Gl(),c=vu(),o=Ns();function s(m){if(!o.enabled)throw new Error("Transport created when disabled");r.call(this,m,"/xhr_streaming",c,o)}return h(s,r),s.enabled=function(m){return m.cookie_needed||m.nullOrigin?!1:o.enabled&&m.sameScheme},s.transportName="xdr-streaming",s.roundTrips=2,Fc=s,Fc}var $c,Qp;function Gm(){return Qp||(Qp=1,$c=F.EventSource),$c}var Pc,Zp;function hg(){if(Zp)return Pc;Zp=1;var h=We(),r=qt().EventEmitter,c=Gm(),o=function(){};function s(m){r.call(this);var b=this,E=this.es=new c(m);E.onmessage=function(_){o("message",_.data),b.emit("message",decodeURI(_.data))},E.onerror=function(_){o("error",E.readyState);var v=E.readyState!==2?"network":"permanent";b._cleanup(),b._close(v)}}return h(s,r),s.prototype.abort=function(){this._cleanup(),this._close("user")},s.prototype._cleanup=function(){var m=this.es;m&&(m.onmessage=m.onerror=null,m.close(),this.es=null)},s.prototype._close=function(m){var b=this;setTimeout(function(){b.emit("close",null,m),b.removeAllListeners()},200)},Pc=s,Pc}var es,Jp;function Kp(){if(Jp)return es;Jp=1;var h=We(),r=Gl(),c=hg(),o=bu(),s=Gm();function m(b){if(!m.enabled())throw new Error("Transport created when disabled");r.call(this,b,"/eventsource",c,o)}return h(m,r),m.enabled=function(){return!!s},m.transportName="eventsource",m.roundTrips=2,es=m,es}var ts,Ip;function Xm(){return Ip||(Ip=1,ts="1.6.1"),ts}var ns={exports:{}},Fp;function ki(){return Fp||(Fp=1,(function(h){var r=wa(),c=Xi();h.exports={WPrefix:"_jp",currentWindowId:null,polluteGlobalNamespace:function(){h.exports.WPrefix in F||(F[h.exports.WPrefix]={})},postMessage:function(o,s){F.parent!==F&&F.parent.postMessage(JSON.stringify({windowId:h.exports.currentWindowId,type:o,data:s||""}),"*")},createIframe:function(o,s){var m=F.document.createElement("iframe"),b,E,_=function(){clearTimeout(b);try{m.onload=null}catch{}m.onerror=null},v=function(){m&&(_(),setTimeout(function(){m&&m.parentNode.removeChild(m),m=null},0),r.unloadDel(E))},O=function(G){m&&(v(),s(G))},C=function(G,le){setTimeout(function(){try{m&&m.contentWindow&&m.contentWindow.postMessage(G,le)}catch{}},0)};return m.src=o,m.style.display="none",m.style.position="absolute",m.onerror=function(){O("onerror")},m.onload=function(){clearTimeout(b),b=setTimeout(function(){O("onload timeout")},2e3)},F.document.body.appendChild(m),b=setTimeout(function(){O("timeout")},15e3),E=r.unloadAdd(v),{post:C,cleanup:v,loaded:_}},createHtmlfile:function(o,s){var m=["Active"].concat("Object").join("X"),b=new F[m]("htmlfile"),E,_,v,O=function(){clearTimeout(E),v.onerror=null},C=function(){b&&(O(),r.unloadDel(_),v.parentNode.removeChild(v),v=b=null,CollectGarbage())},G=function(J){b&&(C(),s(J))},le=function(J,he){try{setTimeout(function(){v&&v.contentWindow&&v.contentWindow.postMessage(J,he)},0)}catch{}};b.open(),b.write(' frontend - - + +