diff --git a/.gitignore b/.gitignore index 1bea42a..54e3d20 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ /node_modules /public/hot /public/storage +/public/sitemap.xml /storage/*.key /vendor .env diff --git a/app/Console/Commands/GenerateSitemap.php b/app/Console/Commands/GenerateSitemap.php new file mode 100644 index 0000000..49f1056 --- /dev/null +++ b/app/Console/Commands/GenerateSitemap.php @@ -0,0 +1,44 @@ +writeToFile(public_path('sitemap.xml')); + } +} diff --git a/app/Helpers/FirstParty/OSSUploader/OSSUploader.php b/app/Helpers/FirstParty/OSSUploader/OSSUploader.php new file mode 100644 index 0000000..1e9effc --- /dev/null +++ b/app/Helpers/FirstParty/OSSUploader/OSSUploader.php @@ -0,0 +1,53 @@ +get($filepath); + + $decodedJson = json_decode($jsonContent, false, 512); + + return $decodedJson; + + } catch (\Exception $e) { + return null; + } + + return null; + } + + public static function uploadJson($storage_driver, $relative_directory, $filename, $jsonData) + { + $jsonString = json_encode($jsonData, JSON_PRETTY_PRINT); + + try { + return self::uploadFile($storage_driver, $relative_directory, $filename, $jsonString); + } catch (Exception $e) { + return false; + } + + return false; + + } + + public static function uploadFile($storage_driver, $relative_directory, $filename, $file) + { + $filepath = rtrim($relative_directory, '/').'/'.$filename; + + // if(!Storage::disk($storage_driver)->exists($relative_directory)) + // { + // Storage::disk($storage_driver)->makeDirectory($relative_directory); + // } + + return Storage::disk($storage_driver)->put($filepath, $file); + } +} diff --git a/app/Helpers/FirstParty/OpenAI/OpenAI.php b/app/Helpers/FirstParty/OpenAI/OpenAI.php new file mode 100644 index 0000000..7af79f0 --- /dev/null +++ b/app/Helpers/FirstParty/OpenAI/OpenAI.php @@ -0,0 +1,90 @@ +withToken(config('platform.ai.openai.api_key')) + ->post('https://api.openai.com/v1/chat/completions', [ + 'model' => $model, + 'max_tokens' => 2500, + 'messages' => [ + ['role' => 'user', 'content' => $system_prompt.' '.$user_prompt], + ], + ]); + + $json_response = json_decode($response->body()); + + $reply = $json_response?->choices[0]?->message?->content; + + return $reply; + + } +} diff --git a/app/Helpers/Global/geo_helper.php b/app/Helpers/Global/geo_helper.php new file mode 100644 index 0000000..b26f4fb --- /dev/null +++ b/app/Helpers/Global/geo_helper.php @@ -0,0 +1,46 @@ +environment() == 'local') { + return config('platform.general.dev_default_ip'); + } + + if (getenv('HTTP_CF_CONNECTING_IP')) { + $ip = getenv('HTTP_CF_CONNECTING_IP'); + } elseif (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) { + $ip = $_SERVER['HTTP_CF_CONNECTING_IP']; + } + + if (! is_empty($ip)) { + return $ip; + } + + $ip_add_set = null; + + if (getenv('HTTP_CLIENT_IP')) { + $ip_add_set = getenv('HTTP_CLIENT_IP'); + } elseif (getenv('HTTP_X_FORWARDED_FOR')) { + $ip_add_set = getenv('HTTP_X_FORWARDED_FOR'); + } elseif (getenv('HTTP_X_FORWARDED')) { + $ip_add_set = getenv('HTTP_X_FORWARDED'); + } elseif (getenv('HTTP_FORWARDED_FOR')) { + $ip_add_set = getenv('HTTP_FORWARDED_FOR'); + } elseif (getenv('HTTP_FORWARDED')) { + $ip_add_set = getenv('HTTP_FORWARDED'); + } elseif (getenv('REMOTE_ADDR')) { + $ip_add_set = getenv('REMOTE_ADDR'); + } elseif (isset($_SERVER['REMOTE_ADDR'])) { + $ip_add_set = $_SERVER['REMOTE_ADDR']; + } else { + $ip_add_set = '127.0.0.0'; + } + + $ip_add_set = explode(',', $ip_add_set); + + return $ip_add_set[0]; + } +} diff --git a/app/Helpers/Global/helpers.php b/app/Helpers/Global/helpers.php new file mode 100644 index 0000000..b1c1e4e --- /dev/null +++ b/app/Helpers/Global/helpers.php @@ -0,0 +1,5 @@ +environment() == 'local') { + return config("platform.notifications.{$slack_channel}.development_channel"); + } else { + return config("platform.notifications.{$slack_channel}.production_channel"); + } + } +} diff --git a/app/Helpers/Global/string_helper.php b/app/Helpers/Global/string_helper.php new file mode 100644 index 0000000..4fe9ab7 --- /dev/null +++ b/app/Helpers/Global/string_helper.php @@ -0,0 +1,120 @@ +slug($delimiter); + } +} + +if (! function_exists('str_first_sentence')) { + function str_first_sentence($str) + { + // Split the string at ., !, or ? + $sentences = preg_split('/(\.|!|\?)(\s|$)/', $str, 2); + + // Return the first part of the array if available + if (isset($sentences[0])) { + return trim($sentences[0]); + } + + // If no sentence ending found, return the whole string + return $str; + } + +} + +if (! function_exists('is_empty')) { + /** + * A better function to check if a value is empty or null. Strings, arrays, and Objects are supported. + * + * @param mixed $value + */ + function is_empty($value): bool + { + if (is_null($value)) { + return true; + } + + if (is_string($value)) { + if ($value === '') { + return true; + } + } + + if (is_array($value)) { + if (count($value) === 0) { + return true; + } + } + + if (is_object($value)) { + $value = (array) $value; + + if (count($value) === 0) { + return true; + } + } + + return false; + } +} + +if (! function_exists('get_country_name_by_iso')) { + function get_country_name_by_iso($country_iso) + { + if (! is_empty($country_iso)) { + + $country_iso = strtoupper($country_iso); + + try { + return config("platform.country_codes.{$country_iso}")['name']; + } catch (\Exception $e) { + } + + } + + return 'International'; + } +} + +if (! function_exists('get_country_emoji_by_iso')) { + function get_country_emoji_by_iso($country_iso) + { + if (! is_empty($country_iso)) { + + $country_iso = strtoupper($country_iso); + + try { + return config("platform.country_codes.{$country_iso}")['emoji']; + } catch (\Exception $e) { + } + + } + + return '🌎'; + } +} + +if (! function_exists('str_random')) { + function str_random($length = 10) + { + return Str::random($length); + } +} diff --git a/app/Helpers/ThirdParty/DFS/AbstractModel.php b/app/Helpers/ThirdParty/DFS/AbstractModel.php new file mode 100644 index 0000000..8942df1 --- /dev/null +++ b/app/Helpers/ThirdParty/DFS/AbstractModel.php @@ -0,0 +1,580 @@ +0->related. + * + * results - is object link from DFSResponse + * 0 - is Index of array or postID + * related - is object link containing main data + * + * @var null|string It is a system variable, it contains a path to main data from response and creates iterable(IteratorAggregator) response. + */ + protected $pathToMainData = null; + + /** + * @var bool If payload contains postId + */ + protected $isSupportedMerge = false; + + /** + * @var null|string + */ + private $DFSLogin = null; + + /** + * @var null|string + */ + private $DFSPassword = null; + + public $response; + + protected $application; + + protected $config; + + /** + * @var array + */ + protected $payload; + + protected $isProcessed; + + protected $mappedMainModel; + + protected $seTypes = ['organic', 'maps', 'local_finder', 'news', 'images', 'search_by_image']; + + /** + * @var bool + */ + protected $jsonContainVariadicType = false; + + /** + * @var array + */ + protected $pathsToVariadicTypesAndValue = []; + + /** + * @var array + */ + protected $customFunctionForPaths = []; + + /** + * @var array + */ + protected $pathsToDictionary = []; + + /** + * @var bool Temp variable, for detect when use new mapper + */ + protected $useNewMapper = false; + + /** + * new version of DataForSeo has two variations of result + * 1. Object contains other objects for response. + * 2. Object contains other objects, but they is iterable. + * + * if model has property $resultShouldBeTransformedToArray as true, result index will be transformed to array + * + * @var bool + */ + protected $resultShouldBeTransformedToArray = false; + + public function __construct() + { + $this->application = Application::getInstance(); + $this->config = $this->application->getConfig(); + $this->initDefaultMethods(); + + } + + /** + * @param $postID mixed + */ + public function setPostID($postID) + { + $this->postId = $postID; + + return $this; + } + + /** + * @param $headers array + */ + public function setHeaders($headers) + { + if (count($headers) > 0) { + foreach ($headers as $key => $value) { + $this->config['headers'][$key] = $value; + } + } + + return $this; + } + + /** + * This method will run request to api. + */ + protected function get() + { + $response = $this->process(); + // check if response contain valid json + + $validResponse = json_decode($response->getResponse()); + + if (json_last_error() !== JSON_ERROR_NONE) { + $validResponse = ['status_code' => 50000, 'status_message' => 'error.']; + } + + return $this->mapData(json_encode($validResponse), $response->getStatus()); + } + + /** + * @return mixed + * + * @throws \Exception + */ + public static function getAfterMerge(array $modelPool) + { + if (empty($modelPool)) { + throw new \Exception('Model pool can not be empty'); + } + + $payload = []; + $url = null; + $apiVersion = null; + $timeOut = null; + $login = null; + $password = null; + $method = null; + $requestToFunction = null; + $config = Application::getInstance()->getConfig(); + $pathToMainData = null; + $resultShouldTransformedToArray = false; + $useNewMapper = false; + $isJsonContainVariadicType = false; + $pathsToVariadicTypesAndValue = []; + $customFunctionForPaths = []; + + foreach ($modelPool as $key => $model) { + + // kostyl, all variable will be rewrite every iteration + $url = $model->url; + $apiVersion = $model->apiVersion; + $timeOut = $model->timeOut; + $login = $model->DFSLogin; + $password = $model->DFSPassword; + $method = $model->method; + $requestToFunction = $model->requestToFunction; + $pathToMainData = $model->pathToMainData; + $resultShouldTransformedToArray = $model->resultShouldBeTransformedToArray; + $useNewMapper = $model->isUseNewMapper(); + $isJsonContainVariadicType = $model->isJsonContainVariadicType(); + $pathsToVariadicTypesAndValue = $model->getPathsToVariadicTypesAndValue(); + $customFunctionForPaths = $model->getCustomFunctionForPaths(); + + if ($model->isSupportedMerge) { + if ($model->postId === null) { + $payload['json'][] = $model->payload; + } + + if ($model->postId !== null) { + $payload['json'][$model->postId] = $model->payload; + } + } else { + throw new \Exception('Provided model '.get_class($model).' is not supported merge'); + } + } + + $payload['headers'] = $config['headers']; + + $http = new HttpClient($url, $apiVersion, $timeOut, $login, $password); + + $res = $http->sendSingleRequest($method, $requestToFunction, $payload); + // check if response contain valid json + + $validResponse = json_decode($res->getResponse()); + + if (json_last_error() !== JSON_ERROR_NONE) { + $validResponse = ['status_code' => 50000, 'status_message' => 'error.']; + } + + //get called class. + $calledClassNameWithNapeSpace = get_called_class(); + $classNameArray = explode('\\', $calledClassNameWithNapeSpace); + //for php 7.3 can be use array_last_key + $classNameArray[count($classNameArray) - 1]; + + $mapper = new DataMapper($classNameArray[count($classNameArray) - 1], $res->getStatus(), $pathToMainData); + + if ($useNewMapper) { + $paveDataOptions = new PaveDataOptions(); + $paveDataOptions->setJson(json_encode($validResponse)); + $paveDataOptions->setJsonContainVariadicType($isJsonContainVariadicType); + $paveDataOptions->setPathsToVariadicTypesAndValue($pathsToVariadicTypesAndValue); + $paveDataOptions->setCustomFunctionForPaths($customFunctionForPaths); + + $mappedModel = $mapper->paveDataNew($paveDataOptions); + + return $mappedModel; + } + + $mappedModel = $mapper->paveData(json_encode($validResponse), null, $resultShouldTransformedToArray); + + return $mappedModel; + + } + + /** + * @param array|AbstractModel[] $modelPool + * @return array|null + */ + public static function getAsync(array $modelPool, int $timeout = 100) + { + + if (count($modelPool) > 100) { + return null; + } + + $requestsPool = []; + $results = []; + + $payload = []; + $url = null; + $apiVersion = null; + $timeOut = null; + $login = null; + $password = null; + + $config = Application::getInstance()->getConfig(); + $pathToMainData = null; + $resultShouldTransformedToArray = false; + $useNewMapper = false; + $isJsonContainVariadicType = false; + $pathsToVariadicTypesAndValue = []; + $customFunctionForPaths = []; + $pathsToDictionary = []; + + foreach ($modelPool as $key => $model) { + + // kostyl, all variable will be rewrite every iteration + $url = $model->url; + $apiVersion = $model->apiVersion; + $login = $model->DFSLogin; + $password = $model->DFSPassword; + + $pathToMainData = $model->pathToMainData; + $resultShouldTransformedToArray = $model->resultShouldBeTransformedToArray; + $useNewMapper = $model->isUseNewMapper(); + $isJsonContainVariadicType = $model->isJsonContainVariadicType(); + $pathsToVariadicTypesAndValue = $model->getPathsToVariadicTypesAndValue(); + $customFunctionForPaths = $model->getCustomFunctionForPaths(); + $pathsToDictionary = $model->getPathsToDictionary(); + + $payload['json'][] = $model->getPayload(); + $payload['headers'] = $config['headers']; + + $requestsPool[$key]['method'] = $model->getHttpMethod(); + $requestsPool[$key]['url'] = $model->getRequestToFunction(); + $requestsPool[$key]['params'] = $payload; + $requestsPool[$key]['pathToMainData'] = $model->getPathToMainData(); + } + + $http = new HttpClient($url, $apiVersion, $timeout, $login, $password); + $responses = $http->sendAsyncRequests($requestsPool, null); + + foreach ($responses as $response) { + + /** + * @var Responses $response + */ + + //get called class. + $calledClassNameWithNapeSpace = get_called_class(); + $classNameArray = explode('\\', $calledClassNameWithNapeSpace); + //for php 7.3 can be use array_last_key + $classNameArray[count($classNameArray) - 1]; + + $mapper = new DataMapper($classNameArray[count($classNameArray) - 1], $response->getStatus(), $pathToMainData); + + if ($useNewMapper) { + $paveDataOptions = new PaveDataOptions(); + $paveDataOptions->setJson($response->getResponse()); + $paveDataOptions->setJsonContainVariadicType($isJsonContainVariadicType); + $paveDataOptions->setPathsToDictionary($pathsToDictionary); + $paveDataOptions->setPathsToVariadicTypesAndValue($pathsToVariadicTypesAndValue); + $paveDataOptions->setCustomFunctionForPaths($customFunctionForPaths); + + $mappedModel = $mapper->paveDataNew($paveDataOptions); + + $results[] = $mappedModel; + } + + if (! $useNewMapper) { + $results[] = $mapper->paveData($response->getResponse(), null, $resultShouldTransformedToArray); + } + } + + return $results; + } + + /** + * @return \DFSClientV3\Services\HttpClient\Handlers\Responses + */ + public function process() + { + $http = new HttpClient($this->url, $this->apiVersion, $this->timeOut, $this->DFSLogin, $this->DFSPassword); + $payload = []; + + if (! $this->application) { + dd('DFSClient was not init, add to your code: $DFSClient = new DFSClient() '); + } + + if (! $this->requestToFunction) { + dd('requestFunction can not be null, set this field in your model: '.get_called_class()); + } + + if ($this->postId === null) { + $payload['json'][0] = $this->payload; + } + + if ($this->postId != null) { + $payload['json'][$this->postId] = $this->payload; + } + + $payload['headers'] = $this->config['headers']; + + $res = $http->sendSingleRequest($this->method, $this->requestToFunction, $payload); + + return $res; + } + + public function getAsJson() + { + $result = $this->process()->getResponse(); + + return $result; + } + + /** + * @return string|null + */ + public function getPathToMainData() + { + return $this->pathToMainData; + } + + /** + * @return mixed + */ + public function getCalledClass() + { + $calledClassNameWithNapeSpace = get_called_class(); + $classNameArray = explode('\\', $calledClassNameWithNapeSpace); + + //for php 7.3 can be use array_last_key + return $classNameArray[count($classNameArray) - 1]; + } + + public function setOpt() + { + + } + + public function setLogin(string $newLogin) + { + $this->DFSLogin = $newLogin; + + return $this; + } + + public function setPassword(string $newPassword) + { + $this->DFSPassword = $newPassword; + + return $this; + } + + /** + * @param bool $isSuccesful + * + * return mixed; + */ + protected function mapData(string $json, bool $isSuccesful = false) + { + + $mapper = new DataMapper($this->getCalledClass(), $isSuccesful, $this->pathToMainData); + + if ($this->useNewMapper) { + $paveDataOptions = new PaveDataOptions(); + $paveDataOptions->setJson($json); + $paveDataOptions->setJsonContainVariadicType($this->isJsonContainVariadicType()); + $paveDataOptions->setPathsToVariadicTypesAndValue($this->getPathsToVariadicTypesAndValue()); + $paveDataOptions->setPathsToDictionary($this->getPathsToDictionary()); + $paveDataOptions->setCustomFunctionForPaths($this->getCustomFunctionForPaths()); + + $mappedModel = $mapper->paveDataNew($paveDataOptions); + + return $mappedModel; + } + + $mappedModel = $mapper->paveData($json, null, $this->resultShouldBeTransformedToArray); + + return $mappedModel; + } + + /** + * @return bool + */ + public function resultShouldBeTransformedToArray() + { + return $this->resultShouldBeTransformedToArray; + } + + public function useSandbox(string $url = null) + { + $this->url = $this->config['sandboxUrl']; + } + + /** + * @param $timeOut int + */ + public function setTimeOut(int $timeOut) + { + $this->timeOut = $timeOut; + + return $this; + } + + public function isJsonContainVariadicType(): bool + { + return $this->jsonContainVariadicType; + } + + public function getPathsToVariadicTypesAndValue(): array + { + return $this->pathsToVariadicTypesAndValue; + } + + public function getPathsToDictionary(): array + { + return $this->pathsToDictionary; + } + + public function addCustomFunctionForPath(array $customFunction) + { + $this->customFunctionForPaths = array_merge($this->customFunctionForPaths, $customFunction); + + return $this; + } + + public function getCustomFunctionForPaths(): array + { + return $this->customFunctionForPaths; + } + + private function initDefaultMethods() + { + $this->addCustomFunctionForPath($this->initCustomFunctionForPaths()); + + } + + protected function initCustomFunctionForPaths(): array + { + return []; + } + + public function isUseNewMapper(): bool + { + return $this->useNewMapper; + } + + /** + * @return string + */ + public function getHttpMethod() + { + return $this->method; + } + + /** + * @return string|null + */ + public function getRequestToFunction() + { + return $this->requestToFunction; + } + + public function getPayload(): array + { + return $this->payload ?? []; + } +} diff --git a/app/Helpers/ThirdParty/DFS/SettingSerpLiveAdvanced.php b/app/Helpers/ThirdParty/DFS/SettingSerpLiveAdvanced.php new file mode 100644 index 0000000..fb79988 --- /dev/null +++ b/app/Helpers/ThirdParty/DFS/SettingSerpLiveAdvanced.php @@ -0,0 +1,203 @@ +{$postID}->result'; + + protected $requestToFunction = 'serp/{$se}/{$seType}/live/advanced'; + + protected $resultShouldBeTransformedToArray = true; + + protected $jsonContainVariadicType = true; + + protected $pathsToVariadicTypesAndValue = ['tasks->(:number)->result->(:number)->items->(:number)' => 'type']; + + protected $useNewMapper = true; + + /** + * @return $this + */ + public function setUrl(string $url) + { + $this->payload['url'] = $url; + + return $this; + } + + /** + * @return $this + */ + public function setLanguageCode(string $langCode) + { + $this->payload['language_code'] = $langCode; + + return $this; + } + + /** + * @return $this + */ + public function setKeyword(string $keyword) + { + $this->payload['keyword'] = $keyword; + + return $this; + } + + /** + * @return $this + */ + public function setPriority(string $priority) + { + $this->payload['priority'] = $priority; + + return $this; + } + + /** + * @return $this + */ + public function setLocationName(string $locationName) + { + $this->payload['location_name'] = $locationName; + + return $this; + } + + /** + * @return $this + */ + public function setLocationCode(int $locationCode) + { + $this->payload['location_code'] = $locationCode; + + return $this; + } + + /** + * @return $this + */ + public function setLocationCoordinate(string $locationCoordinate) + { + $this->payload['location_coordinate'] = $locationCoordinate; + + return $this; + } + + /** + * @return $this + */ + public function setLanguageName(string $languageName) + { + $this->payload['language_name'] = $languageName; + + return $this; + } + + /** + * @return $this + */ + public function setDevice(string $device) + { + $this->payload['device'] = $device; + + return $this; + } + + /** + * @return $this + */ + public function setOs(string $os) + { + $this->payload['os'] = $os; + + return $this; + } + + /** + * @return $this + */ + public function setSeDomain(string $seDomain) + { + $this->payload['se_domain'] = $seDomain; + + return $this; + } + + /** + * @return $this + */ + public function setDepth(int $depth) + { + $this->payload['depth'] = $depth; + + return $this; + } + + /** + * @return $this + */ + public function setSearchParam(string $searchParam) + { + $this->payload['search_param'] = $searchParam; + + return $this; + } + + /** + * @return $this + */ + public function setTag(string $tag) + { + $this->payload['tag'] = $tag; + + return $this; + } + + /** + * @return $this + * + * @throws \Exception + */ + public function setSeType(string $seType) + { + if (! in_array($seType, $this->seTypes)) { + throw new \Exception('Provided se type not allowed'); + } + + $this->requestToFunction = str_replace('{$seType}', $seType, $this->requestToFunction); + + return $this; + } + + /** + * @return $this + */ + public function setSe(string $seName) + { + $this->requestToFunction = str_replace('{$se}', $seName, $this->requestToFunction); + + return $this; + } + + public function get(): \DFSClientV3\Entity\Custom\SettingSerpLiveAdvancedEntityMain + { + return parent::get(); + } + + /** + * @return array + * + * @throws \Exception + */ + public static function getAfterMerge(array $modelPool) + { + return parent::getAfterMerge($modelPool); // TODO: Change the autogenerated stub + } +} diff --git a/app/Http/Controllers/Front/FrontHomeController.php b/app/Http/Controllers/Front/FrontHomeController.php new file mode 100644 index 0000000..0b0e943 --- /dev/null +++ b/app/Http/Controllers/Front/FrontHomeController.php @@ -0,0 +1,89 @@ +orderBy('published_at', 'desc')->first(); + $latest_posts = Post::where(function ($query) use ($featured_post) { + $query->whereNotIn('id', [$featured_post->id]); + })->where('status', 'publish')->orderBy('published_at', 'desc')->limit(5)->get(); + + return response(view('front.welcome', compact('featured_post', 'latest_posts')), 200); + } + + public function terms(Request $request) + { + $markdown = file_get_contents(resource_path('markdown/terms.md')); + + $title = 'Terms of Service'; + $description = 'Our Terms of Service outline your rights, responsibilities, and the standards we uphold for a seamless experience.'; + + SEOTools::metatags(); + SEOTools::twitter(); + SEOTools::opengraph(); + SEOTools::jsonLd(); + SEOTools::setTitle($title); + SEOTools::setDescription($description); + SEOMeta::setRobots('noindex'); + + $content = Markdown::convert($markdown)->getContent(); + + //$content = $this->injectTailwindClasses($content); + + return view('front.pages', compact('content', 'title', 'description')); + } + + public function privacy(Request $request) + { + $markdown = file_get_contents(resource_path('markdown/privacy.md')); + + $title = 'Privacy Policy'; + $description = 'Our Privacy Policy provides clarity about the data we collect and how we use it, ensuring your peace of mind.'; + + SEOTools::metatags(); + SEOTools::twitter(); + SEOTools::opengraph(); + SEOTools::jsonLd(); + SEOTools::setTitle($title); + SEOTools::setDescription($description); + SEOMeta::setRobots('noindex'); + + $content = Markdown::convert($markdown)->getContent(); + + //$content = $this->injectTailwindClasses($content); + + return view('front.pages', compact('content', 'title', 'description')); + } + + public function disclaimer(Request $request) + { + $markdown = file_get_contents(resource_path('markdown/disclaimer.md')); + + $title = 'Disclaimer'; + $description = 'EchoScoop provides the content on this website purely for informational purposes and should not be interpreted as legal, financial, or medical guidance.'; + + SEOTools::metatags(); + SEOTools::twitter(); + SEOTools::opengraph(); + SEOTools::jsonLd(); + SEOTools::setTitle($title); + SEOTools::setDescription($description); + SEOMeta::setRobots('noindex'); + + $content = Markdown::convert($markdown)->getContent(); + + //$content = $this->injectTailwindClasses($content); + + return view('front.pages', compact('content', 'title', 'description')); + } +} diff --git a/app/Http/Controllers/Front/FrontListController.php b/app/Http/Controllers/Front/FrontListController.php new file mode 100644 index 0000000..833632b --- /dev/null +++ b/app/Http/Controllers/Front/FrontListController.php @@ -0,0 +1,27 @@ +orderBy('published_at', 'desc')->simplePaginate(10) ?? collect(); + + return view('front.post_list', compact('posts')); + } + + public function category(Request $request, $category_slug) + { + $category = Category::where('slug', $category_slug)->first(); + + $posts = $category?->posts()->where('status', 'publish')->orderBy('published_at', 'desc')->simplePaginate(10) ?? collect(); + + return view('front.post_list', compact('category', 'posts')); + } +} diff --git a/app/Http/Controllers/Front/FrontPostController.php b/app/Http/Controllers/Front/FrontPostController.php new file mode 100644 index 0000000..c4af7cc --- /dev/null +++ b/app/Http/Controllers/Front/FrontPostController.php @@ -0,0 +1,132 @@ +where('status', 'publish')->first(); + + if (is_null($post)) { + return abort(404); + } + + $content = Markdown::convert($post->body)->getContent(); + + //dd($content); + $content = $this->injectBootstrapClasses($content); + $content = $this->injectTableOfContents($content); + $content = $this->injectFeaturedImage($post, $content); + + return view('front.single_post', compact('post', 'content')); + } + + private function injectBootstrapClasses($content) + { + $crawler = new Crawler($content); + + $crawler->filter('h1')->each(function (Crawler $node) { + $node->getNode(0)->setAttribute('class', trim($node->attr('class').' display-6 fw-bolder mt-3 mb-4')); + }); + + $crawler->filter('h2')->each(function (Crawler $node) { + $node->getNode(0)->setAttribute('class', trim($node->attr('class').'h4 mb-3')); + }); + + $crawler->filter('h3')->each(function (Crawler $node) { + $node->getNode(0)->setAttribute('class', trim($node->attr('class').'h6 mb-2')); + }); + + $crawler->filter('p')->each(function (Crawler $pNode) { + $precedingHeaders = $pNode->previousAll()->filter('h2'); + + // If there are no preceding

tags, just process the

+ if (! $precedingHeaders->count()) { + $existingClasses = $pNode->attr('class'); + $newClasses = trim($existingClasses.' mt-2 mb-4'); + $pNode->getNode(0)->setAttribute('class', $newClasses); + + return; + } + + $precedingHeader = $precedingHeaders->first(); + if (trim($precedingHeader->text()) !== 'FAQs') { + $existingClasses = $pNode->attr('class'); + $newClasses = trim($existingClasses.' mt-2 mb-4'); + $pNode->getNode(0)->setAttribute('class', $newClasses); + } + + if (strpos($pNode->text(), 'Q:') === 0) { + $currentClasses = $pNode->attr('class'); + $newClasses = trim($currentClasses.' fw-bold'); + $pNode->getNode(0)->setAttribute('class', $newClasses); + } + }); + + $crawler->filter('ul')->each(function (Crawler $node) { + $node->getNode(0)->setAttribute('class', trim($node->attr('class').'py-2')); + }); + + $crawler->filter('ol')->each(function (Crawler $node) { + $node->getNode(0)->setAttribute('class', trim($node->attr('class').'py-2')); + }); + + // Convert the modified DOM back to string + $modifiedContent = ''; + foreach ($crawler as $domElement) { + $modifiedContent .= $domElement->ownerDocument->saveHTML($domElement); + } + + return $modifiedContent; + } + + private function injectTableOfContents($html) + { + $crawler = new Crawler($html); + + // Create the Table of Contents + $toc = '

    '; + $crawler->filter('h2')->each(function (Crawler $node, $i) use (&$toc) { + $content = $node->text(); + $id = 'link-'.$i; // Creating a simple id based on the index + $node->getNode(0)->setAttribute('id', $id); // Set the id to the h2 tag + $toc .= "
  1. {$content}
  2. "; + }); + $toc .= '
'; + + // Insert TOC after h1 + $domDocument = $crawler->getNode(0)->ownerDocument; + $fragment = $domDocument->createDocumentFragment(); + $fragment->appendXML($toc); + $h1Node = $crawler->filter('h1')->getNode(0); + $h1Node->parentNode->insertBefore($fragment, $h1Node->nextSibling); + + // Get the updated HTML + $updatedHtml = $crawler->filter('body')->html(); + + return $updatedHtml; + + } + + private function injectFeaturedImage($post, $content) + { + if (! is_empty($post->featured_image)) { + $featured_image_alt = strtolower($post->short_title); + $featured_image_alt_caps = strtoupper($post->short_title); + $featured_image = "
featured_image_cdn}\" alt=\"{$featured_image_alt}\">
{$featured_image_alt_caps}
"; + + $content = preg_replace('/(<\/h1>)/', '$1'.$featured_image, $content, 1); + + } + + return $content; + + } +} diff --git a/app/Jobs/GenerateArticleFeaturedImageJob.php b/app/Jobs/GenerateArticleFeaturedImageJob.php new file mode 100644 index 0000000..2a886db --- /dev/null +++ b/app/Jobs/GenerateArticleFeaturedImageJob.php @@ -0,0 +1,37 @@ +post = $post; + } + + /** + * Execute the job. + */ + public function handle(): void + { + if (! is_null($this->post)) { + GenerateArticleFeaturedImageTask::handle($this->post); + } + } +} diff --git a/app/Jobs/GenerateArticleJob.php b/app/Jobs/GenerateArticleJob.php new file mode 100644 index 0000000..a0034e9 --- /dev/null +++ b/app/Jobs/GenerateArticleJob.php @@ -0,0 +1,37 @@ +serp_url = $serp_url; + } + + /** + * Execute the job. + */ + public function handle(): void + { + if (! is_null($this->serp_url)) { + GenerateArticleTask::handle($this->serp_url); + } + } +} diff --git a/app/Jobs/Tasks/GenerateArticleFeaturedImageTask.php b/app/Jobs/Tasks/GenerateArticleFeaturedImageTask.php new file mode 100644 index 0000000..866de12 --- /dev/null +++ b/app/Jobs/Tasks/GenerateArticleFeaturedImageTask.php @@ -0,0 +1,243 @@ +main_keyword; + $title = $post->short_title; + $article_type = $post->type; + $country_iso = 'US'; + $country_name = get_country_name_by_iso($country_iso); + + $images = []; + + $client = new DFSClient( + config('dataforseo.login'), + config('dataforseo.password'), + config('dataforseo.timeout'), + config('dataforseo.api_version'), + config('dataforseo.url'), + ); + + // You will receive SERP data specific to the indicated keyword, search engine, and location parameters + $serp_model = new SettingSerpLiveAdvanced(); + + $serp_model->setSe('google'); + $serp_model->setSeType('images'); + $serp_model->setKeyword($keyword); + $serp_model->setLocationName($country_name); + $serp_model->setDepth(100); + $serp_model->setLanguageCode('en'); + $serp_res = $serp_model->getAsJson(); + + // try { + $serp_obj = json_decode($serp_res, false, 512, JSON_THROW_ON_ERROR); + + //dd($serp_obj); + + if ($serp_obj?->status_code == 20000) { + $json_file_name = config('platform.dataset.news.images_serp.file_prefix').str_slug($keyword).'-'.epoch_now_timestamp().'.json'; + + $upload_status = OSSUploader::uploadJson( + config('platform.dataset.news.images_serp.driver'), + config('platform.dataset.news.images_serp.path'), + $json_file_name, + $serp_obj); + + if ($upload_status) { + $news_serp_result = new NewsSerpResult(); + $news_serp_result->serp_provider = 'dfs'; + $news_serp_result->serp_se = 'google'; + $news_serp_result->serp_se_type = 'images'; + $news_serp_result->serp_keyword = $keyword; + $news_serp_result->serp_country_iso = strtoupper($country_iso); + $news_serp_result->serp_cost = $serp_obj?->cost; + $news_serp_result->result_count = $serp_obj?->tasks[0]?->result[0]?->items_count; + $news_serp_result->filename = $json_file_name; + $news_serp_result->status = 'initial'; + + if ($news_serp_result->save()) { + + $serp_items = $serp_obj?->tasks[0]?->result[0]?->items; + + //dd($serp_items); + + foreach ($serp_items as $item) { + if ($item->type == 'images_search') { + //dd($item); + $images[] = $item->source_url; + + if (count($images) > 20) { + break; + } + } + + } + } + + //return $news_serp_result; + } else { + throw new Exception('Uploading failed', 1); + } + } else { + throw new Exception('Data failed', 1); + } + // } catch (Exception $e) { + // return null; + // } + + $numImagesInCanvas = 2; + + if ($numImagesInCanvas > count($images)) { + $numImagesInCanvas = count($images); + } + + $canvasWidth = 720; + $canvasHeight = 405; + + $canvas = Image::canvas($canvasWidth, $canvasHeight); + + // Add Images + $imageWidth = $canvasWidth / $numImagesInCanvas; + + // Process and place each image + $xOffset = 0; // Horizontal offset to place each image + for ($i = 0; $i < count($images); $i++) { + $url = $images[$i]; + + try { + $imageResponse = Http::timeout(300)->withHeaders([ + 'User-Agent' => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36', + ])->get($url); + + $imageContent = $imageResponse->body(); + + $image = Image::make($imageContent) + ->resize(null, $canvasHeight, function ($constraint) { + $constraint->aspectRatio(); + }) + ->resizeCanvas($imageWidth, $canvasHeight, 'center', false, [255, 255, 255, 0]); + //->blur(6) + + $canvas->insert($image, 'top-left', $xOffset, 0); + $xOffset += $imageWidth; + } catch (Exception $e) { + continue; + } + } + + /// + + $fontSize = 28; + $articleTypeFontSize = 24; + $padding = 15; + + $fontPath = resource_path('fonts/Inter/Inter-Black.ttf'); + + // Split title into words and reconstruct lines + $words = explode(' ', $title); + $lines = ['']; + $currentLineIndex = 0; + + foreach ($words as $word) { + $potentialLine = $lines[$currentLineIndex] ? $lines[$currentLineIndex].' '.$word : $word; + + $box = imagettfbbox($fontSize, 0, $fontPath, $potentialLine); + $textWidth = abs($box[2] - $box[0]); + + if ($textWidth < $canvasWidth * 0.9) { + $lines[$currentLineIndex] = $potentialLine; + } else { + $currentLineIndex++; + $lines[$currentLineIndex] = $word; + } + } + + // Calculate the dimensions of the article_type text + $articleTypeBox = imagettfbbox($articleTypeFontSize, 0, $fontPath, $article_type); + $articleTypeWidth = abs($articleTypeBox[2] - $articleTypeBox[0]); + $articleTypeHeight = abs($articleTypeBox[7] - $articleTypeBox[1]); + + // Define the start Y position for the article type overlay + $articleOverlayStartY = $canvasHeight - ($fontSize * count($lines)) - ($articleTypeHeight + 4 * $padding); + + // Create the blue overlay for the article type + $overlayWidth = $articleTypeWidth + 2 * $padding; + $canvas->rectangle(20, $articleOverlayStartY, 10 + $overlayWidth, $articleOverlayStartY + $articleTypeHeight + 2 * $padding, function ($draw) { + $draw->background([255, 255, 255, 0.8]); + }); + + // Overlay the article_type text within its overlay, centered horizontally and vertically + $textStartX = 20 + ($overlayWidth - $articleTypeWidth) / 2; // Center the text horizontally + $canvas->text(strtoupper($article_type), $textStartX, $articleOverlayStartY + ($articleTypeHeight + 2 * $padding) / 2, function ($font) use ($articleTypeFontSize, $fontPath) { + $font->file($fontPath); + $font->size($articleTypeFontSize); + $font->color('#0000FF'); + $font->align('left'); + $font->valign('middle'); // This ensures the text is vertically centered within the overlay + }); + + // Create the blue overlay for the title + $titleOverlayStartY = $articleOverlayStartY + $articleTypeHeight + 2 * $padding; + + $canvas->rectangle(0, $titleOverlayStartY, $canvasWidth, $canvasHeight, function ($draw) { + $draw->background([0, 0, 255, 0.5]); + }); + + // Draw each line for the title + $yPosition = $titleOverlayStartY + $padding; + foreach ($lines as $line) { + $canvas->text($line, $canvasWidth / 2, $yPosition, function ($font) use ($fontSize, $fontPath) { + $font->file($fontPath); + $font->size($fontSize); + $font->color('#FFFFFF'); + $font->align('center'); + $font->valign('top'); + }); + $yPosition += $fontSize + $padding; + } + + $filename = $post->slug.'-'.epoch_now_timestamp().'.jpg'; + + $ok = OSSUploader::uploadFile('r2', 'post_images/', $filename, (string) $canvas->stream('jpeg')); + + // LQIP + // Clone the main image for LQIP version + $lqipImage = clone $canvas; + + // Create the LQIP version of the image + $lqipImage->fit(10, 10, function ($constraint) { + $constraint->aspectRatio(); + }); + + $lqipImage->encode('jpg', 5); + + // LQIP filename + $lqip_filename = $post->slug.'-'.epoch_now_timestamp().'_lqip.jpg'; + + // Upload the LQIP version using OSSUploader + $lqip_ok = OSSUploader::uploadFile('r2', 'post_images/', $lqip_filename, (string) $lqipImage->stream('jpeg')); + + if ($ok && $lqip_ok) { + + $post->featured_image = 'post_images/'.$filename; + $post->status = 'publish'; + $post->save(); + + return $post; + } + + return null; + } +} diff --git a/app/Jobs/Tasks/GenerateArticleTask.php b/app/Jobs/Tasks/GenerateArticleTask.php new file mode 100644 index 0000000..5320078 --- /dev/null +++ b/app/Jobs/Tasks/GenerateArticleTask.php @@ -0,0 +1,82 @@ +title, $serp_url->description, 1); + + if (is_null($ai_titles)) { + return self::saveAndReturnSerpProcessStatus($serp_url, -2); + } + + $suggestion = null; + + // dump($ai_titles); + + try { + $random_key = array_rand($ai_titles?->suggestions, 1); + + $suggestion = $ai_titles->suggestions[$random_key]; + + } catch (Exception $e) { + return self::saveAndReturnSerpProcessStatus($serp_url, -1); + } + + if (is_null($suggestion)) { + return self::saveAndReturnSerpProcessStatus($serp_url, -3); + } + + $markdown = OpenAI::writeArticle($suggestion->title, $suggestion->description, $suggestion->article_type, 500, 800); + + if (is_empty($markdown)) { + return self::saveAndReturnSerpProcessStatus($serp_url, -4); + } + + $post = new Post; + $post->title = $suggestion->title; + $post->type = $suggestion->article_type; + $post->short_title = $ai_titles->short_title; + $post->main_keyword = $ai_titles->main_keyword; + $post->keywords = $suggestion->photo_keywords; + $post->slug = str_slug($suggestion->title); + $post->excerpt = $suggestion->description; + $post->author_id = Author::find(1)->id; + $post->featured = false; + $post->featured_image = null; + $post->body = $markdown; + $post->status = 'draft'; + + if ($post->save()) { + $post_category = new PostCategory; + $post_category->post_id = $post->id; + $post_category->category_id = $serp_url->category->id; + + if ($post_category->save()) { + return self::saveAndReturnSerpProcessStatus($serp_url, 1); + } else { + return self::saveAndReturnSerpProcessStatus($serp_url, -5); + } + } + + return self::saveAndReturnSerpProcessStatus($serp_url, -6); + } + + private static function saveAndReturnSerpProcessStatus($serp_url, $process_status) + { + $serp_url->process_status = $process_status; + $serp_url->save(); + + return $serp_url->process_status; + } +} diff --git a/app/Jobs/Tasks/GetNewsSerpTask.php b/app/Jobs/Tasks/GetNewsSerpTask.php new file mode 100644 index 0000000..3158816 --- /dev/null +++ b/app/Jobs/Tasks/GetNewsSerpTask.php @@ -0,0 +1,79 @@ +name}"); + + $client = new DFSClient( + config('dataforseo.login'), + config('dataforseo.password'), + config('dataforseo.timeout'), + config('dataforseo.api_version'), + config('dataforseo.url'), + ); + + // You will receive SERP data specific to the indicated keyword, search engine, and location parameters + $serp_model = new SettingSerpLiveAdvanced(); + + $serp_model->setSe('google'); + $serp_model->setSeType('news'); + $serp_model->setKeyword($keyword); + $serp_model->setLocationName($country_name); + $serp_model->setDepth(100); + $serp_model->setLanguageCode('en'); + $serp_res = $serp_model->getAsJson(); + + try { + $serp_obj = json_decode($serp_res, false, 512, JSON_THROW_ON_ERROR); + + if ($serp_obj?->status_code == 20000) { + $json_file_name = config('platform.dataset.news.news_serp.file_prefix').str_slug($category->name).'-'.epoch_now_timestamp().'.json'; + + $upload_status = OSSUploader::uploadJson( + config('platform.dataset.news.news_serp.driver'), + config('platform.dataset.news.news_serp.path'), + $json_file_name, + $serp_obj); + + if ($upload_status) { + $news_serp_result = new NewsSerpResult; + $news_serp_result->category_id = $category->id; + $news_serp_result->category_name = $category->name; + $news_serp_result->serp_provider = 'dfs'; + $news_serp_result->serp_se = 'google'; + $news_serp_result->serp_se_type = 'news'; + $news_serp_result->serp_keyword = $keyword; + $news_serp_result->serp_country_iso = strtoupper($country_iso); + $news_serp_result->serp_cost = $serp_obj?->cost; + $news_serp_result->result_count = $serp_obj?->tasks[0]?->result[0]?->items_count; + $news_serp_result->filename = $json_file_name; + $news_serp_result->status = 'initial'; + if ($news_serp_result->save()) { + $category->serp_at = now(); + $category->save(); + } + + return $news_serp_result; + } else { + throw new Exception('Uploading failed', 1); + } + } + } catch (Exception $e) { + return null; + } + + } +} diff --git a/app/Jobs/Tasks/ParseNewsSerpDomainsTask.php b/app/Jobs/Tasks/ParseNewsSerpDomainsTask.php new file mode 100644 index 0000000..95f4522 --- /dev/null +++ b/app/Jobs/Tasks/ParseNewsSerpDomainsTask.php @@ -0,0 +1,146 @@ +category->serp_at); + + $serp_results = null; + + $success = false; + + try { + + $serp_results = OSSUploader::readJson( + config('platform.dataset.news.news_serp.driver'), + config('platform.dataset.news.news_serp.path'), + $news_serp_result->filename)?->tasks[0]?->result[0]?->items; + + } catch (Exception $e) { + $serp_results = null; + } + + if (! is_null($serp_results)) { + + $valid_serps = []; + + foreach ($serp_results as $serp_item) { + + $news_date = Carbon::parse($serp_item->timestamp); + + if (is_empty($serp_item->url)) { + continue; + } + + // if (!str_contains($serp_item->time_published, "hours")) + // { + // continue; + // } + + $serp_url = SerpUrl::where('url', $serp_item->url)->first(); + + if (! is_null($serp_url)) { + if ($serp_url->status == 'blocked') { + continue; + } + + } + + if (str_contains($serp_item->title, ':')) { + continue; + } + + $valid_serps[] = $serp_item; + + if (count($valid_serps) >= $serp_counts) { + break; + } + + } + + //dd($valid_serps); + + foreach ($valid_serps as $serp_item) { + + //dd($serp_item); + + if (is_null($serp_url)) { + $serp_url = new SerpUrl; + $serp_url->category_id = $news_serp_result->category_id; + $serp_url->category_name = $news_serp_result->category_name; + $serp_url->news_serp_result_id = $news_serp_result->id; + } + + $serp_url->source = 'serp'; + $serp_url->url = self::normalizeUrl($serp_item->url); + $serp_url->country_iso = $news_serp_result->serp_country_iso; + + if (! is_empty($serp_item->title)) { + $serp_url->title = $serp_item->title; + } + + if (! is_empty($serp_item->snippet)) { + $serp_url->description = $serp_item->snippet; + } + + if ($serp_url->isDirty()) { + $serp_url->serp_at = $news_serp_result->category->serp_at; + } + + if ($serp_url->save()) { + $success = true; + } + } + } + + return $success; + } + + private static function normalizeUrl($url) + { + try { + $parsedUrl = parse_url($url); + + // Force the scheme to https to avoid duplicate content issues + $parsedUrl['scheme'] = 'https'; + + if (! isset($parsedUrl['host'])) { + // If the host is not present, throw an exception + throw new \Exception('Host not found in URL'); + } + + // Check if the path is set and ends with a trailing slash, if so, remove it + if (isset($parsedUrl['path']) && substr($parsedUrl['path'], -1) === '/') { + $parsedUrl['path'] = rtrim($parsedUrl['path'], '/'); + } + + // Remove query parameters + unset($parsedUrl['query']); + + $normalizedUrl = sprintf( + '%s://%s%s', + $parsedUrl['scheme'], + $parsedUrl['host'], + $parsedUrl['path'] ?? '' + ); + + // Remove fragment if exists + $normalizedUrl = preg_replace('/#.*$/', '', $normalizedUrl); + + return $normalizedUrl; + } catch (\Exception $e) { + // In case of an exception, return the original URL + return $url; + } + } +} diff --git a/app/Models/Author.php b/app/Models/Author.php new file mode 100644 index 0000000..81b5ee3 --- /dev/null +++ b/app/Models/Author.php @@ -0,0 +1,47 @@ + 'bool', + 'public' => 'bool', + ]; + + protected $fillable = [ + 'name', + 'avatar', + 'bio', + 'enabled', + 'public', + ]; + + public function posts() + { + return $this->hasMany(Post::class); + } +} diff --git a/app/Models/Category.php b/app/Models/Category.php index c95d74b..dfa2f33 100644 --- a/app/Models/Category.php +++ b/app/Models/Category.php @@ -16,6 +16,7 @@ * * @property int $id * @property string $name + * @property string $short_name * @property string|null $slug * @property bool $enabled * @property Carbon|null $created_at @@ -39,6 +40,7 @@ class Category extends Model protected $fillable = [ 'name', + 'short_name', 'slug', 'enabled', '_lft', @@ -64,4 +66,16 @@ public function saveQuietly(array $options = []) return $this->save($options); }); } + + public function posts() + { + return $this->hasManyThrough( + Post::class, + PostCategory::class, + 'category_id', // Foreign key on PostCategory table + 'id', // Local key on Post table + 'id', // Local key on Category table + 'post_id' // Foreign key on PostCategory table + ); + } } diff --git a/app/Models/NewsSerpResult.php b/app/Models/NewsSerpResult.php new file mode 100644 index 0000000..893d35a --- /dev/null +++ b/app/Models/NewsSerpResult.php @@ -0,0 +1,59 @@ + 'int', + 'serp_cost' => 'float', + 'result_count' => 'int', + ]; + + protected $fillable = [ + 'category_id', + 'category_name', + 'serp_provider', + 'serp_se', + 'serp_se_type', + 'serp_keyword', + 'serp_country_iso', + 'serp_cost', + 'result_count', + 'filename', + 'status', + ]; + + public function category() + { + return $this->belongsTo(Category::class); + } +} diff --git a/app/Models/Post.php b/app/Models/Post.php new file mode 100644 index 0000000..aaa283f --- /dev/null +++ b/app/Models/Post.php @@ -0,0 +1,123 @@ + 'int', + 'featured' => 'bool', + 'views_count' => 'int', + 'keywords' => 'array', + 'published_at' => 'datetime', + ]; + + protected $fillable = [ + 'title', + 'short_title', + 'slug', + 'type', + 'excerpt', + 'author_id', + 'featured', + 'featured_image', + 'body', + 'views_count', + 'status', + 'main_keyword', + 'keywords', + 'published_at', + ]; + + public function getFeaturedImageLqipCdnAttribute() + { + if (! is_empty($this->featured_image)) { + // Get the extension of the original featured image + $extension = pathinfo($this->featured_image, PATHINFO_EXTENSION); + + // Append "_lqip" before the extension to create the LQIP image URL + $lqipFeaturedImage = str_replace(".{$extension}", "_lqip.{$extension}", $this->featured_image); + + return 'https://'.Storage::disk('r2')->url($lqipFeaturedImage); + + } + + return null; + } + + public function getFeaturedImageCdnAttribute() + { + if (! is_empty($this->featured_image)) { + return 'https://'.Storage::disk('r2')->url($this->featured_image); + } + + return null; + } + + public function author() + { + return $this->belongsTo(Author::class); + } + + public function category() + { + return $this->hasOneThrough( + Category::class, // The target model + PostCategory::class, // The through model + 'post_id', // The foreign key on the through model + 'id', // The local key on the parent model (Post) + 'id', // The local key on the through model (PostCategory) + 'category_id' // The foreign key on the target model (Category) + ); + } + + public function toFeedItem(): FeedItem + { + return FeedItem::create([ + 'id' => $this->id, + 'title' => $this->title, + 'summary' => $this->excerpt, + 'updated' => $this->updated_at, + 'link' => route('posts.show', $this->slug), + 'authorName' => optional($this->author)->name, + ]); + } + + public static function getFeedItems() + { + return self::where('status', 'published')->latest('published_at')->take(10)->get(); + } +} diff --git a/app/Models/PostCategory.php b/app/Models/PostCategory.php new file mode 100644 index 0000000..c312ac0 --- /dev/null +++ b/app/Models/PostCategory.php @@ -0,0 +1,46 @@ + 'int', + 'category_id' => 'int', + ]; + + protected $fillable = [ + 'post_id', + 'category_id', + ]; + + public function post() + { + return $this->belongsTo(Post::class); + } + + public function category() + { + return $this->belongsTo(Category::class); + } +} diff --git a/app/Models/SerpUrl.php b/app/Models/SerpUrl.php new file mode 100644 index 0000000..805f29b --- /dev/null +++ b/app/Models/SerpUrl.php @@ -0,0 +1,65 @@ + 'int', + 'category_id' => 'int', + 'process_status' => 'int', + 'serp_at' => 'datetime', + ]; + + protected $fillable = [ + 'news_serp_result_id', + 'category_id', + 'category_name', + 'source', + 'url', + 'country_iso', + 'title', + 'description', + 'process_status', + 'serp_at', + 'status', + ]; + + public function news_serp_result() + { + return $this->belongsTo(NewsSerpResult::class); + } + + public function category() + { + return $this->belongsTo(Category::class); + } +} diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index 1cf5f15..4ae7c90 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -35,6 +35,10 @@ public function boot(): void Route::middleware('web') ->group(base_path('routes/web.php')); + + Route::middleware('web') + ->prefix('tests') + ->group(base_path('routes/tests.php')); }); } } diff --git a/app/Providers/ViewServiceProvider.php b/app/Providers/ViewServiceProvider.php new file mode 100644 index 0000000..fe15d58 --- /dev/null +++ b/app/Providers/ViewServiceProvider.php @@ -0,0 +1,32 @@ +with('parent_categories', Category::whereNull('parent_id')->get()); + } +} diff --git a/composer.json b/composer.json index 55b8722..6ac9305 100644 --- a/composer.json +++ b/composer.json @@ -1,72 +1,87 @@ { - "name": "laravel/laravel", - "type": "project", - "description": "The skeleton application for the Laravel framework.", - "keywords": ["laravel", "framework"], - "license": "MIT", - "require": { - "php": "^8.1", - "artesaos/seotools": "^1.2", - "guzzlehttp/guzzle": "^7.2", - "kalnoy/nestedset": "^6.0", - "laravel/framework": "^10.10", - "laravel/sanctum": "^3.2", - "laravel/tinker": "^2.8", - "spatie/laravel-googletagmanager": "^2.6", - "tightenco/ziggy": "^1.6" + "name": "laravel/laravel", + "type": "project", + "description": "The skeleton application for the Laravel framework.", + "keywords": [ + "laravel", + "framework" + ], + "license": "MIT", + "require": { + "php": "^8.1", + "artesaos/seotools": "^1.2", + "graham-campbell/markdown": "^15.0", + "guzzlehttp/guzzle": "^7.2", + "intervention/image": "^2.7", + "jovix/dataforseo-clientv3": "^1.1", + "kalnoy/nestedset": "^6.0", + "laravel/framework": "^10.10", + "laravel/sanctum": "^3.2", + "laravel/tinker": "^2.8", + "league/flysystem-aws-s3-v3": "^3.0", + "predis/predis": "^2.2", + "spatie/laravel-feed": "^4.3", + "spatie/laravel-googletagmanager": "^2.6", + "spatie/laravel-sitemap": "^6.3", + "symfony/dom-crawler": "^6.3", + "tightenco/ziggy": "^1.6", + "watson/active": "^7.0" + }, + "require-dev": { + "fakerphp/faker": "^1.9.1", + "laravel/pint": "^1.0", + "laravel/sail": "^1.18", + "mockery/mockery": "^1.4.4", + "nunomaduro/collision": "^7.0", + "pestphp/pest": "^2.0", + "pestphp/pest-plugin-laravel": "^2.0", + "reliese/laravel": "^1.2", + "spatie/laravel-ignition": "^2.0" + }, + "autoload": { + "psr-4": { + "App\\": "app/", + "Database\\Factories\\": "database/factories/", + "Database\\Seeders\\": "database/seeders/" + } + }, + "autoload-dev": { + "psr-4": { + "Tests\\": "tests/" }, - "require-dev": { - "fakerphp/faker": "^1.9.1", - "laravel/pint": "^1.0", - "laravel/sail": "^1.18", - "mockery/mockery": "^1.4.4", - "nunomaduro/collision": "^7.0", - "pestphp/pest": "^2.0", - "pestphp/pest-plugin-laravel": "^2.0", - "reliese/laravel": "^1.2", - "spatie/laravel-ignition": "^2.0" - }, - "autoload": { - "psr-4": { - "App\\": "app/", - "Database\\Factories\\": "database/factories/", - "Database\\Seeders\\": "database/seeders/" - } - }, - "autoload-dev": { - "psr-4": { - "Tests\\": "tests/" - } - }, - "scripts": { - "post-autoload-dump": [ - "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", - "@php artisan package:discover --ansi" - ], - "post-update-cmd": [ - "@php artisan vendor:publish --tag=laravel-assets --ansi --force" - ], - "post-root-package-install": [ - "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" - ], - "post-create-project-cmd": [ - "@php artisan key:generate --ansi" - ] - }, - "extra": { - "laravel": { - "dont-discover": [] - } - }, - "config": { - "optimize-autoloader": true, - "preferred-install": "dist", - "sort-packages": true, - "allow-plugins": { - "pestphp/pest-plugin": true, - "php-http/discovery": true - } - }, - "minimum-stability": "stable", - "prefer-stable": true + "files": [ + "app/Helpers/Global/helpers.php" + ] + }, + "scripts": { + "post-autoload-dump": [ + "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", + "@php artisan package:discover --ansi" + ], + "post-update-cmd": [ + "@php artisan vendor:publish --tag=laravel-assets --ansi --force" + ], + "post-root-package-install": [ + "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" + ], + "post-create-project-cmd": [ + "@php artisan key:generate --ansi" + ] + }, + "extra": { + "laravel": { + "dont-discover": [] + } + }, + "config": { + "optimize-autoloader": true, + "preferred-install": "dist", + "sort-packages": true, + "allow-plugins": { + "pestphp/pest-plugin": true, + "php-http/discovery": true + } + }, + "minimum-stability": "stable", + "prefer-stable": true } diff --git a/composer.lock b/composer.lock index cc5814d..73c99eb 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "d34b77923c789e17f7e8a9c58c191ebb", + "content-hash": "1471d10bc74cb3cbd2259613ca941433", "packages": [ { "name": "artesaos/seotools", @@ -78,6 +78,155 @@ }, "time": "2023-05-09T14:20:42+00:00" }, + { + "name": "aws/aws-crt-php", + "version": "v1.2.2", + "source": { + "type": "git", + "url": "https://github.com/awslabs/aws-crt-php.git", + "reference": "2f1dc7b7eda080498be96a4a6d683a41583030e9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/2f1dc7b7eda080498be96a4a6d683a41583030e9", + "reference": "2f1dc7b7eda080498be96a4a6d683a41583030e9", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35||^5.6.3||^9.5", + "yoast/phpunit-polyfills": "^1.0" + }, + "suggest": { + "ext-awscrt": "Make sure you install awscrt native extension to use any of the functionality." + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "AWS SDK Common Runtime Team", + "email": "aws-sdk-common-runtime@amazon.com" + } + ], + "description": "AWS Common Runtime for PHP", + "homepage": "https://github.com/awslabs/aws-crt-php", + "keywords": [ + "amazon", + "aws", + "crt", + "sdk" + ], + "support": { + "issues": "https://github.com/awslabs/aws-crt-php/issues", + "source": "https://github.com/awslabs/aws-crt-php/tree/v1.2.2" + }, + "time": "2023-07-20T16:49:55+00:00" + }, + { + "name": "aws/aws-sdk-php", + "version": "3.281.11", + "source": { + "type": "git", + "url": "https://github.com/aws/aws-sdk-php.git", + "reference": "9d466efae67d5016ed132fd4ffa1566a7d4cab98" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/9d466efae67d5016ed132fd4ffa1566a7d4cab98", + "reference": "9d466efae67d5016ed132fd4ffa1566a7d4cab98", + "shasum": "" + }, + "require": { + "aws/aws-crt-php": "^1.0.4", + "ext-json": "*", + "ext-pcre": "*", + "ext-simplexml": "*", + "guzzlehttp/guzzle": "^6.5.8 || ^7.4.5", + "guzzlehttp/promises": "^1.4.0 || ^2.0", + "guzzlehttp/psr7": "^1.9.1 || ^2.4.5", + "mtdowling/jmespath.php": "^2.6", + "php": ">=7.2.5", + "psr/http-message": "^1.0 || ^2.0" + }, + "require-dev": { + "andrewsville/php-token-reflection": "^1.4", + "aws/aws-php-sns-message-validator": "~1.0", + "behat/behat": "~3.0", + "composer/composer": "^1.10.22", + "dms/phpunit-arraysubset-asserts": "^0.4.0", + "doctrine/cache": "~1.4", + "ext-dom": "*", + "ext-openssl": "*", + "ext-pcntl": "*", + "ext-sockets": "*", + "nette/neon": "^2.3", + "paragonie/random_compat": ">= 2", + "phpunit/phpunit": "^5.6.3 || ^8.5 || ^9.5", + "psr/cache": "^1.0", + "psr/simple-cache": "^1.0", + "sebastian/comparator": "^1.2.3 || ^4.0", + "yoast/phpunit-polyfills": "^1.0" + }, + "suggest": { + "aws/aws-php-sns-message-validator": "To validate incoming SNS notifications", + "doctrine/cache": "To use the DoctrineCacheAdapter", + "ext-curl": "To send requests using cURL", + "ext-openssl": "Allows working with CloudFront private distributions and verifying received SNS messages", + "ext-sockets": "To use client-side monitoring" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Aws\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Amazon Web Services", + "homepage": "http://aws.amazon.com" + } + ], + "description": "AWS SDK for PHP - Use Amazon Web Services in your PHP project", + "homepage": "http://aws.amazon.com/sdkforphp", + "keywords": [ + "amazon", + "aws", + "cloud", + "dynamodb", + "ec2", + "glacier", + "s3", + "sdk" + ], + "support": { + "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", + "issues": "https://github.com/aws/aws-sdk-php/issues", + "source": "https://github.com/aws/aws-sdk-php/tree/3.281.11" + }, + "time": "2023-09-20T19:16:24+00:00" + }, { "name": "brick/math", "version": "0.11.0", @@ -575,6 +724,86 @@ ], "time": "2022-02-20T15:07:15+00:00" }, + { + "name": "graham-campbell/markdown", + "version": "v15.0.0", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Laravel-Markdown.git", + "reference": "3c0bcf904ec02acb1afd0e23e7c170ac5199fc14" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Laravel-Markdown/zipball/3c0bcf904ec02acb1afd0e23e7c170ac5199fc14", + "reference": "3c0bcf904ec02acb1afd0e23e7c170ac5199fc14", + "shasum": "" + }, + "require": { + "illuminate/contracts": "^8.75 || ^9.0 || ^10.0", + "illuminate/filesystem": "^8.75 || ^9.0 || ^10.0", + "illuminate/support": "^8.75 || ^9.0 || ^10.0", + "illuminate/view": "^8.75 || ^9.0 || ^10.0", + "league/commonmark": "^2.3.9", + "php": "^7.4.15 || ^8.0.2" + }, + "require-dev": { + "graham-campbell/analyzer": "^4.0", + "graham-campbell/testbench": "^6.0", + "mockery/mockery": "^1.5.1", + "phpunit/phpunit": "^9.6.3 || ^10.0.12" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "GrahamCampbell\\Markdown\\MarkdownServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "GrahamCampbell\\Markdown\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "Markdown Is A CommonMark Wrapper For Laravel", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Laravel Markdown", + "Laravel-Markdown", + "common mark", + "commonmark", + "framework", + "laravel", + "markdown" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Laravel-Markdown/issues", + "source": "https://github.com/GrahamCampbell/Laravel-Markdown/tree/v15.0.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/markdown", + "type": "tidelift" + } + ], + "time": "2023-02-26T14:22:13+00:00" + }, { "name": "graham-campbell/result-type", "version": "v1.1.1", @@ -1042,6 +1271,133 @@ ], "time": "2023-08-27T10:19:19+00:00" }, + { + "name": "intervention/image", + "version": "2.7.2", + "source": { + "type": "git", + "url": "https://github.com/Intervention/image.git", + "reference": "04be355f8d6734c826045d02a1079ad658322dad" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Intervention/image/zipball/04be355f8d6734c826045d02a1079ad658322dad", + "reference": "04be355f8d6734c826045d02a1079ad658322dad", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "guzzlehttp/psr7": "~1.1 || ^2.0", + "php": ">=5.4.0" + }, + "require-dev": { + "mockery/mockery": "~0.9.2", + "phpunit/phpunit": "^4.8 || ^5.7 || ^7.5.15" + }, + "suggest": { + "ext-gd": "to use GD library based image processing.", + "ext-imagick": "to use Imagick based image processing.", + "intervention/imagecache": "Caching extension for the Intervention Image library" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.4-dev" + }, + "laravel": { + "providers": [ + "Intervention\\Image\\ImageServiceProvider" + ], + "aliases": { + "Image": "Intervention\\Image\\Facades\\Image" + } + } + }, + "autoload": { + "psr-4": { + "Intervention\\Image\\": "src/Intervention/Image" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Oliver Vogel", + "email": "oliver@intervention.io", + "homepage": "https://intervention.io/" + } + ], + "description": "Image handling and manipulation library with support for Laravel integration", + "homepage": "http://image.intervention.io/", + "keywords": [ + "gd", + "image", + "imagick", + "laravel", + "thumbnail", + "watermark" + ], + "support": { + "issues": "https://github.com/Intervention/image/issues", + "source": "https://github.com/Intervention/image/tree/2.7.2" + }, + "funding": [ + { + "url": "https://paypal.me/interventionio", + "type": "custom" + }, + { + "url": "https://github.com/Intervention", + "type": "github" + } + ], + "time": "2022-05-21T17:30:32+00:00" + }, + { + "name": "jovix/dataforseo-clientv3", + "version": "v1.1.4", + "source": { + "type": "git", + "url": "https://github.com/jovixv/DFSClient-v3.git", + "reference": "b3b7f8d28348986e26a9e8d9886eae3f63b3ef45" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jovixv/DFSClient-v3/zipball/b3b7f8d28348986e26a9e8d9886eae3f63b3ef45", + "reference": "b3b7f8d28348986e26a9e8d9886eae3f63b3ef45", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/guzzle": ">=7.0", + "php": ">=7.2", + "symfony/var-dumper": ">=5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "DFSClientV3\\": "src/DFSClient/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Vitaliy Lyabakh", + "email": "igrolan@gmail.com" + } + ], + "description": "PHP Client for DataForSeo", + "support": { + "issues": "https://github.com/jovixv/DFSClient-v3/issues", + "source": "https://github.com/jovixv/DFSClient-v3/tree/v1.1.4" + }, + "time": "2021-09-18T13:11:19+00:00" + }, { "name": "kalnoy/nestedset", "version": "v6.0.2", @@ -1826,6 +2182,72 @@ ], "time": "2023-09-07T19:22:17+00:00" }, + { + "name": "league/flysystem-aws-s3-v3", + "version": "3.16.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git", + "reference": "ded9ba346bb01cb9cc4cc7f2743c2c0e14d18e1c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/ded9ba346bb01cb9cc4cc7f2743c2c0e14d18e1c", + "reference": "ded9ba346bb01cb9cc4cc7f2743c2c0e14d18e1c", + "shasum": "" + }, + "require": { + "aws/aws-sdk-php": "^3.220.0", + "league/flysystem": "^3.10.0", + "league/mime-type-detection": "^1.0.0", + "php": "^8.0.2" + }, + "conflict": { + "guzzlehttp/guzzle": "<7.0", + "guzzlehttp/ringphp": "<1.1.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\Flysystem\\AwsS3V3\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frankdejonge.nl" + } + ], + "description": "AWS S3 filesystem adapter for Flysystem.", + "keywords": [ + "Flysystem", + "aws", + "file", + "files", + "filesystem", + "s3", + "storage" + ], + "support": { + "issues": "https://github.com/thephpleague/flysystem-aws-s3-v3/issues", + "source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.16.0" + }, + "funding": [ + { + "url": "https://ecologi.com/frankdejonge", + "type": "custom" + }, + { + "url": "https://github.com/frankdejonge", + "type": "github" + } + ], + "time": "2023-08-30T10:14:57+00:00" + }, { "name": "league/flysystem-local", "version": "3.16.0", @@ -1886,6 +2308,71 @@ ], "time": "2023-08-30T10:23:59+00:00" }, + { + "name": "league/glide", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/glide.git", + "reference": "2ff92c8f1edc80b74e2d3c5efccfc7223f74d407" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/glide/zipball/2ff92c8f1edc80b74e2d3c5efccfc7223f74d407", + "reference": "2ff92c8f1edc80b74e2d3c5efccfc7223f74d407", + "shasum": "" + }, + "require": { + "intervention/image": "^2.7", + "league/flysystem": "^2.0|^3.0", + "php": "^7.2|^8.0", + "psr/http-message": "^1.0|^2.0" + }, + "require-dev": { + "mockery/mockery": "^1.3.3", + "phpunit/php-token-stream": "^3.1|^4.0", + "phpunit/phpunit": "^8.5|^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\Glide\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jonathan Reinink", + "email": "jonathan@reinink.ca", + "homepage": "http://reinink.ca" + }, + { + "name": "Titouan Galopin", + "email": "galopintitouan@gmail.com", + "homepage": "https://titouangalopin.com" + } + ], + "description": "Wonderfully easy on-demand image manipulation library with an HTTP based API.", + "homepage": "http://glide.thephpleague.com", + "keywords": [ + "ImageMagick", + "editing", + "gd", + "image", + "imagick", + "league", + "manipulation", + "processing" + ], + "support": { + "issues": "https://github.com/thephpleague/glide/issues", + "source": "https://github.com/thephpleague/glide/tree/2.3.0" + }, + "time": "2023-07-08T06:26:07+00:00" + }, { "name": "league/mime-type-detection", "version": "1.13.0", @@ -1942,6 +2429,73 @@ ], "time": "2023-08-05T12:09:49+00:00" }, + { + "name": "masterminds/html5", + "version": "2.8.1", + "source": { + "type": "git", + "url": "https://github.com/Masterminds/html5-php.git", + "reference": "f47dcf3c70c584de14f21143c55d9939631bc6cf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/f47dcf3c70c584de14f21143c55d9939631bc6cf", + "reference": "f47dcf3c70c584de14f21143c55d9939631bc6cf", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Masterminds\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Matt Butcher", + "email": "technosophos@gmail.com" + }, + { + "name": "Matt Farina", + "email": "matt@mattfarina.com" + }, + { + "name": "Asmir Mustafic", + "email": "goetas@gmail.com" + } + ], + "description": "An HTML5 parser and serializer.", + "homepage": "http://masterminds.github.io/html5-php", + "keywords": [ + "HTML5", + "dom", + "html", + "parser", + "querypath", + "serializer", + "xml" + ], + "support": { + "issues": "https://github.com/Masterminds/html5-php/issues", + "source": "https://github.com/Masterminds/html5-php/tree/2.8.1" + }, + "time": "2023-05-10T11:58:31+00:00" + }, { "name": "monolog/monolog", "version": "3.4.0", @@ -2043,6 +2597,72 @@ ], "time": "2023-06-21T08:46:11+00:00" }, + { + "name": "mtdowling/jmespath.php", + "version": "2.7.0", + "source": { + "type": "git", + "url": "https://github.com/jmespath/jmespath.php.git", + "reference": "bbb69a935c2cbb0c03d7f481a238027430f6440b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/bbb69a935c2cbb0c03d7f481a238027430f6440b", + "reference": "bbb69a935c2cbb0c03d7f481a238027430f6440b", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "symfony/polyfill-mbstring": "^1.17" + }, + "require-dev": { + "composer/xdebug-handler": "^3.0.3", + "phpunit/phpunit": "^8.5.33" + }, + "bin": [ + "bin/jp.php" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "files": [ + "src/JmesPath.php" + ], + "psr-4": { + "JmesPath\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + } + ], + "description": "Declaratively specify how to extract elements from a JSON document", + "keywords": [ + "json", + "jsonpath" + ], + "support": { + "issues": "https://github.com/jmespath/jmespath.php/issues", + "source": "https://github.com/jmespath/jmespath.php/tree/2.7.0" + }, + "time": "2023-08-25T10:54:48+00:00" + }, { "name": "nesbot/carbon", "version": "2.70.0", @@ -2297,6 +2917,52 @@ }, "time": "2023-09-19T11:58:07+00:00" }, + { + "name": "nicmart/tree", + "version": "0.3.1", + "source": { + "type": "git", + "url": "https://github.com/nicmart/Tree.git", + "reference": "c55ba47c64a3cb7454c22e6d630729fc2aab23ff" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nicmart/Tree/zipball/c55ba47c64a3cb7454c22e6d630729fc2aab23ff", + "reference": "c55ba47c64a3cb7454c22e6d630729fc2aab23ff", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.8.0", + "ergebnis/license": "^1.0.0", + "ergebnis/php-cs-fixer-config": "^2.2.1", + "phpunit/phpunit": "^7.5.20" + }, + "type": "library", + "autoload": { + "psr-4": { + "Tree\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolò Martini", + "email": "nicmartnic@gmail.com" + } + ], + "description": "A basic but flexible php tree data structure and a fluent tree builder implementation.", + "support": { + "issues": "https://github.com/nicmart/Tree/issues", + "source": "https://github.com/nicmart/Tree/tree/0.3.1" + }, + "time": "2020-11-27T09:02:17+00:00" + }, { "name": "nikic/php-parser", "version": "v4.17.1", @@ -2514,6 +3180,67 @@ ], "time": "2023-02-25T19:38:58+00:00" }, + { + "name": "predis/predis", + "version": "v2.2.2", + "source": { + "type": "git", + "url": "https://github.com/predis/predis.git", + "reference": "b1d3255ed9ad4d7254f9f9bba386c99f4bb983d1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/predis/predis/zipball/b1d3255ed9ad4d7254f9f9bba386c99f4bb983d1", + "reference": "b1d3255ed9ad4d7254f9f9bba386c99f4bb983d1", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.3", + "phpstan/phpstan": "^1.9", + "phpunit/phpunit": "^8.0 || ~9.4.4" + }, + "suggest": { + "ext-relay": "Faster connection with in-memory caching (>=0.6.2)" + }, + "type": "library", + "autoload": { + "psr-4": { + "Predis\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Till Krüss", + "homepage": "https://till.im", + "role": "Maintainer" + } + ], + "description": "A flexible and feature-complete Redis client for PHP.", + "homepage": "http://github.com/predis/predis", + "keywords": [ + "nosql", + "predis", + "redis" + ], + "support": { + "issues": "https://github.com/predis/predis/issues", + "source": "https://github.com/predis/predis/tree/v2.2.2" + }, + "funding": [ + { + "url": "https://github.com/sponsors/tillkruss", + "type": "github" + } + ], + "time": "2023-09-13T16:42:03+00:00" + }, { "name": "psr/clock", "version": "1.0.0", @@ -3231,6 +3958,356 @@ ], "time": "2023-04-15T23:01:58+00:00" }, + { + "name": "spatie/browsershot", + "version": "3.58.2", + "source": { + "type": "git", + "url": "https://github.com/spatie/browsershot.git", + "reference": "6503b2b429e10ff28a4cdb9fffaecc25ba6d032c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/browsershot/zipball/6503b2b429e10ff28a4cdb9fffaecc25ba6d032c", + "reference": "6503b2b429e10ff28a4cdb9fffaecc25ba6d032c", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.4|^8.0", + "spatie/image": "^1.5.3|^2.0", + "spatie/temporary-directory": "^1.1|^2.0", + "symfony/process": "^4.2|^5.0|^6.0" + }, + "require-dev": { + "pestphp/pest": "^1.20", + "spatie/phpunit-snapshot-assertions": "^4.2.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\Browsershot\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://github.com/freekmurze", + "role": "Developer" + } + ], + "description": "Convert a webpage to an image or pdf using headless Chrome", + "homepage": "https://github.com/spatie/browsershot", + "keywords": [ + "chrome", + "convert", + "headless", + "image", + "pdf", + "puppeteer", + "screenshot", + "webpage" + ], + "support": { + "source": "https://github.com/spatie/browsershot/tree/3.58.2" + }, + "funding": [ + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2023-07-27T07:51:54+00:00" + }, + { + "name": "spatie/crawler", + "version": "7.1.3", + "source": { + "type": "git", + "url": "https://github.com/spatie/crawler.git", + "reference": "f0f73947fdfaf68efdc68b73c4dbb28dfc785113" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/crawler/zipball/f0f73947fdfaf68efdc68b73c4dbb28dfc785113", + "reference": "f0f73947fdfaf68efdc68b73c4dbb28dfc785113", + "shasum": "" + }, + "require": { + "guzzlehttp/guzzle": "^7.3", + "guzzlehttp/psr7": "^2.0", + "illuminate/collections": "^8.38|^9.0|^10.0", + "nicmart/tree": "^0.3.0", + "php": "^8.0", + "spatie/browsershot": "^3.45", + "spatie/robots-txt": "^2.0", + "symfony/dom-crawler": "^5.2|^6.0" + }, + "require-dev": { + "pestphp/pest": "^1.21", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\Crawler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be" + } + ], + "description": "Crawl all internal links found on a website", + "homepage": "https://github.com/spatie/crawler", + "keywords": [ + "crawler", + "link", + "spatie", + "website" + ], + "support": { + "issues": "https://github.com/spatie/crawler/issues", + "source": "https://github.com/spatie/crawler/tree/7.1.3" + }, + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + }, + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2023-01-24T07:47:06+00:00" + }, + { + "name": "spatie/image", + "version": "2.2.7", + "source": { + "type": "git", + "url": "https://github.com/spatie/image.git", + "reference": "2f802853aab017aa615224daae1588054b5ab20e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/image/zipball/2f802853aab017aa615224daae1588054b5ab20e", + "reference": "2f802853aab017aa615224daae1588054b5ab20e", + "shasum": "" + }, + "require": { + "ext-exif": "*", + "ext-json": "*", + "ext-mbstring": "*", + "league/glide": "^2.2.2", + "php": "^8.0", + "spatie/image-optimizer": "^1.7", + "spatie/temporary-directory": "^1.0|^2.0", + "symfony/process": "^3.0|^4.0|^5.0|^6.0" + }, + "require-dev": { + "pestphp/pest": "^1.22", + "phpunit/phpunit": "^9.5", + "symfony/var-dumper": "^4.0|^5.0|^6.0", + "vimeo/psalm": "^4.6" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\Image\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Manipulate images with an expressive API", + "homepage": "https://github.com/spatie/image", + "keywords": [ + "image", + "spatie" + ], + "support": { + "source": "https://github.com/spatie/image/tree/2.2.7" + }, + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + }, + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2023-07-24T13:54:13+00:00" + }, + { + "name": "spatie/image-optimizer", + "version": "1.7.1", + "source": { + "type": "git", + "url": "https://github.com/spatie/image-optimizer.git", + "reference": "af179994e2d2413e4b3ba2d348d06b4eaddbeb30" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/image-optimizer/zipball/af179994e2d2413e4b3ba2d348d06b4eaddbeb30", + "reference": "af179994e2d2413e4b3ba2d348d06b4eaddbeb30", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "php": "^7.3|^8.0", + "psr/log": "^1.0 | ^2.0 | ^3.0", + "symfony/process": "^4.2|^5.0|^6.0" + }, + "require-dev": { + "pestphp/pest": "^1.21", + "phpunit/phpunit": "^8.5.21|^9.4.4", + "symfony/var-dumper": "^4.2|^5.0|^6.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\ImageOptimizer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Easily optimize images using PHP", + "homepage": "https://github.com/spatie/image-optimizer", + "keywords": [ + "image-optimizer", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/image-optimizer/issues", + "source": "https://github.com/spatie/image-optimizer/tree/1.7.1" + }, + "time": "2023-07-27T07:57:32+00:00" + }, + { + "name": "spatie/laravel-feed", + "version": "4.3.0", + "source": { + "type": "git", + "url": "https://github.com/spatie/laravel-feed.git", + "reference": "1cf06a43b4ee0fdeb919983a76de68467ccdb844" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/laravel-feed/zipball/1cf06a43b4ee0fdeb919983a76de68467ccdb844", + "reference": "1cf06a43b4ee0fdeb919983a76de68467ccdb844", + "shasum": "" + }, + "require": { + "illuminate/contracts": "^10.0", + "illuminate/http": "^10.0", + "illuminate/support": "^10.0", + "php": "^8.0", + "spatie/laravel-package-tools": "^1.15" + }, + "require-dev": { + "orchestra/testbench": "^8.0", + "pestphp/pest": "^2.0", + "spatie/pest-plugin-snapshots": "^2.0", + "spatie/test-time": "^1.2" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Spatie\\Feed\\FeedServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Spatie\\Feed\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jolita Grazyte", + "email": "jolita@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + }, + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + }, + { + "name": "Sebastian De Deyne", + "email": "sebastian@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + }, + { + "name": "Patrick Organ", + "homepage": "https://github.com/patinthehat", + "role": "Developer" + } + ], + "description": "Generate rss feeds", + "homepage": "https://github.com/spatie/laravel-feed", + "keywords": [ + "laravel", + "laravel-feed", + "rss", + "spatie" + ], + "support": { + "source": "https://github.com/spatie/laravel-feed/tree/4.3.0" + }, + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + }, + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2023-08-07T14:46:53+00:00" + }, { "name": "spatie/laravel-googletagmanager", "version": "2.6.6", @@ -3299,6 +4376,262 @@ ], "time": "2021-12-15T10:28:22+00:00" }, + { + "name": "spatie/laravel-package-tools", + "version": "1.16.1", + "source": { + "type": "git", + "url": "https://github.com/spatie/laravel-package-tools.git", + "reference": "cc7c991555a37f9fa6b814aa03af73f88026a83d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/cc7c991555a37f9fa6b814aa03af73f88026a83d", + "reference": "cc7c991555a37f9fa6b814aa03af73f88026a83d", + "shasum": "" + }, + "require": { + "illuminate/contracts": "^9.28|^10.0", + "php": "^8.0" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "orchestra/testbench": "^7.7|^8.0", + "pestphp/pest": "^1.22", + "phpunit/phpunit": "^9.5.24", + "spatie/pest-plugin-test-time": "^1.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\LaravelPackageTools\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "role": "Developer" + } + ], + "description": "Tools for creating Laravel packages", + "homepage": "https://github.com/spatie/laravel-package-tools", + "keywords": [ + "laravel-package-tools", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/laravel-package-tools/issues", + "source": "https://github.com/spatie/laravel-package-tools/tree/1.16.1" + }, + "funding": [ + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2023-08-23T09:04:39+00:00" + }, + { + "name": "spatie/laravel-sitemap", + "version": "6.3.1", + "source": { + "type": "git", + "url": "https://github.com/spatie/laravel-sitemap.git", + "reference": "39844ec1836e76f9f090075c49b5ae2b5fea79f9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/laravel-sitemap/zipball/39844ec1836e76f9f090075c49b5ae2b5fea79f9", + "reference": "39844ec1836e76f9f090075c49b5ae2b5fea79f9", + "shasum": "" + }, + "require": { + "guzzlehttp/guzzle": "^7.2", + "illuminate/support": "^8.0|^9.0|^10.0", + "nesbot/carbon": "^2.63", + "php": "^8.0", + "spatie/crawler": "^7.0", + "spatie/laravel-package-tools": "^1.5", + "symfony/dom-crawler": "^5.1.14|^6.0" + }, + "require-dev": { + "mockery/mockery": "^1.4", + "orchestra/testbench": "^6.23|^7.0|^8.0", + "pestphp/pest": "^1.22", + "phpunit/phpunit": "^9.5", + "spatie/pest-plugin-snapshots": "^1.1", + "spatie/phpunit-snapshot-assertions": "^4.0", + "spatie/temporary-directory": "^2.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Spatie\\Sitemap\\SitemapServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Spatie\\Sitemap\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Create and generate sitemaps with ease", + "homepage": "https://github.com/spatie/laravel-sitemap", + "keywords": [ + "laravel-sitemap", + "spatie" + ], + "support": { + "source": "https://github.com/spatie/laravel-sitemap/tree/6.3.1" + }, + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + } + ], + "time": "2023-06-27T08:05:18+00:00" + }, + { + "name": "spatie/robots-txt", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/spatie/robots-txt.git", + "reference": "f40a12b89f98dd18f3665673d04757298f5fbbf9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/robots-txt/zipball/f40a12b89f98dd18f3665673d04757298f5fbbf9", + "reference": "f40a12b89f98dd18f3665673d04757298f5fbbf9", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "larapack/dd": "^1.0", + "phpunit/phpunit": "^8.0 || ^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\Robots\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Brent Roose", + "email": "brent@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Determine if a page may be crawled from robots.txt and robots meta tags", + "homepage": "https://github.com/spatie/robots-txt", + "keywords": [ + "robots-txt", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/robots-txt/issues", + "source": "https://github.com/spatie/robots-txt/tree/2.0.2" + }, + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + }, + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2022-05-18T15:14:21+00:00" + }, + { + "name": "spatie/temporary-directory", + "version": "2.1.2", + "source": { + "type": "git", + "url": "https://github.com/spatie/temporary-directory.git", + "reference": "0c804873f6b4042aa8836839dca683c7d0f71831" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/temporary-directory/zipball/0c804873f6b4042aa8836839dca683c7d0f71831", + "reference": "0c804873f6b4042aa8836839dca683c7d0f71831", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\TemporaryDirectory\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alex Vanderbist", + "email": "alex@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Easily create, use and destroy temporary directories", + "homepage": "https://github.com/spatie/temporary-directory", + "keywords": [ + "php", + "spatie", + "temporary-directory" + ], + "support": { + "issues": "https://github.com/spatie/temporary-directory/issues", + "source": "https://github.com/spatie/temporary-directory/tree/2.1.2" + }, + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + }, + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2023-04-28T07:47:42+00:00" + }, { "name": "symfony/console", "version": "v6.3.4", @@ -3521,6 +4854,73 @@ ], "time": "2023-05-23T14:45:45+00:00" }, + { + "name": "symfony/dom-crawler", + "version": "v6.3.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/dom-crawler.git", + "reference": "3fdd2a3d5fdc363b2e8dbf817f9726a4d013cbd1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/3fdd2a3d5fdc363b2e8dbf817f9726a4d013cbd1", + "reference": "3fdd2a3d5fdc363b2e8dbf817f9726a4d013cbd1", + "shasum": "" + }, + "require": { + "masterminds/html5": "^2.6", + "php": ">=8.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.0" + }, + "require-dev": { + "symfony/css-selector": "^5.4|^6.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\DomCrawler\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases DOM navigation for HTML and XML documents", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/dom-crawler/tree/v6.3.4" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2023-08-01T07:43:40+00:00" + }, { "name": "symfony/error-handler", "version": "v6.3.2", @@ -5828,6 +7228,72 @@ ], "time": "2022-03-08T17:03:00+00:00" }, + { + "name": "watson/active", + "version": "7.0.0", + "source": { + "type": "git", + "url": "https://github.com/dwightwatson/active.git", + "reference": "ae143167005e1fae6f8a2d92c592d294b49f95d5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dwightwatson/active/zipball/ae143167005e1fae6f8a2d92c592d294b49f95d5", + "reference": "ae143167005e1fae6f8a2d92c592d294b49f95d5", + "shasum": "" + }, + "require": { + "illuminate/config": "^9.0|^10.0", + "illuminate/http": "^9.0|^10.0", + "illuminate/routing": "^9.0|^10.0", + "illuminate/support": "^9.0|^10.0", + "php": "^8.1" + }, + "require-dev": { + "mockery/mockery": "^1.5.1", + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Watson\\Active\\ActiveServiceProvider" + ], + "aliases": { + "Active": "Watson\\Watson\\Facades\\Active" + } + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "Watson\\Active\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dwight Watson", + "email": "dwight@studiousapp.com" + } + ], + "description": "Laravel helper for recognising the current route, controller and action", + "keywords": [ + "active", + "laravel", + "routing" + ], + "support": { + "issues": "https://github.com/dwightwatson/active/issues", + "source": "https://github.com/dwightwatson/active/tree/7.0.0" + }, + "time": "2023-02-15T02:30:02+00:00" + }, { "name": "webmozart/assert", "version": "1.11.0", diff --git a/config/active.php b/config/active.php new file mode 100644 index 0000000..0d66773 --- /dev/null +++ b/config/active.php @@ -0,0 +1,17 @@ + 'active text-primary', + +]; diff --git a/config/app.php b/config/app.php index e6a7c19..8ffc4a6 100644 --- a/config/app.php +++ b/config/app.php @@ -160,6 +160,7 @@ * Package Service Providers... */ Artesaos\SEOTools\Providers\SEOToolsServiceProvider::class, + Intervention\Image\ImageServiceProvider::class, /* * Application Service Providers... @@ -169,6 +170,7 @@ // App\Providers\BroadcastServiceProvider::class, App\Providers\EventServiceProvider::class, App\Providers\RouteServiceProvider::class, + App\Providers\ViewServiceProvider::class, ])->toArray(), /* @@ -189,6 +191,9 @@ 'JsonLd' => Artesaos\SEOTools\Facades\JsonLd::class, 'JsonLdMulti' => Artesaos\SEOTools\Facades\JsonLdMulti::class, 'SEO' => Artesaos\SEOTools\Facades\SEOTools::class, + 'Image' => Intervention\Image\Facades\Image::class, + 'Markdown' => GrahamCampbell\Markdown\Facades\Markdown::class, + ])->toArray(), ]; diff --git a/config/dataforseo.php b/config/dataforseo.php new file mode 100644 index 0000000..c7852aa --- /dev/null +++ b/config/dataforseo.php @@ -0,0 +1,14 @@ + env('DATAFORSEO_LOGIN', 'login'), + + 'password' => env('DATAFORSEO_PASSWORD', 'password'), + + 'timeout' => 120, + + 'api_version' => '/v3/', + + 'url' => 'https://api.dataforseo.com', + +]; diff --git a/config/feed.php b/config/feed.php new file mode 100644 index 0000000..3d51fa9 --- /dev/null +++ b/config/feed.php @@ -0,0 +1,55 @@ + [ + 'main' => [ + /* + * Here you can specify which class and method will return + * the items that should appear in the feed. For example: + * [App\Model::class, 'getAllFeedItems'] + * + * You can also pass an argument to that method. Note that their key must be the name of the parameter: + * [App\Model::class, 'getAllFeedItems', 'parameterName' => 'argument'] + */ + 'items' => \App\Models\Post::class.'@getFeedItems', + + /* + * The feed will be available on this url. + */ + 'url' => '/posts-feed', + + 'title' => 'Latest News from EchoSCoop', + 'description' => 'Bite-sized scoop for world news.', + 'language' => 'en-US', + + /* + * The image to display for the feed. For Atom feeds, this is displayed as + * a banner/logo; for RSS and JSON feeds, it's displayed as an icon. + * An empty value omits the image attribute from the feed. + */ + 'image' => '', + + /* + * The format of the feed. Acceptable values are 'rss', 'atom', or 'json'. + */ + 'format' => 'atom', + + /* + * The view that will render the feed. + */ + 'view' => 'feed::atom', + + /* + * The mime type to be used in the tag. Set to an empty string to automatically + * determine the correct value. + */ + 'type' => '', + + /* + * The content type for the feed response. Set to an empty string to automatically + * determine the correct value. + */ + 'contentType' => '', + ], + ], +]; diff --git a/config/filesystems.php b/config/filesystems.php index e9d9dbd..24a2b4f 100644 --- a/config/filesystems.php +++ b/config/filesystems.php @@ -56,6 +56,18 @@ 'throw' => false, ], + 'r2' => [ + 'driver' => 's3', + 'key' => env('CLOUDFLARE_R2_ACCESS_KEY_ID'), + 'secret' => env('CLOUDFLARE_R2_SECRET_ACCESS_KEY'), + 'region' => env('CLOUDFLARE_R2_REGION'), + 'bucket' => env('CLOUDFLARE_R2_BUCKET'), + 'url' => env('CLOUDFLARE_R2_URL'), + 'visibility' => 'public', + 'endpoint' => env('CLOUDFLARE_R2_ENDPOINT'), + 'use_path_style_endpoint' => env('CLOUDFLARE_R2_USE_PATH_STYLE_ENDPOINT', false), + 'throw' => true, + ], ], /* diff --git a/config/markdown.php b/config/markdown.php new file mode 100644 index 0000000..29c663c --- /dev/null +++ b/config/markdown.php @@ -0,0 +1,156 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + + /* + |-------------------------------------------------------------------------- + | Enable View Integration + |-------------------------------------------------------------------------- + | + | This option specifies if the view integration is enabled so you can write + | markdown views and have them rendered as html. The following extensions + | are currently supported: ".md", ".md.php", and ".md.blade.php". You may + | disable this integration if it is conflicting with another package. + | + | Default: true + | + */ + + 'views' => true, + + /* + |-------------------------------------------------------------------------- + | CommonMark Extensions + |-------------------------------------------------------------------------- + | + | This option specifies what extensions will be automatically enabled. + | Simply provide your extension class names here. + | + | Default: [ + | League\CommonMark\Extension\CommonMark\CommonMarkCoreExtension::class, + | League\CommonMark\Extension\Table\TableExtension::class, + | ] + | + */ + + 'extensions' => [ + League\CommonMark\Extension\CommonMark\CommonMarkCoreExtension::class, + League\CommonMark\Extension\Table\TableExtension::class, + ], + + /* + |-------------------------------------------------------------------------- + | Renderer Configuration + |-------------------------------------------------------------------------- + | + | This option specifies an array of options for rendering HTML. + | + | Default: [ + | 'block_separator' => "\n", + | 'inner_separator' => "\n", + | 'soft_break' => "\n", + | ] + | + */ + + 'renderer' => [ + 'block_separator' => "\n", + 'inner_separator' => "\n", + 'soft_break' => "\n", + ], + + /* + |-------------------------------------------------------------------------- + | Commonmark Configuration + |-------------------------------------------------------------------------- + | + | This option specifies an array of options for commonmark. + | + | Default: [ + | 'enable_em' => true, + | 'enable_strong' => true, + | 'use_asterisk' => true, + | 'use_underscore' => true, + | 'unordered_list_markers' => ['-', '+', '*'], + | ] + | + */ + + 'commonmark' => [ + 'enable_em' => true, + 'enable_strong' => true, + 'use_asterisk' => true, + 'use_underscore' => true, + 'unordered_list_markers' => ['-', '+', '*'], + ], + + /* + |-------------------------------------------------------------------------- + | HTML Input + |-------------------------------------------------------------------------- + | + | This option specifies how to handle untrusted HTML input. + | + | Default: 'strip' + | + */ + + 'html_input' => 'strip', + + /* + |-------------------------------------------------------------------------- + | Allow Unsafe Links + |-------------------------------------------------------------------------- + | + | This option specifies whether to allow risky image URLs and links. + | + | Default: true + | + */ + + 'allow_unsafe_links' => true, + + /* + |-------------------------------------------------------------------------- + | Maximum Nesting Level + |-------------------------------------------------------------------------- + | + | This option specifies the maximum permitted block nesting level. + | + | Default: PHP_INT_MAX + | + */ + + 'max_nesting_level' => PHP_INT_MAX, + + /* + |-------------------------------------------------------------------------- + | Slug Normalizer + |-------------------------------------------------------------------------- + | + | This option specifies an array of options for slug normalization. + | + | Default: [ + | 'max_length' => 255, + | 'unique' => 'document', + | ] + | + */ + + 'slug_normalizer' => [ + 'max_length' => 255, + 'unique' => 'document', + ], + +]; diff --git a/config/platform/ai.php b/config/platform/ai.php new file mode 100644 index 0000000..c30e042 --- /dev/null +++ b/config/platform/ai.php @@ -0,0 +1,9 @@ + [ + 'api_key' => env('OPENAI_API_KEY'), + ], + +]; diff --git a/config/platform/country_codes.php b/config/platform/country_codes.php new file mode 100644 index 0000000..89cd215 --- /dev/null +++ b/config/platform/country_codes.php @@ -0,0 +1,3418 @@ + [ + 'name' => 'Andorra', + 'native' => 'Andorra', + 'phone' => '+376', + 'continent' => 'EU', + 'capital' => 'Andorra la Vella', + 'currency' => 'EUR', + 'languages' => ['ca'], + 'emoji' => '🇦🇩', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 42.546245, + 'avg_long' => 1.601554, + ], + 'AE' => [ + 'name' => 'United Arab Emirates', + 'native' => 'دولة الإمارات العربية المتحدة', + 'phone' => '+971', + 'continent' => 'AS', + 'capital' => 'Abu Dhabi', + 'currency' => 'AED', + 'languages' => ['ar'], + 'emoji' => '🇦🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 23.424076, + 'avg_long' => 53.847818, + ], + 'AF' => [ + 'name' => 'Afghanistan', + 'native' => 'افغانستان', + 'phone' => '+93', + 'continent' => 'AS', + 'capital' => 'Kabul', + 'currency' => 'AFN', + 'languages' => ['ps', 'uz', 'tk'], + 'emoji' => '🇦🇫', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 33.93911, + 'avg_long' => 67.709953, + ], + 'AG' => [ + 'name' => 'Antigua and Barbuda', + 'native' => 'Antigua and Barbuda', + 'phone' => '+1268', + 'continent' => 'NA', + 'capital' => "Saint John\\\'s", + 'currency' => 'XCD', + 'languages' => ['en'], + 'emoji' => '🇦🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 17.060816, + 'avg_long' => -61.796428, + ], + 'AI' => [ + 'name' => 'Anguilla', + 'native' => 'Anguilla', + 'phone' => '+1264', + 'continent' => 'NA', + 'capital' => 'The Valley', + 'currency' => 'XCD', + 'languages' => ['en'], + 'emoji' => '🇦🇮', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 18.220554, + 'avg_long' => -63.068615, + ], + 'AL' => [ + 'name' => 'Albania', + 'native' => 'Shqipëria', + 'phone' => '+355', + 'continent' => 'EU', + 'capital' => 'Tirana', + 'currency' => 'ALL', + 'languages' => ['sq'], + 'emoji' => '🇦🇱', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 41.153332, + 'avg_long' => 20.168331, + ], + 'AM' => [ + 'name' => 'Armenia', + 'native' => 'Հայաստան', + 'phone' => '+374', + 'continent' => 'AS', + 'capital' => 'Yerevan', + 'currency' => 'AMD', + 'languages' => ['hy', 'ru'], + 'emoji' => '🇦🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 40.069099, + 'avg_long' => 45.038189, + ], + 'AO' => [ + 'name' => 'Angola', + 'native' => 'Angola', + 'phone' => '+244', + 'continent' => 'AF', + 'capital' => 'Luanda', + 'currency' => 'AOA', + 'languages' => ['pt'], + 'emoji' => '🇦🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -11.202692, + 'avg_long' => 17.873887, + ], + 'AQ' => [ + 'name' => 'Antarctica', + 'native' => 'Antarctica', + 'phone' => '+672', + 'continent' => 'AN', + 'capital' => '', + 'currency' => '', + 'languages' => [], + 'emoji' => '🇦🇶', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -75.250973, + 'avg_long' => -0.071389, + ], + 'AR' => [ + 'name' => 'Argentina', + 'native' => 'Argentina', + 'phone' => '+54', + 'continent' => 'SA', + 'capital' => 'Buenos Aires', + 'currency' => 'ARS', + 'languages' => ['es', 'gn'], + 'emoji' => '🇦🇷', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => -38.416097, + 'avg_long' => -63.616672, + ], + 'AS' => [ + 'name' => 'American Samoa', + 'native' => 'American Samoa', + 'phone' => '+1684', + 'continent' => 'OC', + 'capital' => 'Pago Pago', + 'currency' => 'USD', + 'languages' => ['en', 'sm'], + 'emoji' => '🇦🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -14.270972, + 'avg_long' => -170.132217, + ], + 'AT' => [ + 'name' => 'Austria', + 'native' => 'Österreich', + 'phone' => '+43', + 'continent' => 'EU', + 'capital' => 'Vienna', + 'currency' => 'EUR', + 'languages' => ['de'], + 'emoji' => '🇦🇹', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 47.516231, + 'avg_long' => 14.550072, + ], + 'AU' => [ + 'name' => 'Australia', + 'native' => 'Australia', + 'phone' => '+61', + 'continent' => 'OC', + 'capital' => 'Canberra', + 'currency' => 'AUD', + 'languages' => ['en'], + 'emoji' => '🇦🇺', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -25.274398, + 'avg_long' => 133.775136, + ], + 'AW' => [ + 'name' => 'Aruba', + 'native' => 'Aruba', + 'phone' => '+297', + 'continent' => 'NA', + 'capital' => 'Oranjestad', + 'currency' => 'AWG', + 'languages' => ['nl', 'pa'], + 'emoji' => '🇦🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 12.52111, + 'avg_long' => -69.968338, + ], + 'AZ' => [ + 'name' => 'Azerbaijan', + 'native' => 'Azərbaycan', + 'phone' => '+994', + 'continent' => 'AS', + 'capital' => 'Baku', + 'currency' => 'AZN', + 'languages' => ['az'], + 'emoji' => '🇦🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 40.143105, + 'avg_long' => 47.576927, + ], + 'BA' => [ + 'name' => 'Bosnia and Herzegovina', + 'native' => 'Bosna i Hercegovina', + 'phone' => '+387', + 'continent' => 'EU', + 'capital' => 'Sarajevo', + 'currency' => 'BAM', + 'languages' => ['bs', 'hr', 'sr'], + 'emoji' => '🇧🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 43.915886, + 'avg_long' => 17.679076, + ], + 'BB' => [ + 'name' => 'Barbados', + 'native' => 'Barbados', + 'phone' => '+1246', + 'continent' => 'NA', + 'capital' => 'Bridgetown', + 'currency' => 'BBD', + 'languages' => ['en'], + 'emoji' => '🇧🇧', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 13.193887, + 'avg_long' => -59.543198, + ], + 'BD' => [ + 'name' => 'Bangladesh', + 'native' => 'Bangladesh', + 'phone' => '+880', + 'continent' => 'AS', + 'capital' => 'Dhaka', + 'currency' => 'BDT', + 'languages' => ['bn'], + 'emoji' => '🇧🇩', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 23.684994, + 'avg_long' => 90.356331, + ], + 'BE' => [ + 'name' => 'Belgium', + 'native' => 'België', + 'phone' => '+32', + 'continent' => 'EU', + 'capital' => 'Brussels', + 'currency' => 'EUR', + 'languages' => ['nl', 'fr', 'de'], + 'emoji' => '🇧🇪', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 50.503887, + 'avg_long' => 4.469936, + ], + 'BF' => [ + 'name' => 'Burkina Faso', + 'native' => 'Burkina Faso', + 'phone' => '+226', + 'continent' => 'AF', + 'capital' => 'Ouagadougou', + 'currency' => 'XOF', + 'languages' => ['fr', 'ff'], + 'emoji' => '🇧🇫', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 12.238333, + 'avg_long' => -1.561593, + ], + 'BG' => [ + 'name' => 'Bulgaria', + 'native' => 'България', + 'phone' => '+359', + 'continent' => 'EU', + 'capital' => 'Sofia', + 'currency' => 'BGN', + 'languages' => ['bg'], + 'emoji' => '🇧🇬', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 42.733883, + 'avg_long' => 25.48583, + ], + 'BH' => [ + 'name' => 'Bahrain', + 'native' => '‏البحرين', + 'phone' => '+973', + 'continent' => 'AS', + 'capital' => 'Manama', + 'currency' => 'BHD', + 'languages' => ['ar'], + 'emoji' => '🇧🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 25.930414, + 'avg_long' => 50.637772, + ], + 'BI' => [ + 'name' => 'Burundi', + 'native' => 'Burundi', + 'phone' => '+257', + 'continent' => 'AF', + 'capital' => 'Bujumbura', + 'currency' => 'BIF', + 'languages' => ['fr', 'rn'], + 'emoji' => '🇧🇮', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -3.373056, + 'avg_long' => 29.918886, + ], + 'BJ' => [ + 'name' => 'Benin', + 'native' => 'Bénin', + 'phone' => '+229', + 'continent' => 'AF', + 'capital' => 'Porto-Novo', + 'currency' => 'XOF', + 'languages' => ['fr'], + 'emoji' => '🇧🇯', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 9.30769, + 'avg_long' => 2.315834, + ], + 'BM' => [ + 'name' => 'Bermuda', + 'native' => 'Bermuda', + 'phone' => '+1441', + 'continent' => 'NA', + 'capital' => 'Hamilton', + 'currency' => 'BMD', + 'languages' => ['en'], + 'emoji' => '🇧🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 32.321384, + 'avg_long' => -64.75737, + ], + 'BN' => [ + 'name' => 'Brunei', + 'native' => 'Negara Brunei Darussalam', + 'phone' => '+673', + 'continent' => 'AS', + 'capital' => 'Bandar Seri Begawan', + 'currency' => 'BND', + 'languages' => ['ms'], + 'emoji' => '🇧🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 4.535277, + 'avg_long' => 114.727669, + ], + 'BO' => [ + 'name' => 'Bolivia', + 'native' => 'Bolivia', + 'phone' => '+591', + 'continent' => 'SA', + 'capital' => 'Sucre', + 'currency' => 'BOB,BOV', + 'languages' => ['es', 'ay', 'qu'], + 'emoji' => '🇧🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -16.290154, + 'avg_long' => -63.588653, + ], + 'BR' => [ + 'name' => 'Brazil', + 'native' => 'Brasil', + 'phone' => '+55', + 'continent' => 'SA', + 'capital' => 'Brasília', + 'currency' => 'BRL', + 'languages' => ['pt'], + 'emoji' => '🇧🇷', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => -14.235004, + 'avg_long' => -51.92528, + ], + 'BS' => [ + 'name' => 'Bahamas', + 'native' => 'Bahamas', + 'phone' => '+1242', + 'continent' => 'NA', + 'capital' => 'Nassau', + 'currency' => 'BSD', + 'languages' => ['en'], + 'emoji' => '🇧🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 25.03428, + 'avg_long' => -77.39628, + ], + 'BT' => [ + 'name' => 'Bhutan', + 'native' => 'ʼbrug-yul', + 'phone' => '+975', + 'continent' => 'AS', + 'capital' => 'Thimphu', + 'currency' => 'BTN,INR', + 'languages' => ['dz'], + 'emoji' => '🇧🇹', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 27.514162, + 'avg_long' => 90.433601, + ], + 'BV' => [ + 'name' => 'Bouvet Island', + 'native' => 'Bouvetøya', + 'phone' => '+47', + 'continent' => 'AN', + 'capital' => '', + 'currency' => 'NOK', + 'languages' => ['no', 'nb', 'nn'], + 'emoji' => '🇧🇻', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -54.423199, + 'avg_long' => 3.413194, + ], + 'BW' => [ + 'name' => 'Botswana', + 'native' => 'Botswana', + 'phone' => '+267', + 'continent' => 'AF', + 'capital' => 'Gaborone', + 'currency' => 'BWP', + 'languages' => ['en', 'tn'], + 'emoji' => '🇧🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -22.328474, + 'avg_long' => 24.684866, + ], + 'BY' => [ + 'name' => 'Belarus', + 'native' => 'Белару́сь', + 'phone' => '+375', + 'continent' => 'EU', + 'capital' => 'Minsk', + 'currency' => 'BYR', + 'languages' => ['be', 'ru'], + 'emoji' => '🇧🇾', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 53.709807, + 'avg_long' => 27.953389, + ], + 'BZ' => [ + 'name' => 'Belize', + 'native' => 'Belize', + 'phone' => '+501', + 'continent' => 'NA', + 'capital' => 'Belmopan', + 'currency' => 'BZD', + 'languages' => ['en', 'es'], + 'emoji' => '🇧🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 17.189877, + 'avg_long' => -88.49765, + ], + 'CA' => [ + 'name' => 'Canada', + 'native' => 'Canada', + 'phone' => '+1', + 'continent' => 'NA', + 'capital' => 'Ottawa', + 'currency' => 'CAD', + 'languages' => ['en', 'fr'], + 'emoji' => '🇨🇦', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 56.130366, + 'avg_long' => -106.346771, + ], + 'CC' => [ + 'name' => 'Cocos [Keeling] Islands', + 'native' => 'Cocos (Keeling) Islands', + 'phone' => '+61', + 'continent' => 'AS', + 'capital' => 'West Island', + 'currency' => 'AUD', + 'languages' => ['en'], + 'emoji' => '🇨🇨', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -12.164165, + 'avg_long' => 96.870956, + ], + 'CD' => [ + 'name' => 'Democratic Republic of the Congo', + 'native' => 'République démocratique du Congo', + 'phone' => '+243', + 'continent' => 'AF', + 'capital' => 'Kinshasa', + 'currency' => 'CDF', + 'languages' => ['fr', 'ln', 'kg', 'sw', 'lu'], + 'emoji' => '🇨🇩', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -4.038333, + 'avg_long' => 21.758664, + ], + 'CF' => [ + 'name' => 'Central African Republic', + 'native' => 'Ködörösêse tî Bêafrîka', + 'phone' => '+236', + 'continent' => 'AF', + 'capital' => 'Bangui', + 'currency' => 'XAF', + 'languages' => ['fr', 'sg'], + 'emoji' => '🇨🇫', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 6.611111, + 'avg_long' => 20.939444, + ], + 'CG' => [ + 'name' => 'Republic of the Congo', + 'native' => 'République du Congo', + 'phone' => '+242', + 'continent' => 'AF', + 'capital' => 'Brazzaville', + 'currency' => 'XAF', + 'languages' => ['fr', 'ln'], + 'emoji' => '🇨🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -0.228021, + 'avg_long' => 15.827659, + ], + 'CH' => [ + 'name' => 'Switzerland', + 'native' => 'Schweiz', + 'phone' => '+41', + 'continent' => 'EU', + 'capital' => 'Bern', + 'currency' => 'CHE,CHF,CHW', + 'languages' => ['de', 'fr', 'it'], + 'emoji' => '🇨🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 46.818188, + 'avg_long' => 8.227512, + ], + 'CI' => [ + 'name' => 'Ivory Coast', + 'native' => "Côte d\\\'Ivoire", + 'phone' => '+225', + 'continent' => 'AF', + 'capital' => 'Yamoussoukro', + 'currency' => 'XOF', + 'languages' => ['fr'], + 'emoji' => '🇨🇮', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 7.539989, + 'avg_long' => -5.54708, + ], + 'CK' => [ + 'name' => 'Cook Islands', + 'native' => 'Cook Islands', + 'phone' => '+682', + 'continent' => 'OC', + 'capital' => 'Avarua', + 'currency' => 'NZD', + 'languages' => ['en'], + 'emoji' => '🇨🇰', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -21.236736, + 'avg_long' => -159.777671, + ], + 'CL' => [ + 'name' => 'Chile', + 'native' => 'Chile', + 'phone' => '+56', + 'continent' => 'SA', + 'capital' => 'Santiago', + 'currency' => 'CLF,CLP', + 'languages' => ['es'], + 'emoji' => '🇨🇱', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -35.675147, + 'avg_long' => -71.542969, + ], + 'CM' => [ + 'name' => 'Cameroon', + 'native' => 'Cameroon', + 'phone' => '+237', + 'continent' => 'AF', + 'capital' => 'Yaoundé', + 'currency' => 'XAF', + 'languages' => ['en', 'fr'], + 'emoji' => '🇨🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 7.369722, + 'avg_long' => 12.354722, + ], + 'CN' => [ + 'name' => 'China', + 'native' => '中国', + 'phone' => '+86', + 'continent' => 'AS', + 'capital' => 'Beijing', + 'currency' => 'CNY', + 'languages' => ['zh'], + 'emoji' => '🇨🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 35.86166, + 'avg_long' => 104.195397, + ], + 'CO' => [ + 'name' => 'Colombia', + 'native' => 'Colombia', + 'phone' => '+57', + 'continent' => 'SA', + 'capital' => 'Bogotá', + 'currency' => 'COP', + 'languages' => ['es'], + 'emoji' => '🇨🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 4.570868, + 'avg_long' => -74.297333, + ], + 'CR' => [ + 'name' => 'Costa Rica', + 'native' => 'Costa Rica', + 'phone' => '+506', + 'continent' => 'NA', + 'capital' => 'San José', + 'currency' => 'CRC', + 'languages' => ['es'], + 'emoji' => '🇨🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 9.748917, + 'avg_long' => -83.753428, + ], + 'CU' => [ + 'name' => 'Cuba', + 'native' => 'Cuba', + 'phone' => '+53', + 'continent' => 'NA', + 'capital' => 'Havana', + 'currency' => 'CUC,CUP', + 'languages' => ['es'], + 'emoji' => '🇨🇺', + 'launched' => false, + 'cookieconsent' => false, + 'avg_lat' => 21.521757, + 'avg_long' => -77.781167, + ], + 'CV' => [ + 'name' => 'Cape Verde', + 'native' => 'Cabo Verde', + 'phone' => '+238', + 'continent' => 'AF', + 'capital' => 'Praia', + 'currency' => 'CVE', + 'languages' => ['pt'], + 'emoji' => '🇨🇻', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 16.002082, + 'avg_long' => -24.013197, + ], + 'CX' => [ + 'name' => 'Christmas Island', + 'native' => 'Christmas Island', + 'phone' => '+61', + 'continent' => 'AS', + 'capital' => 'Flying Fish Cove', + 'currency' => 'AUD', + 'languages' => ['en'], + 'emoji' => '🇨🇽', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -10.447525, + 'avg_long' => 105.690449, + ], + 'CY' => [ + 'name' => 'Cyprus', + 'native' => 'Κύπρος', + 'phone' => '+357', + 'continent' => 'EU', + 'capital' => 'Nicosia', + 'currency' => 'EUR', + 'languages' => ['el', 'tr', 'hy'], + 'emoji' => '🇨🇾', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 35.126413, + 'avg_long' => 33.429859, + ], + 'CZ' => [ + 'name' => 'Czech Republic', + 'native' => 'Česká republika', + 'phone' => '+420', + 'continent' => 'EU', + 'capital' => 'Prague', + 'currency' => 'CZK', + 'languages' => ['cs', 'sk'], + 'emoji' => '🇨🇿', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 49.817492, + 'avg_long' => 15.472962, + ], + 'DE' => [ + 'name' => 'Germany', + 'native' => 'Deutschland', + 'phone' => '+49', + 'continent' => 'EU', + 'capital' => 'Berlin', + 'currency' => 'EUR', + 'languages' => ['de'], + 'emoji' => '🇩🇪', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 51.165691, + 'avg_long' => 10.451526, + ], + 'DJ' => [ + 'name' => 'Djibouti', + 'native' => 'Djibouti', + 'phone' => '+253', + 'continent' => 'AF', + 'capital' => 'Djibouti', + 'currency' => 'DJF', + 'languages' => ['fr', 'ar'], + 'emoji' => '🇩🇯', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 11.825138, + 'avg_long' => 42.590275, + ], + 'DK' => [ + 'name' => 'Denmark', + 'native' => 'Danmark', + 'phone' => '+45', + 'continent' => 'EU', + 'capital' => 'Copenhagen', + 'currency' => 'DKK', + 'languages' => ['da'], + 'emoji' => '🇩🇰', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 56.26392, + 'avg_long' => 9.501785, + ], + 'DM' => [ + 'name' => 'Dominica', + 'native' => 'Dominica', + 'phone' => '+1767', + 'continent' => 'NA', + 'capital' => 'Roseau', + 'currency' => 'XCD', + 'languages' => ['en'], + 'emoji' => '🇩🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 15.414999, + 'avg_long' => -61.370976, + ], + 'DO' => [ + 'name' => 'Dominican Republic', + 'native' => 'República Dominicana', + 'phone' => '+1809,1829,1849', + 'continent' => 'NA', + 'capital' => 'Santo Domingo', + 'currency' => 'DOP', + 'languages' => ['es'], + 'emoji' => '🇩🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 18.735693, + 'avg_long' => -70.162651, + ], + 'DZ' => [ + 'name' => 'Algeria', + 'native' => 'الجزائر', + 'phone' => '+213', + 'continent' => 'AF', + 'capital' => 'Algiers', + 'currency' => 'DZD', + 'languages' => ['ar'], + 'emoji' => '🇩🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 28.033886, + 'avg_long' => 1.659626, + ], + 'EC' => [ + 'name' => 'Ecuador', + 'native' => 'Ecuador', + 'phone' => '+593', + 'continent' => 'SA', + 'capital' => 'Quito', + 'currency' => 'USD', + 'languages' => ['es'], + 'emoji' => '🇪🇨', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -1.831239, + 'avg_long' => -78.183406, + ], + 'EE' => [ + 'name' => 'Estonia', + 'native' => 'Eesti', + 'phone' => '+372', + 'continent' => 'EU', + 'capital' => 'Tallinn', + 'currency' => 'EUR', + 'languages' => ['et'], + 'emoji' => '🇪🇪', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 58.595272, + 'avg_long' => 25.013607, + ], + 'EG' => [ + 'name' => 'Egypt', + 'native' => 'مصر‎', + 'phone' => '+20', + 'continent' => 'AF', + 'capital' => 'Cairo', + 'currency' => 'EGP', + 'languages' => ['ar'], + 'emoji' => '🇪🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 26.820553, + 'avg_long' => 30.802498, + ], + 'EH' => [ + 'name' => 'Western Sahara', + 'native' => 'الصحراء الغربية', + 'phone' => '+212', + 'continent' => 'AF', + 'capital' => 'El Aaiún', + 'currency' => 'MAD,DZD,MRO', + 'languages' => ['es'], + 'emoji' => '🇪🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 24.215527, + 'avg_long' => -12.885834, + ], + 'ER' => [ + 'name' => 'Eritrea', + 'native' => 'ኤርትራ', + 'phone' => '+291', + 'continent' => 'AF', + 'capital' => 'Asmara', + 'currency' => 'ERN', + 'languages' => ['ti', 'ar', 'en'], + 'emoji' => '🇪🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 15.179384, + 'avg_long' => 39.782334, + ], + 'ES' => [ + 'name' => 'Spain', + 'native' => 'España', + 'phone' => '+34', + 'continent' => 'EU', + 'capital' => 'Madrid', + 'currency' => 'EUR', + 'languages' => ['es', 'eu', 'ca', 'gl', 'oc'], + 'emoji' => '🇪🇸', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 40.463667, + 'avg_long' => -3.74922, + ], + 'ET' => [ + 'name' => 'Ethiopia', + 'native' => 'ኢትዮጵያ', + 'phone' => '+251', + 'continent' => 'AF', + 'capital' => 'Addis Ababa', + 'currency' => 'ETB', + 'languages' => ['am'], + 'emoji' => '🇪🇹', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 9.145, + 'avg_long' => 40.489673, + ], + 'FI' => [ + 'name' => 'Finland', + 'native' => 'Suomi', + 'phone' => '+358', + 'continent' => 'EU', + 'capital' => 'Helsinki', + 'currency' => 'EUR', + 'languages' => ['fi', 'sv'], + 'emoji' => '🇫🇮', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 61.92411, + 'avg_long' => 25.748151, + ], + 'FJ' => [ + 'name' => 'Fiji', + 'native' => 'Fiji', + 'phone' => '+679', + 'continent' => 'OC', + 'capital' => 'Suva', + 'currency' => 'FJD', + 'languages' => ['en', 'fj', 'hi', 'ur'], + 'emoji' => '🇫🇯', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -16.578193, + 'avg_long' => 179.414413, + ], + 'FK' => [ + 'name' => 'Falkland Islands', + 'native' => 'Falkland Islands', + 'phone' => '+500', + 'continent' => 'SA', + 'capital' => 'Stanley', + 'currency' => 'FKP', + 'languages' => ['en'], + 'emoji' => '🇫🇰', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -51.796253, + 'avg_long' => -59.523613, + ], + 'FM' => [ + 'name' => 'Micronesia', + 'native' => 'Micronesia', + 'phone' => '+691', + 'continent' => 'OC', + 'capital' => 'Palikir', + 'currency' => 'USD', + 'languages' => ['en'], + 'emoji' => '🇫🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 7.425554, + 'avg_long' => 150.550812, + ], + 'FO' => [ + 'name' => 'Faroe Islands', + 'native' => 'Føroyar', + 'phone' => '+298', + 'continent' => 'EU', + 'capital' => 'Tórshavn', + 'currency' => 'DKK', + 'languages' => ['fo'], + 'emoji' => '🇫🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 61.892635, + 'avg_long' => -6.911806, + ], + 'FR' => [ + 'name' => 'France', + 'native' => 'France', + 'phone' => '+33', + 'continent' => 'EU', + 'capital' => 'Paris', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇫🇷', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 46.227638, + 'avg_long' => 2.213749, + ], + 'GA' => [ + 'name' => 'Gabon', + 'native' => 'Gabon', + 'phone' => '+241', + 'continent' => 'AF', + 'capital' => 'Libreville', + 'currency' => 'XAF', + 'languages' => ['fr'], + 'emoji' => '🇬🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -0.803689, + 'avg_long' => 11.609444, + ], + 'GB' => [ + 'name' => 'United Kingdom', + 'native' => 'United Kingdom', + 'phone' => '+44', + 'continent' => 'EU', + 'capital' => 'London', + 'currency' => 'GBP', + 'languages' => ['en'], + 'emoji' => '🇬🇧', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 55.378051, + 'avg_long' => -3.435973, + ], + 'GD' => [ + 'name' => 'Grenada', + 'native' => 'Grenada', + 'phone' => '+1473', + 'continent' => 'NA', + 'capital' => "St. George\\\'s", + 'currency' => 'XCD', + 'languages' => ['en'], + 'emoji' => '🇬🇩', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 12.262776, + 'avg_long' => -61.604171, + ], + 'GE' => [ + 'name' => 'Georgia', + 'native' => 'საქართველო', + 'phone' => '+995', + 'continent' => 'AS', + 'capital' => 'Tbilisi', + 'currency' => 'GEL', + 'languages' => ['ka'], + 'emoji' => '🇬🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 42.315407, + 'avg_long' => 43.356892, + ], + 'GF' => [ + 'name' => 'French Guiana', + 'native' => 'Guyane française', + 'phone' => '+594', + 'continent' => 'SA', + 'capital' => 'Cayenne', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇬🇫', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 3.933889, + 'avg_long' => -53.125782, + ], + 'GG' => [ + 'name' => 'Guernsey', + 'native' => 'Guernsey', + 'phone' => '+44', + 'continent' => 'EU', + 'capital' => 'St. Peter Port', + 'currency' => 'GBP', + 'languages' => ['en', 'fr'], + 'emoji' => '🇬🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 49.465691, + 'avg_long' => -2.585278, + ], + 'GH' => [ + 'name' => 'Ghana', + 'native' => 'Ghana', + 'phone' => '+233', + 'continent' => 'AF', + 'capital' => 'Accra', + 'currency' => 'GHS', + 'languages' => ['en'], + 'emoji' => '🇬🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 7.946527, + 'avg_long' => -1.023194, + ], + 'GI' => [ + 'name' => 'Gibraltar', + 'native' => 'Gibraltar', + 'phone' => '+350', + 'continent' => 'EU', + 'capital' => 'Gibraltar', + 'currency' => 'GIP', + 'languages' => ['en'], + 'emoji' => '🇬🇮', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 36.137741, + 'avg_long' => -5.345374, + ], + 'GL' => [ + 'name' => 'Greenland', + 'native' => 'Kalaallit Nunaat', + 'phone' => '+299', + 'continent' => 'NA', + 'capital' => 'Nuuk', + 'currency' => 'DKK', + 'languages' => ['kl'], + 'emoji' => '🇬🇱', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 71.706936, + 'avg_long' => -42.604303, + ], + 'GM' => [ + 'name' => 'Gambia', + 'native' => 'Gambia', + 'phone' => '+220', + 'continent' => 'AF', + 'capital' => 'Banjul', + 'currency' => 'GMD', + 'languages' => ['en'], + 'emoji' => '🇬🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 13.443182, + 'avg_long' => -15.310139, + ], + 'GN' => [ + 'name' => 'Guinea', + 'native' => 'Guinée', + 'phone' => '+224', + 'continent' => 'AF', + 'capital' => 'Conakry', + 'currency' => 'GNF', + 'languages' => ['fr', 'ff'], + 'emoji' => '🇬🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 9.945587, + 'avg_long' => -9.696645, + ], + 'GP' => [ + 'name' => 'Guadeloupe', + 'native' => 'Guadeloupe', + 'phone' => '+590', + 'continent' => 'NA', + 'capital' => 'Basse-Terre', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇬🇵', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 16.995971, + 'avg_long' => -62.067641, + ], + 'GQ' => [ + 'name' => 'Equatorial Guinea', + 'native' => 'Guinea Ecuatorial', + 'phone' => '+240', + 'continent' => 'AF', + 'capital' => 'Malabo', + 'currency' => 'XAF', + 'languages' => ['es', 'fr'], + 'emoji' => '🇬🇶', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 1.650801, + 'avg_long' => 10.267895, + ], + 'GR' => [ + 'name' => 'Greece', + 'native' => 'Ελλάδα', + 'phone' => '+30', + 'continent' => 'EU', + 'capital' => 'Athens', + 'currency' => 'EUR', + 'languages' => ['el'], + 'emoji' => '🇬🇷', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 39.074208, + 'avg_long' => 21.824312, + ], + 'GS' => [ + 'name' => 'South Georgia and the South Sandwich Islands', + 'native' => 'South Georgia', + 'phone' => '+500', + 'continent' => 'AN', + 'capital' => 'King Edward Point', + 'currency' => 'GBP', + 'languages' => ['en'], + 'emoji' => '🇬🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -54.429579, + 'avg_long' => -36.587909, + ], + 'GT' => [ + 'name' => 'Guatemala', + 'native' => 'Guatemala', + 'phone' => '+502', + 'continent' => 'NA', + 'capital' => 'Guatemala City', + 'currency' => 'GTQ', + 'languages' => ['es'], + 'emoji' => '🇬🇹', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 15.783471, + 'avg_long' => -90.230759, + ], + 'GU' => [ + 'name' => 'Guam', + 'native' => 'Guam', + 'phone' => '+1671', + 'continent' => 'OC', + 'capital' => 'Hagåtña', + 'currency' => 'USD', + 'languages' => ['en', 'ch', 'es'], + 'emoji' => '🇬🇺', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 13.444304, + 'avg_long' => 144.793731, + ], + 'GW' => [ + 'name' => 'Guinea-Bissau', + 'native' => 'Guiné-Bissau', + 'phone' => '+245', + 'continent' => 'AF', + 'capital' => 'Bissau', + 'currency' => 'XOF', + 'languages' => ['pt'], + 'emoji' => '🇬🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 11.803749, + 'avg_long' => -15.180413, + ], + 'GY' => [ + 'name' => 'Guyana', + 'native' => 'Guyana', + 'phone' => '+592', + 'continent' => 'SA', + 'capital' => 'Georgetown', + 'currency' => 'GYD', + 'languages' => ['en'], + 'emoji' => '🇬🇾', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 4.860416, + 'avg_long' => -58.93018, + ], + 'HK' => [ + 'name' => 'Hong Kong', + 'native' => '香港', + 'phone' => '+852', + 'continent' => 'AS', + 'capital' => 'City of Victoria', + 'currency' => 'HKD', + 'languages' => ['zh', 'en'], + 'emoji' => '🇭🇰', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 22.396428, + 'avg_long' => 114.109497, + ], + 'HM' => [ + 'name' => 'Heard Island and McDonald Islands', + 'native' => 'Heard Island and McDonald Islands', + 'phone' => '+61', + 'continent' => 'AN', + 'capital' => '', + 'currency' => 'AUD', + 'languages' => ['en'], + 'emoji' => '🇭🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -53.08181, + 'avg_long' => 73.504158, + ], + 'HN' => [ + 'name' => 'Honduras', + 'native' => 'Honduras', + 'phone' => '+504', + 'continent' => 'NA', + 'capital' => 'Tegucigalpa', + 'currency' => 'HNL', + 'languages' => ['es'], + 'emoji' => '🇭🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 15.199999, + 'avg_long' => -86.241905, + ], + 'HR' => [ + 'name' => 'Croatia', + 'native' => 'Hrvatska', + 'phone' => '+385', + 'continent' => 'EU', + 'capital' => 'Zagreb', + 'currency' => 'HRK', + 'languages' => ['hr'], + 'emoji' => '🇭🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 45.1, + 'avg_long' => 15.2, + ], + 'HT' => [ + 'name' => 'Haiti', + 'native' => 'Haïti', + 'phone' => '+509', + 'continent' => 'NA', + 'capital' => 'Port-au-Prince', + 'currency' => 'HTG,USD', + 'languages' => ['fr', 'ht'], + 'emoji' => '🇭🇹', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 18.971187, + 'avg_long' => -72.285215, + ], + 'HU' => [ + 'name' => 'Hungary', + 'native' => 'Magyarország', + 'phone' => '+36', + 'continent' => 'EU', + 'capital' => 'Budapest', + 'currency' => 'HUF', + 'languages' => ['hu'], + 'emoji' => '🇭🇺', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 47.162494, + 'avg_long' => 19.503304, + ], + 'ID' => [ + 'name' => 'Indonesia', + 'native' => 'Indonesia', + 'phone' => '+62', + 'continent' => 'AS', + 'capital' => 'Jakarta', + 'currency' => 'IDR', + 'languages' => ['id'], + 'emoji' => '🇮🇩', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -0.789275, + 'avg_long' => 113.921327, + ], + 'IE' => [ + 'name' => 'Ireland', + 'native' => 'Éire', + 'phone' => '+353', + 'continent' => 'EU', + 'capital' => 'Dublin', + 'currency' => 'EUR', + 'languages' => ['ga', 'en'], + 'emoji' => '🇮🇪', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 53.41291, + 'avg_long' => -8.24389, + ], + 'IL' => [ + 'name' => 'Israel', + 'native' => 'יִשְׂרָאֵל', + 'phone' => '+972', + 'continent' => 'AS', + 'capital' => 'Jerusalem', + 'currency' => 'ILS', + 'languages' => ['he', 'ar'], + 'emoji' => '🇮🇱', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 31.046051, + 'avg_long' => 34.851612, + ], + 'IM' => [ + 'name' => 'Isle of Man', + 'native' => 'Isle of Man', + 'phone' => '+44', + 'continent' => 'EU', + 'capital' => 'Douglas', + 'currency' => 'GBP', + 'languages' => ['en', 'gv'], + 'emoji' => '🇮🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 54.236107, + 'avg_long' => -4.548056, + ], + 'IN' => [ + 'name' => 'India', + 'native' => 'भारत', + 'phone' => '+91', + 'continent' => 'AS', + 'capital' => 'New Delhi', + 'currency' => 'INR', + 'languages' => ['hi', 'en'], + 'emoji' => '🇮🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 20.593684, + 'avg_long' => 78.96288, + ], + 'IO' => [ + 'name' => 'British Indian Ocean Territory', + 'native' => 'British Indian Ocean Territory', + 'phone' => '+246', + 'continent' => 'AS', + 'capital' => 'Diego Garcia', + 'currency' => 'USD', + 'languages' => ['en'], + 'emoji' => '🇮🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -6.343194, + 'avg_long' => 71.876519, + ], + 'IQ' => [ + 'name' => 'Iraq', + 'native' => 'العراق', + 'phone' => '+964', + 'continent' => 'AS', + 'capital' => 'Baghdad', + 'currency' => 'IQD', + 'languages' => ['ar', 'ku'], + 'emoji' => '🇮🇶', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 33.223191, + 'avg_long' => 43.679291, + ], + 'IR' => [ + 'name' => 'Iran', + 'native' => 'ایران', + 'phone' => '+98', + 'continent' => 'AS', + 'capital' => 'Tehran', + 'currency' => 'IRR', + 'languages' => ['fa'], + 'emoji' => '🇮🇷', + 'launched' => false, + 'cookieconsent' => false, + 'avg_lat' => 32.427908, + 'avg_long' => 53.688046, + ], + 'IS' => [ + 'name' => 'Iceland', + 'native' => 'Ísland', + 'phone' => '+354', + 'continent' => 'EU', + 'capital' => 'Reykjavik', + 'currency' => 'ISK', + 'languages' => ['is'], + 'emoji' => '🇮🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 64.963051, + 'avg_long' => -19.020835, + ], + 'IT' => [ + 'name' => 'Italy', + 'native' => 'Italia', + 'phone' => '+39', + 'continent' => 'EU', + 'capital' => 'Rome', + 'currency' => 'EUR', + 'languages' => ['it'], + 'emoji' => '🇮🇹', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 41.87194, + 'avg_long' => 12.56738, + ], + 'JE' => [ + 'name' => 'Jersey', + 'native' => 'Jersey', + 'phone' => '+44', + 'continent' => 'EU', + 'capital' => 'Saint Helier', + 'currency' => 'GBP', + 'languages' => ['en', 'fr'], + 'emoji' => '🇯🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 49.214439, + 'avg_long' => -2.13125, + ], + 'JM' => [ + 'name' => 'Jamaica', + 'native' => 'Jamaica', + 'phone' => '+1876', + 'continent' => 'NA', + 'capital' => 'Kingston', + 'currency' => 'JMD', + 'languages' => ['en'], + 'emoji' => '🇯🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 18.109581, + 'avg_long' => -77.297508, + ], + 'JO' => [ + 'name' => 'Jordan', + 'native' => 'الأردن', + 'phone' => '+962', + 'continent' => 'AS', + 'capital' => 'Amman', + 'currency' => 'JOD', + 'languages' => ['ar'], + 'emoji' => '🇯🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 30.585164, + 'avg_long' => 36.238414, + ], + 'JP' => [ + 'name' => 'Japan', + 'native' => '日本', + 'phone' => '+81', + 'continent' => 'AS', + 'capital' => 'Tokyo', + 'currency' => 'JPY', + 'languages' => ['ja'], + 'emoji' => '🇯🇵', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 36.204824, + 'avg_long' => 138.252924, + ], + 'KE' => [ + 'name' => 'Kenya', + 'native' => 'Kenya', + 'phone' => '+254', + 'continent' => 'AF', + 'capital' => 'Nairobi', + 'currency' => 'KES', + 'languages' => ['en', 'sw'], + 'emoji' => '🇰🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -0.023559, + 'avg_long' => 37.906193, + ], + 'KG' => [ + 'name' => 'Kyrgyzstan', + 'native' => 'Кыргызстан', + 'phone' => '+996', + 'continent' => 'AS', + 'capital' => 'Bishkek', + 'currency' => 'KGS', + 'languages' => ['ky', 'ru'], + 'emoji' => '🇰🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 41.20438, + 'avg_long' => 74.766098, + ], + 'KH' => [ + 'name' => 'Cambodia', + 'native' => 'Kâmpŭchéa', + 'phone' => '+855', + 'continent' => 'AS', + 'capital' => 'Phnom Penh', + 'currency' => 'KHR', + 'languages' => ['km'], + 'emoji' => '🇰🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 12.565679, + 'avg_long' => 104.990963, + ], + 'KI' => [ + 'name' => 'Kiribati', + 'native' => 'Kiribati', + 'phone' => '+686', + 'continent' => 'OC', + 'capital' => 'South Tarawa', + 'currency' => 'AUD', + 'languages' => ['en'], + 'emoji' => '🇰🇮', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -3.370417, + 'avg_long' => -168.734039, + ], + 'KM' => [ + 'name' => 'Comoros', + 'native' => 'Komori', + 'phone' => '+269', + 'continent' => 'AF', + 'capital' => 'Moroni', + 'currency' => 'KMF', + 'languages' => ['ar', 'fr'], + 'emoji' => '🇰🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -11.875001, + 'avg_long' => 43.872219, + ], + 'KN' => [ + 'name' => 'Saint Kitts and Nevis', + 'native' => 'Saint Kitts and Nevis', + 'phone' => '+1869', + 'continent' => 'NA', + 'capital' => 'Basseterre', + 'currency' => 'XCD', + 'languages' => ['en'], + 'emoji' => '🇰🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 17.357822, + 'avg_long' => -62.782998, + ], + 'KP' => [ + 'name' => 'North Korea', + 'native' => '북한', + 'phone' => '+850', + 'continent' => 'AS', + 'capital' => 'Pyongyang', + 'currency' => 'KPW', + 'languages' => ['ko'], + 'emoji' => '🇰🇵', + 'launched' => false, + 'cookieconsent' => false, + 'avg_lat' => 40.339852, + 'avg_long' => 127.510093, + ], + 'KR' => [ + 'name' => 'South Korea', + 'native' => '대한민국', + 'phone' => '+82', + 'continent' => 'AS', + 'capital' => 'Seoul', + 'currency' => 'KRW', + 'languages' => ['ko'], + 'emoji' => '🇰🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 35.907757, + 'avg_long' => 127.766922, + ], + 'KW' => [ + 'name' => 'Kuwait', + 'native' => 'الكويت', + 'phone' => '+965', + 'continent' => 'AS', + 'capital' => 'Kuwait City', + 'currency' => 'KWD', + 'languages' => ['ar'], + 'emoji' => '🇰🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 29.31166, + 'avg_long' => 47.481766, + ], + 'KY' => [ + 'name' => 'Cayman Islands', + 'native' => 'Cayman Islands', + 'phone' => '+1345', + 'continent' => 'NA', + 'capital' => 'George Town', + 'currency' => 'KYD', + 'languages' => ['en'], + 'emoji' => '🇰🇾', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 19.513469, + 'avg_long' => -80.566956, + ], + 'KZ' => [ + 'name' => 'Kazakhstan', + 'native' => 'Қазақстан', + 'phone' => '+76,77', + 'continent' => 'AS', + 'capital' => 'Astana', + 'currency' => 'KZT', + 'languages' => ['kk', 'ru'], + 'emoji' => '🇰🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 48.019573, + 'avg_long' => 66.923684, + ], + 'LA' => [ + 'name' => 'Laos', + 'native' => 'ສປປລາວ', + 'phone' => '+856', + 'continent' => 'AS', + 'capital' => 'Vientiane', + 'currency' => 'LAK', + 'languages' => ['lo'], + 'emoji' => '🇱🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 19.85627, + 'avg_long' => 102.495496, + ], + 'LB' => [ + 'name' => 'Lebanon', + 'native' => 'لبنان', + 'phone' => '+961', + 'continent' => 'AS', + 'capital' => 'Beirut', + 'currency' => 'LBP', + 'languages' => ['ar', 'fr'], + 'emoji' => '🇱🇧', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 33.854721, + 'avg_long' => 35.862285, + ], + 'LC' => [ + 'name' => 'Saint Lucia', + 'native' => 'Saint Lucia', + 'phone' => '+1758', + 'continent' => 'NA', + 'capital' => 'Castries', + 'currency' => 'XCD', + 'languages' => ['en'], + 'emoji' => '🇱🇨', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 13.909444, + 'avg_long' => -60.978893, + ], + 'LI' => [ + 'name' => 'Liechtenstein', + 'native' => 'Liechtenstein', + 'phone' => '+423', + 'continent' => 'EU', + 'capital' => 'Vaduz', + 'currency' => 'CHF', + 'languages' => ['de'], + 'emoji' => '🇱🇮', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 47.166, + 'avg_long' => 9.555373, + ], + 'LK' => [ + 'name' => 'Sri Lanka', + 'native' => 'śrī laṃkāva', + 'phone' => '+94', + 'continent' => 'AS', + 'capital' => 'Colombo', + 'currency' => 'LKR', + 'languages' => ['si', 'ta'], + 'emoji' => '🇱🇰', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 7.873054, + 'avg_long' => 80.771797, + ], + 'LR' => [ + 'name' => 'Liberia', + 'native' => 'Liberia', + 'phone' => '+231', + 'continent' => 'AF', + 'capital' => 'Monrovia', + 'currency' => 'LRD', + 'languages' => ['en'], + 'emoji' => '🇱🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 6.428055, + 'avg_long' => -9.429499, + ], + 'LS' => [ + 'name' => 'Lesotho', + 'native' => 'Lesotho', + 'phone' => '+266', + 'continent' => 'AF', + 'capital' => 'Maseru', + 'currency' => 'LSL,ZAR', + 'languages' => ['en', 'st'], + 'emoji' => '🇱🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -29.609988, + 'avg_long' => 28.233608, + ], + 'LT' => [ + 'name' => 'Lithuania', + 'native' => 'Lietuva', + 'phone' => '+370', + 'continent' => 'EU', + 'capital' => 'Vilnius', + 'currency' => 'LTL', + 'languages' => ['lt'], + 'emoji' => '🇱🇹', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 55.169438, + 'avg_long' => 23.881275, + ], + 'LU' => [ + 'name' => 'Luxembourg', + 'native' => 'Luxembourg', + 'phone' => '+352', + 'continent' => 'EU', + 'capital' => 'Luxembourg', + 'currency' => 'EUR', + 'languages' => ['fr', 'de', 'lb'], + 'emoji' => '🇱🇺', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 49.815273, + 'avg_long' => 6.129583, + ], + 'LV' => [ + 'name' => 'Latvia', + 'native' => 'Latvija', + 'phone' => '+371', + 'continent' => 'EU', + 'capital' => 'Riga', + 'currency' => 'EUR', + 'languages' => ['lv'], + 'emoji' => '🇱🇻', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 56.879635, + 'avg_long' => 24.603189, + ], + 'LY' => [ + 'name' => 'Libya', + 'native' => '‏ليبيا', + 'phone' => '+218', + 'continent' => 'AF', + 'capital' => 'Tripoli', + 'currency' => 'LYD', + 'languages' => ['ar'], + 'emoji' => '🇱🇾', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 26.3351, + 'avg_long' => 17.228331, + ], + 'MA' => [ + 'name' => 'Morocco', + 'native' => 'المغرب', + 'phone' => '+212', + 'continent' => 'AF', + 'capital' => 'Rabat', + 'currency' => 'MAD', + 'languages' => ['ar'], + 'emoji' => '🇲🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 31.791702, + 'avg_long' => -7.09262, + ], + 'MC' => [ + 'name' => 'Monaco', + 'native' => 'Monaco', + 'phone' => '+377', + 'continent' => 'EU', + 'capital' => 'Monaco', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇲🇨', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 43.750298, + 'avg_long' => 7.412841, + ], + 'MD' => [ + 'name' => 'Moldova', + 'native' => 'Moldova', + 'phone' => '+373', + 'continent' => 'EU', + 'capital' => 'Chișinău', + 'currency' => 'MDL', + 'languages' => ['ro'], + 'emoji' => '🇲🇩', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 47.411631, + 'avg_long' => 28.369885, + ], + 'ME' => [ + 'name' => 'Montenegro', + 'native' => 'Црна Гора', + 'phone' => '+382', + 'continent' => 'EU', + 'capital' => 'Podgorica', + 'currency' => 'EUR', + 'languages' => ['sr', 'bs', 'sq', 'hr'], + 'emoji' => '🇲🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 42.708678, + 'avg_long' => 19.37439, + ], + 'MG' => [ + 'name' => 'Madagascar', + 'native' => 'Madagasikara', + 'phone' => '+261', + 'continent' => 'AF', + 'capital' => 'Antananarivo', + 'currency' => 'MGA', + 'languages' => ['fr', 'mg'], + 'emoji' => '🇲🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -18.766947, + 'avg_long' => 46.869107, + ], + 'MH' => [ + 'name' => 'Marshall Islands', + 'native' => 'M̧ajeļ', + 'phone' => '+692', + 'continent' => 'OC', + 'capital' => 'Majuro', + 'currency' => 'USD', + 'languages' => ['en', 'mh'], + 'emoji' => '🇲🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 7.131474, + 'avg_long' => 171.184478, + ], + 'MK' => [ + 'name' => 'Macedonia', + 'native' => 'Македонија', + 'phone' => '+389', + 'continent' => 'EU', + 'capital' => 'Skopje', + 'currency' => 'MKD', + 'languages' => ['mk'], + 'emoji' => '🇲🇰', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 41.608635, + 'avg_long' => 21.745275, + ], + 'ML' => [ + 'name' => 'Mali', + 'native' => 'Mali', + 'phone' => '+223', + 'continent' => 'AF', + 'capital' => 'Bamako', + 'currency' => 'XOF', + 'languages' => ['fr'], + 'emoji' => '🇲🇱', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 17.570692, + 'avg_long' => -3.996166, + ], + 'MM' => [ + 'name' => 'Myanmar [Burma]', + 'native' => 'Myanma', + 'phone' => '+95', + 'continent' => 'AS', + 'capital' => 'Naypyidaw', + 'currency' => 'MMK', + 'languages' => ['my'], + 'emoji' => '🇲🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 21.913965, + 'avg_long' => 95.956223, + ], + 'MN' => [ + 'name' => 'Mongolia', + 'native' => 'Монгол улс', + 'phone' => '+976', + 'continent' => 'AS', + 'capital' => 'Ulan Bator', + 'currency' => 'MNT', + 'languages' => ['mn'], + 'emoji' => '🇲🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 46.862496, + 'avg_long' => 103.846656, + ], + 'MO' => [ + 'name' => 'Macao', + 'native' => '澳門', + 'phone' => '+853', + 'continent' => 'AS', + 'capital' => '', + 'currency' => 'MOP', + 'languages' => ['zh', 'pt'], + 'emoji' => '🇲🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 22.198745, + 'avg_long' => 113.543873, + ], + 'MP' => [ + 'name' => 'Northern Mariana Islands', + 'native' => 'Northern Mariana Islands', + 'phone' => '+1670', + 'continent' => 'OC', + 'capital' => 'Saipan', + 'currency' => 'USD', + 'languages' => ['en', 'ch'], + 'emoji' => '🇲🇵', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 17.33083, + 'avg_long' => 145.38469, + ], + 'MQ' => [ + 'name' => 'Martinique', + 'native' => 'Martinique', + 'phone' => '+596', + 'continent' => 'NA', + 'capital' => 'Fort-de-France', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇲🇶', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 14.641528, + 'avg_long' => -61.024174, + ], + 'MR' => [ + 'name' => 'Mauritania', + 'native' => 'موريتانيا', + 'phone' => '+222', + 'continent' => 'AF', + 'capital' => 'Nouakchott', + 'currency' => 'MRO', + 'languages' => ['ar'], + 'emoji' => '🇲🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 21.00789, + 'avg_long' => -10.940835, + ], + 'MS' => [ + 'name' => 'Montserrat', + 'native' => 'Montserrat', + 'phone' => '+1664', + 'continent' => 'NA', + 'capital' => 'Plymouth', + 'currency' => 'XCD', + 'languages' => ['en'], + 'emoji' => '🇲🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 16.742498, + 'avg_long' => -62.187366, + ], + 'MT' => [ + 'name' => 'Malta', + 'native' => 'Malta', + 'phone' => '+356', + 'continent' => 'EU', + 'capital' => 'Valletta', + 'currency' => 'EUR', + 'languages' => ['mt', 'en'], + 'emoji' => '🇲🇹', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 35.937496, + 'avg_long' => 14.375416, + ], + 'MU' => [ + 'name' => 'Mauritius', + 'native' => 'Maurice', + 'phone' => '+230', + 'continent' => 'AF', + 'capital' => 'Port Louis', + 'currency' => 'MUR', + 'languages' => ['en'], + 'emoji' => '🇲🇺', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -20.348404, + 'avg_long' => 57.552152, + ], + 'MV' => [ + 'name' => 'Maldives', + 'native' => 'Maldives', + 'phone' => '+960', + 'continent' => 'AS', + 'capital' => 'Malé', + 'currency' => 'MVR', + 'languages' => ['dv'], + 'emoji' => '🇲🇻', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 3.202778, + 'avg_long' => 73.22068, + ], + 'MW' => [ + 'name' => 'Malawi', + 'native' => 'Malawi', + 'phone' => '+265', + 'continent' => 'AF', + 'capital' => 'Lilongwe', + 'currency' => 'MWK', + 'languages' => ['en', 'ny'], + 'emoji' => '🇲🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -13.254308, + 'avg_long' => 34.301525, + ], + 'MX' => [ + 'name' => 'Mexico', + 'native' => 'México', + 'phone' => '+52', + 'continent' => 'NA', + 'capital' => 'Mexico City', + 'currency' => 'MXN', + 'languages' => ['es'], + 'emoji' => '🇲🇽', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 23.634501, + 'avg_long' => -102.552784, + ], + 'MY' => [ + 'name' => 'Malaysia', + 'native' => 'Malaysia', + 'phone' => '+60', + 'continent' => 'AS', + 'capital' => 'Kuala Lumpur', + 'currency' => 'MYR', + 'languages' => ['ms'], + 'emoji' => '🇲🇾', + 'launched' => true, + 'avg_lat' => 4.210484, + 'avg_long' => 101.975766, + ], + 'MZ' => [ + 'name' => 'Mozambique', + 'native' => 'Moçambique', + 'phone' => '+258', + 'continent' => 'AF', + 'capital' => 'Maputo', + 'currency' => 'MZN', + 'languages' => ['pt'], + 'emoji' => '🇲🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -18.665695, + 'avg_long' => 35.529562, + ], + 'NA' => [ + 'name' => 'Namibia', + 'native' => 'Namibia', + 'phone' => '+264', + 'continent' => 'AF', + 'capital' => 'Windhoek', + 'currency' => 'NAD,ZAR', + 'languages' => ['en', 'af'], + 'emoji' => '🇳🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -22.95764, + 'avg_long' => 18.49041, + ], + 'NC' => [ + 'name' => 'New Caledonia', + 'native' => 'Nouvelle-Calédonie', + 'phone' => '+687', + 'continent' => 'OC', + 'capital' => 'Nouméa', + 'currency' => 'XPF', + 'languages' => ['fr'], + 'emoji' => '🇳🇨', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -20.904305, + 'avg_long' => 165.618042, + ], + 'NE' => [ + 'name' => 'Niger', + 'native' => 'Niger', + 'phone' => '+227', + 'continent' => 'AF', + 'capital' => 'Niamey', + 'currency' => 'XOF', + 'languages' => ['fr'], + 'emoji' => '🇳🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 17.607789, + 'avg_long' => 8.081666, + ], + 'NF' => [ + 'name' => 'Norfolk Island', + 'native' => 'Norfolk Island', + 'phone' => '+672', + 'continent' => 'OC', + 'capital' => 'Kingston', + 'currency' => 'AUD', + 'languages' => ['en'], + 'emoji' => '🇳🇫', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -29.040835, + 'avg_long' => 167.954712, + ], + 'NG' => [ + 'name' => 'Nigeria', + 'native' => 'Nigeria', + 'phone' => '+234', + 'continent' => 'AF', + 'capital' => 'Abuja', + 'currency' => 'NGN', + 'languages' => ['en'], + 'emoji' => '🇳🇬', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 9.081999, + 'avg_long' => 8.675277, + ], + 'NI' => [ + 'name' => 'Nicaragua', + 'native' => 'Nicaragua', + 'phone' => '+505', + 'continent' => 'NA', + 'capital' => 'Managua', + 'currency' => 'NIO', + 'languages' => ['es'], + 'emoji' => '🇳🇮', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 12.865416, + 'avg_long' => -85.207229, + ], + 'NL' => [ + 'name' => 'Netherlands', + 'native' => 'Nederland', + 'phone' => '+31', + 'continent' => 'EU', + 'capital' => 'Amsterdam', + 'currency' => 'EUR', + 'languages' => ['nl'], + 'emoji' => '🇳🇱', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 52.132633, + 'avg_long' => 5.291266, + ], + 'NO' => [ + 'name' => 'Norway', + 'native' => 'Norge', + 'phone' => '+47', + 'continent' => 'EU', + 'capital' => 'Oslo', + 'currency' => 'NOK', + 'languages' => ['no', 'nb', 'nn'], + 'emoji' => '🇳🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 60.472024, + 'avg_long' => 8.468946, + ], + 'NP' => [ + 'name' => 'Nepal', + 'native' => 'नपल', + 'phone' => '+977', + 'continent' => 'AS', + 'capital' => 'Kathmandu', + 'currency' => 'NPR', + 'languages' => ['ne'], + 'emoji' => '🇳🇵', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 28.394857, + 'avg_long' => 84.124008, + ], + 'NR' => [ + 'name' => 'Nauru', + 'native' => 'Nauru', + 'phone' => '+674', + 'continent' => 'OC', + 'capital' => 'Yaren', + 'currency' => 'AUD', + 'languages' => ['en', 'na'], + 'emoji' => '🇳🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -0.522778, + 'avg_long' => 166.931503, + ], + 'NU' => [ + 'name' => 'Niue', + 'native' => 'Niuē', + 'phone' => '+683', + 'continent' => 'OC', + 'capital' => 'Alofi', + 'currency' => 'NZD', + 'languages' => ['en'], + 'emoji' => '🇳🇺', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -19.054445, + 'avg_long' => -169.867233, + ], + 'NZ' => [ + 'name' => 'New Zealand', + 'native' => 'New Zealand', + 'phone' => '+64', + 'continent' => 'OC', + 'capital' => 'Wellington', + 'currency' => 'NZD', + 'languages' => ['en', 'mi'], + 'emoji' => '🇳🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -40.900557, + 'avg_long' => 174.885971, + ], + 'OM' => [ + 'name' => 'Oman', + 'native' => 'عمان', + 'phone' => '+968', + 'continent' => 'AS', + 'capital' => 'Muscat', + 'currency' => 'OMR', + 'languages' => ['ar'], + 'emoji' => '🇴🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 21.512583, + 'avg_long' => 55.923255, + ], + 'PA' => [ + 'name' => 'Panama', + 'native' => 'Panamá', + 'phone' => '+507', + 'continent' => 'NA', + 'capital' => 'Panama City', + 'currency' => 'PAB,USD', + 'languages' => ['es'], + 'emoji' => '🇵🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 8.537981, + 'avg_long' => -80.782127, + ], + 'PE' => [ + 'name' => 'Peru', + 'native' => 'Perú', + 'phone' => '+51', + 'continent' => 'SA', + 'capital' => 'Lima', + 'currency' => 'PEN', + 'languages' => ['es'], + 'emoji' => '🇵🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -9.189967, + 'avg_long' => -75.015152, + ], + 'PF' => [ + 'name' => 'French Polynesia', + 'native' => 'Polynésie française', + 'phone' => '+689', + 'continent' => 'OC', + 'capital' => 'Papeetē', + 'currency' => 'XPF', + 'languages' => ['fr'], + 'emoji' => '🇵🇫', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -17.679742, + 'avg_long' => -149.406843, + ], + 'PG' => [ + 'name' => 'Papua New Guinea', + 'native' => 'Papua Niugini', + 'phone' => '+675', + 'continent' => 'OC', + 'capital' => 'Port Moresby', + 'currency' => 'PGK', + 'languages' => ['en'], + 'emoji' => '🇵🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -6.314993, + 'avg_long' => 143.95555, + ], + 'PH' => [ + 'name' => 'Philippines', + 'native' => 'Pilipinas', + 'phone' => '+63', + 'continent' => 'AS', + 'capital' => 'Manila', + 'currency' => 'PHP', + 'languages' => ['en'], + 'emoji' => '🇵🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 12.879721, + 'avg_long' => 121.774017, + ], + 'PK' => [ + 'name' => 'Pakistan', + 'native' => 'Pakistan', + 'phone' => '+92', + 'continent' => 'AS', + 'capital' => 'Islamabad', + 'currency' => 'PKR', + 'languages' => ['en', 'ur'], + 'emoji' => '🇵🇰', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 30.375321, + 'avg_long' => 69.345116, + ], + 'PL' => [ + 'name' => 'Poland', + 'native' => 'Polska', + 'phone' => '+48', + 'continent' => 'EU', + 'capital' => 'Warsaw', + 'currency' => 'PLN', + 'languages' => ['pl'], + 'emoji' => '🇵🇱', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 51.919438, + 'avg_long' => 19.145136, + ], + 'PM' => [ + 'name' => 'Saint Pierre and Miquelon', + 'native' => 'Saint-Pierre-et-Miquelon', + 'phone' => '+508', + 'continent' => 'NA', + 'capital' => 'Saint-Pierre', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇵🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 46.941936, + 'avg_long' => -56.27111, + ], + 'PN' => [ + 'name' => 'Pitcairn Islands', + 'native' => 'Pitcairn Islands', + 'phone' => '+64', + 'continent' => 'OC', + 'capital' => 'Adamstown', + 'currency' => 'NZD', + 'languages' => ['en'], + 'emoji' => '🇵🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -24.703615, + 'avg_long' => -127.439308, + ], + 'PR' => [ + 'name' => 'Puerto Rico', + 'native' => 'Puerto Rico', + 'phone' => '+1787,1939', + 'continent' => 'NA', + 'capital' => 'San Juan', + 'currency' => 'USD', + 'languages' => ['es', 'en'], + 'emoji' => '🇵🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 18.220833, + 'avg_long' => -66.590149, + ], + 'PS' => [ + 'name' => 'Palestine', + 'native' => 'فلسطين', + 'phone' => '+970', + 'continent' => 'AS', + 'capital' => 'Ramallah', + 'currency' => 'ILS', + 'languages' => ['ar'], + 'emoji' => '🇵🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 31.952162, + 'avg_long' => 35.233154, + ], + 'PT' => [ + 'name' => 'Portugal', + 'native' => 'Portugal', + 'phone' => '+351', + 'continent' => 'EU', + 'capital' => 'Lisbon', + 'currency' => 'EUR', + 'languages' => ['pt'], + 'emoji' => '🇵🇹', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 39.399872, + 'avg_long' => -8.224454, + ], + 'PW' => [ + 'name' => 'Palau', + 'native' => 'Palau', + 'phone' => '+680', + 'continent' => 'OC', + 'capital' => 'Ngerulmud', + 'currency' => 'USD', + 'languages' => ['en'], + 'emoji' => '🇵🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 7.51498, + 'avg_long' => 134.58252, + ], + 'PY' => [ + 'name' => 'Paraguay', + 'native' => 'Paraguay', + 'phone' => '+595', + 'continent' => 'SA', + 'capital' => 'Asunción', + 'currency' => 'PYG', + 'languages' => ['es', 'gn'], + 'emoji' => '🇵🇾', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -23.442503, + 'avg_long' => -58.443832, + ], + 'QA' => [ + 'name' => 'Qatar', + 'native' => 'قطر', + 'phone' => '+974', + 'continent' => 'AS', + 'capital' => 'Doha', + 'currency' => 'QAR', + 'languages' => ['ar'], + 'emoji' => '🇶🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 25.354826, + 'avg_long' => 51.183884, + ], + 'RE' => [ + 'name' => 'Réunion', + 'native' => 'La Réunion', + 'phone' => '+262', + 'continent' => 'AF', + 'capital' => 'Saint-Denis', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇷🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -21.115141, + 'avg_long' => 55.536384, + ], + 'RO' => [ + 'name' => 'Romania', + 'native' => 'România', + 'phone' => '+40', + 'continent' => 'EU', + 'capital' => 'Bucharest', + 'currency' => 'RON', + 'languages' => ['ro'], + 'emoji' => '🇷🇴', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 45.943161, + 'avg_long' => 24.96676, + ], + 'RS' => [ + 'name' => 'Serbia', + 'native' => 'Србија', + 'phone' => '+381', + 'continent' => 'EU', + 'capital' => 'Belgrade', + 'currency' => 'RSD', + 'languages' => ['sr'], + 'emoji' => '🇷🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 44.016521, + 'avg_long' => 21.005859, + ], + 'RU' => [ + 'name' => 'Russia', + 'native' => 'Россия', + 'phone' => '+7', + 'continent' => 'EU', + 'capital' => 'Moscow', + 'currency' => 'RUB', + 'languages' => ['ru'], + 'emoji' => '🇷🇺', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 61.52401, + 'avg_long' => 105.318756, + ], + 'RW' => [ + 'name' => 'Rwanda', + 'native' => 'Rwanda', + 'phone' => '+250', + 'continent' => 'AF', + 'capital' => 'Kigali', + 'currency' => 'RWF', + 'languages' => ['rw', 'en', 'fr'], + 'emoji' => '🇷🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -1.940278, + 'avg_long' => 29.873888, + ], + 'SA' => [ + 'name' => 'Saudi Arabia', + 'native' => 'العربية السعودية', + 'phone' => '+966', + 'continent' => 'AS', + 'capital' => 'Riyadh', + 'currency' => 'SAR', + 'languages' => ['ar'], + 'emoji' => '🇸🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 23.885942, + 'avg_long' => 45.079162, + ], + 'SB' => [ + 'name' => 'Solomon Islands', + 'native' => 'Solomon Islands', + 'phone' => '+677', + 'continent' => 'OC', + 'capital' => 'Honiara', + 'currency' => 'SBD', + 'languages' => ['en'], + 'emoji' => '🇸🇧', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -9.64571, + 'avg_long' => 160.156194, + ], + 'SC' => [ + 'name' => 'Seychelles', + 'native' => 'Seychelles', + 'phone' => '+248', + 'continent' => 'AF', + 'capital' => 'Victoria', + 'currency' => 'SCR', + 'languages' => ['fr', 'en'], + 'emoji' => '🇸🇨', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -4.679574, + 'avg_long' => 55.491977, + ], + 'SD' => [ + 'name' => 'Sudan', + 'native' => 'السودان', + 'phone' => '+249', + 'continent' => 'AF', + 'capital' => 'Khartoum', + 'currency' => 'SDG', + 'languages' => ['ar', 'en'], + 'emoji' => '🇸🇩', + 'launched' => false, + 'cookieconsent' => false, + 'avg_lat' => 12.862807, + 'avg_long' => 30.217636, + ], + 'SE' => [ + 'name' => 'Sweden', + 'native' => 'Sverige', + 'phone' => '+46', + 'continent' => 'EU', + 'capital' => 'Stockholm', + 'currency' => 'SEK', + 'languages' => ['sv'], + 'emoji' => '🇸🇪', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 60.128161, + 'avg_long' => 18.643501, + ], + 'SG' => [ + 'name' => 'Singapore', + 'native' => 'Singapore', + 'phone' => '+65', + 'continent' => 'AS', + 'capital' => 'Singapore', + 'currency' => 'SGD', + 'languages' => ['en', 'ms', 'ta', 'zh'], + 'emoji' => '🇸🇬', + 'launched' => true, + 'avg_lat' => 1.352083, + 'avg_long' => 103.819836, + ], + 'SH' => [ + 'name' => 'Saint Helena', + 'native' => 'Saint Helena', + 'phone' => '+290', + 'continent' => 'AF', + 'capital' => 'Jamestown', + 'currency' => 'SHP', + 'languages' => ['en'], + 'emoji' => '🇸🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -24.143474, + 'avg_long' => -10.030696, + ], + 'SI' => [ + 'name' => 'Slovenia', + 'native' => 'Slovenija', + 'phone' => '+386', + 'continent' => 'EU', + 'capital' => 'Ljubljana', + 'currency' => 'EUR', + 'languages' => ['sl'], + 'emoji' => '🇸🇮', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 46.151241, + 'avg_long' => 14.995463, + ], + 'SJ' => [ + 'name' => 'Svalbard and Jan Mayen', + 'native' => 'Svalbard og Jan Mayen', + 'phone' => '+4779', + 'continent' => 'EU', + 'capital' => 'Longyearbyen', + 'currency' => 'NOK', + 'languages' => ['no'], + 'emoji' => '🇸🇯', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 77.553604, + 'avg_long' => 23.670272, + ], + 'SK' => [ + 'name' => 'Slovakia', + 'native' => 'Slovensko', + 'phone' => '+421', + 'continent' => 'EU', + 'capital' => 'Bratislava', + 'currency' => 'EUR', + 'languages' => ['sk'], + 'emoji' => '🇸🇰', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 48.669026, + 'avg_long' => 19.699024, + ], + 'SL' => [ + 'name' => 'Sierra Leone', + 'native' => 'Sierra Leone', + 'phone' => '+232', + 'continent' => 'AF', + 'capital' => 'Freetown', + 'currency' => 'SLL', + 'languages' => ['en'], + 'emoji' => '🇸🇱', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 8.460555, + 'avg_long' => -11.779889, + ], + 'SM' => [ + 'name' => 'San Marino', + 'native' => 'San Marino', + 'phone' => '+378', + 'continent' => 'EU', + 'capital' => 'City of San Marino', + 'currency' => 'EUR', + 'languages' => ['it'], + 'emoji' => '🇸🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 43.94236, + 'avg_long' => 12.457777, + ], + 'SN' => [ + 'name' => 'Senegal', + 'native' => 'Sénégal', + 'phone' => '+221', + 'continent' => 'AF', + 'capital' => 'Dakar', + 'currency' => 'XOF', + 'languages' => ['fr'], + 'emoji' => '🇸🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 14.497401, + 'avg_long' => -14.452362, + ], + 'SO' => [ + 'name' => 'Somalia', + 'native' => 'Soomaaliya', + 'phone' => '+252', + 'continent' => 'AF', + 'capital' => 'Mogadishu', + 'currency' => 'SOS', + 'languages' => ['so', 'ar'], + 'emoji' => '🇸🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 5.152149, + 'avg_long' => 46.199616, + ], + 'SR' => [ + 'name' => 'Suriname', + 'native' => 'Suriname', + 'phone' => '+597', + 'continent' => 'SA', + 'capital' => 'Paramaribo', + 'currency' => 'SRD', + 'languages' => ['nl'], + 'emoji' => '🇸🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 3.919305, + 'avg_long' => -56.027783, + ], + 'ST' => [ + 'name' => 'São Tomé and Príncipe', + 'native' => 'São Tomé e Príncipe', + 'phone' => '+239', + 'continent' => 'AF', + 'capital' => 'São Tomé', + 'currency' => 'STD', + 'languages' => ['pt'], + 'emoji' => '🇸🇹', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 0.18636, + 'avg_long' => 6.613081, + ], + 'SV' => [ + 'name' => 'El Salvador', + 'native' => 'El Salvador', + 'phone' => '+503', + 'continent' => 'NA', + 'capital' => 'San Salvador', + 'currency' => 'SVC,USD', + 'languages' => ['es'], + 'emoji' => '🇸🇻', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 13.794185, + 'avg_long' => -88.89653, + ], + 'SY' => [ + 'name' => 'Syria', + 'native' => 'سوريا', + 'phone' => '+963', + 'continent' => 'AS', + 'capital' => 'Damascus', + 'currency' => 'SYP', + 'languages' => ['ar'], + 'emoji' => '🇸🇾', + 'launched' => false, + 'cookieconsent' => false, + 'avg_lat' => 34.802075, + 'avg_long' => 38.996815, + ], + 'SZ' => [ + 'name' => 'Swaziland', + 'native' => 'Swaziland', + 'phone' => '+268', + 'continent' => 'AF', + 'capital' => 'Lobamba', + 'currency' => 'SZL', + 'languages' => ['en', 'ss'], + 'emoji' => '🇸🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -26.522503, + 'avg_long' => 31.465866, + ], + 'TC' => [ + 'name' => 'Turks and Caicos Islands', + 'native' => 'Turks and Caicos Islands', + 'phone' => '+1649', + 'continent' => 'NA', + 'capital' => 'Cockburn Town', + 'currency' => 'USD', + 'languages' => ['en'], + 'emoji' => '🇹🇨', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 21.694025, + 'avg_long' => -71.797928, + ], + 'TD' => [ + 'name' => 'Chad', + 'native' => 'Tchad', + 'phone' => '+235', + 'continent' => 'AF', + 'capital' => "N\\\'Djamena", + 'currency' => 'XAF', + 'languages' => ['fr', 'ar'], + 'emoji' => '🇹🇩', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 15.454166, + 'avg_long' => 18.732207, + ], + 'TF' => [ + 'name' => 'French Southern Territories', + 'native' => 'Territoire des Terres australes et antarctiques fr', + 'phone' => '+262', + 'continent' => 'AN', + 'capital' => 'Port-aux-Français', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇹🇫', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -49.280366, + 'avg_long' => 69.348557, + ], + 'TG' => [ + 'name' => 'Togo', + 'native' => 'Togo', + 'phone' => '+228', + 'continent' => 'AF', + 'capital' => 'Lomé', + 'currency' => 'XOF', + 'languages' => ['fr'], + 'emoji' => '🇹🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 8.619543, + 'avg_long' => 0.824782, + ], + 'TH' => [ + 'name' => 'Thailand', + 'native' => 'ประเทศไทย', + 'phone' => '+66', + 'continent' => 'AS', + 'capital' => 'Bangkok', + 'currency' => 'THB', + 'languages' => ['th'], + 'emoji' => '🇹🇭', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 15.870032, + 'avg_long' => 100.992541, + ], + 'TJ' => [ + 'name' => 'Tajikistan', + 'native' => 'Тоҷикистон', + 'phone' => '+992', + 'continent' => 'AS', + 'capital' => 'Dushanbe', + 'currency' => 'TJS', + 'languages' => ['tg', 'ru'], + 'emoji' => '🇹🇯', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 38.861034, + 'avg_long' => 71.276093, + ], + 'TK' => [ + 'name' => 'Tokelau', + 'native' => 'Tokelau', + 'phone' => '+690', + 'continent' => 'OC', + 'capital' => 'Fakaofo', + 'currency' => 'NZD', + 'languages' => ['en'], + 'emoji' => '🇹🇰', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -8.967363, + 'avg_long' => -171.855881, + ], + 'TL' => [ + 'name' => 'East Timor', + 'native' => 'Timor-Leste', + 'phone' => '+670', + 'continent' => 'OC', + 'capital' => 'Dili', + 'currency' => 'USD', + 'languages' => ['pt'], + 'emoji' => '🇹🇱', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -8.874217, + 'avg_long' => 125.727539, + ], + 'TM' => [ + 'name' => 'Turkmenistan', + 'native' => 'Türkmenistan', + 'phone' => '+993', + 'continent' => 'AS', + 'capital' => 'Ashgabat', + 'currency' => 'TMT', + 'languages' => ['tk', 'ru'], + 'emoji' => '🇹🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 38.969719, + 'avg_long' => 59.556278, + ], + 'TN' => [ + 'name' => 'Tunisia', + 'native' => 'تونس', + 'phone' => '+216', + 'continent' => 'AF', + 'capital' => 'Tunis', + 'currency' => 'TND', + 'languages' => ['ar'], + 'emoji' => '🇹🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 33.886917, + 'avg_long' => 9.537499, + ], + 'TO' => [ + 'name' => 'Tonga', + 'native' => 'Tonga', + 'phone' => '+676', + 'continent' => 'OC', + 'capital' => "Nuku\\\'alofa", + 'currency' => 'TOP', + 'languages' => ['en', 'to'], + 'emoji' => '🇹🇴', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -21.178986, + 'avg_long' => -175.198242, + ], + 'TR' => [ + 'name' => 'Türkiye', + 'native' => 'Türkiye', + 'phone' => '+90', + 'continent' => 'AS', + 'capital' => 'Ankara', + 'currency' => 'TRY', + 'languages' => ['tr'], + 'emoji' => '🇹🇷', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 38.963745, + 'avg_long' => 35.243322, + ], + 'TT' => [ + 'name' => 'Trinidad and Tobago', + 'native' => 'Trinidad and Tobago', + 'phone' => '+1868', + 'continent' => 'NA', + 'capital' => 'Port of Spain', + 'currency' => 'TTD', + 'languages' => ['en'], + 'emoji' => '🇹🇹', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 10.691803, + 'avg_long' => -61.222503, + ], + 'TV' => [ + 'name' => 'Tuvalu', + 'native' => 'Tuvalu', + 'phone' => '+688', + 'continent' => 'OC', + 'capital' => 'Funafuti', + 'currency' => 'AUD', + 'languages' => ['en'], + 'emoji' => '🇹🇻', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -7.109535, + 'avg_long' => 177.64933, + ], + 'TW' => [ + 'name' => 'Taiwan', + 'native' => '臺灣', + 'phone' => '+886', + 'continent' => 'AS', + 'capital' => 'Taipei', + 'currency' => 'TWD', + 'languages' => ['zh'], + 'emoji' => '🇹🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 23.69781, + 'avg_long' => 120.960515, + ], + 'TZ' => [ + 'name' => 'Tanzania', + 'native' => 'Tanzania', + 'phone' => '+255', + 'continent' => 'AF', + 'capital' => 'Dodoma', + 'currency' => 'TZS', + 'languages' => ['sw', 'en'], + 'emoji' => '🇹🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -6.369028, + 'avg_long' => 34.888822, + ], + 'UA' => [ + 'name' => 'Ukraine', + 'native' => 'Україна', + 'phone' => '+380', + 'continent' => 'EU', + 'capital' => 'Kyiv', + 'currency' => 'UAH', + 'languages' => ['uk'], + 'emoji' => '🇺🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 48.379433, + 'avg_long' => 31.16558, + ], + 'UG' => [ + 'name' => 'Uganda', + 'native' => 'Uganda', + 'phone' => '+256', + 'continent' => 'AF', + 'capital' => 'Kampala', + 'currency' => 'UGX', + 'languages' => ['en', 'sw'], + 'emoji' => '🇺🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 1.373333, + 'avg_long' => 32.290275, + ], + 'UM' => [ + 'name' => 'U.S. Minor Outlying Islands', + 'native' => 'United States Minor Outlying Islands', + 'phone' => '+1', + 'continent' => 'OC', + 'capital' => '', + 'currency' => 'USD', + 'languages' => ['en'], + 'emoji' => '🇺🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => '', + 'avg_long' => '', + ], + 'US' => [ + 'name' => 'United States', + 'native' => 'United States', + 'phone' => '+1', + 'continent' => 'NA', + 'capital' => 'Washington D.C.', + 'currency' => 'USD,USN,USS', + 'languages' => ['en'], + 'emoji' => '🇺🇸', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => 37.09024, + 'avg_long' => -95.712891, + ], + 'UY' => [ + 'name' => 'Uruguay', + 'native' => 'Uruguay', + 'phone' => '+598', + 'continent' => 'SA', + 'capital' => 'Montevideo', + 'currency' => 'UYI,UYU', + 'languages' => ['es'], + 'emoji' => '🇺🇾', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -32.522779, + 'avg_long' => -55.765835, + ], + 'UZ' => [ + 'name' => 'Uzbekistan', + 'native' => 'O‘zbekiston', + 'phone' => '+998', + 'continent' => 'AS', + 'capital' => 'Tashkent', + 'currency' => 'UZS', + 'languages' => ['uz', 'ru'], + 'emoji' => '🇺🇿', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 41.377491, + 'avg_long' => 64.585262, + ], + 'VA' => [ + 'name' => 'Vatican City', + 'native' => 'Vaticano', + 'phone' => '+39066,379', + 'continent' => 'EU', + 'capital' => 'Vatican City', + 'currency' => 'EUR', + 'languages' => ['it', 'la'], + 'emoji' => '🇻🇦', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 41.902916, + 'avg_long' => 12.453389, + ], + 'VC' => [ + 'name' => 'Saint Vincent and the Grenadines', + 'native' => 'Saint Vincent and the Grenadines', + 'phone' => '+1784', + 'continent' => 'NA', + 'capital' => 'Kingstown', + 'currency' => 'XCD', + 'languages' => ['en'], + 'emoji' => '🇻🇨', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 12.984305, + 'avg_long' => -61.287228, + ], + 'VE' => [ + 'name' => 'Venezuela', + 'native' => 'Venezuela', + 'phone' => '+58', + 'continent' => 'SA', + 'capital' => 'Caracas', + 'currency' => 'VEF', + 'languages' => ['es'], + 'emoji' => '🇻🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 6.42375, + 'avg_long' => -66.58973, + ], + 'VG' => [ + 'name' => 'British Virgin Islands', + 'native' => 'British Virgin Islands', + 'phone' => '+1284', + 'continent' => 'NA', + 'capital' => 'Road Town', + 'currency' => 'USD', + 'languages' => ['en'], + 'emoji' => '🇻🇬', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 18.420695, + 'avg_long' => -64.639968, + ], + 'VI' => [ + 'name' => 'U.S. Virgin Islands', + 'native' => 'United States Virgin Islands', + 'phone' => '+1340', + 'continent' => 'NA', + 'capital' => 'Charlotte Amalie', + 'currency' => 'USD', + 'languages' => ['en'], + 'emoji' => '🇻🇮', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 18.335765, + 'avg_long' => -64.896335, + ], + 'VN' => [ + 'name' => 'Vietnam', + 'native' => 'Việt Nam', + 'phone' => '+84', + 'continent' => 'AS', + 'capital' => 'Hanoi', + 'currency' => 'VND', + 'languages' => ['vi'], + 'emoji' => '🇻🇳', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 14.058324, + 'avg_long' => 108.277199, + ], + 'VU' => [ + 'name' => 'Vanuatu', + 'native' => 'Vanuatu', + 'phone' => '+678', + 'continent' => 'OC', + 'capital' => 'Port Vila', + 'currency' => 'VUV', + 'languages' => ['bi', 'en', 'fr'], + 'emoji' => '🇻🇺', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -15.376706, + 'avg_long' => 166.959158, + ], + 'WF' => [ + 'name' => 'Wallis and Futuna', + 'native' => 'Wallis et Futuna', + 'phone' => '+681', + 'continent' => 'OC', + 'capital' => 'Mata-Utu', + 'currency' => 'XPF', + 'languages' => ['fr'], + 'emoji' => '🇼🇫', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -13.768752, + 'avg_long' => -177.156097, + ], + 'WS' => [ + 'name' => 'Samoa', + 'native' => 'Samoa', + 'phone' => '+685', + 'continent' => 'OC', + 'capital' => 'Apia', + 'currency' => 'WST', + 'languages' => ['sm', 'en'], + 'emoji' => '🇼🇸', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -13.759029, + 'avg_long' => -172.104629, + ], + 'XK' => [ + 'name' => 'Kosovo', + 'native' => 'Republika e Kosovës', + 'phone' => '+377,381,383,386', + 'continent' => 'EU', + 'capital' => 'Pristina', + 'currency' => 'EUR', + 'languages' => ['sq', 'sr'], + 'emoji' => '🇽🇰', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 42.602636, + 'avg_long' => 20.902977, + ], + 'YE' => [ + 'name' => 'Yemen', + 'native' => 'اليَمَن', + 'phone' => '+967', + 'continent' => 'AS', + 'capital' => "Sana\\\'a", + 'currency' => 'YER', + 'languages' => ['ar'], + 'emoji' => '🇾🇪', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => 15.552727, + 'avg_long' => 48.516388, + ], + 'YT' => [ + 'name' => 'Mayotte', + 'native' => 'Mayotte', + 'phone' => '+262', + 'continent' => 'AF', + 'capital' => 'Mamoudzou', + 'currency' => 'EUR', + 'languages' => ['fr'], + 'emoji' => '🇾🇹', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -12.8275, + 'avg_long' => 45.166244, + ], + 'ZA' => [ + 'name' => 'South Africa', + 'native' => 'South Africa', + 'phone' => '+27', + 'continent' => 'AF', + 'capital' => 'Pretoria', + 'currency' => 'ZAR', + 'languages' => [ + 'af', + 'en', + 'nr', + 'st', + 'ss', + 'tn', + 'ts', + 've', + 'xh', + 'zu', + ], + 'emoji' => '🇿🇦', + 'launched' => true, + 'cookieconsent' => true, + 'avg_lat' => -30.559482, + 'avg_long' => 22.937506, + ], + 'ZM' => [ + 'name' => 'Zambia', + 'native' => 'Zambia', + 'phone' => '+260', + 'continent' => 'AF', + 'capital' => 'Lusaka', + 'currency' => 'ZMK', + 'languages' => ['en'], + 'emoji' => '🇿🇲', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -13.133897, + 'avg_long' => 27.849332, + ], + 'ZW' => [ + 'name' => 'Zimbabwe', + 'native' => 'Zimbabwe', + 'phone' => '+263', + 'continent' => 'AF', + 'capital' => 'Harare', + 'currency' => 'ZWL', + 'languages' => ['en', 'sn', 'nd'], + 'emoji' => '🇿🇼', + 'launched' => true, + 'cookieconsent' => false, + 'avg_lat' => -19.015438, + 'avg_long' => 29.154857, + ], +]; diff --git a/config/platform/dataset.php b/config/platform/dataset.php new file mode 100644 index 0000000..7df1d92 --- /dev/null +++ b/config/platform/dataset.php @@ -0,0 +1,29 @@ + [ + + 'news_serp' => [ + + 'path' => '/datasets/news_serp/', + + 'driver' => 'r2', + + 'file_prefix' => 'news-serp-', + + ], + + 'images_serp' => [ + + 'path' => '/datasets/images_serp/', + + 'driver' => 'r2', + + 'file_prefix' => 'images-serp-', + + ], + + ], + +]; diff --git a/config/queue.php b/config/queue.php index 01c6b05..30e13e6 100644 --- a/config/queue.php +++ b/config/queue.php @@ -30,6 +30,14 @@ 'connections' => [ + 'default' => [ + 'driver' => 'database', + 'table' => 'jobs', + 'queue' => 'default', + 'retry_after' => 90, + 'after_commit' => false, + ], + 'sync' => [ 'driver' => 'sync', ], diff --git a/config/sitemap.php b/config/sitemap.php new file mode 100644 index 0000000..69be0f3 --- /dev/null +++ b/config/sitemap.php @@ -0,0 +1,57 @@ + [ + + /* + * Whether or not cookies are used in a request. + */ + RequestOptions::COOKIES => true, + + /* + * The number of seconds to wait while trying to connect to a server. + * Use 0 to wait indefinitely. + */ + RequestOptions::CONNECT_TIMEOUT => 10, + + /* + * The timeout of the request in seconds. Use 0 to wait indefinitely. + */ + RequestOptions::TIMEOUT => 10, + + /* + * Describes the redirect behavior of a request. + */ + RequestOptions::ALLOW_REDIRECTS => false, + ], + + /* + * The sitemap generator can execute JavaScript on each page so it will + * discover links that are generated by your JS scripts. This feature + * is powered by headless Chrome. + */ + 'execute_javascript' => false, + + /* + * The package will make an educated guess as to where Google Chrome is installed. + * You can also manually pass its location here. + */ + 'chrome_binary_path' => null, + + /* + * The sitemap generator uses a CrawlProfile implementation to determine + * which urls should be crawled for the sitemap. + */ + 'crawl_profile' => Profile::class, + +]; diff --git a/database/migrations/2023_09_21_143948_create_categories_table.php b/database/migrations/2023_09_21_143948_create_categories_table.php index f22a825..0eb42be 100644 --- a/database/migrations/2023_09_21_143948_create_categories_table.php +++ b/database/migrations/2023_09_21_143948_create_categories_table.php @@ -14,8 +14,11 @@ public function up(): void Schema::create('categories', function (Blueprint $table) { $table->id(); $table->string('name'); + $table->string('short_name'); $table->string('slug')->nullable(); $table->boolean('enabled')->default(true); + $table->bigInteger('counts')->default(0); + $table->timestamp('serp_at')->nullable(); $table->timestamps(); $table->nestedSet(); $table->index(['name', 'slug']); diff --git a/database/migrations/2023_09_22_074129_create_news_serp_results_table.php b/database/migrations/2023_09_22_074129_create_news_serp_results_table.php new file mode 100644 index 0000000..926b12c --- /dev/null +++ b/database/migrations/2023_09_22_074129_create_news_serp_results_table.php @@ -0,0 +1,40 @@ +id(); + $table->foreignId('category_id')->nullable(); + $table->string('category_name')->nullable(); + $table->string('serp_provider'); + $table->string('serp_se'); + $table->string('serp_se_type'); + $table->string('serp_keyword'); + $table->string('serp_country_iso'); + $table->decimal('serp_cost')->nullable(); + $table->unsignedInteger('result_count')->nullable(); + $table->string('filename'); + $table->enum('status', ['initial'/* other potential statuses */]); + $table->timestamps(); + + $table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('news_serp_results'); + } +}; diff --git a/database/migrations/2023_09_22_154137_create_serp_urls_table.php b/database/migrations/2023_09_22_154137_create_serp_urls_table.php new file mode 100644 index 0000000..e997a5c --- /dev/null +++ b/database/migrations/2023_09_22_154137_create_serp_urls_table.php @@ -0,0 +1,41 @@ +id(); + $table->foreignId('news_serp_result_id'); + $table->foreignId('category_id'); + $table->string('category_name'); + $table->string('source')->default('serp'); + $table->string('url'); + $table->string('country_iso'); + $table->string('title')->nullable(); + $table->text('description')->nullable(); + $table->timestamp('serp_at')->nullable(); + $table->enum('status', ['initial', 'processing', 'complete', 'failed', 'blocked', 'limited'])->default('initial'); + $table->tinyInteger('process_status')->nullable(); + $table->timestamps(); + + $table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade'); + $table->foreign('news_serp_result_id')->references('id')->on('news_serp_results')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('serp_urls'); + } +}; diff --git a/database/migrations/2023_09_22_165059_create_authors_table.php b/database/migrations/2023_09_22_165059_create_authors_table.php new file mode 100644 index 0000000..45285ec --- /dev/null +++ b/database/migrations/2023_09_22_165059_create_authors_table.php @@ -0,0 +1,32 @@ +id(); + $table->string('name'); + $table->string('avatar')->nullable(); + $table->string('bio')->nullable(); + $table->boolean('enabled')->default(true); + $table->boolean('public')->default(true); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('authors'); + } +}; diff --git a/database/migrations/2023_09_22_165123_create_posts_table.php b/database/migrations/2023_09_22_165123_create_posts_table.php new file mode 100644 index 0000000..2bad7e5 --- /dev/null +++ b/database/migrations/2023_09_22_165123_create_posts_table.php @@ -0,0 +1,43 @@ +id(); + $table->string('title')->nullable(); + $table->string('short_title')->nullable(); + $table->string('slug')->nullable(); + $table->string('type')->nullable(); + $table->string('main_keyword')->nullable(); + $table->json('keywords')->nullable(); + $table->mediumText('excerpt')->nullable(); + $table->foreignId('author_id')->nullable(); + $table->boolean('featured')->default(false); + $table->string('featured_image')->nullable(); + $table->text('body')->nullable(); + $table->integer('views_count')->default(0); + $table->enum('status', ['publish', 'future', 'draft', 'private', 'trash'])->default('draft'); + $table->timestamp('published_at')->nullable(); + $table->timestamps(); + + $table->foreign('author_id')->references('id')->on('authors'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('posts'); + } +}; diff --git a/database/migrations/2023_09_22_165255_create_post_categories_table.php b/database/migrations/2023_09_22_165255_create_post_categories_table.php new file mode 100644 index 0000000..8b99dcc --- /dev/null +++ b/database/migrations/2023_09_22_165255_create_post_categories_table.php @@ -0,0 +1,32 @@ +id(); + $table->foreignId('post_id'); + $table->foreignId('category_id'); + + $table->foreign('post_id')->references('id')->on('posts'); + $table->foreign('category_id')->references('id')->on('categories'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('post_categories'); + } +}; diff --git a/database/migrations/2023_09_24_144901_create_jobs_table.php b/database/migrations/2023_09_24_144901_create_jobs_table.php new file mode 100644 index 0000000..6098d9b --- /dev/null +++ b/database/migrations/2023_09_24_144901_create_jobs_table.php @@ -0,0 +1,32 @@ +bigIncrements('id'); + $table->string('queue')->index(); + $table->longText('payload'); + $table->unsignedTinyInteger('attempts'); + $table->unsignedInteger('reserved_at')->nullable(); + $table->unsignedInteger('available_at'); + $table->unsignedInteger('created_at'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('jobs'); + } +}; diff --git a/database/seeders/AuthorSeeder.php b/database/seeders/AuthorSeeder.php new file mode 100644 index 0000000..3ae3023 --- /dev/null +++ b/database/seeders/AuthorSeeder.php @@ -0,0 +1,23 @@ + 'EchoScoop Team', + 'bio' => null, + 'avatar' => null, + 'enabled' => true, // Assuming you want this author to be enabled by default + 'public' => true, // Assuming you want this author to be public by default + ]); + } +} diff --git a/database/seeders/CategorySeeder.php b/database/seeders/CategorySeeder.php index a3bd844..f92b086 100644 --- a/database/seeders/CategorySeeder.php +++ b/database/seeders/CategorySeeder.php @@ -13,88 +13,90 @@ class CategorySeeder extends Seeder public function run(): void { $categories = [ - ['name' => 'Automotive'], + ['name' => 'Automotive', 'short_name' => 'Automotive'], [ 'name' => 'Business', + 'short_name' => 'Business', 'children' => [ - ['name' => 'Trading'], - ['name' => 'Information Technology'], - ['name' => 'Marketing'], - ['name' => 'Office'], - ['name' => 'Telecommunications'], + ['name' => 'Trading', 'short_name' => 'Trading'], + ['name' => 'Information Technology', 'short_name' => 'IT'], + ['name' => 'Marketing', 'short_name' => 'Marketing'], + ['name' => 'Office', 'short_name' => 'Office'], + ['name' => 'Telecommunications', 'short_name' => 'Telecom'], ], ], - [ - 'name' => 'Entertainment', - 'children' => [ - ['name' => 'Dating'], - ['name' => 'Film & Television'], - ['name' => 'Games & Toys'], - ['name' => 'Music and Video'], - ['name' => 'Adult Entertainment'], - ], - ], - ['name' => 'Food & Drink'], + ['name' => 'Food & Drink', 'short_name' => 'Food'], [ 'name' => 'Hobbies & Gifts', + 'short_name' => 'Hobbies', 'children' => [ - ['name' => 'Collectibles'], - ['name' => 'Pets'], - ['name' => 'Photography'], - ['name' => 'Hunting & Fishing'], + ['name' => 'Collectibles', 'short_name' => 'Collectibles'], + ['name' => 'Pets', 'short_name' => 'Pets'], + ['name' => 'Photography', 'short_name' => 'Photography'], + ['name' => 'Hunting & Fishing', 'short_name' => 'Hunting'], ], ], - [ - 'name' => 'Education', - 'children' => [ - ['name' => 'Languages'], - ], - ], - ['name' => 'Law'], - ['name' => 'Politics'], + ['name' => 'Law', 'short_name' => 'Law'], + ['name' => 'Politics', 'short_name' => 'Politics'], [ 'name' => 'Shopping', + 'short_name' => 'Shopping', 'children' => [ - ['name' => 'Home & Garden'], - ['name' => 'Clothing & Accessories'], - ['name' => 'Computer & Electronics'], + ['name' => 'Home & Garden', 'short_name' => 'Home'], + ['name' => 'Fashion & Clothing', 'short_name' => 'Fashion'], ], ], - [ - 'name' => 'Religion & Spirituality', - 'children' => [ - ['name' => 'Holistic Health'], - ], - ], - ['name' => 'Real Estate'], - ['name' => 'Social Networks'], + ['name' => 'Real Estate', 'short_name' => 'Real Estate'], [ 'name' => 'Society', + 'short_name' => 'Society', 'children' => [ - ['name' => 'Family'], - ['name' => 'Wedding'], - ['name' => 'Immigration'], + ['name' => 'Family', 'short_name' => 'Family'], + ['name' => 'Wedding', 'short_name' => 'Wedding'], + ['name' => 'Immigration', 'short_name' => 'Immigration'], + [ + 'name' => 'Education', + 'short_name' => 'Education', + 'children' => [ + ['name' => 'Languages', 'short_name' => 'Languages'], + ], + ], ], ], [ 'name' => 'Wellness', + 'short_name' => 'Wellness', 'children' => [ - ['name' => 'Health & Beauty'], - ['name' => 'Psychology & Psychotherapy'], + ['name' => 'Health', 'short_name' => 'Health'], + ['name' => 'Beauty', 'short_name' => 'Beauty'], + ['name' => 'Psychology', 'short_name' => 'Psychology'], + ['name' => 'Religion & Spirituality', 'short_name' => 'Religion'], ], ], [ 'name' => 'Tips & Tricks', + 'short_name' => 'Tips', 'children' => [ - ['name' => 'How to'], + ['name' => 'How to', 'short_name' => 'How to'], ], ], [ 'name' => 'Travel', + 'short_name' => 'Travel', 'children' => [ - ['name' => 'Holiday'], - ['name' => 'World Festivals'], - ['name' => 'Outdoors'], + ['name' => 'Holiday', 'short_name' => 'Holiday'], + ['name' => 'World Festivals', 'short_name' => 'Festivals'], + ['name' => 'Outdoors', 'short_name' => 'Outdoors'], + ], + ], + [ + 'name' => 'Technology', + 'short_name' => 'Tech', + 'children' => [ + ['name' => 'Computer', 'short_name' => 'Computer'], + ['name' => 'Phones', 'short_name' => 'Phones'], + ['name' => 'Gadgets', 'short_name' => 'Gadgets'], + ['name' => 'Social Networks', 'short_name' => 'Social Networks'], ], ], ]; diff --git a/public/build/assets/Inter-Black-3afb2b05.ttf b/public/build/assets/Inter-Black-3afb2b05.ttf new file mode 100644 index 0000000..5aecf7d Binary files /dev/null and b/public/build/assets/Inter-Black-3afb2b05.ttf differ diff --git a/public/build/assets/Inter-Bold-790c108b.ttf b/public/build/assets/Inter-Bold-790c108b.ttf new file mode 100644 index 0000000..8e82c70 Binary files /dev/null and b/public/build/assets/Inter-Bold-790c108b.ttf differ diff --git a/public/build/assets/Inter-ExtraBold-4e2473b9.ttf b/public/build/assets/Inter-ExtraBold-4e2473b9.ttf new file mode 100644 index 0000000..cb4b821 Binary files /dev/null and b/public/build/assets/Inter-ExtraBold-4e2473b9.ttf differ diff --git a/public/build/assets/Inter-ExtraLight-edba5be0.ttf b/public/build/assets/Inter-ExtraLight-edba5be0.ttf new file mode 100644 index 0000000..64aee30 Binary files /dev/null and b/public/build/assets/Inter-ExtraLight-edba5be0.ttf differ diff --git a/public/build/assets/Inter-Light-c44ff7a5.ttf b/public/build/assets/Inter-Light-c44ff7a5.ttf new file mode 100644 index 0000000..9e265d8 Binary files /dev/null and b/public/build/assets/Inter-Light-c44ff7a5.ttf differ diff --git a/public/build/assets/Inter-Medium-10d48331.ttf b/public/build/assets/Inter-Medium-10d48331.ttf new file mode 100644 index 0000000..b53fb1c Binary files /dev/null and b/public/build/assets/Inter-Medium-10d48331.ttf differ diff --git a/public/build/assets/Inter-Regular-41ab0f70.ttf b/public/build/assets/Inter-Regular-41ab0f70.ttf new file mode 100644 index 0000000..8d4eebf Binary files /dev/null and b/public/build/assets/Inter-Regular-41ab0f70.ttf differ diff --git a/public/build/assets/Inter-SemiBold-e8cbc2b8.ttf b/public/build/assets/Inter-SemiBold-e8cbc2b8.ttf new file mode 100644 index 0000000..c6aeeb1 Binary files /dev/null and b/public/build/assets/Inter-SemiBold-e8cbc2b8.ttf differ diff --git a/public/build/assets/Inter-Thin-b778a52b.ttf b/public/build/assets/Inter-Thin-b778a52b.ttf new file mode 100644 index 0000000..7aed55d Binary files /dev/null and b/public/build/assets/Inter-Thin-b778a52b.ttf differ diff --git a/public/build/assets/app-auth-34561e68.js b/public/build/assets/app-auth-c0ceb740.js similarity index 87% rename from public/build/assets/app-auth-34561e68.js rename to public/build/assets/app-auth-c0ceb740.js index 47ec40a..0f1019f 100644 --- a/public/build/assets/app-auth-34561e68.js +++ b/public/build/assets/app-auth-c0ceb740.js @@ -1 +1 @@ -import{_ as o,o as p,c,a as r,b as u,p as i,d as m,e as g,f as _,g as d,v as f,Z as n,h as l}from"./vue-a36422cb.js";const A={name:"AppAuth"};function $(s,a,t,Z,w,x){return p(),c("div")}const h=o(A,[["render",$]]),e=r({AppAuth:h}),v=Object.assign({});e.use(u());e.use(i,m);e.use(g);e.use(_);e.use(d);e.use(f.ZiggyVue,n);window.Ziggy=n;Object.entries({...v}).forEach(([s,a])=>{const t=s.split("/").pop().replace(/\.\w+$/,"").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();e.component(t,l(a))});e.mount("#app"); +import{_ as o,o as p,c,a as r,b as u,p as i,d as m,e as g,f as _,g as d,v as f,Z as n,h as l}from"./vue-8a418f6a.js";const A={name:"AppAuth"};function $(s,a,t,Z,w,x){return p(),c("div")}const h=o(A,[["render",$]]),e=r({AppAuth:h}),v=Object.assign({});e.use(u());e.use(i,m);e.use(g);e.use(_);e.use(d);e.use(f.ZiggyVue,n);window.Ziggy=n;Object.entries({...v}).forEach(([s,a])=>{const t=s.split("/").pop().replace(/\.\w+$/,"").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();e.component(t,l(a))});e.mount("#app"); diff --git a/public/build/assets/app-front-d32494d2.css b/public/build/assets/app-auth-d32494d2.css similarity index 100% rename from public/build/assets/app-front-d32494d2.css rename to public/build/assets/app-auth-d32494d2.css diff --git a/public/build/assets/app-front-d32494d2.css.gz b/public/build/assets/app-auth-d32494d2.css.gz similarity index 100% rename from public/build/assets/app-front-d32494d2.css.gz rename to public/build/assets/app-auth-d32494d2.css.gz diff --git a/public/build/assets/app-front-48c01c04.css b/public/build/assets/app-front-48c01c04.css new file mode 100644 index 0000000..08b54cf --- /dev/null +++ b/public/build/assets/app-front-48c01c04.css @@ -0,0 +1,9 @@ +@charset "UTF-8";/*! + * Bootstrap v5.3.2 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + *//*! + * Bootstrap Icons v1.11.1 (https://icons.getbootstrap.com/) + * Copyright 2019-2023 The Bootstrap Authors + * Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE) + */@font-face{font-display:block;font-family:bootstrap-icons;src:url(/build/assets/bootstrap-icons-bacd70af.woff2?2820a3852bdb9a5832199cc61cec4e65) format("woff2"),url(/build/assets/bootstrap-icons-4d4572ef.woff?2820a3852bdb9a5832199cc61cec4e65) format("woff")}.bi:before,[class^=bi-]:before,[class*=" bi-"]:before{display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:400!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bi-123:before{content:""}.bi-alarm-fill:before{content:""}.bi-alarm:before{content:""}.bi-align-bottom:before{content:""}.bi-align-center:before{content:""}.bi-align-end:before{content:""}.bi-align-middle:before{content:""}.bi-align-start:before{content:""}.bi-align-top:before{content:""}.bi-alt:before{content:""}.bi-app-indicator:before{content:""}.bi-app:before{content:""}.bi-archive-fill:before{content:""}.bi-archive:before{content:""}.bi-arrow-90deg-down:before{content:""}.bi-arrow-90deg-left:before{content:""}.bi-arrow-90deg-right:before{content:""}.bi-arrow-90deg-up:before{content:""}.bi-arrow-bar-down:before{content:""}.bi-arrow-bar-left:before{content:""}.bi-arrow-bar-right:before{content:""}.bi-arrow-bar-up:before{content:""}.bi-arrow-clockwise:before{content:""}.bi-arrow-counterclockwise:before{content:""}.bi-arrow-down-circle-fill:before{content:""}.bi-arrow-down-circle:before{content:""}.bi-arrow-down-left-circle-fill:before{content:""}.bi-arrow-down-left-circle:before{content:""}.bi-arrow-down-left-square-fill:before{content:""}.bi-arrow-down-left-square:before{content:""}.bi-arrow-down-left:before{content:""}.bi-arrow-down-right-circle-fill:before{content:""}.bi-arrow-down-right-circle:before{content:""}.bi-arrow-down-right-square-fill:before{content:""}.bi-arrow-down-right-square:before{content:""}.bi-arrow-down-right:before{content:""}.bi-arrow-down-short:before{content:""}.bi-arrow-down-square-fill:before{content:""}.bi-arrow-down-square:before{content:""}.bi-arrow-down-up:before{content:""}.bi-arrow-down:before{content:""}.bi-arrow-left-circle-fill:before{content:""}.bi-arrow-left-circle:before{content:""}.bi-arrow-left-right:before{content:""}.bi-arrow-left-short:before{content:""}.bi-arrow-left-square-fill:before{content:""}.bi-arrow-left-square:before{content:""}.bi-arrow-left:before{content:""}.bi-arrow-repeat:before{content:""}.bi-arrow-return-left:before{content:""}.bi-arrow-return-right:before{content:""}.bi-arrow-right-circle-fill:before{content:""}.bi-arrow-right-circle:before{content:""}.bi-arrow-right-short:before{content:""}.bi-arrow-right-square-fill:before{content:""}.bi-arrow-right-square:before{content:""}.bi-arrow-right:before{content:""}.bi-arrow-up-circle-fill:before{content:""}.bi-arrow-up-circle:before{content:""}.bi-arrow-up-left-circle-fill:before{content:""}.bi-arrow-up-left-circle:before{content:""}.bi-arrow-up-left-square-fill:before{content:""}.bi-arrow-up-left-square:before{content:""}.bi-arrow-up-left:before{content:""}.bi-arrow-up-right-circle-fill:before{content:""}.bi-arrow-up-right-circle:before{content:""}.bi-arrow-up-right-square-fill:before{content:""}.bi-arrow-up-right-square:before{content:""}.bi-arrow-up-right:before{content:""}.bi-arrow-up-short:before{content:""}.bi-arrow-up-square-fill:before{content:""}.bi-arrow-up-square:before{content:""}.bi-arrow-up:before{content:""}.bi-arrows-angle-contract:before{content:""}.bi-arrows-angle-expand:before{content:""}.bi-arrows-collapse:before{content:""}.bi-arrows-expand:before{content:""}.bi-arrows-fullscreen:before{content:""}.bi-arrows-move:before{content:""}.bi-aspect-ratio-fill:before{content:""}.bi-aspect-ratio:before{content:""}.bi-asterisk:before{content:""}.bi-at:before{content:""}.bi-award-fill:before{content:""}.bi-award:before{content:""}.bi-back:before{content:""}.bi-backspace-fill:before{content:""}.bi-backspace-reverse-fill:before{content:""}.bi-backspace-reverse:before{content:""}.bi-backspace:before{content:""}.bi-badge-3d-fill:before{content:""}.bi-badge-3d:before{content:""}.bi-badge-4k-fill:before{content:""}.bi-badge-4k:before{content:""}.bi-badge-8k-fill:before{content:""}.bi-badge-8k:before{content:""}.bi-badge-ad-fill:before{content:""}.bi-badge-ad:before{content:""}.bi-badge-ar-fill:before{content:""}.bi-badge-ar:before{content:""}.bi-badge-cc-fill:before{content:""}.bi-badge-cc:before{content:""}.bi-badge-hd-fill:before{content:""}.bi-badge-hd:before{content:""}.bi-badge-tm-fill:before{content:""}.bi-badge-tm:before{content:""}.bi-badge-vo-fill:before{content:""}.bi-badge-vo:before{content:""}.bi-badge-vr-fill:before{content:""}.bi-badge-vr:before{content:""}.bi-badge-wc-fill:before{content:""}.bi-badge-wc:before{content:""}.bi-bag-check-fill:before{content:""}.bi-bag-check:before{content:""}.bi-bag-dash-fill:before{content:""}.bi-bag-dash:before{content:""}.bi-bag-fill:before{content:""}.bi-bag-plus-fill:before{content:""}.bi-bag-plus:before{content:""}.bi-bag-x-fill:before{content:""}.bi-bag-x:before{content:""}.bi-bag:before{content:""}.bi-bar-chart-fill:before{content:""}.bi-bar-chart-line-fill:before{content:""}.bi-bar-chart-line:before{content:""}.bi-bar-chart-steps:before{content:""}.bi-bar-chart:before{content:""}.bi-basket-fill:before{content:""}.bi-basket:before{content:""}.bi-basket2-fill:before{content:""}.bi-basket2:before{content:""}.bi-basket3-fill:before{content:""}.bi-basket3:before{content:""}.bi-battery-charging:before{content:""}.bi-battery-full:before{content:""}.bi-battery-half:before{content:""}.bi-battery:before{content:""}.bi-bell-fill:before{content:""}.bi-bell:before{content:""}.bi-bezier:before{content:""}.bi-bezier2:before{content:""}.bi-bicycle:before{content:""}.bi-binoculars-fill:before{content:""}.bi-binoculars:before{content:""}.bi-blockquote-left:before{content:""}.bi-blockquote-right:before{content:""}.bi-book-fill:before{content:""}.bi-book-half:before{content:""}.bi-book:before{content:""}.bi-bookmark-check-fill:before{content:""}.bi-bookmark-check:before{content:""}.bi-bookmark-dash-fill:before{content:""}.bi-bookmark-dash:before{content:""}.bi-bookmark-fill:before{content:""}.bi-bookmark-heart-fill:before{content:""}.bi-bookmark-heart:before{content:""}.bi-bookmark-plus-fill:before{content:""}.bi-bookmark-plus:before{content:""}.bi-bookmark-star-fill:before{content:""}.bi-bookmark-star:before{content:""}.bi-bookmark-x-fill:before{content:""}.bi-bookmark-x:before{content:""}.bi-bookmark:before{content:""}.bi-bookmarks-fill:before{content:""}.bi-bookmarks:before{content:""}.bi-bookshelf:before{content:""}.bi-bootstrap-fill:before{content:""}.bi-bootstrap-reboot:before{content:""}.bi-bootstrap:before{content:""}.bi-border-all:before{content:""}.bi-border-bottom:before{content:""}.bi-border-center:before{content:""}.bi-border-inner:before{content:""}.bi-border-left:before{content:""}.bi-border-middle:before{content:""}.bi-border-outer:before{content:""}.bi-border-right:before{content:""}.bi-border-style:before{content:""}.bi-border-top:before{content:""}.bi-border-width:before{content:""}.bi-border:before{content:""}.bi-bounding-box-circles:before{content:""}.bi-bounding-box:before{content:""}.bi-box-arrow-down-left:before{content:""}.bi-box-arrow-down-right:before{content:""}.bi-box-arrow-down:before{content:""}.bi-box-arrow-in-down-left:before{content:""}.bi-box-arrow-in-down-right:before{content:""}.bi-box-arrow-in-down:before{content:""}.bi-box-arrow-in-left:before{content:""}.bi-box-arrow-in-right:before{content:""}.bi-box-arrow-in-up-left:before{content:""}.bi-box-arrow-in-up-right:before{content:""}.bi-box-arrow-in-up:before{content:""}.bi-box-arrow-left:before{content:""}.bi-box-arrow-right:before{content:""}.bi-box-arrow-up-left:before{content:""}.bi-box-arrow-up-right:before{content:""}.bi-box-arrow-up:before{content:""}.bi-box-seam:before{content:""}.bi-box:before{content:""}.bi-braces:before{content:""}.bi-bricks:before{content:""}.bi-briefcase-fill:before{content:""}.bi-briefcase:before{content:""}.bi-brightness-alt-high-fill:before{content:""}.bi-brightness-alt-high:before{content:""}.bi-brightness-alt-low-fill:before{content:""}.bi-brightness-alt-low:before{content:""}.bi-brightness-high-fill:before{content:""}.bi-brightness-high:before{content:""}.bi-brightness-low-fill:before{content:""}.bi-brightness-low:before{content:""}.bi-broadcast-pin:before{content:""}.bi-broadcast:before{content:""}.bi-brush-fill:before{content:""}.bi-brush:before{content:""}.bi-bucket-fill:before{content:""}.bi-bucket:before{content:""}.bi-bug-fill:before{content:""}.bi-bug:before{content:""}.bi-building:before{content:""}.bi-bullseye:before{content:""}.bi-calculator-fill:before{content:""}.bi-calculator:before{content:""}.bi-calendar-check-fill:before{content:""}.bi-calendar-check:before{content:""}.bi-calendar-date-fill:before{content:""}.bi-calendar-date:before{content:""}.bi-calendar-day-fill:before{content:""}.bi-calendar-day:before{content:""}.bi-calendar-event-fill:before{content:""}.bi-calendar-event:before{content:""}.bi-calendar-fill:before{content:""}.bi-calendar-minus-fill:before{content:""}.bi-calendar-minus:before{content:""}.bi-calendar-month-fill:before{content:""}.bi-calendar-month:before{content:""}.bi-calendar-plus-fill:before{content:""}.bi-calendar-plus:before{content:""}.bi-calendar-range-fill:before{content:""}.bi-calendar-range:before{content:""}.bi-calendar-week-fill:before{content:""}.bi-calendar-week:before{content:""}.bi-calendar-x-fill:before{content:""}.bi-calendar-x:before{content:""}.bi-calendar:before{content:""}.bi-calendar2-check-fill:before{content:""}.bi-calendar2-check:before{content:""}.bi-calendar2-date-fill:before{content:""}.bi-calendar2-date:before{content:""}.bi-calendar2-day-fill:before{content:""}.bi-calendar2-day:before{content:""}.bi-calendar2-event-fill:before{content:""}.bi-calendar2-event:before{content:""}.bi-calendar2-fill:before{content:""}.bi-calendar2-minus-fill:before{content:""}.bi-calendar2-minus:before{content:""}.bi-calendar2-month-fill:before{content:""}.bi-calendar2-month:before{content:""}.bi-calendar2-plus-fill:before{content:""}.bi-calendar2-plus:before{content:""}.bi-calendar2-range-fill:before{content:""}.bi-calendar2-range:before{content:""}.bi-calendar2-week-fill:before{content:""}.bi-calendar2-week:before{content:""}.bi-calendar2-x-fill:before{content:""}.bi-calendar2-x:before{content:""}.bi-calendar2:before{content:""}.bi-calendar3-event-fill:before{content:""}.bi-calendar3-event:before{content:""}.bi-calendar3-fill:before{content:""}.bi-calendar3-range-fill:before{content:""}.bi-calendar3-range:before{content:""}.bi-calendar3-week-fill:before{content:""}.bi-calendar3-week:before{content:""}.bi-calendar3:before{content:""}.bi-calendar4-event:before{content:""}.bi-calendar4-range:before{content:""}.bi-calendar4-week:before{content:""}.bi-calendar4:before{content:""}.bi-camera-fill:before{content:""}.bi-camera-reels-fill:before{content:""}.bi-camera-reels:before{content:""}.bi-camera-video-fill:before{content:""}.bi-camera-video-off-fill:before{content:""}.bi-camera-video-off:before{content:""}.bi-camera-video:before{content:""}.bi-camera:before{content:""}.bi-camera2:before{content:""}.bi-capslock-fill:before{content:""}.bi-capslock:before{content:""}.bi-card-checklist:before{content:""}.bi-card-heading:before{content:""}.bi-card-image:before{content:""}.bi-card-list:before{content:""}.bi-card-text:before{content:""}.bi-caret-down-fill:before{content:""}.bi-caret-down-square-fill:before{content:""}.bi-caret-down-square:before{content:""}.bi-caret-down:before{content:""}.bi-caret-left-fill:before{content:""}.bi-caret-left-square-fill:before{content:""}.bi-caret-left-square:before{content:""}.bi-caret-left:before{content:""}.bi-caret-right-fill:before{content:""}.bi-caret-right-square-fill:before{content:""}.bi-caret-right-square:before{content:""}.bi-caret-right:before{content:""}.bi-caret-up-fill:before{content:""}.bi-caret-up-square-fill:before{content:""}.bi-caret-up-square:before{content:""}.bi-caret-up:before{content:""}.bi-cart-check-fill:before{content:""}.bi-cart-check:before{content:""}.bi-cart-dash-fill:before{content:""}.bi-cart-dash:before{content:""}.bi-cart-fill:before{content:""}.bi-cart-plus-fill:before{content:""}.bi-cart-plus:before{content:""}.bi-cart-x-fill:before{content:""}.bi-cart-x:before{content:""}.bi-cart:before{content:""}.bi-cart2:before{content:""}.bi-cart3:before{content:""}.bi-cart4:before{content:""}.bi-cash-stack:before{content:""}.bi-cash:before{content:""}.bi-cast:before{content:""}.bi-chat-dots-fill:before{content:""}.bi-chat-dots:before{content:""}.bi-chat-fill:before{content:""}.bi-chat-left-dots-fill:before{content:""}.bi-chat-left-dots:before{content:""}.bi-chat-left-fill:before{content:""}.bi-chat-left-quote-fill:before{content:""}.bi-chat-left-quote:before{content:""}.bi-chat-left-text-fill:before{content:""}.bi-chat-left-text:before{content:""}.bi-chat-left:before{content:""}.bi-chat-quote-fill:before{content:""}.bi-chat-quote:before{content:""}.bi-chat-right-dots-fill:before{content:""}.bi-chat-right-dots:before{content:""}.bi-chat-right-fill:before{content:""}.bi-chat-right-quote-fill:before{content:""}.bi-chat-right-quote:before{content:""}.bi-chat-right-text-fill:before{content:""}.bi-chat-right-text:before{content:""}.bi-chat-right:before{content:""}.bi-chat-square-dots-fill:before{content:""}.bi-chat-square-dots:before{content:""}.bi-chat-square-fill:before{content:""}.bi-chat-square-quote-fill:before{content:""}.bi-chat-square-quote:before{content:""}.bi-chat-square-text-fill:before{content:""}.bi-chat-square-text:before{content:""}.bi-chat-square:before{content:""}.bi-chat-text-fill:before{content:""}.bi-chat-text:before{content:""}.bi-chat:before{content:""}.bi-check-all:before{content:""}.bi-check-circle-fill:before{content:""}.bi-check-circle:before{content:""}.bi-check-square-fill:before{content:""}.bi-check-square:before{content:""}.bi-check:before{content:""}.bi-check2-all:before{content:""}.bi-check2-circle:before{content:""}.bi-check2-square:before{content:""}.bi-check2:before{content:""}.bi-chevron-bar-contract:before{content:""}.bi-chevron-bar-down:before{content:""}.bi-chevron-bar-expand:before{content:""}.bi-chevron-bar-left:before{content:""}.bi-chevron-bar-right:before{content:""}.bi-chevron-bar-up:before{content:""}.bi-chevron-compact-down:before{content:""}.bi-chevron-compact-left:before{content:""}.bi-chevron-compact-right:before{content:""}.bi-chevron-compact-up:before{content:""}.bi-chevron-contract:before{content:""}.bi-chevron-double-down:before{content:""}.bi-chevron-double-left:before{content:""}.bi-chevron-double-right:before{content:""}.bi-chevron-double-up:before{content:""}.bi-chevron-down:before{content:""}.bi-chevron-expand:before{content:""}.bi-chevron-left:before{content:""}.bi-chevron-right:before{content:""}.bi-chevron-up:before{content:""}.bi-circle-fill:before{content:""}.bi-circle-half:before{content:""}.bi-circle-square:before{content:""}.bi-circle:before{content:""}.bi-clipboard-check:before{content:""}.bi-clipboard-data:before{content:""}.bi-clipboard-minus:before{content:""}.bi-clipboard-plus:before{content:""}.bi-clipboard-x:before{content:""}.bi-clipboard:before{content:""}.bi-clock-fill:before{content:""}.bi-clock-history:before{content:""}.bi-clock:before{content:""}.bi-cloud-arrow-down-fill:before{content:""}.bi-cloud-arrow-down:before{content:""}.bi-cloud-arrow-up-fill:before{content:""}.bi-cloud-arrow-up:before{content:""}.bi-cloud-check-fill:before{content:""}.bi-cloud-check:before{content:""}.bi-cloud-download-fill:before{content:""}.bi-cloud-download:before{content:""}.bi-cloud-drizzle-fill:before{content:""}.bi-cloud-drizzle:before{content:""}.bi-cloud-fill:before{content:""}.bi-cloud-fog-fill:before{content:""}.bi-cloud-fog:before{content:""}.bi-cloud-fog2-fill:before{content:""}.bi-cloud-fog2:before{content:""}.bi-cloud-hail-fill:before{content:""}.bi-cloud-hail:before{content:""}.bi-cloud-haze-fill:before{content:""}.bi-cloud-haze:before{content:""}.bi-cloud-haze2-fill:before{content:""}.bi-cloud-lightning-fill:before{content:""}.bi-cloud-lightning-rain-fill:before{content:""}.bi-cloud-lightning-rain:before{content:""}.bi-cloud-lightning:before{content:""}.bi-cloud-minus-fill:before{content:""}.bi-cloud-minus:before{content:""}.bi-cloud-moon-fill:before{content:""}.bi-cloud-moon:before{content:""}.bi-cloud-plus-fill:before{content:""}.bi-cloud-plus:before{content:""}.bi-cloud-rain-fill:before{content:""}.bi-cloud-rain-heavy-fill:before{content:""}.bi-cloud-rain-heavy:before{content:""}.bi-cloud-rain:before{content:""}.bi-cloud-slash-fill:before{content:""}.bi-cloud-slash:before{content:""}.bi-cloud-sleet-fill:before{content:""}.bi-cloud-sleet:before{content:""}.bi-cloud-snow-fill:before{content:""}.bi-cloud-snow:before{content:""}.bi-cloud-sun-fill:before{content:""}.bi-cloud-sun:before{content:""}.bi-cloud-upload-fill:before{content:""}.bi-cloud-upload:before{content:""}.bi-cloud:before{content:""}.bi-clouds-fill:before{content:""}.bi-clouds:before{content:""}.bi-cloudy-fill:before{content:""}.bi-cloudy:before{content:""}.bi-code-slash:before{content:""}.bi-code-square:before{content:""}.bi-code:before{content:""}.bi-collection-fill:before{content:""}.bi-collection-play-fill:before{content:""}.bi-collection-play:before{content:""}.bi-collection:before{content:""}.bi-columns-gap:before{content:""}.bi-columns:before{content:""}.bi-command:before{content:""}.bi-compass-fill:before{content:""}.bi-compass:before{content:""}.bi-cone-striped:before{content:""}.bi-cone:before{content:""}.bi-controller:before{content:""}.bi-cpu-fill:before{content:""}.bi-cpu:before{content:""}.bi-credit-card-2-back-fill:before{content:""}.bi-credit-card-2-back:before{content:""}.bi-credit-card-2-front-fill:before{content:""}.bi-credit-card-2-front:before{content:""}.bi-credit-card-fill:before{content:""}.bi-credit-card:before{content:""}.bi-crop:before{content:""}.bi-cup-fill:before{content:""}.bi-cup-straw:before{content:""}.bi-cup:before{content:""}.bi-cursor-fill:before{content:""}.bi-cursor-text:before{content:""}.bi-cursor:before{content:""}.bi-dash-circle-dotted:before{content:""}.bi-dash-circle-fill:before{content:""}.bi-dash-circle:before{content:""}.bi-dash-square-dotted:before{content:""}.bi-dash-square-fill:before{content:""}.bi-dash-square:before{content:""}.bi-dash:before{content:""}.bi-diagram-2-fill:before{content:""}.bi-diagram-2:before{content:""}.bi-diagram-3-fill:before{content:""}.bi-diagram-3:before{content:""}.bi-diamond-fill:before{content:""}.bi-diamond-half:before{content:""}.bi-diamond:before{content:""}.bi-dice-1-fill:before{content:""}.bi-dice-1:before{content:""}.bi-dice-2-fill:before{content:""}.bi-dice-2:before{content:""}.bi-dice-3-fill:before{content:""}.bi-dice-3:before{content:""}.bi-dice-4-fill:before{content:""}.bi-dice-4:before{content:""}.bi-dice-5-fill:before{content:""}.bi-dice-5:before{content:""}.bi-dice-6-fill:before{content:""}.bi-dice-6:before{content:""}.bi-disc-fill:before{content:""}.bi-disc:before{content:""}.bi-discord:before{content:""}.bi-display-fill:before{content:""}.bi-display:before{content:""}.bi-distribute-horizontal:before{content:""}.bi-distribute-vertical:before{content:""}.bi-door-closed-fill:before{content:""}.bi-door-closed:before{content:""}.bi-door-open-fill:before{content:""}.bi-door-open:before{content:""}.bi-dot:before{content:""}.bi-download:before{content:""}.bi-droplet-fill:before{content:""}.bi-droplet-half:before{content:""}.bi-droplet:before{content:""}.bi-earbuds:before{content:""}.bi-easel-fill:before{content:""}.bi-easel:before{content:""}.bi-egg-fill:before{content:""}.bi-egg-fried:before{content:""}.bi-egg:before{content:""}.bi-eject-fill:before{content:""}.bi-eject:before{content:""}.bi-emoji-angry-fill:before{content:""}.bi-emoji-angry:before{content:""}.bi-emoji-dizzy-fill:before{content:""}.bi-emoji-dizzy:before{content:""}.bi-emoji-expressionless-fill:before{content:""}.bi-emoji-expressionless:before{content:""}.bi-emoji-frown-fill:before{content:""}.bi-emoji-frown:before{content:""}.bi-emoji-heart-eyes-fill:before{content:""}.bi-emoji-heart-eyes:before{content:""}.bi-emoji-laughing-fill:before{content:""}.bi-emoji-laughing:before{content:""}.bi-emoji-neutral-fill:before{content:""}.bi-emoji-neutral:before{content:""}.bi-emoji-smile-fill:before{content:""}.bi-emoji-smile-upside-down-fill:before{content:""}.bi-emoji-smile-upside-down:before{content:""}.bi-emoji-smile:before{content:""}.bi-emoji-sunglasses-fill:before{content:""}.bi-emoji-sunglasses:before{content:""}.bi-emoji-wink-fill:before{content:""}.bi-emoji-wink:before{content:""}.bi-envelope-fill:before{content:""}.bi-envelope-open-fill:before{content:""}.bi-envelope-open:before{content:""}.bi-envelope:before{content:""}.bi-eraser-fill:before{content:""}.bi-eraser:before{content:""}.bi-exclamation-circle-fill:before{content:""}.bi-exclamation-circle:before{content:""}.bi-exclamation-diamond-fill:before{content:""}.bi-exclamation-diamond:before{content:""}.bi-exclamation-octagon-fill:before{content:""}.bi-exclamation-octagon:before{content:""}.bi-exclamation-square-fill:before{content:""}.bi-exclamation-square:before{content:""}.bi-exclamation-triangle-fill:before{content:""}.bi-exclamation-triangle:before{content:""}.bi-exclamation:before{content:""}.bi-exclude:before{content:""}.bi-eye-fill:before{content:""}.bi-eye-slash-fill:before{content:""}.bi-eye-slash:before{content:""}.bi-eye:before{content:""}.bi-eyedropper:before{content:""}.bi-eyeglasses:before{content:""}.bi-facebook:before{content:""}.bi-file-arrow-down-fill:before{content:""}.bi-file-arrow-down:before{content:""}.bi-file-arrow-up-fill:before{content:""}.bi-file-arrow-up:before{content:""}.bi-file-bar-graph-fill:before{content:""}.bi-file-bar-graph:before{content:""}.bi-file-binary-fill:before{content:""}.bi-file-binary:before{content:""}.bi-file-break-fill:before{content:""}.bi-file-break:before{content:""}.bi-file-check-fill:before{content:""}.bi-file-check:before{content:""}.bi-file-code-fill:before{content:""}.bi-file-code:before{content:""}.bi-file-diff-fill:before{content:""}.bi-file-diff:before{content:""}.bi-file-earmark-arrow-down-fill:before{content:""}.bi-file-earmark-arrow-down:before{content:""}.bi-file-earmark-arrow-up-fill:before{content:""}.bi-file-earmark-arrow-up:before{content:""}.bi-file-earmark-bar-graph-fill:before{content:""}.bi-file-earmark-bar-graph:before{content:""}.bi-file-earmark-binary-fill:before{content:""}.bi-file-earmark-binary:before{content:""}.bi-file-earmark-break-fill:before{content:""}.bi-file-earmark-break:before{content:""}.bi-file-earmark-check-fill:before{content:""}.bi-file-earmark-check:before{content:""}.bi-file-earmark-code-fill:before{content:""}.bi-file-earmark-code:before{content:""}.bi-file-earmark-diff-fill:before{content:""}.bi-file-earmark-diff:before{content:""}.bi-file-earmark-easel-fill:before{content:""}.bi-file-earmark-easel:before{content:""}.bi-file-earmark-excel-fill:before{content:""}.bi-file-earmark-excel:before{content:""}.bi-file-earmark-fill:before{content:""}.bi-file-earmark-font-fill:before{content:""}.bi-file-earmark-font:before{content:""}.bi-file-earmark-image-fill:before{content:""}.bi-file-earmark-image:before{content:""}.bi-file-earmark-lock-fill:before{content:""}.bi-file-earmark-lock:before{content:""}.bi-file-earmark-lock2-fill:before{content:""}.bi-file-earmark-lock2:before{content:""}.bi-file-earmark-medical-fill:before{content:""}.bi-file-earmark-medical:before{content:""}.bi-file-earmark-minus-fill:before{content:""}.bi-file-earmark-minus:before{content:""}.bi-file-earmark-music-fill:before{content:""}.bi-file-earmark-music:before{content:""}.bi-file-earmark-person-fill:before{content:""}.bi-file-earmark-person:before{content:""}.bi-file-earmark-play-fill:before{content:""}.bi-file-earmark-play:before{content:""}.bi-file-earmark-plus-fill:before{content:""}.bi-file-earmark-plus:before{content:""}.bi-file-earmark-post-fill:before{content:""}.bi-file-earmark-post:before{content:""}.bi-file-earmark-ppt-fill:before{content:""}.bi-file-earmark-ppt:before{content:""}.bi-file-earmark-richtext-fill:before{content:""}.bi-file-earmark-richtext:before{content:""}.bi-file-earmark-ruled-fill:before{content:""}.bi-file-earmark-ruled:before{content:""}.bi-file-earmark-slides-fill:before{content:""}.bi-file-earmark-slides:before{content:""}.bi-file-earmark-spreadsheet-fill:before{content:""}.bi-file-earmark-spreadsheet:before{content:""}.bi-file-earmark-text-fill:before{content:""}.bi-file-earmark-text:before{content:""}.bi-file-earmark-word-fill:before{content:""}.bi-file-earmark-word:before{content:""}.bi-file-earmark-x-fill:before{content:""}.bi-file-earmark-x:before{content:""}.bi-file-earmark-zip-fill:before{content:""}.bi-file-earmark-zip:before{content:""}.bi-file-earmark:before{content:""}.bi-file-easel-fill:before{content:""}.bi-file-easel:before{content:""}.bi-file-excel-fill:before{content:""}.bi-file-excel:before{content:""}.bi-file-fill:before{content:""}.bi-file-font-fill:before{content:""}.bi-file-font:before{content:""}.bi-file-image-fill:before{content:""}.bi-file-image:before{content:""}.bi-file-lock-fill:before{content:""}.bi-file-lock:before{content:""}.bi-file-lock2-fill:before{content:""}.bi-file-lock2:before{content:""}.bi-file-medical-fill:before{content:""}.bi-file-medical:before{content:""}.bi-file-minus-fill:before{content:""}.bi-file-minus:before{content:""}.bi-file-music-fill:before{content:""}.bi-file-music:before{content:""}.bi-file-person-fill:before{content:""}.bi-file-person:before{content:""}.bi-file-play-fill:before{content:""}.bi-file-play:before{content:""}.bi-file-plus-fill:before{content:""}.bi-file-plus:before{content:""}.bi-file-post-fill:before{content:""}.bi-file-post:before{content:""}.bi-file-ppt-fill:before{content:""}.bi-file-ppt:before{content:""}.bi-file-richtext-fill:before{content:""}.bi-file-richtext:before{content:""}.bi-file-ruled-fill:before{content:""}.bi-file-ruled:before{content:""}.bi-file-slides-fill:before{content:""}.bi-file-slides:before{content:""}.bi-file-spreadsheet-fill:before{content:""}.bi-file-spreadsheet:before{content:""}.bi-file-text-fill:before{content:""}.bi-file-text:before{content:""}.bi-file-word-fill:before{content:""}.bi-file-word:before{content:""}.bi-file-x-fill:before{content:""}.bi-file-x:before{content:""}.bi-file-zip-fill:before{content:""}.bi-file-zip:before{content:""}.bi-file:before{content:""}.bi-files-alt:before{content:""}.bi-files:before{content:""}.bi-film:before{content:""}.bi-filter-circle-fill:before{content:""}.bi-filter-circle:before{content:""}.bi-filter-left:before{content:""}.bi-filter-right:before{content:""}.bi-filter-square-fill:before{content:""}.bi-filter-square:before{content:""}.bi-filter:before{content:""}.bi-flag-fill:before{content:""}.bi-flag:before{content:""}.bi-flower1:before{content:""}.bi-flower2:before{content:""}.bi-flower3:before{content:""}.bi-folder-check:before{content:""}.bi-folder-fill:before{content:""}.bi-folder-minus:before{content:""}.bi-folder-plus:before{content:""}.bi-folder-symlink-fill:before{content:""}.bi-folder-symlink:before{content:""}.bi-folder-x:before{content:""}.bi-folder:before{content:""}.bi-folder2-open:before{content:""}.bi-folder2:before{content:""}.bi-fonts:before{content:""}.bi-forward-fill:before{content:""}.bi-forward:before{content:""}.bi-front:before{content:""}.bi-fullscreen-exit:before{content:""}.bi-fullscreen:before{content:""}.bi-funnel-fill:before{content:""}.bi-funnel:before{content:""}.bi-gear-fill:before{content:""}.bi-gear-wide-connected:before{content:""}.bi-gear-wide:before{content:""}.bi-gear:before{content:""}.bi-gem:before{content:""}.bi-geo-alt-fill:before{content:""}.bi-geo-alt:before{content:""}.bi-geo-fill:before{content:""}.bi-geo:before{content:""}.bi-gift-fill:before{content:""}.bi-gift:before{content:""}.bi-github:before{content:""}.bi-globe:before{content:""}.bi-globe2:before{content:""}.bi-google:before{content:""}.bi-graph-down:before{content:""}.bi-graph-up:before{content:""}.bi-grid-1x2-fill:before{content:""}.bi-grid-1x2:before{content:""}.bi-grid-3x2-gap-fill:before{content:""}.bi-grid-3x2-gap:before{content:""}.bi-grid-3x2:before{content:""}.bi-grid-3x3-gap-fill:before{content:""}.bi-grid-3x3-gap:before{content:""}.bi-grid-3x3:before{content:""}.bi-grid-fill:before{content:""}.bi-grid:before{content:""}.bi-grip-horizontal:before{content:""}.bi-grip-vertical:before{content:""}.bi-hammer:before{content:""}.bi-hand-index-fill:before{content:""}.bi-hand-index-thumb-fill:before{content:""}.bi-hand-index-thumb:before{content:""}.bi-hand-index:before{content:""}.bi-hand-thumbs-down-fill:before{content:""}.bi-hand-thumbs-down:before{content:""}.bi-hand-thumbs-up-fill:before{content:""}.bi-hand-thumbs-up:before{content:""}.bi-handbag-fill:before{content:""}.bi-handbag:before{content:""}.bi-hash:before{content:""}.bi-hdd-fill:before{content:""}.bi-hdd-network-fill:before{content:""}.bi-hdd-network:before{content:""}.bi-hdd-rack-fill:before{content:""}.bi-hdd-rack:before{content:""}.bi-hdd-stack-fill:before{content:""}.bi-hdd-stack:before{content:""}.bi-hdd:before{content:""}.bi-headphones:before{content:""}.bi-headset:before{content:""}.bi-heart-fill:before{content:""}.bi-heart-half:before{content:""}.bi-heart:before{content:""}.bi-heptagon-fill:before{content:""}.bi-heptagon-half:before{content:""}.bi-heptagon:before{content:""}.bi-hexagon-fill:before{content:""}.bi-hexagon-half:before{content:""}.bi-hexagon:before{content:""}.bi-hourglass-bottom:before{content:""}.bi-hourglass-split:before{content:""}.bi-hourglass-top:before{content:""}.bi-hourglass:before{content:""}.bi-house-door-fill:before{content:""}.bi-house-door:before{content:""}.bi-house-fill:before{content:""}.bi-house:before{content:""}.bi-hr:before{content:""}.bi-hurricane:before{content:""}.bi-image-alt:before{content:""}.bi-image-fill:before{content:""}.bi-image:before{content:""}.bi-images:before{content:""}.bi-inbox-fill:before{content:""}.bi-inbox:before{content:""}.bi-inboxes-fill:before{content:""}.bi-inboxes:before{content:""}.bi-info-circle-fill:before{content:""}.bi-info-circle:before{content:""}.bi-info-square-fill:before{content:""}.bi-info-square:before{content:""}.bi-info:before{content:""}.bi-input-cursor-text:before{content:""}.bi-input-cursor:before{content:""}.bi-instagram:before{content:""}.bi-intersect:before{content:""}.bi-journal-album:before{content:""}.bi-journal-arrow-down:before{content:""}.bi-journal-arrow-up:before{content:""}.bi-journal-bookmark-fill:before{content:""}.bi-journal-bookmark:before{content:""}.bi-journal-check:before{content:""}.bi-journal-code:before{content:""}.bi-journal-medical:before{content:""}.bi-journal-minus:before{content:""}.bi-journal-plus:before{content:""}.bi-journal-richtext:before{content:""}.bi-journal-text:before{content:""}.bi-journal-x:before{content:""}.bi-journal:before{content:""}.bi-journals:before{content:""}.bi-joystick:before{content:""}.bi-justify-left:before{content:""}.bi-justify-right:before{content:""}.bi-justify:before{content:""}.bi-kanban-fill:before{content:""}.bi-kanban:before{content:""}.bi-key-fill:before{content:""}.bi-key:before{content:""}.bi-keyboard-fill:before{content:""}.bi-keyboard:before{content:""}.bi-ladder:before{content:""}.bi-lamp-fill:before{content:""}.bi-lamp:before{content:""}.bi-laptop-fill:before{content:""}.bi-laptop:before{content:""}.bi-layer-backward:before{content:""}.bi-layer-forward:before{content:""}.bi-layers-fill:before{content:""}.bi-layers-half:before{content:""}.bi-layers:before{content:""}.bi-layout-sidebar-inset-reverse:before{content:""}.bi-layout-sidebar-inset:before{content:""}.bi-layout-sidebar-reverse:before{content:""}.bi-layout-sidebar:before{content:""}.bi-layout-split:before{content:""}.bi-layout-text-sidebar-reverse:before{content:""}.bi-layout-text-sidebar:before{content:""}.bi-layout-text-window-reverse:before{content:""}.bi-layout-text-window:before{content:""}.bi-layout-three-columns:before{content:""}.bi-layout-wtf:before{content:""}.bi-life-preserver:before{content:""}.bi-lightbulb-fill:before{content:""}.bi-lightbulb-off-fill:before{content:""}.bi-lightbulb-off:before{content:""}.bi-lightbulb:before{content:""}.bi-lightning-charge-fill:before{content:""}.bi-lightning-charge:before{content:""}.bi-lightning-fill:before{content:""}.bi-lightning:before{content:""}.bi-link-45deg:before{content:""}.bi-link:before{content:""}.bi-linkedin:before{content:""}.bi-list-check:before{content:""}.bi-list-nested:before{content:""}.bi-list-ol:before{content:""}.bi-list-stars:before{content:""}.bi-list-task:before{content:""}.bi-list-ul:before{content:""}.bi-list:before{content:""}.bi-lock-fill:before{content:""}.bi-lock:before{content:""}.bi-mailbox:before{content:""}.bi-mailbox2:before{content:""}.bi-map-fill:before{content:""}.bi-map:before{content:""}.bi-markdown-fill:before{content:""}.bi-markdown:before{content:""}.bi-mask:before{content:""}.bi-megaphone-fill:before{content:""}.bi-megaphone:before{content:""}.bi-menu-app-fill:before{content:""}.bi-menu-app:before{content:""}.bi-menu-button-fill:before{content:""}.bi-menu-button-wide-fill:before{content:""}.bi-menu-button-wide:before{content:""}.bi-menu-button:before{content:""}.bi-menu-down:before{content:""}.bi-menu-up:before{content:""}.bi-mic-fill:before{content:""}.bi-mic-mute-fill:before{content:""}.bi-mic-mute:before{content:""}.bi-mic:before{content:""}.bi-minecart-loaded:before{content:""}.bi-minecart:before{content:""}.bi-moisture:before{content:""}.bi-moon-fill:before{content:""}.bi-moon-stars-fill:before{content:""}.bi-moon-stars:before{content:""}.bi-moon:before{content:""}.bi-mouse-fill:before{content:""}.bi-mouse:before{content:""}.bi-mouse2-fill:before{content:""}.bi-mouse2:before{content:""}.bi-mouse3-fill:before{content:""}.bi-mouse3:before{content:""}.bi-music-note-beamed:before{content:""}.bi-music-note-list:before{content:""}.bi-music-note:before{content:""}.bi-music-player-fill:before{content:""}.bi-music-player:before{content:""}.bi-newspaper:before{content:""}.bi-node-minus-fill:before{content:""}.bi-node-minus:before{content:""}.bi-node-plus-fill:before{content:""}.bi-node-plus:before{content:""}.bi-nut-fill:before{content:""}.bi-nut:before{content:""}.bi-octagon-fill:before{content:""}.bi-octagon-half:before{content:""}.bi-octagon:before{content:""}.bi-option:before{content:""}.bi-outlet:before{content:""}.bi-paint-bucket:before{content:""}.bi-palette-fill:before{content:""}.bi-palette:before{content:""}.bi-palette2:before{content:""}.bi-paperclip:before{content:""}.bi-paragraph:before{content:""}.bi-patch-check-fill:before{content:""}.bi-patch-check:before{content:""}.bi-patch-exclamation-fill:before{content:""}.bi-patch-exclamation:before{content:""}.bi-patch-minus-fill:before{content:""}.bi-patch-minus:before{content:""}.bi-patch-plus-fill:before{content:""}.bi-patch-plus:before{content:""}.bi-patch-question-fill:before{content:""}.bi-patch-question:before{content:""}.bi-pause-btn-fill:before{content:""}.bi-pause-btn:before{content:""}.bi-pause-circle-fill:before{content:""}.bi-pause-circle:before{content:""}.bi-pause-fill:before{content:""}.bi-pause:before{content:""}.bi-peace-fill:before{content:""}.bi-peace:before{content:""}.bi-pen-fill:before{content:""}.bi-pen:before{content:""}.bi-pencil-fill:before{content:""}.bi-pencil-square:before{content:""}.bi-pencil:before{content:""}.bi-pentagon-fill:before{content:""}.bi-pentagon-half:before{content:""}.bi-pentagon:before{content:""}.bi-people-fill:before{content:""}.bi-people:before{content:""}.bi-percent:before{content:""}.bi-person-badge-fill:before{content:""}.bi-person-badge:before{content:""}.bi-person-bounding-box:before{content:""}.bi-person-check-fill:before{content:""}.bi-person-check:before{content:""}.bi-person-circle:before{content:""}.bi-person-dash-fill:before{content:""}.bi-person-dash:before{content:""}.bi-person-fill:before{content:""}.bi-person-lines-fill:before{content:""}.bi-person-plus-fill:before{content:""}.bi-person-plus:before{content:""}.bi-person-square:before{content:""}.bi-person-x-fill:before{content:""}.bi-person-x:before{content:""}.bi-person:before{content:""}.bi-phone-fill:before{content:""}.bi-phone-landscape-fill:before{content:""}.bi-phone-landscape:before{content:""}.bi-phone-vibrate-fill:before{content:""}.bi-phone-vibrate:before{content:""}.bi-phone:before{content:""}.bi-pie-chart-fill:before{content:""}.bi-pie-chart:before{content:""}.bi-pin-angle-fill:before{content:""}.bi-pin-angle:before{content:""}.bi-pin-fill:before{content:""}.bi-pin:before{content:""}.bi-pip-fill:before{content:""}.bi-pip:before{content:""}.bi-play-btn-fill:before{content:""}.bi-play-btn:before{content:""}.bi-play-circle-fill:before{content:""}.bi-play-circle:before{content:""}.bi-play-fill:before{content:""}.bi-play:before{content:""}.bi-plug-fill:before{content:""}.bi-plug:before{content:""}.bi-plus-circle-dotted:before{content:""}.bi-plus-circle-fill:before{content:""}.bi-plus-circle:before{content:""}.bi-plus-square-dotted:before{content:""}.bi-plus-square-fill:before{content:""}.bi-plus-square:before{content:""}.bi-plus:before{content:""}.bi-power:before{content:""}.bi-printer-fill:before{content:""}.bi-printer:before{content:""}.bi-puzzle-fill:before{content:""}.bi-puzzle:before{content:""}.bi-question-circle-fill:before{content:""}.bi-question-circle:before{content:""}.bi-question-diamond-fill:before{content:""}.bi-question-diamond:before{content:""}.bi-question-octagon-fill:before{content:""}.bi-question-octagon:before{content:""}.bi-question-square-fill:before{content:""}.bi-question-square:before{content:""}.bi-question:before{content:""}.bi-rainbow:before{content:""}.bi-receipt-cutoff:before{content:""}.bi-receipt:before{content:""}.bi-reception-0:before{content:""}.bi-reception-1:before{content:""}.bi-reception-2:before{content:""}.bi-reception-3:before{content:""}.bi-reception-4:before{content:""}.bi-record-btn-fill:before{content:""}.bi-record-btn:before{content:""}.bi-record-circle-fill:before{content:""}.bi-record-circle:before{content:""}.bi-record-fill:before{content:""}.bi-record:before{content:""}.bi-record2-fill:before{content:""}.bi-record2:before{content:""}.bi-reply-all-fill:before{content:""}.bi-reply-all:before{content:""}.bi-reply-fill:before{content:""}.bi-reply:before{content:""}.bi-rss-fill:before{content:""}.bi-rss:before{content:""}.bi-rulers:before{content:""}.bi-save-fill:before{content:""}.bi-save:before{content:""}.bi-save2-fill:before{content:""}.bi-save2:before{content:""}.bi-scissors:before{content:""}.bi-screwdriver:before{content:""}.bi-search:before{content:""}.bi-segmented-nav:before{content:""}.bi-server:before{content:""}.bi-share-fill:before{content:""}.bi-share:before{content:""}.bi-shield-check:before{content:""}.bi-shield-exclamation:before{content:""}.bi-shield-fill-check:before{content:""}.bi-shield-fill-exclamation:before{content:""}.bi-shield-fill-minus:before{content:""}.bi-shield-fill-plus:before{content:""}.bi-shield-fill-x:before{content:""}.bi-shield-fill:before{content:""}.bi-shield-lock-fill:before{content:""}.bi-shield-lock:before{content:""}.bi-shield-minus:before{content:""}.bi-shield-plus:before{content:""}.bi-shield-shaded:before{content:""}.bi-shield-slash-fill:before{content:""}.bi-shield-slash:before{content:""}.bi-shield-x:before{content:""}.bi-shield:before{content:""}.bi-shift-fill:before{content:""}.bi-shift:before{content:""}.bi-shop-window:before{content:""}.bi-shop:before{content:""}.bi-shuffle:before{content:""}.bi-signpost-2-fill:before{content:""}.bi-signpost-2:before{content:""}.bi-signpost-fill:before{content:""}.bi-signpost-split-fill:before{content:""}.bi-signpost-split:before{content:""}.bi-signpost:before{content:""}.bi-sim-fill:before{content:""}.bi-sim:before{content:""}.bi-skip-backward-btn-fill:before{content:""}.bi-skip-backward-btn:before{content:""}.bi-skip-backward-circle-fill:before{content:""}.bi-skip-backward-circle:before{content:""}.bi-skip-backward-fill:before{content:""}.bi-skip-backward:before{content:""}.bi-skip-end-btn-fill:before{content:""}.bi-skip-end-btn:before{content:""}.bi-skip-end-circle-fill:before{content:""}.bi-skip-end-circle:before{content:""}.bi-skip-end-fill:before{content:""}.bi-skip-end:before{content:""}.bi-skip-forward-btn-fill:before{content:""}.bi-skip-forward-btn:before{content:""}.bi-skip-forward-circle-fill:before{content:""}.bi-skip-forward-circle:before{content:""}.bi-skip-forward-fill:before{content:""}.bi-skip-forward:before{content:""}.bi-skip-start-btn-fill:before{content:""}.bi-skip-start-btn:before{content:""}.bi-skip-start-circle-fill:before{content:""}.bi-skip-start-circle:before{content:""}.bi-skip-start-fill:before{content:""}.bi-skip-start:before{content:""}.bi-slack:before{content:""}.bi-slash-circle-fill:before{content:""}.bi-slash-circle:before{content:""}.bi-slash-square-fill:before{content:""}.bi-slash-square:before{content:""}.bi-slash:before{content:""}.bi-sliders:before{content:""}.bi-smartwatch:before{content:""}.bi-snow:before{content:""}.bi-snow2:before{content:""}.bi-snow3:before{content:""}.bi-sort-alpha-down-alt:before{content:""}.bi-sort-alpha-down:before{content:""}.bi-sort-alpha-up-alt:before{content:""}.bi-sort-alpha-up:before{content:""}.bi-sort-down-alt:before{content:""}.bi-sort-down:before{content:""}.bi-sort-numeric-down-alt:before{content:""}.bi-sort-numeric-down:before{content:""}.bi-sort-numeric-up-alt:before{content:""}.bi-sort-numeric-up:before{content:""}.bi-sort-up-alt:before{content:""}.bi-sort-up:before{content:""}.bi-soundwave:before{content:""}.bi-speaker-fill:before{content:""}.bi-speaker:before{content:""}.bi-speedometer:before{content:""}.bi-speedometer2:before{content:""}.bi-spellcheck:before{content:""}.bi-square-fill:before{content:""}.bi-square-half:before{content:""}.bi-square:before{content:""}.bi-stack:before{content:""}.bi-star-fill:before{content:""}.bi-star-half:before{content:""}.bi-star:before{content:""}.bi-stars:before{content:""}.bi-stickies-fill:before{content:""}.bi-stickies:before{content:""}.bi-sticky-fill:before{content:""}.bi-sticky:before{content:""}.bi-stop-btn-fill:before{content:""}.bi-stop-btn:before{content:""}.bi-stop-circle-fill:before{content:""}.bi-stop-circle:before{content:""}.bi-stop-fill:before{content:""}.bi-stop:before{content:""}.bi-stoplights-fill:before{content:""}.bi-stoplights:before{content:""}.bi-stopwatch-fill:before{content:""}.bi-stopwatch:before{content:""}.bi-subtract:before{content:""}.bi-suit-club-fill:before{content:""}.bi-suit-club:before{content:""}.bi-suit-diamond-fill:before{content:""}.bi-suit-diamond:before{content:""}.bi-suit-heart-fill:before{content:""}.bi-suit-heart:before{content:""}.bi-suit-spade-fill:before{content:""}.bi-suit-spade:before{content:""}.bi-sun-fill:before{content:""}.bi-sun:before{content:""}.bi-sunglasses:before{content:""}.bi-sunrise-fill:before{content:""}.bi-sunrise:before{content:""}.bi-sunset-fill:before{content:""}.bi-sunset:before{content:""}.bi-symmetry-horizontal:before{content:""}.bi-symmetry-vertical:before{content:""}.bi-table:before{content:""}.bi-tablet-fill:before{content:""}.bi-tablet-landscape-fill:before{content:""}.bi-tablet-landscape:before{content:""}.bi-tablet:before{content:""}.bi-tag-fill:before{content:""}.bi-tag:before{content:""}.bi-tags-fill:before{content:""}.bi-tags:before{content:""}.bi-telegram:before{content:""}.bi-telephone-fill:before{content:""}.bi-telephone-forward-fill:before{content:""}.bi-telephone-forward:before{content:""}.bi-telephone-inbound-fill:before{content:""}.bi-telephone-inbound:before{content:""}.bi-telephone-minus-fill:before{content:""}.bi-telephone-minus:before{content:""}.bi-telephone-outbound-fill:before{content:""}.bi-telephone-outbound:before{content:""}.bi-telephone-plus-fill:before{content:""}.bi-telephone-plus:before{content:""}.bi-telephone-x-fill:before{content:""}.bi-telephone-x:before{content:""}.bi-telephone:before{content:""}.bi-terminal-fill:before{content:""}.bi-terminal:before{content:""}.bi-text-center:before{content:""}.bi-text-indent-left:before{content:""}.bi-text-indent-right:before{content:""}.bi-text-left:before{content:""}.bi-text-paragraph:before{content:""}.bi-text-right:before{content:""}.bi-textarea-resize:before{content:""}.bi-textarea-t:before{content:""}.bi-textarea:before{content:""}.bi-thermometer-half:before{content:""}.bi-thermometer-high:before{content:""}.bi-thermometer-low:before{content:""}.bi-thermometer-snow:before{content:""}.bi-thermometer-sun:before{content:""}.bi-thermometer:before{content:""}.bi-three-dots-vertical:before{content:""}.bi-three-dots:before{content:""}.bi-toggle-off:before{content:""}.bi-toggle-on:before{content:""}.bi-toggle2-off:before{content:""}.bi-toggle2-on:before{content:""}.bi-toggles:before{content:""}.bi-toggles2:before{content:""}.bi-tools:before{content:""}.bi-tornado:before{content:""}.bi-trash-fill:before{content:""}.bi-trash:before{content:""}.bi-trash2-fill:before{content:""}.bi-trash2:before{content:""}.bi-tree-fill:before{content:""}.bi-tree:before{content:""}.bi-triangle-fill:before{content:""}.bi-triangle-half:before{content:""}.bi-triangle:before{content:""}.bi-trophy-fill:before{content:""}.bi-trophy:before{content:""}.bi-tropical-storm:before{content:""}.bi-truck-flatbed:before{content:""}.bi-truck:before{content:""}.bi-tsunami:before{content:""}.bi-tv-fill:before{content:""}.bi-tv:before{content:""}.bi-twitch:before{content:""}.bi-twitter:before{content:""}.bi-type-bold:before{content:""}.bi-type-h1:before{content:""}.bi-type-h2:before{content:""}.bi-type-h3:before{content:""}.bi-type-italic:before{content:""}.bi-type-strikethrough:before{content:""}.bi-type-underline:before{content:""}.bi-type:before{content:""}.bi-ui-checks-grid:before{content:""}.bi-ui-checks:before{content:""}.bi-ui-radios-grid:before{content:""}.bi-ui-radios:before{content:""}.bi-umbrella-fill:before{content:""}.bi-umbrella:before{content:""}.bi-union:before{content:""}.bi-unlock-fill:before{content:""}.bi-unlock:before{content:""}.bi-upc-scan:before{content:""}.bi-upc:before{content:""}.bi-upload:before{content:""}.bi-vector-pen:before{content:""}.bi-view-list:before{content:""}.bi-view-stacked:before{content:""}.bi-vinyl-fill:before{content:""}.bi-vinyl:before{content:""}.bi-voicemail:before{content:""}.bi-volume-down-fill:before{content:""}.bi-volume-down:before{content:""}.bi-volume-mute-fill:before{content:""}.bi-volume-mute:before{content:""}.bi-volume-off-fill:before{content:""}.bi-volume-off:before{content:""}.bi-volume-up-fill:before{content:""}.bi-volume-up:before{content:""}.bi-vr:before{content:""}.bi-wallet-fill:before{content:""}.bi-wallet:before{content:""}.bi-wallet2:before{content:""}.bi-watch:before{content:""}.bi-water:before{content:""}.bi-whatsapp:before{content:""}.bi-wifi-1:before{content:""}.bi-wifi-2:before{content:""}.bi-wifi-off:before{content:""}.bi-wifi:before{content:""}.bi-wind:before{content:""}.bi-window-dock:before{content:""}.bi-window-sidebar:before{content:""}.bi-window:before{content:""}.bi-wrench:before{content:""}.bi-x-circle-fill:before{content:""}.bi-x-circle:before{content:""}.bi-x-diamond-fill:before{content:""}.bi-x-diamond:before{content:""}.bi-x-octagon-fill:before{content:""}.bi-x-octagon:before{content:""}.bi-x-square-fill:before{content:""}.bi-x-square:before{content:""}.bi-x:before{content:""}.bi-youtube:before{content:""}.bi-zoom-in:before{content:""}.bi-zoom-out:before{content:""}.bi-bank:before{content:""}.bi-bank2:before{content:""}.bi-bell-slash-fill:before{content:""}.bi-bell-slash:before{content:""}.bi-cash-coin:before{content:""}.bi-check-lg:before{content:""}.bi-coin:before{content:""}.bi-currency-bitcoin:before{content:""}.bi-currency-dollar:before{content:""}.bi-currency-euro:before{content:""}.bi-currency-exchange:before{content:""}.bi-currency-pound:before{content:""}.bi-currency-yen:before{content:""}.bi-dash-lg:before{content:""}.bi-exclamation-lg:before{content:""}.bi-file-earmark-pdf-fill:before{content:""}.bi-file-earmark-pdf:before{content:""}.bi-file-pdf-fill:before{content:""}.bi-file-pdf:before{content:""}.bi-gender-ambiguous:before{content:""}.bi-gender-female:before{content:""}.bi-gender-male:before{content:""}.bi-gender-trans:before{content:""}.bi-headset-vr:before{content:""}.bi-info-lg:before{content:""}.bi-mastodon:before{content:""}.bi-messenger:before{content:""}.bi-piggy-bank-fill:before{content:""}.bi-piggy-bank:before{content:""}.bi-pin-map-fill:before{content:""}.bi-pin-map:before{content:""}.bi-plus-lg:before{content:""}.bi-question-lg:before{content:""}.bi-recycle:before{content:""}.bi-reddit:before{content:""}.bi-safe-fill:before{content:""}.bi-safe2-fill:before{content:""}.bi-safe2:before{content:""}.bi-sd-card-fill:before{content:""}.bi-sd-card:before{content:""}.bi-skype:before{content:""}.bi-slash-lg:before{content:""}.bi-translate:before{content:""}.bi-x-lg:before{content:""}.bi-safe:before{content:""}.bi-apple:before{content:""}.bi-microsoft:before{content:""}.bi-windows:before{content:""}.bi-behance:before{content:""}.bi-dribbble:before{content:""}.bi-line:before{content:""}.bi-medium:before{content:""}.bi-paypal:before{content:""}.bi-pinterest:before{content:""}.bi-signal:before{content:""}.bi-snapchat:before{content:""}.bi-spotify:before{content:""}.bi-stack-overflow:before{content:""}.bi-strava:before{content:""}.bi-wordpress:before{content:""}.bi-vimeo:before{content:""}.bi-activity:before{content:""}.bi-easel2-fill:before{content:""}.bi-easel2:before{content:""}.bi-easel3-fill:before{content:""}.bi-easel3:before{content:""}.bi-fan:before{content:""}.bi-fingerprint:before{content:""}.bi-graph-down-arrow:before{content:""}.bi-graph-up-arrow:before{content:""}.bi-hypnotize:before{content:""}.bi-magic:before{content:""}.bi-person-rolodex:before{content:""}.bi-person-video:before{content:""}.bi-person-video2:before{content:""}.bi-person-video3:before{content:""}.bi-person-workspace:before{content:""}.bi-radioactive:before{content:""}.bi-webcam-fill:before{content:""}.bi-webcam:before{content:""}.bi-yin-yang:before{content:""}.bi-bandaid-fill:before{content:""}.bi-bandaid:before{content:""}.bi-bluetooth:before{content:""}.bi-body-text:before{content:""}.bi-boombox:before{content:""}.bi-boxes:before{content:""}.bi-dpad-fill:before{content:""}.bi-dpad:before{content:""}.bi-ear-fill:before{content:""}.bi-ear:before{content:""}.bi-envelope-check-fill:before{content:""}.bi-envelope-check:before{content:""}.bi-envelope-dash-fill:before{content:""}.bi-envelope-dash:before{content:""}.bi-envelope-exclamation-fill:before{content:""}.bi-envelope-exclamation:before{content:""}.bi-envelope-plus-fill:before{content:""}.bi-envelope-plus:before{content:""}.bi-envelope-slash-fill:before{content:""}.bi-envelope-slash:before{content:""}.bi-envelope-x-fill:before{content:""}.bi-envelope-x:before{content:""}.bi-explicit-fill:before{content:""}.bi-explicit:before{content:""}.bi-git:before{content:""}.bi-infinity:before{content:""}.bi-list-columns-reverse:before{content:""}.bi-list-columns:before{content:""}.bi-meta:before{content:""}.bi-nintendo-switch:before{content:""}.bi-pc-display-horizontal:before{content:""}.bi-pc-display:before{content:""}.bi-pc-horizontal:before{content:""}.bi-pc:before{content:""}.bi-playstation:before{content:""}.bi-plus-slash-minus:before{content:""}.bi-projector-fill:before{content:""}.bi-projector:before{content:""}.bi-qr-code-scan:before{content:""}.bi-qr-code:before{content:""}.bi-quora:before{content:""}.bi-quote:before{content:""}.bi-robot:before{content:""}.bi-send-check-fill:before{content:""}.bi-send-check:before{content:""}.bi-send-dash-fill:before{content:""}.bi-send-dash:before{content:""}.bi-send-exclamation-fill:before{content:""}.bi-send-exclamation:before{content:""}.bi-send-fill:before{content:""}.bi-send-plus-fill:before{content:""}.bi-send-plus:before{content:""}.bi-send-slash-fill:before{content:""}.bi-send-slash:before{content:""}.bi-send-x-fill:before{content:""}.bi-send-x:before{content:""}.bi-send:before{content:""}.bi-steam:before{content:""}.bi-terminal-dash:before{content:""}.bi-terminal-plus:before{content:""}.bi-terminal-split:before{content:""}.bi-ticket-detailed-fill:before{content:""}.bi-ticket-detailed:before{content:""}.bi-ticket-fill:before{content:""}.bi-ticket-perforated-fill:before{content:""}.bi-ticket-perforated:before{content:""}.bi-ticket:before{content:""}.bi-tiktok:before{content:""}.bi-window-dash:before{content:""}.bi-window-desktop:before{content:""}.bi-window-fullscreen:before{content:""}.bi-window-plus:before{content:""}.bi-window-split:before{content:""}.bi-window-stack:before{content:""}.bi-window-x:before{content:""}.bi-xbox:before{content:""}.bi-ethernet:before{content:""}.bi-hdmi-fill:before{content:""}.bi-hdmi:before{content:""}.bi-usb-c-fill:before{content:""}.bi-usb-c:before{content:""}.bi-usb-fill:before{content:""}.bi-usb-plug-fill:before{content:""}.bi-usb-plug:before{content:""}.bi-usb-symbol:before{content:""}.bi-usb:before{content:""}.bi-boombox-fill:before{content:""}.bi-displayport:before{content:""}.bi-gpu-card:before{content:""}.bi-memory:before{content:""}.bi-modem-fill:before{content:""}.bi-modem:before{content:""}.bi-motherboard-fill:before{content:""}.bi-motherboard:before{content:""}.bi-optical-audio-fill:before{content:""}.bi-optical-audio:before{content:""}.bi-pci-card:before{content:""}.bi-router-fill:before{content:""}.bi-router:before{content:""}.bi-thunderbolt-fill:before{content:""}.bi-thunderbolt:before{content:""}.bi-usb-drive-fill:before{content:""}.bi-usb-drive:before{content:""}.bi-usb-micro-fill:before{content:""}.bi-usb-micro:before{content:""}.bi-usb-mini-fill:before{content:""}.bi-usb-mini:before{content:""}.bi-cloud-haze2:before{content:""}.bi-device-hdd-fill:before{content:""}.bi-device-hdd:before{content:""}.bi-device-ssd-fill:before{content:""}.bi-device-ssd:before{content:""}.bi-displayport-fill:before{content:""}.bi-mortarboard-fill:before{content:""}.bi-mortarboard:before{content:""}.bi-terminal-x:before{content:""}.bi-arrow-through-heart-fill:before{content:""}.bi-arrow-through-heart:before{content:""}.bi-badge-sd-fill:before{content:""}.bi-badge-sd:before{content:""}.bi-bag-heart-fill:before{content:""}.bi-bag-heart:before{content:""}.bi-balloon-fill:before{content:""}.bi-balloon-heart-fill:before{content:""}.bi-balloon-heart:before{content:""}.bi-balloon:before{content:""}.bi-box2-fill:before{content:""}.bi-box2-heart-fill:before{content:""}.bi-box2-heart:before{content:""}.bi-box2:before{content:""}.bi-braces-asterisk:before{content:""}.bi-calendar-heart-fill:before{content:""}.bi-calendar-heart:before{content:""}.bi-calendar2-heart-fill:before{content:""}.bi-calendar2-heart:before{content:""}.bi-chat-heart-fill:before{content:""}.bi-chat-heart:before{content:""}.bi-chat-left-heart-fill:before{content:""}.bi-chat-left-heart:before{content:""}.bi-chat-right-heart-fill:before{content:""}.bi-chat-right-heart:before{content:""}.bi-chat-square-heart-fill:before{content:""}.bi-chat-square-heart:before{content:""}.bi-clipboard-check-fill:before{content:""}.bi-clipboard-data-fill:before{content:""}.bi-clipboard-fill:before{content:""}.bi-clipboard-heart-fill:before{content:""}.bi-clipboard-heart:before{content:""}.bi-clipboard-minus-fill:before{content:""}.bi-clipboard-plus-fill:before{content:""}.bi-clipboard-pulse:before{content:""}.bi-clipboard-x-fill:before{content:""}.bi-clipboard2-check-fill:before{content:""}.bi-clipboard2-check:before{content:""}.bi-clipboard2-data-fill:before{content:""}.bi-clipboard2-data:before{content:""}.bi-clipboard2-fill:before{content:""}.bi-clipboard2-heart-fill:before{content:""}.bi-clipboard2-heart:before{content:""}.bi-clipboard2-minus-fill:before{content:""}.bi-clipboard2-minus:before{content:""}.bi-clipboard2-plus-fill:before{content:""}.bi-clipboard2-plus:before{content:""}.bi-clipboard2-pulse-fill:before{content:""}.bi-clipboard2-pulse:before{content:""}.bi-clipboard2-x-fill:before{content:""}.bi-clipboard2-x:before{content:""}.bi-clipboard2:before{content:""}.bi-emoji-kiss-fill:before{content:""}.bi-emoji-kiss:before{content:""}.bi-envelope-heart-fill:before{content:""}.bi-envelope-heart:before{content:""}.bi-envelope-open-heart-fill:before{content:""}.bi-envelope-open-heart:before{content:""}.bi-envelope-paper-fill:before{content:""}.bi-envelope-paper-heart-fill:before{content:""}.bi-envelope-paper-heart:before{content:""}.bi-envelope-paper:before{content:""}.bi-filetype-aac:before{content:""}.bi-filetype-ai:before{content:""}.bi-filetype-bmp:before{content:""}.bi-filetype-cs:before{content:""}.bi-filetype-css:before{content:""}.bi-filetype-csv:before{content:""}.bi-filetype-doc:before{content:""}.bi-filetype-docx:before{content:""}.bi-filetype-exe:before{content:""}.bi-filetype-gif:before{content:""}.bi-filetype-heic:before{content:""}.bi-filetype-html:before{content:""}.bi-filetype-java:before{content:""}.bi-filetype-jpg:before{content:""}.bi-filetype-js:before{content:""}.bi-filetype-jsx:before{content:""}.bi-filetype-key:before{content:""}.bi-filetype-m4p:before{content:""}.bi-filetype-md:before{content:""}.bi-filetype-mdx:before{content:""}.bi-filetype-mov:before{content:""}.bi-filetype-mp3:before{content:""}.bi-filetype-mp4:before{content:""}.bi-filetype-otf:before{content:""}.bi-filetype-pdf:before{content:""}.bi-filetype-php:before{content:""}.bi-filetype-png:before{content:""}.bi-filetype-ppt:before{content:""}.bi-filetype-psd:before{content:""}.bi-filetype-py:before{content:""}.bi-filetype-raw:before{content:""}.bi-filetype-rb:before{content:""}.bi-filetype-sass:before{content:""}.bi-filetype-scss:before{content:""}.bi-filetype-sh:before{content:""}.bi-filetype-svg:before{content:""}.bi-filetype-tiff:before{content:""}.bi-filetype-tsx:before{content:""}.bi-filetype-ttf:before{content:""}.bi-filetype-txt:before{content:""}.bi-filetype-wav:before{content:""}.bi-filetype-woff:before{content:""}.bi-filetype-xls:before{content:""}.bi-filetype-xml:before{content:""}.bi-filetype-yml:before{content:""}.bi-heart-arrow:before{content:""}.bi-heart-pulse-fill:before{content:""}.bi-heart-pulse:before{content:""}.bi-heartbreak-fill:before{content:""}.bi-heartbreak:before{content:""}.bi-hearts:before{content:""}.bi-hospital-fill:before{content:""}.bi-hospital:before{content:""}.bi-house-heart-fill:before{content:""}.bi-house-heart:before{content:""}.bi-incognito:before{content:""}.bi-magnet-fill:before{content:""}.bi-magnet:before{content:""}.bi-person-heart:before{content:""}.bi-person-hearts:before{content:""}.bi-phone-flip:before{content:""}.bi-plugin:before{content:""}.bi-postage-fill:before{content:""}.bi-postage-heart-fill:before{content:""}.bi-postage-heart:before{content:""}.bi-postage:before{content:""}.bi-postcard-fill:before{content:""}.bi-postcard-heart-fill:before{content:""}.bi-postcard-heart:before{content:""}.bi-postcard:before{content:""}.bi-search-heart-fill:before{content:""}.bi-search-heart:before{content:""}.bi-sliders2-vertical:before{content:""}.bi-sliders2:before{content:""}.bi-trash3-fill:before{content:""}.bi-trash3:before{content:""}.bi-valentine:before{content:""}.bi-valentine2:before{content:""}.bi-wrench-adjustable-circle-fill:before{content:""}.bi-wrench-adjustable-circle:before{content:""}.bi-wrench-adjustable:before{content:""}.bi-filetype-json:before{content:""}.bi-filetype-pptx:before{content:""}.bi-filetype-xlsx:before{content:""}.bi-1-circle-fill:before{content:""}.bi-1-circle:before{content:""}.bi-1-square-fill:before{content:""}.bi-1-square:before{content:""}.bi-2-circle-fill:before{content:""}.bi-2-circle:before{content:""}.bi-2-square-fill:before{content:""}.bi-2-square:before{content:""}.bi-3-circle-fill:before{content:""}.bi-3-circle:before{content:""}.bi-3-square-fill:before{content:""}.bi-3-square:before{content:""}.bi-4-circle-fill:before{content:""}.bi-4-circle:before{content:""}.bi-4-square-fill:before{content:""}.bi-4-square:before{content:""}.bi-5-circle-fill:before{content:""}.bi-5-circle:before{content:""}.bi-5-square-fill:before{content:""}.bi-5-square:before{content:""}.bi-6-circle-fill:before{content:""}.bi-6-circle:before{content:""}.bi-6-square-fill:before{content:""}.bi-6-square:before{content:""}.bi-7-circle-fill:before{content:""}.bi-7-circle:before{content:""}.bi-7-square-fill:before{content:""}.bi-7-square:before{content:""}.bi-8-circle-fill:before{content:""}.bi-8-circle:before{content:""}.bi-8-square-fill:before{content:""}.bi-8-square:before{content:""}.bi-9-circle-fill:before{content:""}.bi-9-circle:before{content:""}.bi-9-square-fill:before{content:""}.bi-9-square:before{content:""}.bi-airplane-engines-fill:before{content:""}.bi-airplane-engines:before{content:""}.bi-airplane-fill:before{content:""}.bi-airplane:before{content:""}.bi-alexa:before{content:""}.bi-alipay:before{content:""}.bi-android:before{content:""}.bi-android2:before{content:""}.bi-box-fill:before{content:""}.bi-box-seam-fill:before{content:""}.bi-browser-chrome:before{content:""}.bi-browser-edge:before{content:""}.bi-browser-firefox:before{content:""}.bi-browser-safari:before{content:""}.bi-c-circle-fill:before{content:""}.bi-c-circle:before{content:""}.bi-c-square-fill:before{content:""}.bi-c-square:before{content:""}.bi-capsule-pill:before{content:""}.bi-capsule:before{content:""}.bi-car-front-fill:before{content:""}.bi-car-front:before{content:""}.bi-cassette-fill:before{content:""}.bi-cassette:before{content:""}.bi-cc-circle-fill:before{content:""}.bi-cc-circle:before{content:""}.bi-cc-square-fill:before{content:""}.bi-cc-square:before{content:""}.bi-cup-hot-fill:before{content:""}.bi-cup-hot:before{content:""}.bi-currency-rupee:before{content:""}.bi-dropbox:before{content:""}.bi-escape:before{content:""}.bi-fast-forward-btn-fill:before{content:""}.bi-fast-forward-btn:before{content:""}.bi-fast-forward-circle-fill:before{content:""}.bi-fast-forward-circle:before{content:""}.bi-fast-forward-fill:before{content:""}.bi-fast-forward:before{content:""}.bi-filetype-sql:before{content:""}.bi-fire:before{content:""}.bi-google-play:before{content:""}.bi-h-circle-fill:before{content:""}.bi-h-circle:before{content:""}.bi-h-square-fill:before{content:""}.bi-h-square:before{content:""}.bi-indent:before{content:""}.bi-lungs-fill:before{content:""}.bi-lungs:before{content:""}.bi-microsoft-teams:before{content:""}.bi-p-circle-fill:before{content:""}.bi-p-circle:before{content:""}.bi-p-square-fill:before{content:""}.bi-p-square:before{content:""}.bi-pass-fill:before{content:""}.bi-pass:before{content:""}.bi-prescription:before{content:""}.bi-prescription2:before{content:""}.bi-r-circle-fill:before{content:""}.bi-r-circle:before{content:""}.bi-r-square-fill:before{content:""}.bi-r-square:before{content:""}.bi-repeat-1:before{content:""}.bi-repeat:before{content:""}.bi-rewind-btn-fill:before{content:""}.bi-rewind-btn:before{content:""}.bi-rewind-circle-fill:before{content:""}.bi-rewind-circle:before{content:""}.bi-rewind-fill:before{content:""}.bi-rewind:before{content:""}.bi-train-freight-front-fill:before{content:""}.bi-train-freight-front:before{content:""}.bi-train-front-fill:before{content:""}.bi-train-front:before{content:""}.bi-train-lightrail-front-fill:before{content:""}.bi-train-lightrail-front:before{content:""}.bi-truck-front-fill:before{content:""}.bi-truck-front:before{content:""}.bi-ubuntu:before{content:""}.bi-unindent:before{content:""}.bi-unity:before{content:""}.bi-universal-access-circle:before{content:""}.bi-universal-access:before{content:""}.bi-virus:before{content:""}.bi-virus2:before{content:""}.bi-wechat:before{content:""}.bi-yelp:before{content:""}.bi-sign-stop-fill:before{content:""}.bi-sign-stop-lights-fill:before{content:""}.bi-sign-stop-lights:before{content:""}.bi-sign-stop:before{content:""}.bi-sign-turn-left-fill:before{content:""}.bi-sign-turn-left:before{content:""}.bi-sign-turn-right-fill:before{content:""}.bi-sign-turn-right:before{content:""}.bi-sign-turn-slight-left-fill:before{content:""}.bi-sign-turn-slight-left:before{content:""}.bi-sign-turn-slight-right-fill:before{content:""}.bi-sign-turn-slight-right:before{content:""}.bi-sign-yield-fill:before{content:""}.bi-sign-yield:before{content:""}.bi-ev-station-fill:before{content:""}.bi-ev-station:before{content:""}.bi-fuel-pump-diesel-fill:before{content:""}.bi-fuel-pump-diesel:before{content:""}.bi-fuel-pump-fill:before{content:""}.bi-fuel-pump:before{content:""}.bi-0-circle-fill:before{content:""}.bi-0-circle:before{content:""}.bi-0-square-fill:before{content:""}.bi-0-square:before{content:""}.bi-rocket-fill:before{content:""}.bi-rocket-takeoff-fill:before{content:""}.bi-rocket-takeoff:before{content:""}.bi-rocket:before{content:""}.bi-stripe:before{content:""}.bi-subscript:before{content:""}.bi-superscript:before{content:""}.bi-trello:before{content:""}.bi-envelope-at-fill:before{content:""}.bi-envelope-at:before{content:""}.bi-regex:before{content:""}.bi-text-wrap:before{content:""}.bi-sign-dead-end-fill:before{content:""}.bi-sign-dead-end:before{content:""}.bi-sign-do-not-enter-fill:before{content:""}.bi-sign-do-not-enter:before{content:""}.bi-sign-intersection-fill:before{content:""}.bi-sign-intersection-side-fill:before{content:""}.bi-sign-intersection-side:before{content:""}.bi-sign-intersection-t-fill:before{content:""}.bi-sign-intersection-t:before{content:""}.bi-sign-intersection-y-fill:before{content:""}.bi-sign-intersection-y:before{content:""}.bi-sign-intersection:before{content:""}.bi-sign-merge-left-fill:before{content:""}.bi-sign-merge-left:before{content:""}.bi-sign-merge-right-fill:before{content:""}.bi-sign-merge-right:before{content:""}.bi-sign-no-left-turn-fill:before{content:""}.bi-sign-no-left-turn:before{content:""}.bi-sign-no-parking-fill:before{content:""}.bi-sign-no-parking:before{content:""}.bi-sign-no-right-turn-fill:before{content:""}.bi-sign-no-right-turn:before{content:""}.bi-sign-railroad-fill:before{content:""}.bi-sign-railroad:before{content:""}.bi-building-add:before{content:""}.bi-building-check:before{content:""}.bi-building-dash:before{content:""}.bi-building-down:before{content:""}.bi-building-exclamation:before{content:""}.bi-building-fill-add:before{content:""}.bi-building-fill-check:before{content:""}.bi-building-fill-dash:before{content:""}.bi-building-fill-down:before{content:""}.bi-building-fill-exclamation:before{content:""}.bi-building-fill-gear:before{content:""}.bi-building-fill-lock:before{content:""}.bi-building-fill-slash:before{content:""}.bi-building-fill-up:before{content:""}.bi-building-fill-x:before{content:""}.bi-building-fill:before{content:""}.bi-building-gear:before{content:""}.bi-building-lock:before{content:""}.bi-building-slash:before{content:""}.bi-building-up:before{content:""}.bi-building-x:before{content:""}.bi-buildings-fill:before{content:""}.bi-buildings:before{content:""}.bi-bus-front-fill:before{content:""}.bi-bus-front:before{content:""}.bi-ev-front-fill:before{content:""}.bi-ev-front:before{content:""}.bi-globe-americas:before{content:""}.bi-globe-asia-australia:before{content:""}.bi-globe-central-south-asia:before{content:""}.bi-globe-europe-africa:before{content:""}.bi-house-add-fill:before{content:""}.bi-house-add:before{content:""}.bi-house-check-fill:before{content:""}.bi-house-check:before{content:""}.bi-house-dash-fill:before{content:""}.bi-house-dash:before{content:""}.bi-house-down-fill:before{content:""}.bi-house-down:before{content:""}.bi-house-exclamation-fill:before{content:""}.bi-house-exclamation:before{content:""}.bi-house-gear-fill:before{content:""}.bi-house-gear:before{content:""}.bi-house-lock-fill:before{content:""}.bi-house-lock:before{content:""}.bi-house-slash-fill:before{content:""}.bi-house-slash:before{content:""}.bi-house-up-fill:before{content:""}.bi-house-up:before{content:""}.bi-house-x-fill:before{content:""}.bi-house-x:before{content:""}.bi-person-add:before{content:""}.bi-person-down:before{content:""}.bi-person-exclamation:before{content:""}.bi-person-fill-add:before{content:""}.bi-person-fill-check:before{content:""}.bi-person-fill-dash:before{content:""}.bi-person-fill-down:before{content:""}.bi-person-fill-exclamation:before{content:""}.bi-person-fill-gear:before{content:""}.bi-person-fill-lock:before{content:""}.bi-person-fill-slash:before{content:""}.bi-person-fill-up:before{content:""}.bi-person-fill-x:before{content:""}.bi-person-gear:before{content:""}.bi-person-lock:before{content:""}.bi-person-slash:before{content:""}.bi-person-up:before{content:""}.bi-scooter:before{content:""}.bi-taxi-front-fill:before{content:""}.bi-taxi-front:before{content:""}.bi-amd:before{content:""}.bi-database-add:before{content:""}.bi-database-check:before{content:""}.bi-database-dash:before{content:""}.bi-database-down:before{content:""}.bi-database-exclamation:before{content:""}.bi-database-fill-add:before{content:""}.bi-database-fill-check:before{content:""}.bi-database-fill-dash:before{content:""}.bi-database-fill-down:before{content:""}.bi-database-fill-exclamation:before{content:""}.bi-database-fill-gear:before{content:""}.bi-database-fill-lock:before{content:""}.bi-database-fill-slash:before{content:""}.bi-database-fill-up:before{content:""}.bi-database-fill-x:before{content:""}.bi-database-fill:before{content:""}.bi-database-gear:before{content:""}.bi-database-lock:before{content:""}.bi-database-slash:before{content:""}.bi-database-up:before{content:""}.bi-database-x:before{content:""}.bi-database:before{content:""}.bi-houses-fill:before{content:""}.bi-houses:before{content:""}.bi-nvidia:before{content:""}.bi-person-vcard-fill:before{content:""}.bi-person-vcard:before{content:""}.bi-sina-weibo:before{content:""}.bi-tencent-qq:before{content:""}.bi-wikipedia:before{content:""}.bi-alphabet-uppercase:before{content:""}.bi-alphabet:before{content:""}.bi-amazon:before{content:""}.bi-arrows-collapse-vertical:before{content:""}.bi-arrows-expand-vertical:before{content:""}.bi-arrows-vertical:before{content:""}.bi-arrows:before{content:""}.bi-ban-fill:before{content:""}.bi-ban:before{content:""}.bi-bing:before{content:""}.bi-cake:before{content:""}.bi-cake2:before{content:""}.bi-cookie:before{content:""}.bi-copy:before{content:""}.bi-crosshair:before{content:""}.bi-crosshair2:before{content:""}.bi-emoji-astonished-fill:before{content:""}.bi-emoji-astonished:before{content:""}.bi-emoji-grimace-fill:before{content:""}.bi-emoji-grimace:before{content:""}.bi-emoji-grin-fill:before{content:""}.bi-emoji-grin:before{content:""}.bi-emoji-surprise-fill:before{content:""}.bi-emoji-surprise:before{content:""}.bi-emoji-tear-fill:before{content:""}.bi-emoji-tear:before{content:""}.bi-envelope-arrow-down-fill:before{content:""}.bi-envelope-arrow-down:before{content:""}.bi-envelope-arrow-up-fill:before{content:""}.bi-envelope-arrow-up:before{content:""}.bi-feather:before{content:""}.bi-feather2:before{content:""}.bi-floppy-fill:before{content:""}.bi-floppy:before{content:""}.bi-floppy2-fill:before{content:""}.bi-floppy2:before{content:""}.bi-gitlab:before{content:""}.bi-highlighter:before{content:""}.bi-marker-tip:before{content:""}.bi-nvme-fill:before{content:""}.bi-nvme:before{content:""}.bi-opencollective:before{content:""}.bi-pci-card-network:before{content:""}.bi-pci-card-sound:before{content:""}.bi-radar:before{content:""}.bi-send-arrow-down-fill:before{content:""}.bi-send-arrow-down:before{content:""}.bi-send-arrow-up-fill:before{content:""}.bi-send-arrow-up:before{content:""}.bi-sim-slash-fill:before{content:""}.bi-sim-slash:before{content:""}.bi-sourceforge:before{content:""}.bi-substack:before{content:""}.bi-threads-fill:before{content:""}.bi-threads:before{content:""}.bi-transparency:before{content:""}.bi-twitter-x:before{content:""}.bi-type-h4:before{content:""}.bi-type-h5:before{content:""}.bi-type-h6:before{content:""}.bi-backpack-fill:before{content:""}.bi-backpack:before{content:""}.bi-backpack2-fill:before{content:""}.bi-backpack2:before{content:""}.bi-backpack3-fill:before{content:""}.bi-backpack3:before{content:""}.bi-backpack4-fill:before{content:""}.bi-backpack4:before{content:""}.bi-brilliance:before{content:""}.bi-cake-fill:before{content:""}.bi-cake2-fill:before{content:""}.bi-duffle-fill:before{content:""}.bi-duffle:before{content:""}.bi-exposure:before{content:""}.bi-gender-neuter:before{content:""}.bi-highlights:before{content:""}.bi-luggage-fill:before{content:""}.bi-luggage:before{content:""}.bi-mailbox-flag:before{content:""}.bi-mailbox2-flag:before{content:""}.bi-noise-reduction:before{content:""}.bi-passport-fill:before{content:""}.bi-passport:before{content:""}.bi-person-arms-up:before{content:""}.bi-person-raised-hand:before{content:""}.bi-person-standing-dress:before{content:""}.bi-person-standing:before{content:""}.bi-person-walking:before{content:""}.bi-person-wheelchair:before{content:""}.bi-shadows:before{content:""}.bi-suitcase-fill:before{content:""}.bi-suitcase-lg-fill:before{content:""}.bi-suitcase-lg:before{content:""}.bi-suitcase:before{content:"豈"}.bi-suitcase2-fill:before{content:"更"}.bi-suitcase2:before{content:"車"}.bi-vignette:before{content:"賈"}.nav-scroller{position:relative;z-index:2;height:2.75rem;overflow-y:hidden}.nav-scroller .nav{display:flex;flex-wrap:nowrap;padding-bottom:1rem;margin-top:-1px;overflow-x:auto;text-align:center;white-space:nowrap;-webkit-overflow-scrolling:touch}.hover-text-decoration-underline:hover{text-decoration:underline!important}:root,[data-bs-theme=light]{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-primary: #0d6efd;--bs-secondary: #6c757d;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #f8f9fa;--bs-dark: #212529;--bs-primary-rgb: 13, 110, 253;--bs-secondary-rgb: 108, 117, 125;--bs-success-rgb: 25, 135, 84;--bs-info-rgb: 13, 202, 240;--bs-warning-rgb: 255, 193, 7;--bs-danger-rgb: 220, 53, 69;--bs-light-rgb: 248, 249, 250;--bs-dark-rgb: 33, 37, 41;--bs-primary-text-emphasis: #052c65;--bs-secondary-text-emphasis: #2b2f32;--bs-success-text-emphasis: #0a3622;--bs-info-text-emphasis: #055160;--bs-warning-text-emphasis: #664d03;--bs-danger-text-emphasis: #58151c;--bs-light-text-emphasis: #495057;--bs-dark-text-emphasis: #495057;--bs-primary-bg-subtle: #cfe2ff;--bs-secondary-bg-subtle: #e2e3e5;--bs-success-bg-subtle: #d1e7dd;--bs-info-bg-subtle: #cff4fc;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #f8d7da;--bs-light-bg-subtle: #fcfcfd;--bs-dark-bg-subtle: #ced4da;--bs-primary-border-subtle: #9ec5fe;--bs-secondary-border-subtle: #c4c8cb;--bs-success-border-subtle: #a3cfbb;--bs-info-border-subtle: #9eeaf9;--bs-warning-border-subtle: #ffe69c;--bs-danger-border-subtle: #f1aeb5;--bs-light-border-subtle: #e9ecef;--bs-dark-border-subtle: #adb5bd;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, .15), rgba(255, 255, 255, 0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size: 1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #212529;--bs-body-color-rgb: 33, 37, 41;--bs-body-bg: #fff;--bs-body-bg-rgb: 255, 255, 255;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0, 0, 0;--bs-secondary-color: rgba(33, 37, 41, .75);--bs-secondary-color-rgb: 33, 37, 41;--bs-secondary-bg: #e9ecef;--bs-secondary-bg-rgb: 233, 236, 239;--bs-tertiary-color: rgba(33, 37, 41, .5);--bs-tertiary-color-rgb: 33, 37, 41;--bs-tertiary-bg: #f8f9fa;--bs-tertiary-bg-rgb: 248, 249, 250;--bs-heading-color: inherit;--bs-link-color: #0d6efd;--bs-link-color-rgb: 13, 110, 253;--bs-link-decoration: underline;--bs-link-hover-color: #0a58ca;--bs-link-hover-color-rgb: 10, 88, 202;--bs-code-color: #d63384;--bs-highlight-color: #212529;--bs-highlight-bg: tint-color(#ffc107, 80%);--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #dee2e6;--bs-border-color-translucent: rgba(0, 0, 0, .175);--bs-border-radius: .375rem;--bs-border-radius-sm: .25rem;--bs-border-radius-lg: .5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);--bs-box-shadow-sm: 0 .125rem .25rem rgba(0, 0, 0, .075);--bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, .175);--bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .075);--bs-focus-ring-width: .25rem;--bs-focus-ring-opacity: .25;--bs-focus-ring-color: rgba(13, 110, 253, .25);--bs-form-valid-color: #198754;--bs-form-valid-border-color: #198754;--bs-form-invalid-color: #dc3545;--bs-form-invalid-border-color: #dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color: #dee2e6;--bs-body-color-rgb: 222, 226, 230;--bs-body-bg: #212529;--bs-body-bg-rgb: 33, 37, 41;--bs-emphasis-color: #fff;--bs-emphasis-color-rgb: 255, 255, 255;--bs-secondary-color: rgba(222, 226, 230, .75);--bs-secondary-color-rgb: 222, 226, 230;--bs-secondary-bg: #343a40;--bs-secondary-bg-rgb: 52, 58, 64;--bs-tertiary-color: rgba(222, 226, 230, .5);--bs-tertiary-color-rgb: 222, 226, 230;--bs-tertiary-bg: #2b3035;--bs-tertiary-bg-rgb: 43, 48, 53;--bs-primary-text-emphasis: #6ea8fe;--bs-secondary-text-emphasis: #a7acb1;--bs-success-text-emphasis: #75b798;--bs-info-text-emphasis: #6edff6;--bs-warning-text-emphasis: #ffda6a;--bs-danger-text-emphasis: #ea868f;--bs-light-text-emphasis: #f8f9fa;--bs-dark-text-emphasis: #dee2e6;--bs-primary-bg-subtle: #031633;--bs-secondary-bg-subtle: #161719;--bs-success-bg-subtle: #051b11;--bs-info-bg-subtle: #032830;--bs-warning-bg-subtle: #332701;--bs-danger-bg-subtle: #2c0b0e;--bs-light-bg-subtle: #343a40;--bs-dark-bg-subtle: #1a1d20;--bs-primary-border-subtle: #084298;--bs-secondary-border-subtle: #41464b;--bs-success-border-subtle: #0f5132;--bs-info-border-subtle: #087990;--bs-warning-border-subtle: #997404;--bs-danger-border-subtle: #842029;--bs-light-border-subtle: #495057;--bs-dark-border-subtle: #343a40;--bs-heading-color: inherit;--bs-link-color: #6ea8fe;--bs-link-hover-color: #8bb9fe;--bs-link-color-rgb: 110, 168, 254;--bs-link-hover-color-rgb: 139, 185, 254;--bs-code-color: #e685b5;--bs-highlight-color: #dee2e6;--bs-highlight-bg: shade-color(#ffc107, 60%);--bs-border-color: #495057;--bs-border-color-translucent: rgba(255, 255, 255, .15);--bs-form-valid-color: tint-color(#198754, 40%);--bs-form-valid-border-color: tint-color(#198754, 40%);--bs-form-invalid-color: tint-color(#dc3545, 40%);--bs-form-invalid-border-color: tint-color(#dc3545, 40%)}*,*:before,*:after{box-sizing:border-box}@media (prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}h1,.h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width: 1200px){h1,.h1{font-size:2.5rem}}h2,.h2{font-size:calc(1.325rem + .9vw)}@media (min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + .6vw)}@media (min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + .3vw)}@media (min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;cursor:help;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small,.small{font-size:.875em}mark,.mark{padding:.1875em;color:var(--bs-highlight-color);background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity, 1));text-decoration:underline}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button:not(:disabled),[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width: 1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled,.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer:before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){.container-sm,.container{max-width:540px}}@media (min-width: 768px){.container-md,.container-sm,.container{max-width:720px}}@media (min-width: 992px){.container-lg,.container-md,.container-sm,.container{max-width:960px}}@media (min-width: 1200px){.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1140px}}@media (min-width: 1400px){.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1320px}}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.66666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: .25rem}.g-1,.gy-1{--bs-gutter-y: .25rem}.g-2,.gx-2{--bs-gutter-x: .5rem}.g-2,.gy-2{--bs-gutter-y: .5rem}.g-3,.gx-3{--bs-gutter-x: 1rem}.g-3,.gy-3{--bs-gutter-y: 1rem}.g-4,.gx-4{--bs-gutter-x: 1.5rem}.g-4,.gy-4{--bs-gutter-y: 1.5rem}.g-5,.gx-5{--bs-gutter-x: 3rem}.g-5,.gy-5{--bs-gutter-y: 3rem}@media (min-width: 576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.66666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: .25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: .25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: .5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: .5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 3rem}}@media (min-width: 768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.66666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: .25rem}.g-md-1,.gy-md-1{--bs-gutter-y: .25rem}.g-md-2,.gx-md-2{--bs-gutter-x: .5rem}.g-md-2,.gy-md-2{--bs-gutter-y: .5rem}.g-md-3,.gx-md-3{--bs-gutter-x: 1rem}.g-md-3,.gy-md-3{--bs-gutter-y: 1rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x: 3rem}.g-md-5,.gy-md-5{--bs-gutter-y: 3rem}}@media (min-width: 992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.66666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: .25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: .25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: .5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: .5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 3rem}}@media (min-width: 1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.66666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: .25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: .25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: .5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: .5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 3rem}}@media (min-width: 1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.66666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: .25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: .25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: .5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: .5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 3rem}}.table{--bs-table-color-type: initial;--bs-table-bg-type: initial;--bs-table-color-state: initial;--bs-table-bg-state: initial;--bs-table-color: var(--bs-emphasis-color);--bs-table-bg: var(--bs-body-bg);--bs-table-border-color: var(--bs-border-color);--bs-table-accent-bg: transparent;--bs-table-striped-color: var(--bs-emphasis-color);--bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), .05);--bs-table-active-color: var(--bs-emphasis-color);--bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), .1);--bs-table-hover-color: var(--bs-emphasis-color);--bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), .075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem;color:var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(2n){--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-active{--bs-table-color-state: var(--bs-table-active-color);--bs-table-bg-state: var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state: var(--bs-table-hover-color);--bs-table-bg-state: var(--bs-table-hover-bg)}.table-primary{--bs-table-color: #000;--bs-table-bg: #cfe2ff;--bs-table-border-color: #a6b5cc;--bs-table-striped-bg: #c5d7f2;--bs-table-striped-color: #000;--bs-table-active-bg: #bacbe6;--bs-table-active-color: #000;--bs-table-hover-bg: #bfd1ec;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #e2e3e5;--bs-table-border-color: #b5b6b7;--bs-table-striped-bg: #d7d8da;--bs-table-striped-color: #000;--bs-table-active-bg: #cbccce;--bs-table-active-color: #000;--bs-table-hover-bg: #d1d2d4;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #d1e7dd;--bs-table-border-color: #a7b9b1;--bs-table-striped-bg: #c7dbd2;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #cff4fc;--bs-table-border-color: #a6c3ca;--bs-table-striped-bg: #c5e8ef;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #fff3cd;--bs-table-border-color: #ccc2a4;--bs-table-striped-bg: #f2e7c3;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #f8d7da;--bs-table-border-color: #c6acae;--bs-table-striped-bg: #eccccf;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #f8f9fa;--bs-table-border-color: #c6c7c8;--bs-table-striped-bg: #ecedee;--bs-table-striped-color: #000;--bs-table-active-bg: #dfe0e1;--bs-table-active-color: #000;--bs-table-hover-bg: #e5e6e7;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #212529;--bs-table-border-color: #4d5154;--bs-table-striped-bg: #2c3034;--bs-table-striped-color: #fff;--bs-table-active-bg: #373b3e;--bs-table-active-color: #fff;--bs-table-hover-bg: #323539;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon, none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg: var(--bs-body-bg);flex-shrink:0;width:1em;height:1em;margin-top:.25em;vertical-align:top;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input:disabled~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem #0d6efd40}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem #0d6efd40}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:transparent}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>.form-control:focus~label:after,.form-floating>.form-control:not(:placeholder-shown)~label:after,.form-floating>.form-control-plaintext~label:after,.form-floating>.form-select~label:after{position:absolute;top:1rem;right:.375rem;bottom:1rem;left:.375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>:disabled~label,.form-floating>.form-control:disabled~label{color:#6c757d}.form-floating>:disabled~label:after,.form-floating>.form-control:disabled~label:after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3.75rem + 1.5em)}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:var(--bs-form-valid-color)}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3.75rem + 1.5em)}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:var(--bs-form-invalid-color)}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: .75rem;--bs-btn-padding-y: .375rem;--bs-btn-font-family: ;--bs-btn-font-size: 1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: var(--bs-body-color);--bs-btn-bg: transparent;--bs-btn-border-width: var(--bs-border-width);--bs-btn-border-color: transparent;--bs-btn-border-radius: var(--bs-border-radius);--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);--bs-btn-disabled-opacity: .65;--bs-btn-focus-box-shadow: 0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0b5ed7;--bs-btn-hover-border-color: #0a58ca;--bs-btn-focus-shadow-rgb: 49, 132, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0a58ca;--bs-btn-active-border-color: #0a53be;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #0d6efd;--bs-btn-disabled-border-color: #0d6efd}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #5c636a;--bs-btn-hover-border-color: #565e64;--bs-btn-focus-shadow-rgb: 130, 138, 145;--bs-btn-active-color: #fff;--bs-btn-active-bg: #565e64;--bs-btn-active-border-color: #51585e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #6c757d;--bs-btn-disabled-border-color: #6c757d}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #157347;--bs-btn-hover-border-color: #146c43;--bs-btn-focus-shadow-rgb: 60, 153, 110;--bs-btn-active-color: #fff;--bs-btn-active-bg: #146c43;--bs-btn-active-border-color: #13653f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #198754;--bs-btn-disabled-border-color: #198754}.btn-info{--bs-btn-color: #000;--bs-btn-bg: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #31d2f2;--bs-btn-hover-border-color: #25cff2;--bs-btn-focus-shadow-rgb: 11, 172, 204;--bs-btn-active-color: #000;--bs-btn-active-bg: #3dd5f3;--bs-btn-active-border-color: #25cff2;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #0dcaf0;--bs-btn-disabled-border-color: #0dcaf0}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffca2c;--bs-btn-hover-border-color: #ffc720;--bs-btn-focus-shadow-rgb: 217, 164, 6;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffcd39;--bs-btn-active-border-color: #ffc720;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #ffc107;--bs-btn-disabled-border-color: #ffc107}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #bb2d3b;--bs-btn-hover-border-color: #b02a37;--bs-btn-focus-shadow-rgb: 225, 83, 97;--bs-btn-active-color: #fff;--bs-btn-active-bg: #b02a37;--bs-btn-active-border-color: #a52834;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #dc3545;--bs-btn-disabled-border-color: #dc3545}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #d3d4d5;--bs-btn-hover-border-color: #c6c7c8;--bs-btn-focus-shadow-rgb: 211, 212, 213;--bs-btn-active-color: #000;--bs-btn-active-bg: #c6c7c8;--bs-btn-active-border-color: #babbbc;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #f8f9fa;--bs-btn-disabled-border-color: #f8f9fa}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #424649;--bs-btn-hover-border-color: #373b3e;--bs-btn-focus-shadow-rgb: 66, 70, 73;--bs-btn-active-color: #fff;--bs-btn-active-bg: #4d5154;--bs-btn-active-border-color: #373b3e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #212529;--bs-btn-disabled-border-color: #212529}.btn-outline-primary{--bs-btn-color: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0d6efd;--bs-btn-hover-border-color: #0d6efd;--bs-btn-focus-shadow-rgb: 13, 110, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0d6efd;--bs-btn-active-border-color: #0d6efd;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #0d6efd;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0d6efd;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #6c757d;--bs-btn-hover-border-color: #6c757d;--bs-btn-focus-shadow-rgb: 108, 117, 125;--bs-btn-active-color: #fff;--bs-btn-active-bg: #6c757d;--bs-btn-active-border-color: #6c757d;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #6c757d;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #198754;--bs-btn-hover-border-color: #198754;--bs-btn-focus-shadow-rgb: 25, 135, 84;--bs-btn-active-color: #fff;--bs-btn-active-bg: #198754;--bs-btn-active-border-color: #198754;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #198754;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #198754;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #0dcaf0;--bs-btn-hover-border-color: #0dcaf0;--bs-btn-focus-shadow-rgb: 13, 202, 240;--bs-btn-active-color: #000;--bs-btn-active-bg: #0dcaf0;--bs-btn-active-border-color: #0dcaf0;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #0dcaf0;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0dcaf0;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffc107;--bs-btn-hover-border-color: #ffc107;--bs-btn-focus-shadow-rgb: 255, 193, 7;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffc107;--bs-btn-active-border-color: #ffc107;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #ffc107;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ffc107;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #dc3545;--bs-btn-hover-border-color: #dc3545;--bs-btn-focus-shadow-rgb: 220, 53, 69;--bs-btn-active-color: #fff;--bs-btn-active-bg: #dc3545;--bs-btn-active-border-color: #dc3545;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #dc3545;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dc3545;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #f8f9fa;--bs-btn-hover-border-color: #f8f9fa;--bs-btn-focus-shadow-rgb: 248, 249, 250;--bs-btn-active-color: #000;--bs-btn-active-bg: #f8f9fa;--bs-btn-active-border-color: #f8f9fa;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #f8f9fa;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #f8f9fa;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #212529;--bs-btn-hover-border-color: #212529;--bs-btn-focus-shadow-rgb: 33, 37, 41;--bs-btn-active-color: #fff;--bs-btn-active-bg: #212529;--bs-btn-active-border-color: #212529;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color: #212529;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #212529;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: var(--bs-link-color);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--bs-link-hover-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--bs-link-hover-color);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: 0 0 0 #000;--bs-btn-focus-shadow-rgb: 49, 132, 253;text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: .5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size: 1.25rem;--bs-btn-border-radius: var(--bs-border-radius-lg)}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: .25rem;--bs-btn-padding-x: .5rem;--bs-btn-font-size: .875rem;--bs-btn-border-radius: var(--bs-border-radius-sm)}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 10rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: .5rem;--bs-dropdown-spacer: .125rem;--bs-dropdown-font-size: 1rem;--bs-dropdown-color: var(--bs-body-color);--bs-dropdown-bg: var(--bs-body-bg);--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-border-radius: var(--bs-border-radius);--bs-dropdown-border-width: var(--bs-border-width);--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y: .5rem;--bs-dropdown-box-shadow: var(--bs-box-shadow);--bs-dropdown-link-color: var(--bs-body-color);--bs-dropdown-link-hover-color: var(--bs-body-color);--bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #0d6efd;--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);--bs-dropdown-item-padding-x: 1rem;--bs-dropdown-item-padding-y: .25rem;--bs-dropdown-header-color: #6c757d;--bs-dropdown-header-padding-x: 1rem;--bs-dropdown-header-padding-y: .5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-toggle:after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle:after{display:none}.dropstart .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty:after{margin-left:0}.dropstart .dropdown-toggle:before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius, 0)}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #343a40;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg: rgba(255, 255, 255, .15);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #0d6efd;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-header-color: #adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto}.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn,.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after,.dropend .dropdown-toggle-split:after{margin-left:0}.dropstart .dropdown-toggle-split:before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn~.btn,.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:none;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: var(--bs-border-width);--bs-nav-tabs-border-color: var(--bs-border-color);--bs-nav-tabs-border-radius: var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color: var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius: var(--bs-border-radius);--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #0d6efd}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: .125rem;--bs-nav-underline-link-active-color: var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:hover,.nav-underline .nav-link:focus{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill>.nav-link,.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified>.nav-link,.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x: 0;--bs-navbar-padding-y: .5rem;--bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), .65);--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), .8);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), .3);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y: .3125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.25rem;--bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x: .5rem;--bs-navbar-toggler-padding-y: .25rem;--bs-navbar-toggler-padding-x: .75rem;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), .15);--bs-navbar-toggler-border-radius: var(--bs-border-radius);--bs-navbar-toggler-focus-width: .25rem;--bs-navbar-toggler-transition: box-shadow .15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media (min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color: rgba(255, 255, 255, .55);--bs-navbar-hover-color: rgba(255, 255, 255, .75);--bs-navbar-disabled-color: rgba(255, 255, 255, .25);--bs-navbar-active-color: #fff;--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff;--bs-navbar-toggler-border-color: rgba(255, 255, 255, .1);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y: 1rem;--bs-card-spacer-x: 1rem;--bs-card-title-spacer-y: .5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width: var(--bs-border-width);--bs-card-border-color: var(--bs-border-color-translucent);--bs-card-border-radius: var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y: .5rem;--bs-card-cap-padding-x: 1rem;--bs-card-cap-bg: rgba(var(--bs-body-color-rgb), .03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: var(--bs-body-bg);--bs-card-img-overlay-padding: 1rem;--bs-card-group-margin: .75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width: 576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer{border-bottom-left-radius:0}}.accordion{--bs-accordion-color: var(--bs-body-color);--bs-accordion-bg: var(--bs-body-bg);--bs-accordion-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, border-radius .15s ease;--bs-accordion-border-color: var(--bs-border-color);--bs-accordion-border-width: var(--bs-border-width);--bs-accordion-border-radius: var(--bs-border-radius);--bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: var(--bs-body-color);--bs-accordion-btn-bg: var(--bs-accordion-bg);--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform .2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #86b7fe;--bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: var(--bs-primary-text-emphasis);--bs-accordion-active-bg: var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed):after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button:after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion: reduce){.accordion-button:after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme=dark] .accordion-button:after{--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: var(--bs-secondary-color);--bs-breadcrumb-item-padding-x: .5rem;--bs-breadcrumb-item-active-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item:before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/")}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size: 1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size: 1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size: .875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x: .65em;--bs-badge-padding-y: .35em;--bs-badge-font-size: .75em;--bs-badge-font-weight: 700;--bs-badge-color: #fff;--bs-badge-border-radius: var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 1rem;--bs-alert-padding-y: 1rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius: var(--bs-border-radius);--bs-alert-link-color: inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{--bs-alert-color: var(--bs-primary-text-emphasis);--bs-alert-bg: var(--bs-primary-bg-subtle);--bs-alert-border-color: var(--bs-primary-border-subtle);--bs-alert-link-color: var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color: var(--bs-secondary-text-emphasis);--bs-alert-bg: var(--bs-secondary-bg-subtle);--bs-alert-border-color: var(--bs-secondary-border-subtle);--bs-alert-link-color: var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color: var(--bs-success-text-emphasis);--bs-alert-bg: var(--bs-success-bg-subtle);--bs-alert-border-color: var(--bs-success-border-subtle);--bs-alert-link-color: var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color: var(--bs-info-text-emphasis);--bs-alert-bg: var(--bs-info-bg-subtle);--bs-alert-border-color: var(--bs-info-border-subtle);--bs-alert-link-color: var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color: var(--bs-warning-text-emphasis);--bs-alert-bg: var(--bs-warning-bg-subtle);--bs-alert-border-color: var(--bs-warning-border-subtle);--bs-alert-link-color: var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color: var(--bs-danger-text-emphasis);--bs-alert-bg: var(--bs-danger-bg-subtle);--bs-alert-border-color: var(--bs-danger-border-subtle);--bs-alert-link-color: var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color: var(--bs-light-text-emphasis);--bs-alert-bg: var(--bs-light-bg-subtle);--bs-alert-border-color: var(--bs-light-border-subtle);--bs-alert-link-color: var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color: var(--bs-dark-text-emphasis);--bs-alert-bg: var(--bs-dark-bg-subtle);--bs-alert-border-color: var(--bs-dark-border-subtle);--bs-alert-link-color: var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height: 1rem;--bs-progress-font-size: .75rem;--bs-progress-bg: var(--bs-secondary-bg);--bs-progress-border-radius: var(--bs-border-radius);--bs-progress-box-shadow: var(--bs-box-shadow-inset);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #0d6efd;--bs-progress-bar-transition: width .6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: var(--bs-body-color);--bs-list-group-bg: var(--bs-body-bg);--bs-list-group-border-color: var(--bs-border-color);--bs-list-group-border-width: var(--bs-border-width);--bs-list-group-border-radius: var(--bs-border-radius);--bs-list-group-item-padding-x: 1rem;--bs-list-group-item-padding-y: .5rem;--bs-list-group-action-color: var(--bs-secondary-color);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-tertiary-bg);--bs-list-group-action-active-color: var(--bs-body-color);--bs-list-group-action-active-bg: var(--bs-secondary-bg);--bs-list-group-disabled-color: var(--bs-secondary-color);--bs-list-group-disabled-bg: var(--bs-body-bg);--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #0d6efd;--bs-list-group-active-border-color: #0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item:before{content:counters(section,".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width: 576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--bs-list-group-color: var(--bs-primary-text-emphasis);--bs-list-group-bg: var(--bs-primary-bg-subtle);--bs-list-group-border-color: var(--bs-primary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-primary-border-subtle);--bs-list-group-active-color: var(--bs-primary-bg-subtle);--bs-list-group-active-bg: var(--bs-primary-text-emphasis);--bs-list-group-active-border-color: var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color: var(--bs-secondary-text-emphasis);--bs-list-group-bg: var(--bs-secondary-bg-subtle);--bs-list-group-border-color: var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);--bs-list-group-active-color: var(--bs-secondary-bg-subtle);--bs-list-group-active-bg: var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color: var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color: var(--bs-success-text-emphasis);--bs-list-group-bg: var(--bs-success-bg-subtle);--bs-list-group-border-color: var(--bs-success-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-success-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-success-border-subtle);--bs-list-group-active-color: var(--bs-success-bg-subtle);--bs-list-group-active-bg: var(--bs-success-text-emphasis);--bs-list-group-active-border-color: var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color: var(--bs-info-text-emphasis);--bs-list-group-bg: var(--bs-info-bg-subtle);--bs-list-group-border-color: var(--bs-info-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-info-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-info-border-subtle);--bs-list-group-active-color: var(--bs-info-bg-subtle);--bs-list-group-active-bg: var(--bs-info-text-emphasis);--bs-list-group-active-border-color: var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color: var(--bs-warning-text-emphasis);--bs-list-group-bg: var(--bs-warning-bg-subtle);--bs-list-group-border-color: var(--bs-warning-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-warning-border-subtle);--bs-list-group-active-color: var(--bs-warning-bg-subtle);--bs-list-group-active-bg: var(--bs-warning-text-emphasis);--bs-list-group-active-border-color: var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color: var(--bs-danger-text-emphasis);--bs-list-group-bg: var(--bs-danger-bg-subtle);--bs-list-group-border-color: var(--bs-danger-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-danger-border-subtle);--bs-list-group-active-color: var(--bs-danger-bg-subtle);--bs-list-group-active-bg: var(--bs-danger-text-emphasis);--bs-list-group-active-border-color: var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color: var(--bs-light-text-emphasis);--bs-list-group-bg: var(--bs-light-bg-subtle);--bs-list-group-border-color: var(--bs-light-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-light-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-light-border-subtle);--bs-list-group-active-color: var(--bs-light-bg-subtle);--bs-list-group-active-bg: var(--bs-light-text-emphasis);--bs-list-group-active-border-color: var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color: var(--bs-dark-text-emphasis);--bs-list-group-bg: var(--bs-dark-bg-subtle);--bs-list-group-border-color: var(--bs-dark-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-dark-border-subtle);--bs-list-group-active-color: var(--bs-dark-bg-subtle);--bs-list-group-active-bg: var(--bs-dark-text-emphasis);--bs-list-group-active-border-color: var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity: .5;--bs-btn-close-hover-opacity: .75;--bs-btn-close-focus-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: .25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close:disabled,.btn-close.disabled{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white,[data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: .75rem;--bs-toast-padding-y: .5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 350px;--bs-toast-font-size: .875rem;--bs-toast-color: ;--bs-toast-bg: rgba(var(--bs-body-bg-rgb), .85);--bs-toast-border-width: var(--bs-border-width);--bs-toast-border-color: var(--bs-border-color-translucent);--bs-toast-border-radius: var(--bs-border-radius);--bs-toast-box-shadow: var(--bs-box-shadow);--bs-toast-header-color: var(--bs-secondary-color);--bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), .85);--bs-toast-header-border-color: var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 1rem;--bs-modal-margin: .5rem;--bs-modal-color: ;--bs-modal-bg: var(--bs-body-bg);--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: var(--bs-border-width);--bs-modal-border-radius: var(--bs-border-radius-lg);--bs-modal-box-shadow: var(--bs-box-shadow-sm);--bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x: 1rem;--bs-modal-header-padding-y: 1rem;--bs-modal-header-padding: 1rem 1rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: var(--bs-border-width);--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: .5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #000;--bs-backdrop-opacity: .5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width: 576px){.modal{--bs-modal-margin: 1.75rem;--bs-modal-box-shadow: var(--bs-box-shadow)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media (min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media (min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header,.modal-fullscreen .modal-footer{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header,.modal-fullscreen-sm-down .modal-footer{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header,.modal-fullscreen-md-down .modal-footer{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header,.modal-fullscreen-lg-down .modal-footer{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header,.modal-fullscreen-xl-down .modal-footer{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header,.modal-fullscreen-xxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 200px;--bs-tooltip-padding-x: .5rem;--bs-tooltip-padding-y: .25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size: .875rem;--bs-tooltip-color: var(--bs-body-bg);--bs-tooltip-bg: var(--bs-emphasis-color);--bs-tooltip-border-radius: var(--bs-border-radius);--bs-tooltip-opacity: .9;--bs-tooltip-arrow-width: .8rem;--bs-tooltip-arrow-height: .4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow{bottom:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-top .tooltip-arrow:before,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow:before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow{top:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-bottom .tooltip-arrow:before,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow:before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size: .875rem;--bs-popover-bg: var(--bs-body-bg);--bs-popover-border-width: var(--bs-border-width);--bs-popover-border-color: var(--bs-border-color-translucent);--bs-popover-border-radius: var(--bs-border-radius-lg);--bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow: var(--bs-box-shadow);--bs-popover-header-padding-x: 1rem;--bs-popover-header-padding-y: .5rem;--bs-popover-header-font-size: 1rem;--bs-popover-header-color: inherit;--bs-popover-header-bg: var(--bs-secondary-bg);--bs-popover-body-padding-x: 1rem;--bs-popover-body-padding-y: 1rem;--bs-popover-body-color: var(--bs-body-color);--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: .5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow:before,.popover .popover-arrow:after{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow:before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-top>.popover-arrow:before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow:before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-end>.popover-arrow:before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow:before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow:before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-bottom .popover-header:before,.bs-popover-auto[data-popper-placement^=bottom] .popover-header:before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow:before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow:before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end{transform:translate(100%)}.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start{transform:translate(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end{z-index:1;opacity:1}.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion: reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme=dark] .carousel .carousel-control-prev-icon,[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon,[data-bs-theme=dark].carousel .carousel-control-next-icon{filter:invert(1) grayscale(100)}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark] .carousel .carousel-caption,[data-bs-theme=dark].carousel .carousel-caption{color:#000}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-border-width: .25em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: .2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media (prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 1rem;--bs-offcanvas-padding-y: 1rem;--bs-offcanvas-color: var(--bs-body-color);--bs-offcanvas-bg: var(--bs-body-bg);--bs-offcanvas-border-width: var(--bs-border-width);--bs-offcanvas-border-color: var(--bs-border-color-translucent);--bs-offcanvas-box-shadow: var(--bs-box-shadow-sm);--bs-offcanvas-transition: transform .3s ease-in-out;--bs-offcanvas-title-line-height: 1.5}@media (max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 575.98px) and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media (max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding){transform:none}.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show{visibility:visible}}@media (min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 767.98px) and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media (max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.showing,.offcanvas-md.show:not(.hiding){transform:none}.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show{visibility:visible}}@media (min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 991.98px) and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media (max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding){transform:none}.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show{visibility:visible}}@media (min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media (max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding){transform:none}.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show{visibility:visible}}@media (min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media (max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding){transform:none}.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show{visibility:visible}}@media (min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin-top:calc(-.5 * var(--bs-offcanvas-padding-y));margin-right:calc(-.5 * var(--bs-offcanvas-padding-x));margin-bottom:calc(-.5 * var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn:before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{to{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.clearfix:after{display:block;clear:both;content:""}.text-bg-primary{color:#fff!important;background-color:RGBA(var(--bs-primary-rgb),var(--bs-bg-opacity, 1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(var(--bs-secondary-rgb),var(--bs-bg-opacity, 1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(var(--bs-success-rgb),var(--bs-bg-opacity, 1))!important}.text-bg-info{color:#000!important;background-color:RGBA(var(--bs-info-rgb),var(--bs-bg-opacity, 1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity, 1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(var(--bs-danger-rgb),var(--bs-bg-opacity, 1))!important}.text-bg-light{color:#000!important;background-color:RGBA(var(--bs-light-rgb),var(--bs-bg-opacity, 1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(var(--bs-dark-rgb),var(--bs-bg-opacity, 1))!important}.link-primary{color:RGBA(var(--bs-primary-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity, 1))!important}.link-primary:hover,.link-primary:focus{color:RGBA(10,88,202,var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity, 1))!important}.link-secondary{color:RGBA(var(--bs-secondary-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity, 1))!important}.link-secondary:hover,.link-secondary:focus{color:RGBA(86,94,100,var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity, 1))!important}.link-success{color:RGBA(var(--bs-success-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity, 1))!important}.link-success:hover,.link-success:focus{color:RGBA(20,108,67,var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity, 1))!important}.link-info{color:RGBA(var(--bs-info-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity, 1))!important}.link-info:hover,.link-info:focus{color:RGBA(61,213,243,var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity, 1))!important}.link-warning{color:RGBA(var(--bs-warning-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity, 1))!important}.link-warning:hover,.link-warning:focus{color:RGBA(255,205,57,var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity, 1))!important}.link-danger{color:RGBA(var(--bs-danger-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity, 1))!important}.link-danger:hover,.link-danger:focus{color:RGBA(176,42,55,var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity, 1))!important}.link-light{color:RGBA(var(--bs-light-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity, 1))!important}.link-light:hover,.link-light:focus{color:RGBA(249,250,251,var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity, 1))!important}.link-dark{color:RGBA(var(--bs-dark-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity, 1))!important}.link-dark:hover,.link-dark:focus{color:RGBA(26,30,33,var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity, 1))!important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity, 1))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity, 1))!important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity, .75))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity, .75))!important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity, .5));text-underline-offset:.25em;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media (prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio:before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: 75%}.ratio-16x9{--bs-aspect-ratio: 56.25%}.ratio-21x9{--bs-aspect-ratio: 42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.object-fit-contain{object-fit:contain!important}.object-fit-cover{object-fit:cover!important}.object-fit-fill{object-fit:fill!important}.object-fit-scale{object-fit:scale-down!important}.object-fit-none{object-fit:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-inline-grid{display:inline-grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:var(--bs-box-shadow)!important}.shadow-sm{box-shadow:var(--bs-box-shadow-sm)!important}.shadow-lg{box-shadow:var(--bs-box-shadow-lg)!important}.shadow-none{box-shadow:none!important}.focus-ring-primary{--bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translate(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb),var(--bs-border-opacity))!important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb),var(--bs-border-opacity))!important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb),var(--bs-border-opacity))!important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb),var(--bs-border-opacity))!important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-black{--bs-border-opacity: 1;border-color:rgba(var(--bs-black-rgb),var(--bs-border-opacity))!important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--bs-success-border-subtle)!important}.border-info-subtle{border-color:var(--bs-info-border-subtle)!important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle)!important}.border-light-subtle{border-color:var(--bs-light-border-subtle)!important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.border-opacity-10{--bs-border-opacity: .1}.border-opacity-25{--bs-border-opacity: .25}.border-opacity-50{--bs-border-opacity: .5}.border-opacity-75{--bs-border-opacity: .75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.25rem!important}.row-gap-2{row-gap:.5rem!important}.row-gap-3{row-gap:1rem!important}.row-gap-4{row-gap:1.5rem!important}.row-gap-5{row-gap:3rem!important}.column-gap-0{column-gap:0!important}.column-gap-1{column-gap:.25rem!important}.column-gap-2{column-gap:.5rem!important}.column-gap-3{column-gap:1rem!important}.column-gap-4{column-gap:1.5rem!important}.column-gap-5{column-gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity: 1;color:var(--bs-secondary-color)!important}.text-black-50{--bs-text-opacity: 1;color:#00000080!important}.text-white-50{--bs-text-opacity: 1;color:#ffffff80!important}.text-body-secondary{--bs-text-opacity: 1;color:var(--bs-secondary-color)!important}.text-body-tertiary{--bs-text-opacity: 1;color:var(--bs-tertiary-color)!important}.text-body-emphasis{--bs-text-opacity: 1;color:var(--bs-emphasis-color)!important}.text-reset{--bs-text-opacity: 1;color:inherit!important}.text-opacity-25{--bs-text-opacity: .25}.text-opacity-50{--bs-text-opacity: .5}.text-opacity-75{--bs-text-opacity: .75}.text-opacity-100{--bs-text-opacity: 1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--bs-success-text-emphasis)!important}.text-info-emphasis{color:var(--bs-info-text-emphasis)!important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis)!important}.text-light-emphasis{color:var(--bs-light-text-emphasis)!important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis)!important}.link-opacity-10,.link-opacity-10-hover:hover{--bs-link-opacity: .1}.link-opacity-25,.link-opacity-25-hover:hover{--bs-link-opacity: .25}.link-opacity-50,.link-opacity-50-hover:hover{--bs-link-opacity: .5}.link-opacity-75,.link-opacity-75-hover:hover{--bs-link-opacity: .75}.link-opacity-100,.link-opacity-100-hover:hover{--bs-link-opacity: 1}.link-offset-1,.link-offset-1-hover:hover{text-underline-offset:.125em!important}.link-offset-2,.link-offset-2-hover:hover{text-underline-offset:.25em!important}.link-offset-3,.link-offset-3-hover:hover{text-underline-offset:.375em!important}.link-underline-primary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-secondary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-success{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important}.link-underline-info{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important}.link-underline-warning{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important}.link-underline-danger{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important}.link-underline-light{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important}.link-underline-dark{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important}.link-underline{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity, 1))!important}.link-underline-opacity-0,.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity: 0}.link-underline-opacity-10,.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity: .1}.link-underline-opacity-25,.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity: .25}.link-underline-opacity-50,.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity: .5}.link-underline-opacity-75,.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity: .75}.link-underline-opacity-100,.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity: 1}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity: 1;background-color:transparent!important}.bg-body-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-bg-rgb),var(--bs-bg-opacity))!important}.bg-body-tertiary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity))!important}.bg-opacity-10{--bs-bg-opacity: .1}.bg-opacity-25{--bs-bg-opacity: .25}.bg-opacity-50{--bs-bg-opacity: .5}.bg-opacity-75{--bs-bg-opacity: .75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle)!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-xxl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.rounded-top{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl)!important;border-top-right-radius:var(--bs-border-radius-xxl)!important}.rounded-top-circle{border-top-left-radius:50%!important;border-top-right-radius:50%!important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill)!important;border-top-right-radius:var(--bs-border-radius-pill)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-right-radius:var(--bs-border-radius-xxl)!important}.rounded-end-circle{border-top-right-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill)!important;border-bottom-right-radius:var(--bs-border-radius-pill)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-left-radius:var(--bs-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-right-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill)!important;border-bottom-left-radius:var(--bs-border-radius-pill)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl)!important;border-top-left-radius:var(--bs-border-radius-xxl)!important}.rounded-start-circle{border-bottom-left-radius:50%!important;border-top-left-radius:50%!important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill)!important;border-top-left-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width: 576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.object-fit-sm-contain{object-fit:contain!important}.object-fit-sm-cover{object-fit:cover!important}.object-fit-sm-fill{object-fit:fill!important}.object-fit-sm-scale{object-fit:scale-down!important}.object-fit-sm-none{object-fit:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-inline-grid{display:inline-grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.25rem!important}.row-gap-sm-2{row-gap:.5rem!important}.row-gap-sm-3{row-gap:1rem!important}.row-gap-sm-4{row-gap:1.5rem!important}.row-gap-sm-5{row-gap:3rem!important}.column-gap-sm-0{column-gap:0!important}.column-gap-sm-1{column-gap:.25rem!important}.column-gap-sm-2{column-gap:.5rem!important}.column-gap-sm-3{column-gap:1rem!important}.column-gap-sm-4{column-gap:1.5rem!important}.column-gap-sm-5{column-gap:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width: 768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.object-fit-md-contain{object-fit:contain!important}.object-fit-md-cover{object-fit:cover!important}.object-fit-md-fill{object-fit:fill!important}.object-fit-md-scale{object-fit:scale-down!important}.object-fit-md-none{object-fit:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-inline-grid{display:inline-grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.25rem!important}.row-gap-md-2{row-gap:.5rem!important}.row-gap-md-3{row-gap:1rem!important}.row-gap-md-4{row-gap:1.5rem!important}.row-gap-md-5{row-gap:3rem!important}.column-gap-md-0{column-gap:0!important}.column-gap-md-1{column-gap:.25rem!important}.column-gap-md-2{column-gap:.5rem!important}.column-gap-md-3{column-gap:1rem!important}.column-gap-md-4{column-gap:1.5rem!important}.column-gap-md-5{column-gap:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width: 992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.object-fit-lg-contain{object-fit:contain!important}.object-fit-lg-cover{object-fit:cover!important}.object-fit-lg-fill{object-fit:fill!important}.object-fit-lg-scale{object-fit:scale-down!important}.object-fit-lg-none{object-fit:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-inline-grid{display:inline-grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.25rem!important}.row-gap-lg-2{row-gap:.5rem!important}.row-gap-lg-3{row-gap:1rem!important}.row-gap-lg-4{row-gap:1.5rem!important}.row-gap-lg-5{row-gap:3rem!important}.column-gap-lg-0{column-gap:0!important}.column-gap-lg-1{column-gap:.25rem!important}.column-gap-lg-2{column-gap:.5rem!important}.column-gap-lg-3{column-gap:1rem!important}.column-gap-lg-4{column-gap:1.5rem!important}.column-gap-lg-5{column-gap:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width: 1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.object-fit-xl-contain{object-fit:contain!important}.object-fit-xl-cover{object-fit:cover!important}.object-fit-xl-fill{object-fit:fill!important}.object-fit-xl-scale{object-fit:scale-down!important}.object-fit-xl-none{object-fit:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-inline-grid{display:inline-grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.25rem!important}.row-gap-xl-2{row-gap:.5rem!important}.row-gap-xl-3{row-gap:1rem!important}.row-gap-xl-4{row-gap:1.5rem!important}.row-gap-xl-5{row-gap:3rem!important}.column-gap-xl-0{column-gap:0!important}.column-gap-xl-1{column-gap:.25rem!important}.column-gap-xl-2{column-gap:.5rem!important}.column-gap-xl-3{column-gap:1rem!important}.column-gap-xl-4{column-gap:1.5rem!important}.column-gap-xl-5{column-gap:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width: 1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.object-fit-xxl-contain{object-fit:contain!important}.object-fit-xxl-cover{object-fit:cover!important}.object-fit-xxl-fill{object-fit:fill!important}.object-fit-xxl-scale{object-fit:scale-down!important}.object-fit-xxl-none{object-fit:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-inline-grid{display:inline-grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.25rem!important}.row-gap-xxl-2{row-gap:.5rem!important}.row-gap-xxl-3{row-gap:1rem!important}.row-gap-xxl-4{row-gap:1.5rem!important}.row-gap-xxl-5{row-gap:3rem!important}.column-gap-xxl-0{column-gap:0!important}.column-gap-xxl-1{column-gap:.25rem!important}.column-gap-xxl-2{column-gap:.5rem!important}.column-gap-xxl-3{column-gap:1rem!important}.column-gap-xxl-4{column-gap:1.5rem!important}.column-gap-xxl-5{column-gap:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width: 1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-inline-grid{display:inline-grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}a{text-decoration:none}a:hover{text-decoration:underline} diff --git a/public/build/assets/app-front-48c01c04.css.gz b/public/build/assets/app-front-48c01c04.css.gz new file mode 100644 index 0000000..86c1bb8 Binary files /dev/null and b/public/build/assets/app-front-48c01c04.css.gz differ diff --git a/public/build/assets/app-front-948dc8d8.js.gz b/public/build/assets/app-front-948dc8d8.js.gz deleted file mode 100644 index 18d2b2a..0000000 Binary files a/public/build/assets/app-front-948dc8d8.js.gz and /dev/null differ diff --git a/public/build/assets/app-front-948dc8d8.js b/public/build/assets/app-front-d35e891f.js similarity index 99% rename from public/build/assets/app-front-948dc8d8.js rename to public/build/assets/app-front-d35e891f.js index 56461dc..caeae47 100644 --- a/public/build/assets/app-front-948dc8d8.js +++ b/public/build/assets/app-front-d35e891f.js @@ -1,4 +1,4 @@ -import{_ as hi,o as di,c as fi,a as pi,b as _i,p as mi,d as gi,e as Ei,f as vi,g as bi,v as Ai,Z as is,h as Ti}from"./vue-a36422cb.js";var L="top",x="bottom",R="right",I="left",pe="auto",Pt=[L,x,R,I],_t="start",Ct="end",rs="clippingParents",Ge="viewport",Tt="popper",os="reference",Be=Pt.reduce(function(n,t){return n.concat([t+"-"+_t,t+"-"+Ct])},[]),qe=[].concat(Pt,[pe]).reduce(function(n,t){return n.concat([t,t+"-"+_t,t+"-"+Ct])},[]),as="beforeRead",cs="read",ls="afterRead",us="beforeMain",hs="main",ds="afterMain",fs="beforeWrite",ps="write",_s="afterWrite",ms=[as,cs,ls,us,hs,ds,fs,ps,_s];function z(n){return n?(n.nodeName||"").toLowerCase():null}function k(n){if(n==null)return window;if(n.toString()!=="[object Window]"){var t=n.ownerDocument;return t&&t.defaultView||window}return n}function mt(n){var t=k(n).Element;return n instanceof t||n instanceof Element}function V(n){var t=k(n).HTMLElement;return n instanceof t||n instanceof HTMLElement}function Xe(n){if(typeof ShadowRoot>"u")return!1;var t=k(n).ShadowRoot;return n instanceof t||n instanceof ShadowRoot}function yi(n){var t=n.state;Object.keys(t.elements).forEach(function(e){var s=t.styles[e]||{},i=t.attributes[e]||{},r=t.elements[e];!V(r)||!z(r)||(Object.assign(r.style,s),Object.keys(i).forEach(function(o){var a=i[o];a===!1?r.removeAttribute(o):r.setAttribute(o,a===!0?"":a)}))})}function wi(n){var t=n.state,e={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,e.popper),t.styles=e,t.elements.arrow&&Object.assign(t.elements.arrow.style,e.arrow),function(){Object.keys(t.elements).forEach(function(s){var i=t.elements[s],r=t.attributes[s]||{},o=Object.keys(t.styles.hasOwnProperty(s)?t.styles[s]:e[s]),a=o.reduce(function(l,h){return l[h]="",l},{});!V(i)||!z(i)||(Object.assign(i.style,a),Object.keys(r).forEach(function(l){i.removeAttribute(l)}))})}}const Qe={name:"applyStyles",enabled:!0,phase:"write",fn:yi,effect:wi,requires:["computeStyles"]};function Y(n){return n.split("-")[0]}var pt=Math.max,ue=Math.min,Nt=Math.round;function je(){var n=navigator.userAgentData;return n!=null&&n.brands&&Array.isArray(n.brands)?n.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function gs(){return!/^((?!chrome|android).)*safari/i.test(je())}function St(n,t,e){t===void 0&&(t=!1),e===void 0&&(e=!1);var s=n.getBoundingClientRect(),i=1,r=1;t&&V(n)&&(i=n.offsetWidth>0&&Nt(s.width)/n.offsetWidth||1,r=n.offsetHeight>0&&Nt(s.height)/n.offsetHeight||1);var o=mt(n)?k(n):window,a=o.visualViewport,l=!gs()&&e,h=(s.left+(l&&a?a.offsetLeft:0))/i,u=(s.top+(l&&a?a.offsetTop:0))/r,p=s.width/i,_=s.height/r;return{width:p,height:_,top:u,right:h+p,bottom:u+_,left:h,x:h,y:u}}function Ze(n){var t=St(n),e=n.offsetWidth,s=n.offsetHeight;return Math.abs(t.width-e)<=1&&(e=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:n.offsetLeft,y:n.offsetTop,width:e,height:s}}function Es(n,t){var e=t.getRootNode&&t.getRootNode();if(n.contains(t))return!0;if(e&&Xe(e)){var s=t;do{if(s&&n.isSameNode(s))return!0;s=s.parentNode||s.host}while(s)}return!1}function X(n){return k(n).getComputedStyle(n)}function Oi(n){return["table","td","th"].indexOf(z(n))>=0}function st(n){return((mt(n)?n.ownerDocument:n.document)||window.document).documentElement}function _e(n){return z(n)==="html"?n:n.assignedSlot||n.parentNode||(Xe(n)?n.host:null)||st(n)}function Tn(n){return!V(n)||X(n).position==="fixed"?null:n.offsetParent}function Ci(n){var t=/firefox/i.test(je()),e=/Trident/i.test(je());if(e&&V(n)){var s=X(n);if(s.position==="fixed")return null}var i=_e(n);for(Xe(i)&&(i=i.host);V(i)&&["html","body"].indexOf(z(i))<0;){var r=X(i);if(r.transform!=="none"||r.perspective!=="none"||r.contain==="paint"||["transform","perspective"].indexOf(r.willChange)!==-1||t&&r.willChange==="filter"||t&&r.filter&&r.filter!=="none")return i;i=i.parentNode}return null}function Kt(n){for(var t=k(n),e=Tn(n);e&&Oi(e)&&X(e).position==="static";)e=Tn(e);return e&&(z(e)==="html"||z(e)==="body"&&X(e).position==="static")?t:e||Ci(n)||t}function Je(n){return["top","bottom"].indexOf(n)>=0?"x":"y"}function Bt(n,t,e){return pt(n,ue(t,e))}function Ni(n,t,e){var s=Bt(n,t,e);return s>e?e:s}function vs(){return{top:0,right:0,bottom:0,left:0}}function bs(n){return Object.assign({},vs(),n)}function As(n,t){return t.reduce(function(e,s){return e[s]=n,e},{})}var Si=function(t,e){return t=typeof t=="function"?t(Object.assign({},e.rects,{placement:e.placement})):t,bs(typeof t!="number"?t:As(t,Pt))};function Di(n){var t,e=n.state,s=n.name,i=n.options,r=e.elements.arrow,o=e.modifiersData.popperOffsets,a=Y(e.placement),l=Je(a),h=[I,R].indexOf(a)>=0,u=h?"height":"width";if(!(!r||!o)){var p=Si(i.padding,e),_=Ze(r),f=l==="y"?L:I,A=l==="y"?x:R,m=e.rects.reference[u]+e.rects.reference[l]-o[l]-e.rects.popper[u],E=o[l]-e.rects.reference[l],T=Kt(r),w=T?l==="y"?T.clientHeight||0:T.clientWidth||0:0,O=m/2-E/2,g=p[f],v=w-_[u]-p[A],b=w/2-_[u]/2+O,y=Bt(g,b,v),S=l;e.modifiersData[s]=(t={},t[S]=y,t.centerOffset=y-b,t)}}function $i(n){var t=n.state,e=n.options,s=e.element,i=s===void 0?"[data-popper-arrow]":s;i!=null&&(typeof i=="string"&&(i=t.elements.popper.querySelector(i),!i)||Es(t.elements.popper,i)&&(t.elements.arrow=i))}const Ts={name:"arrow",enabled:!0,phase:"main",fn:Di,effect:$i,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Dt(n){return n.split("-")[1]}var Li={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Ii(n,t){var e=n.x,s=n.y,i=t.devicePixelRatio||1;return{x:Nt(e*i)/i||0,y:Nt(s*i)/i||0}}function yn(n){var t,e=n.popper,s=n.popperRect,i=n.placement,r=n.variation,o=n.offsets,a=n.position,l=n.gpuAcceleration,h=n.adaptive,u=n.roundOffsets,p=n.isFixed,_=o.x,f=_===void 0?0:_,A=o.y,m=A===void 0?0:A,E=typeof u=="function"?u({x:f,y:m}):{x:f,y:m};f=E.x,m=E.y;var T=o.hasOwnProperty("x"),w=o.hasOwnProperty("y"),O=I,g=L,v=window;if(h){var b=Kt(e),y="clientHeight",S="clientWidth";if(b===k(e)&&(b=st(e),X(b).position!=="static"&&a==="absolute"&&(y="scrollHeight",S="scrollWidth")),b=b,i===L||(i===I||i===R)&&r===Ct){g=x;var N=p&&b===v&&v.visualViewport?v.visualViewport.height:b[y];m-=N-s.height,m*=l?1:-1}if(i===I||(i===L||i===x)&&r===Ct){O=R;var C=p&&b===v&&v.visualViewport?v.visualViewport.width:b[S];f-=C-s.width,f*=l?1:-1}}var D=Object.assign({position:a},h&&Li),j=u===!0?Ii({x:f,y:m},k(e)):{x:f,y:m};if(f=j.x,m=j.y,l){var $;return Object.assign({},D,($={},$[g]=w?"0":"",$[O]=T?"0":"",$.transform=(v.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",$))}return Object.assign({},D,(t={},t[g]=w?m+"px":"",t[O]=T?f+"px":"",t.transform="",t))}function Pi(n){var t=n.state,e=n.options,s=e.gpuAcceleration,i=s===void 0?!0:s,r=e.adaptive,o=r===void 0?!0:r,a=e.roundOffsets,l=a===void 0?!0:a,h={placement:Y(t.placement),variation:Dt(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,yn(Object.assign({},h,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,yn(Object.assign({},h,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const tn={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Pi,data:{}};var te={passive:!0};function Mi(n){var t=n.state,e=n.instance,s=n.options,i=s.scroll,r=i===void 0?!0:i,o=s.resize,a=o===void 0?!0:o,l=k(t.elements.popper),h=[].concat(t.scrollParents.reference,t.scrollParents.popper);return r&&h.forEach(function(u){u.addEventListener("scroll",e.update,te)}),a&&l.addEventListener("resize",e.update,te),function(){r&&h.forEach(function(u){u.removeEventListener("scroll",e.update,te)}),a&&l.removeEventListener("resize",e.update,te)}}const en={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Mi,data:{}};var xi={left:"right",right:"left",bottom:"top",top:"bottom"};function ae(n){return n.replace(/left|right|bottom|top/g,function(t){return xi[t]})}var Ri={start:"end",end:"start"};function wn(n){return n.replace(/start|end/g,function(t){return Ri[t]})}function nn(n){var t=k(n),e=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:e,scrollTop:s}}function sn(n){return St(st(n)).left+nn(n).scrollLeft}function ki(n,t){var e=k(n),s=st(n),i=e.visualViewport,r=s.clientWidth,o=s.clientHeight,a=0,l=0;if(i){r=i.width,o=i.height;var h=gs();(h||!h&&t==="fixed")&&(a=i.offsetLeft,l=i.offsetTop)}return{width:r,height:o,x:a+sn(n),y:l}}function Vi(n){var t,e=st(n),s=nn(n),i=(t=n.ownerDocument)==null?void 0:t.body,r=pt(e.scrollWidth,e.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),o=pt(e.scrollHeight,e.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),a=-s.scrollLeft+sn(n),l=-s.scrollTop;return X(i||e).direction==="rtl"&&(a+=pt(e.clientWidth,i?i.clientWidth:0)-r),{width:r,height:o,x:a,y:l}}function rn(n){var t=X(n),e=t.overflow,s=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(e+i+s)}function ys(n){return["html","body","#document"].indexOf(z(n))>=0?n.ownerDocument.body:V(n)&&rn(n)?n:ys(_e(n))}function jt(n,t){var e;t===void 0&&(t=[]);var s=ys(n),i=s===((e=n.ownerDocument)==null?void 0:e.body),r=k(s),o=i?[r].concat(r.visualViewport||[],rn(s)?s:[]):s,a=t.concat(o);return i?a:a.concat(jt(_e(o)))}function Fe(n){return Object.assign({},n,{left:n.x,top:n.y,right:n.x+n.width,bottom:n.y+n.height})}function Hi(n,t){var e=St(n,!1,t==="fixed");return e.top=e.top+n.clientTop,e.left=e.left+n.clientLeft,e.bottom=e.top+n.clientHeight,e.right=e.left+n.clientWidth,e.width=n.clientWidth,e.height=n.clientHeight,e.x=e.left,e.y=e.top,e}function On(n,t,e){return t===Ge?Fe(ki(n,e)):mt(t)?Hi(t,e):Fe(Vi(st(n)))}function Wi(n){var t=jt(_e(n)),e=["absolute","fixed"].indexOf(X(n).position)>=0,s=e&&V(n)?Kt(n):n;return mt(s)?t.filter(function(i){return mt(i)&&Es(i,s)&&z(i)!=="body"}):[]}function Bi(n,t,e,s){var i=t==="clippingParents"?Wi(n):[].concat(t),r=[].concat(i,[e]),o=r[0],a=r.reduce(function(l,h){var u=On(n,h,s);return l.top=pt(u.top,l.top),l.right=ue(u.right,l.right),l.bottom=ue(u.bottom,l.bottom),l.left=pt(u.left,l.left),l},On(n,o,s));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function ws(n){var t=n.reference,e=n.element,s=n.placement,i=s?Y(s):null,r=s?Dt(s):null,o=t.x+t.width/2-e.width/2,a=t.y+t.height/2-e.height/2,l;switch(i){case L:l={x:o,y:t.y-e.height};break;case x:l={x:o,y:t.y+t.height};break;case R:l={x:t.x+t.width,y:a};break;case I:l={x:t.x-e.width,y:a};break;default:l={x:t.x,y:t.y}}var h=i?Je(i):null;if(h!=null){var u=h==="y"?"height":"width";switch(r){case _t:l[h]=l[h]-(t[u]/2-e[u]/2);break;case Ct:l[h]=l[h]+(t[u]/2-e[u]/2);break}}return l}function $t(n,t){t===void 0&&(t={});var e=t,s=e.placement,i=s===void 0?n.placement:s,r=e.strategy,o=r===void 0?n.strategy:r,a=e.boundary,l=a===void 0?rs:a,h=e.rootBoundary,u=h===void 0?Ge:h,p=e.elementContext,_=p===void 0?Tt:p,f=e.altBoundary,A=f===void 0?!1:f,m=e.padding,E=m===void 0?0:m,T=bs(typeof E!="number"?E:As(E,Pt)),w=_===Tt?os:Tt,O=n.rects.popper,g=n.elements[A?w:_],v=Bi(mt(g)?g:g.contextElement||st(n.elements.popper),l,u,o),b=St(n.elements.reference),y=ws({reference:b,element:O,strategy:"absolute",placement:i}),S=Fe(Object.assign({},O,y)),N=_===Tt?S:b,C={top:v.top-N.top+T.top,bottom:N.bottom-v.bottom+T.bottom,left:v.left-N.left+T.left,right:N.right-v.right+T.right},D=n.modifiersData.offset;if(_===Tt&&D){var j=D[i];Object.keys(C).forEach(function($){var at=[R,x].indexOf($)>=0?1:-1,ct=[L,x].indexOf($)>=0?"y":"x";C[$]+=j[ct]*at})}return C}function ji(n,t){t===void 0&&(t={});var e=t,s=e.placement,i=e.boundary,r=e.rootBoundary,o=e.padding,a=e.flipVariations,l=e.allowedAutoPlacements,h=l===void 0?qe:l,u=Dt(s),p=u?a?Be:Be.filter(function(A){return Dt(A)===u}):Pt,_=p.filter(function(A){return h.indexOf(A)>=0});_.length===0&&(_=p);var f=_.reduce(function(A,m){return A[m]=$t(n,{placement:m,boundary:i,rootBoundary:r,padding:o})[Y(m)],A},{});return Object.keys(f).sort(function(A,m){return f[A]-f[m]})}function Fi(n){if(Y(n)===pe)return[];var t=ae(n);return[wn(n),t,wn(t)]}function Ki(n){var t=n.state,e=n.options,s=n.name;if(!t.modifiersData[s]._skip){for(var i=e.mainAxis,r=i===void 0?!0:i,o=e.altAxis,a=o===void 0?!0:o,l=e.fallbackPlacements,h=e.padding,u=e.boundary,p=e.rootBoundary,_=e.altBoundary,f=e.flipVariations,A=f===void 0?!0:f,m=e.allowedAutoPlacements,E=t.options.placement,T=Y(E),w=T===E,O=l||(w||!A?[ae(E)]:Fi(E)),g=[E].concat(O).reduce(function(vt,Z){return vt.concat(Y(Z)===pe?ji(t,{placement:Z,boundary:u,rootBoundary:p,padding:h,flipVariations:A,allowedAutoPlacements:m}):Z)},[]),v=t.rects.reference,b=t.rects.popper,y=new Map,S=!0,N=g[0],C=0;C=0,ct=at?"width":"height",M=$t(t,{placement:D,boundary:u,rootBoundary:p,altBoundary:_,padding:h}),F=at?$?R:I:$?x:L;v[ct]>b[ct]&&(F=ae(F));var qt=ae(F),lt=[];if(r&<.push(M[j]<=0),a&<.push(M[F]<=0,M[qt]<=0),lt.every(function(vt){return vt})){N=D,S=!1;break}y.set(D,lt)}if(S)for(var Xt=A?3:1,Te=function(Z){var Vt=g.find(function(Zt){var ut=y.get(Zt);if(ut)return ut.slice(0,Z).every(function(ye){return ye})});if(Vt)return N=Vt,"break"},kt=Xt;kt>0;kt--){var Qt=Te(kt);if(Qt==="break")break}t.placement!==N&&(t.modifiersData[s]._skip=!0,t.placement=N,t.reset=!0)}}const Os={name:"flip",enabled:!0,phase:"main",fn:Ki,requiresIfExists:["offset"],data:{_skip:!1}};function Cn(n,t,e){return e===void 0&&(e={x:0,y:0}),{top:n.top-t.height-e.y,right:n.right-t.width+e.x,bottom:n.bottom-t.height+e.y,left:n.left-t.width-e.x}}function Nn(n){return[L,R,x,I].some(function(t){return n[t]>=0})}function Yi(n){var t=n.state,e=n.name,s=t.rects.reference,i=t.rects.popper,r=t.modifiersData.preventOverflow,o=$t(t,{elementContext:"reference"}),a=$t(t,{altBoundary:!0}),l=Cn(o,s),h=Cn(a,i,r),u=Nn(l),p=Nn(h);t.modifiersData[e]={referenceClippingOffsets:l,popperEscapeOffsets:h,isReferenceHidden:u,hasPopperEscaped:p},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":p})}const Cs={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Yi};function Ui(n,t,e){var s=Y(n),i=[I,L].indexOf(s)>=0?-1:1,r=typeof e=="function"?e(Object.assign({},t,{placement:n})):e,o=r[0],a=r[1];return o=o||0,a=(a||0)*i,[I,R].indexOf(s)>=0?{x:a,y:o}:{x:o,y:a}}function zi(n){var t=n.state,e=n.options,s=n.name,i=e.offset,r=i===void 0?[0,0]:i,o=qe.reduce(function(u,p){return u[p]=Ui(p,t.rects,r),u},{}),a=o[t.placement],l=a.x,h=a.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=h),t.modifiersData[s]=o}const Ns={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:zi};function Gi(n){var t=n.state,e=n.name;t.modifiersData[e]=ws({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}const on={name:"popperOffsets",enabled:!0,phase:"read",fn:Gi,data:{}};function qi(n){return n==="x"?"y":"x"}function Xi(n){var t=n.state,e=n.options,s=n.name,i=e.mainAxis,r=i===void 0?!0:i,o=e.altAxis,a=o===void 0?!1:o,l=e.boundary,h=e.rootBoundary,u=e.altBoundary,p=e.padding,_=e.tether,f=_===void 0?!0:_,A=e.tetherOffset,m=A===void 0?0:A,E=$t(t,{boundary:l,rootBoundary:h,padding:p,altBoundary:u}),T=Y(t.placement),w=Dt(t.placement),O=!w,g=Je(T),v=qi(g),b=t.modifiersData.popperOffsets,y=t.rects.reference,S=t.rects.popper,N=typeof m=="function"?m(Object.assign({},t.rects,{placement:t.placement})):m,C=typeof N=="number"?{mainAxis:N,altAxis:N}:Object.assign({mainAxis:0,altAxis:0},N),D=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,j={x:0,y:0};if(b){if(r){var $,at=g==="y"?L:I,ct=g==="y"?x:R,M=g==="y"?"height":"width",F=b[g],qt=F+E[at],lt=F-E[ct],Xt=f?-S[M]/2:0,Te=w===_t?y[M]:S[M],kt=w===_t?-S[M]:-y[M],Qt=t.elements.arrow,vt=f&&Qt?Ze(Qt):{width:0,height:0},Z=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:vs(),Vt=Z[at],Zt=Z[ct],ut=Bt(0,y[M],vt[M]),ye=O?y[M]/2-Xt-ut-Vt-C.mainAxis:Te-ut-Vt-C.mainAxis,ri=O?-y[M]/2+Xt+ut+Zt+C.mainAxis:kt+ut+Zt+C.mainAxis,we=t.elements.arrow&&Kt(t.elements.arrow),oi=we?g==="y"?we.clientTop||0:we.clientLeft||0:0,fn=($=D==null?void 0:D[g])!=null?$:0,ai=F+ye-fn-oi,ci=F+ri-fn,pn=Bt(f?ue(qt,ai):qt,F,f?pt(lt,ci):lt);b[g]=pn,j[g]=pn-F}if(a){var _n,li=g==="x"?L:I,ui=g==="x"?x:R,ht=b[v],Jt=v==="y"?"height":"width",mn=ht+E[li],gn=ht-E[ui],Oe=[L,I].indexOf(T)!==-1,En=(_n=D==null?void 0:D[v])!=null?_n:0,vn=Oe?mn:ht-y[Jt]-S[Jt]-En+C.altAxis,bn=Oe?ht+y[Jt]+S[Jt]-En-C.altAxis:gn,An=f&&Oe?Ni(vn,ht,bn):Bt(f?vn:mn,ht,f?bn:gn);b[v]=An,j[v]=An-ht}t.modifiersData[s]=j}}const Ss={name:"preventOverflow",enabled:!0,phase:"main",fn:Xi,requiresIfExists:["offset"]};function Qi(n){return{scrollLeft:n.scrollLeft,scrollTop:n.scrollTop}}function Zi(n){return n===k(n)||!V(n)?nn(n):Qi(n)}function Ji(n){var t=n.getBoundingClientRect(),e=Nt(t.width)/n.offsetWidth||1,s=Nt(t.height)/n.offsetHeight||1;return e!==1||s!==1}function tr(n,t,e){e===void 0&&(e=!1);var s=V(t),i=V(t)&&Ji(t),r=st(t),o=St(n,i,e),a={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(s||!s&&!e)&&((z(t)!=="body"||rn(r))&&(a=Zi(t)),V(t)?(l=St(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):r&&(l.x=sn(r))),{x:o.left+a.scrollLeft-l.x,y:o.top+a.scrollTop-l.y,width:o.width,height:o.height}}function er(n){var t=new Map,e=new Set,s=[];n.forEach(function(r){t.set(r.name,r)});function i(r){e.add(r.name);var o=[].concat(r.requires||[],r.requiresIfExists||[]);o.forEach(function(a){if(!e.has(a)){var l=t.get(a);l&&i(l)}}),s.push(r)}return n.forEach(function(r){e.has(r.name)||i(r)}),s}function nr(n){var t=er(n);return ms.reduce(function(e,s){return e.concat(t.filter(function(i){return i.phase===s}))},[])}function sr(n){var t;return function(){return t||(t=new Promise(function(e){Promise.resolve().then(function(){t=void 0,e(n())})})),t}}function ir(n){var t=n.reduce(function(e,s){var i=e[s.name];return e[s.name]=i?Object.assign({},i,s,{options:Object.assign({},i.options,s.options),data:Object.assign({},i.data,s.data)}):s,e},{});return Object.keys(t).map(function(e){return t[e]})}var Sn={placement:"bottom",modifiers:[],strategy:"absolute"};function Dn(){for(var n=arguments.length,t=new Array(n),e=0;e"u")return!1;var t=k(n).ShadowRoot;return n instanceof t||n instanceof ShadowRoot}function yi(n){var t=n.state;Object.keys(t.elements).forEach(function(e){var s=t.styles[e]||{},i=t.attributes[e]||{},r=t.elements[e];!V(r)||!z(r)||(Object.assign(r.style,s),Object.keys(i).forEach(function(o){var a=i[o];a===!1?r.removeAttribute(o):r.setAttribute(o,a===!0?"":a)}))})}function wi(n){var t=n.state,e={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,e.popper),t.styles=e,t.elements.arrow&&Object.assign(t.elements.arrow.style,e.arrow),function(){Object.keys(t.elements).forEach(function(s){var i=t.elements[s],r=t.attributes[s]||{},o=Object.keys(t.styles.hasOwnProperty(s)?t.styles[s]:e[s]),a=o.reduce(function(l,h){return l[h]="",l},{});!V(i)||!z(i)||(Object.assign(i.style,a),Object.keys(r).forEach(function(l){i.removeAttribute(l)}))})}}const Qe={name:"applyStyles",enabled:!0,phase:"write",fn:yi,effect:wi,requires:["computeStyles"]};function Y(n){return n.split("-")[0]}var pt=Math.max,ue=Math.min,Nt=Math.round;function je(){var n=navigator.userAgentData;return n!=null&&n.brands&&Array.isArray(n.brands)?n.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function gs(){return!/^((?!chrome|android).)*safari/i.test(je())}function St(n,t,e){t===void 0&&(t=!1),e===void 0&&(e=!1);var s=n.getBoundingClientRect(),i=1,r=1;t&&V(n)&&(i=n.offsetWidth>0&&Nt(s.width)/n.offsetWidth||1,r=n.offsetHeight>0&&Nt(s.height)/n.offsetHeight||1);var o=mt(n)?k(n):window,a=o.visualViewport,l=!gs()&&e,h=(s.left+(l&&a?a.offsetLeft:0))/i,u=(s.top+(l&&a?a.offsetTop:0))/r,p=s.width/i,_=s.height/r;return{width:p,height:_,top:u,right:h+p,bottom:u+_,left:h,x:h,y:u}}function Ze(n){var t=St(n),e=n.offsetWidth,s=n.offsetHeight;return Math.abs(t.width-e)<=1&&(e=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:n.offsetLeft,y:n.offsetTop,width:e,height:s}}function Es(n,t){var e=t.getRootNode&&t.getRootNode();if(n.contains(t))return!0;if(e&&Xe(e)){var s=t;do{if(s&&n.isSameNode(s))return!0;s=s.parentNode||s.host}while(s)}return!1}function X(n){return k(n).getComputedStyle(n)}function Oi(n){return["table","td","th"].indexOf(z(n))>=0}function st(n){return((mt(n)?n.ownerDocument:n.document)||window.document).documentElement}function _e(n){return z(n)==="html"?n:n.assignedSlot||n.parentNode||(Xe(n)?n.host:null)||st(n)}function Tn(n){return!V(n)||X(n).position==="fixed"?null:n.offsetParent}function Ci(n){var t=/firefox/i.test(je()),e=/Trident/i.test(je());if(e&&V(n)){var s=X(n);if(s.position==="fixed")return null}var i=_e(n);for(Xe(i)&&(i=i.host);V(i)&&["html","body"].indexOf(z(i))<0;){var r=X(i);if(r.transform!=="none"||r.perspective!=="none"||r.contain==="paint"||["transform","perspective"].indexOf(r.willChange)!==-1||t&&r.willChange==="filter"||t&&r.filter&&r.filter!=="none")return i;i=i.parentNode}return null}function Kt(n){for(var t=k(n),e=Tn(n);e&&Oi(e)&&X(e).position==="static";)e=Tn(e);return e&&(z(e)==="html"||z(e)==="body"&&X(e).position==="static")?t:e||Ci(n)||t}function Je(n){return["top","bottom"].indexOf(n)>=0?"x":"y"}function Bt(n,t,e){return pt(n,ue(t,e))}function Ni(n,t,e){var s=Bt(n,t,e);return s>e?e:s}function vs(){return{top:0,right:0,bottom:0,left:0}}function bs(n){return Object.assign({},vs(),n)}function As(n,t){return t.reduce(function(e,s){return e[s]=n,e},{})}var Si=function(t,e){return t=typeof t=="function"?t(Object.assign({},e.rects,{placement:e.placement})):t,bs(typeof t!="number"?t:As(t,Pt))};function Di(n){var t,e=n.state,s=n.name,i=n.options,r=e.elements.arrow,o=e.modifiersData.popperOffsets,a=Y(e.placement),l=Je(a),h=[I,R].indexOf(a)>=0,u=h?"height":"width";if(!(!r||!o)){var p=Si(i.padding,e),_=Ze(r),f=l==="y"?L:I,A=l==="y"?x:R,m=e.rects.reference[u]+e.rects.reference[l]-o[l]-e.rects.popper[u],E=o[l]-e.rects.reference[l],T=Kt(r),w=T?l==="y"?T.clientHeight||0:T.clientWidth||0:0,O=m/2-E/2,g=p[f],v=w-_[u]-p[A],b=w/2-_[u]/2+O,y=Bt(g,b,v),S=l;e.modifiersData[s]=(t={},t[S]=y,t.centerOffset=y-b,t)}}function $i(n){var t=n.state,e=n.options,s=e.element,i=s===void 0?"[data-popper-arrow]":s;i!=null&&(typeof i=="string"&&(i=t.elements.popper.querySelector(i),!i)||Es(t.elements.popper,i)&&(t.elements.arrow=i))}const Ts={name:"arrow",enabled:!0,phase:"main",fn:Di,effect:$i,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Dt(n){return n.split("-")[1]}var Li={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Ii(n,t){var e=n.x,s=n.y,i=t.devicePixelRatio||1;return{x:Nt(e*i)/i||0,y:Nt(s*i)/i||0}}function yn(n){var t,e=n.popper,s=n.popperRect,i=n.placement,r=n.variation,o=n.offsets,a=n.position,l=n.gpuAcceleration,h=n.adaptive,u=n.roundOffsets,p=n.isFixed,_=o.x,f=_===void 0?0:_,A=o.y,m=A===void 0?0:A,E=typeof u=="function"?u({x:f,y:m}):{x:f,y:m};f=E.x,m=E.y;var T=o.hasOwnProperty("x"),w=o.hasOwnProperty("y"),O=I,g=L,v=window;if(h){var b=Kt(e),y="clientHeight",S="clientWidth";if(b===k(e)&&(b=st(e),X(b).position!=="static"&&a==="absolute"&&(y="scrollHeight",S="scrollWidth")),b=b,i===L||(i===I||i===R)&&r===Ct){g=x;var N=p&&b===v&&v.visualViewport?v.visualViewport.height:b[y];m-=N-s.height,m*=l?1:-1}if(i===I||(i===L||i===x)&&r===Ct){O=R;var C=p&&b===v&&v.visualViewport?v.visualViewport.width:b[S];f-=C-s.width,f*=l?1:-1}}var D=Object.assign({position:a},h&&Li),j=u===!0?Ii({x:f,y:m},k(e)):{x:f,y:m};if(f=j.x,m=j.y,l){var $;return Object.assign({},D,($={},$[g]=w?"0":"",$[O]=T?"0":"",$.transform=(v.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",$))}return Object.assign({},D,(t={},t[g]=w?m+"px":"",t[O]=T?f+"px":"",t.transform="",t))}function Pi(n){var t=n.state,e=n.options,s=e.gpuAcceleration,i=s===void 0?!0:s,r=e.adaptive,o=r===void 0?!0:r,a=e.roundOffsets,l=a===void 0?!0:a,h={placement:Y(t.placement),variation:Dt(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,yn(Object.assign({},h,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,yn(Object.assign({},h,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const tn={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Pi,data:{}};var te={passive:!0};function Mi(n){var t=n.state,e=n.instance,s=n.options,i=s.scroll,r=i===void 0?!0:i,o=s.resize,a=o===void 0?!0:o,l=k(t.elements.popper),h=[].concat(t.scrollParents.reference,t.scrollParents.popper);return r&&h.forEach(function(u){u.addEventListener("scroll",e.update,te)}),a&&l.addEventListener("resize",e.update,te),function(){r&&h.forEach(function(u){u.removeEventListener("scroll",e.update,te)}),a&&l.removeEventListener("resize",e.update,te)}}const en={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Mi,data:{}};var xi={left:"right",right:"left",bottom:"top",top:"bottom"};function ae(n){return n.replace(/left|right|bottom|top/g,function(t){return xi[t]})}var Ri={start:"end",end:"start"};function wn(n){return n.replace(/start|end/g,function(t){return Ri[t]})}function nn(n){var t=k(n),e=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:e,scrollTop:s}}function sn(n){return St(st(n)).left+nn(n).scrollLeft}function ki(n,t){var e=k(n),s=st(n),i=e.visualViewport,r=s.clientWidth,o=s.clientHeight,a=0,l=0;if(i){r=i.width,o=i.height;var h=gs();(h||!h&&t==="fixed")&&(a=i.offsetLeft,l=i.offsetTop)}return{width:r,height:o,x:a+sn(n),y:l}}function Vi(n){var t,e=st(n),s=nn(n),i=(t=n.ownerDocument)==null?void 0:t.body,r=pt(e.scrollWidth,e.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),o=pt(e.scrollHeight,e.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),a=-s.scrollLeft+sn(n),l=-s.scrollTop;return X(i||e).direction==="rtl"&&(a+=pt(e.clientWidth,i?i.clientWidth:0)-r),{width:r,height:o,x:a,y:l}}function rn(n){var t=X(n),e=t.overflow,s=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(e+i+s)}function ys(n){return["html","body","#document"].indexOf(z(n))>=0?n.ownerDocument.body:V(n)&&rn(n)?n:ys(_e(n))}function jt(n,t){var e;t===void 0&&(t=[]);var s=ys(n),i=s===((e=n.ownerDocument)==null?void 0:e.body),r=k(s),o=i?[r].concat(r.visualViewport||[],rn(s)?s:[]):s,a=t.concat(o);return i?a:a.concat(jt(_e(o)))}function Fe(n){return Object.assign({},n,{left:n.x,top:n.y,right:n.x+n.width,bottom:n.y+n.height})}function Hi(n,t){var e=St(n,!1,t==="fixed");return e.top=e.top+n.clientTop,e.left=e.left+n.clientLeft,e.bottom=e.top+n.clientHeight,e.right=e.left+n.clientWidth,e.width=n.clientWidth,e.height=n.clientHeight,e.x=e.left,e.y=e.top,e}function On(n,t,e){return t===Ge?Fe(ki(n,e)):mt(t)?Hi(t,e):Fe(Vi(st(n)))}function Wi(n){var t=jt(_e(n)),e=["absolute","fixed"].indexOf(X(n).position)>=0,s=e&&V(n)?Kt(n):n;return mt(s)?t.filter(function(i){return mt(i)&&Es(i,s)&&z(i)!=="body"}):[]}function Bi(n,t,e,s){var i=t==="clippingParents"?Wi(n):[].concat(t),r=[].concat(i,[e]),o=r[0],a=r.reduce(function(l,h){var u=On(n,h,s);return l.top=pt(u.top,l.top),l.right=ue(u.right,l.right),l.bottom=ue(u.bottom,l.bottom),l.left=pt(u.left,l.left),l},On(n,o,s));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function ws(n){var t=n.reference,e=n.element,s=n.placement,i=s?Y(s):null,r=s?Dt(s):null,o=t.x+t.width/2-e.width/2,a=t.y+t.height/2-e.height/2,l;switch(i){case L:l={x:o,y:t.y-e.height};break;case x:l={x:o,y:t.y+t.height};break;case R:l={x:t.x+t.width,y:a};break;case I:l={x:t.x-e.width,y:a};break;default:l={x:t.x,y:t.y}}var h=i?Je(i):null;if(h!=null){var u=h==="y"?"height":"width";switch(r){case _t:l[h]=l[h]-(t[u]/2-e[u]/2);break;case Ct:l[h]=l[h]+(t[u]/2-e[u]/2);break}}return l}function $t(n,t){t===void 0&&(t={});var e=t,s=e.placement,i=s===void 0?n.placement:s,r=e.strategy,o=r===void 0?n.strategy:r,a=e.boundary,l=a===void 0?rs:a,h=e.rootBoundary,u=h===void 0?Ge:h,p=e.elementContext,_=p===void 0?Tt:p,f=e.altBoundary,A=f===void 0?!1:f,m=e.padding,E=m===void 0?0:m,T=bs(typeof E!="number"?E:As(E,Pt)),w=_===Tt?os:Tt,O=n.rects.popper,g=n.elements[A?w:_],v=Bi(mt(g)?g:g.contextElement||st(n.elements.popper),l,u,o),b=St(n.elements.reference),y=ws({reference:b,element:O,strategy:"absolute",placement:i}),S=Fe(Object.assign({},O,y)),N=_===Tt?S:b,C={top:v.top-N.top+T.top,bottom:N.bottom-v.bottom+T.bottom,left:v.left-N.left+T.left,right:N.right-v.right+T.right},D=n.modifiersData.offset;if(_===Tt&&D){var j=D[i];Object.keys(C).forEach(function($){var at=[R,x].indexOf($)>=0?1:-1,ct=[L,x].indexOf($)>=0?"y":"x";C[$]+=j[ct]*at})}return C}function ji(n,t){t===void 0&&(t={});var e=t,s=e.placement,i=e.boundary,r=e.rootBoundary,o=e.padding,a=e.flipVariations,l=e.allowedAutoPlacements,h=l===void 0?qe:l,u=Dt(s),p=u?a?Be:Be.filter(function(A){return Dt(A)===u}):Pt,_=p.filter(function(A){return h.indexOf(A)>=0});_.length===0&&(_=p);var f=_.reduce(function(A,m){return A[m]=$t(n,{placement:m,boundary:i,rootBoundary:r,padding:o})[Y(m)],A},{});return Object.keys(f).sort(function(A,m){return f[A]-f[m]})}function Fi(n){if(Y(n)===pe)return[];var t=ae(n);return[wn(n),t,wn(t)]}function Ki(n){var t=n.state,e=n.options,s=n.name;if(!t.modifiersData[s]._skip){for(var i=e.mainAxis,r=i===void 0?!0:i,o=e.altAxis,a=o===void 0?!0:o,l=e.fallbackPlacements,h=e.padding,u=e.boundary,p=e.rootBoundary,_=e.altBoundary,f=e.flipVariations,A=f===void 0?!0:f,m=e.allowedAutoPlacements,E=t.options.placement,T=Y(E),w=T===E,O=l||(w||!A?[ae(E)]:Fi(E)),g=[E].concat(O).reduce(function(vt,Z){return vt.concat(Y(Z)===pe?ji(t,{placement:Z,boundary:u,rootBoundary:p,padding:h,flipVariations:A,allowedAutoPlacements:m}):Z)},[]),v=t.rects.reference,b=t.rects.popper,y=new Map,S=!0,N=g[0],C=0;C=0,ct=at?"width":"height",M=$t(t,{placement:D,boundary:u,rootBoundary:p,altBoundary:_,padding:h}),F=at?$?R:I:$?x:L;v[ct]>b[ct]&&(F=ae(F));var qt=ae(F),lt=[];if(r&<.push(M[j]<=0),a&<.push(M[F]<=0,M[qt]<=0),lt.every(function(vt){return vt})){N=D,S=!1;break}y.set(D,lt)}if(S)for(var Xt=A?3:1,Te=function(Z){var Vt=g.find(function(Zt){var ut=y.get(Zt);if(ut)return ut.slice(0,Z).every(function(ye){return ye})});if(Vt)return N=Vt,"break"},kt=Xt;kt>0;kt--){var Qt=Te(kt);if(Qt==="break")break}t.placement!==N&&(t.modifiersData[s]._skip=!0,t.placement=N,t.reset=!0)}}const Os={name:"flip",enabled:!0,phase:"main",fn:Ki,requiresIfExists:["offset"],data:{_skip:!1}};function Cn(n,t,e){return e===void 0&&(e={x:0,y:0}),{top:n.top-t.height-e.y,right:n.right-t.width+e.x,bottom:n.bottom-t.height+e.y,left:n.left-t.width-e.x}}function Nn(n){return[L,R,x,I].some(function(t){return n[t]>=0})}function Yi(n){var t=n.state,e=n.name,s=t.rects.reference,i=t.rects.popper,r=t.modifiersData.preventOverflow,o=$t(t,{elementContext:"reference"}),a=$t(t,{altBoundary:!0}),l=Cn(o,s),h=Cn(a,i,r),u=Nn(l),p=Nn(h);t.modifiersData[e]={referenceClippingOffsets:l,popperEscapeOffsets:h,isReferenceHidden:u,hasPopperEscaped:p},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":p})}const Cs={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Yi};function Ui(n,t,e){var s=Y(n),i=[I,L].indexOf(s)>=0?-1:1,r=typeof e=="function"?e(Object.assign({},t,{placement:n})):e,o=r[0],a=r[1];return o=o||0,a=(a||0)*i,[I,R].indexOf(s)>=0?{x:a,y:o}:{x:o,y:a}}function zi(n){var t=n.state,e=n.options,s=n.name,i=e.offset,r=i===void 0?[0,0]:i,o=qe.reduce(function(u,p){return u[p]=Ui(p,t.rects,r),u},{}),a=o[t.placement],l=a.x,h=a.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=h),t.modifiersData[s]=o}const Ns={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:zi};function Gi(n){var t=n.state,e=n.name;t.modifiersData[e]=ws({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}const on={name:"popperOffsets",enabled:!0,phase:"read",fn:Gi,data:{}};function qi(n){return n==="x"?"y":"x"}function Xi(n){var t=n.state,e=n.options,s=n.name,i=e.mainAxis,r=i===void 0?!0:i,o=e.altAxis,a=o===void 0?!1:o,l=e.boundary,h=e.rootBoundary,u=e.altBoundary,p=e.padding,_=e.tether,f=_===void 0?!0:_,A=e.tetherOffset,m=A===void 0?0:A,E=$t(t,{boundary:l,rootBoundary:h,padding:p,altBoundary:u}),T=Y(t.placement),w=Dt(t.placement),O=!w,g=Je(T),v=qi(g),b=t.modifiersData.popperOffsets,y=t.rects.reference,S=t.rects.popper,N=typeof m=="function"?m(Object.assign({},t.rects,{placement:t.placement})):m,C=typeof N=="number"?{mainAxis:N,altAxis:N}:Object.assign({mainAxis:0,altAxis:0},N),D=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,j={x:0,y:0};if(b){if(r){var $,at=g==="y"?L:I,ct=g==="y"?x:R,M=g==="y"?"height":"width",F=b[g],qt=F+E[at],lt=F-E[ct],Xt=f?-S[M]/2:0,Te=w===_t?y[M]:S[M],kt=w===_t?-S[M]:-y[M],Qt=t.elements.arrow,vt=f&&Qt?Ze(Qt):{width:0,height:0},Z=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:vs(),Vt=Z[at],Zt=Z[ct],ut=Bt(0,y[M],vt[M]),ye=O?y[M]/2-Xt-ut-Vt-C.mainAxis:Te-ut-Vt-C.mainAxis,ri=O?-y[M]/2+Xt+ut+Zt+C.mainAxis:kt+ut+Zt+C.mainAxis,we=t.elements.arrow&&Kt(t.elements.arrow),oi=we?g==="y"?we.clientTop||0:we.clientLeft||0:0,fn=($=D==null?void 0:D[g])!=null?$:0,ai=F+ye-fn-oi,ci=F+ri-fn,pn=Bt(f?ue(qt,ai):qt,F,f?pt(lt,ci):lt);b[g]=pn,j[g]=pn-F}if(a){var _n,li=g==="x"?L:I,ui=g==="x"?x:R,ht=b[v],Jt=v==="y"?"height":"width",mn=ht+E[li],gn=ht-E[ui],Oe=[L,I].indexOf(T)!==-1,En=(_n=D==null?void 0:D[v])!=null?_n:0,vn=Oe?mn:ht-y[Jt]-S[Jt]-En+C.altAxis,bn=Oe?ht+y[Jt]+S[Jt]-En-C.altAxis:gn,An=f&&Oe?Ni(vn,ht,bn):Bt(f?vn:mn,ht,f?bn:gn);b[v]=An,j[v]=An-ht}t.modifiersData[s]=j}}const Ss={name:"preventOverflow",enabled:!0,phase:"main",fn:Xi,requiresIfExists:["offset"]};function Qi(n){return{scrollLeft:n.scrollLeft,scrollTop:n.scrollTop}}function Zi(n){return n===k(n)||!V(n)?nn(n):Qi(n)}function Ji(n){var t=n.getBoundingClientRect(),e=Nt(t.width)/n.offsetWidth||1,s=Nt(t.height)/n.offsetHeight||1;return e!==1||s!==1}function tr(n,t,e){e===void 0&&(e=!1);var s=V(t),i=V(t)&&Ji(t),r=st(t),o=St(n,i,e),a={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(s||!s&&!e)&&((z(t)!=="body"||rn(r))&&(a=Zi(t)),V(t)?(l=St(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):r&&(l.x=sn(r))),{x:o.left+a.scrollLeft-l.x,y:o.top+a.scrollTop-l.y,width:o.width,height:o.height}}function er(n){var t=new Map,e=new Set,s=[];n.forEach(function(r){t.set(r.name,r)});function i(r){e.add(r.name);var o=[].concat(r.requires||[],r.requiresIfExists||[]);o.forEach(function(a){if(!e.has(a)){var l=t.get(a);l&&i(l)}}),s.push(r)}return n.forEach(function(r){e.has(r.name)||i(r)}),s}function nr(n){var t=er(n);return ms.reduce(function(e,s){return e.concat(t.filter(function(i){return i.phase===s}))},[])}function sr(n){var t;return function(){return t||(t=new Promise(function(e){Promise.resolve().then(function(){t=void 0,e(n())})})),t}}function ir(n){var t=n.reduce(function(e,s){var i=e[s.name];return e[s.name]=i?Object.assign({},i,s,{options:Object.assign({},i.options,s.options),data:Object.assign({},i.data,s.data)}):s,e},{});return Object.keys(t).map(function(e){return t[e]})}var Sn={placement:"bottom",modifiers:[],strategy:"absolute"};function Dn(){for(var n=arguments.length,t=new Array(n),e=0;e!!n[s.toLowerCase()]:s=>!!n[s]}const oe={},fn=[],Ae=()=>{},xr=()=>!1,Lf=/^on[^a-z]/,Gt=e=>Lf.test(e),to=e=>e.startsWith("onUpdate:"),ee=Object.assign,no=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Bf=Object.prototype.hasOwnProperty,re=(e,t)=>Bf.call(e,t),H=Array.isArray,dn=e=>Nn(e)==="[object Map]",en=e=>Nn(e)==="[object Set]",gl=e=>Nn(e)==="[object Date]",Df=e=>Nn(e)==="[object RegExp]",z=e=>typeof e=="function",Q=e=>typeof e=="string",At=e=>typeof e=="symbol",le=e=>e!==null&&typeof e=="object",ro=e=>le(e)&&z(e.then)&&z(e.catch),Bc=Object.prototype.toString,Nn=e=>Bc.call(e),xf=e=>Nn(e).slice(8,-1),Dc=e=>Nn(e)==="[object Object]",so=e=>Q(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Vt=Le(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),jf=Le("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),ys=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},$f=/-(\w)/g,ye=ys(e=>e.replace($f,(t,n)=>n?n.toUpperCase():"")),Hf=/\B([A-Z])/g,je=ys(e=>e.replace(Hf,"-$1").toLowerCase()),tn=ys(e=>e.charAt(0).toUpperCase()+e.slice(1)),pn=ys(e=>e?`on${tn(e)}`:""),bn=(e,t)=>!Object.is(e,t),hn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Jr=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Zr=e=>{const t=Q(e)?Number(e):NaN;return isNaN(t)?e:t};let yl;const vi=()=>yl||(yl=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Uf="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console",Vf=Le(Uf);function ar(e){if(H(e)){const t={};for(let n=0;n{if(n){const r=n.split(Kf);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function ur(e){let t="";if(Q(e))t=e;else if(H(e))for(let n=0;nIt(n,t))}const rd=e=>Q(e)?e:e==null?"":H(e)||le(e)&&(e.toString===Bc||!z(e.toString))?JSON.stringify(e,$c,2):String(e),$c=(e,t)=>t&&t.__v_isRef?$c(e,t.value):dn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,s])=>(n[`${r} =>`]=s,n),{})}:en(t)?{[`Set(${t.size})`]:[...t.values()]}:le(t)&&!H(t)&&!Dc(t)?String(t):t;let De;class io{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=De,!t&&De&&(this.index=(De.scopes||(De.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=De;try{return De=this,t()}finally{De=n}}}on(){De=this}off(){De=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n{const t=new Set(e);return t.w=0,t.n=0,t},Vc=e=>(e.w&Ft)>0,qc=e=>(e.n&Ft)>0,sd=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r{(u==="length"||u>=c)&&l.push(a)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":H(e)?so(n)&&l.push(o.get("length")):(l.push(o.get(qt)),dn(e)&&l.push(o.get(Ei)));break;case"delete":H(e)||(l.push(o.get(qt)),dn(e)&&l.push(o.get(Ei)));break;case"set":dn(e)&&l.push(o.get(qt));break}if(l.length===1)l[0]&&Si(l[0]);else{const c=[];for(const a of l)a&&c.push(...a);Si(co(c))}}function Si(e,t){const n=H(e)?e:[...e];for(const r of n)r.computed&&vl(r);for(const r of n)r.computed||vl(r)}function vl(e,t){(e!==Ye||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}function cd(e,t){var n;return(n=Qr.get(e))==null?void 0:n.get(t)}const ad=Le("__proto__,__v_isRef,__isVue"),zc=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(At)),ud=vs(),fd=vs(!1,!0),dd=vs(!0),pd=vs(!0,!0),_l=hd();function hd(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=G(this);for(let i=0,o=this.length;i{e[t]=function(...n){Rn();const r=G(this)[t].apply(this,n);return Pn(),r}}),e}function md(e){const t=G(this);return Me(t,"has",e),t.hasOwnProperty(e)}function vs(e=!1,t=!1){return function(r,s,i){if(s==="__v_isReactive")return!e;if(s==="__v_isReadonly")return e;if(s==="__v_isShallow")return t;if(s==="__v_raw"&&i===(e?t?ea:Gc:t?Xc:Yc).get(r))return r;const o=H(r);if(!e){if(o&&re(_l,s))return Reflect.get(_l,s,i);if(s==="hasOwnProperty")return md}const l=Reflect.get(r,s,i);return(At(s)?zc.has(s):ad(s))||(e||Me(r,"get",s),t)?l:de(l)?o&&so(s)?l:l.value:le(l)?e?uo(l):ot(l):l}}const gd=Jc(),yd=Jc(!0);function Jc(e=!1){return function(n,r,s,i){let o=n[r];if(Jt(o)&&de(o)&&!de(s))return!1;if(!e&&(!Jn(s)&&!Jt(s)&&(o=G(o),s=G(s)),!H(n)&&de(o)&&!de(s)))return o.value=s,!0;const l=H(n)&&so(r)?Number(r)e,_s=e=>Reflect.getPrototypeOf(e);function wr(e,t,n=!1,r=!1){e=e.__v_raw;const s=G(e),i=G(t);n||(t!==i&&Me(s,"get",t),Me(s,"get",i));const{has:o}=_s(s),l=r?ao:n?po:Zn;if(o.call(s,t))return l(e.get(t));if(o.call(s,i))return l(e.get(i));e!==s&&e.get(t)}function Cr(e,t=!1){const n=this.__v_raw,r=G(n),s=G(e);return t||(e!==s&&Me(r,"has",e),Me(r,"has",s)),e===s?n.has(e):n.has(e)||n.has(s)}function Tr(e,t=!1){return e=e.__v_raw,!t&&Me(G(e),"iterate",qt),Reflect.get(e,"size",e)}function El(e){e=G(e);const t=G(this);return _s(t).has.call(t,e)||(t.add(e),mt(t,"add",e,e)),this}function Sl(e,t){t=G(t);const n=G(this),{has:r,get:s}=_s(n);let i=r.call(n,e);i||(e=G(e),i=r.call(n,e));const o=s.call(n,e);return n.set(e,t),i?bn(t,o)&&mt(n,"set",e,t):mt(n,"add",e,t),this}function wl(e){const t=G(this),{has:n,get:r}=_s(t);let s=n.call(t,e);s||(e=G(e),s=n.call(t,e)),r&&r.call(t,e);const i=t.delete(e);return s&&mt(t,"delete",e,void 0),i}function Cl(){const e=G(this),t=e.size!==0,n=e.clear();return t&&mt(e,"clear",void 0,void 0),n}function Or(e,t){return function(r,s){const i=this,o=i.__v_raw,l=G(o),c=t?ao:e?po:Zn;return!e&&Me(l,"iterate",qt),o.forEach((a,u)=>r.call(s,c(a),c(u),i))}}function Nr(e,t,n){return function(...r){const s=this.__v_raw,i=G(s),o=dn(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,a=s[e](...r),u=n?ao:t?po:Zn;return!t&&Me(i,"iterate",c?Ei:qt),{next(){const{value:d,done:v}=a.next();return v?{value:d,done:v}:{value:l?[u(d[0]),u(d[1])]:u(d),done:v}},[Symbol.iterator](){return this}}}}function bt(e){return function(...t){return e==="delete"?!1:this}}function wd(){const e={get(i){return wr(this,i)},get size(){return Tr(this)},has:Cr,add:El,set:Sl,delete:wl,clear:Cl,forEach:Or(!1,!1)},t={get(i){return wr(this,i,!1,!0)},get size(){return Tr(this)},has:Cr,add:El,set:Sl,delete:wl,clear:Cl,forEach:Or(!1,!0)},n={get(i){return wr(this,i,!0)},get size(){return Tr(this,!0)},has(i){return Cr.call(this,i,!0)},add:bt("add"),set:bt("set"),delete:bt("delete"),clear:bt("clear"),forEach:Or(!0,!1)},r={get(i){return wr(this,i,!0,!0)},get size(){return Tr(this,!0)},has(i){return Cr.call(this,i,!0)},add:bt("add"),set:bt("set"),delete:bt("delete"),clear:bt("clear"),forEach:Or(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=Nr(i,!1,!1),n[i]=Nr(i,!0,!1),t[i]=Nr(i,!1,!0),r[i]=Nr(i,!0,!0)}),[e,n,t,r]}const[Cd,Td,Od,Nd]=wd();function Es(e,t){const n=t?e?Nd:Od:e?Td:Cd;return(r,s,i)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get(re(n,s)&&s in r?n:r,s,i)}const Rd={get:Es(!1,!1)},Pd={get:Es(!1,!0)},Ad={get:Es(!0,!1)},Id={get:Es(!0,!0)},Yc=new WeakMap,Xc=new WeakMap,Gc=new WeakMap,ea=new WeakMap;function Fd(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function kd(e){return e.__v_skip||!Object.isExtensible(e)?0:Fd(xf(e))}function ot(e){return Jt(e)?e:Ss(e,!1,Zc,Rd,Yc)}function ta(e){return Ss(e,!1,Ed,Pd,Xc)}function uo(e){return Ss(e,!0,Qc,Ad,Gc)}function Md(e){return Ss(e,!0,Sd,Id,ea)}function Ss(e,t,n,r,s){if(!le(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=s.get(e);if(i)return i;const o=kd(e);if(o===0)return e;const l=new Proxy(e,o===2?r:n);return s.set(e,l),l}function dt(e){return Jt(e)?dt(e.__v_raw):!!(e&&e.__v_isReactive)}function Jt(e){return!!(e&&e.__v_isReadonly)}function Jn(e){return!!(e&&e.__v_isShallow)}function fo(e){return dt(e)||Jt(e)}function G(e){const t=e&&e.__v_raw;return t?G(t):e}function dr(e){return zr(e,"__v_skip",!0),e}const Zn=e=>le(e)?ot(e):e,po=e=>le(e)?uo(e):e;function ho(e){Tt&&Ye&&(e=G(e),Wc(e.dep||(e.dep=co())))}function ws(e,t){e=G(e);const n=e.dep;n&&Si(n)}function de(e){return!!(e&&e.__v_isRef===!0)}function Ot(e){return na(e,!1)}function Ld(e){return na(e,!0)}function na(e,t){return de(e)?e:new Bd(e,t)}class Bd{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:G(t),this._value=n?t:Zn(t)}get value(){return ho(this),this._value}set value(t){const n=this.__v_isShallow||Jn(t)||Jt(t);t=n?t:G(t),bn(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:Zn(t),ws(this))}}function Dd(e){ws(e)}function mo(e){return de(e)?e.value:e}function xd(e){return z(e)?e():mo(e)}const jd={get:(e,t,n)=>mo(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const s=e[t];return de(s)&&!de(n)?(s.value=n,!0):Reflect.set(e,t,n,r)}};function go(e){return dt(e)?e:new Proxy(e,jd)}class $d{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>ho(this),()=>ws(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function Hd(e){return new $d(e)}function ra(e){const t=H(e)?new Array(e.length):{};for(const n in e)t[n]=sa(e,n);return t}class Ud{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return cd(G(this._object),this._key)}}class Vd{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function qd(e,t,n){return de(e)?e:z(e)?new Vd(e):le(e)&&arguments.length>1?sa(e,t,n):Ot(e)}function sa(e,t,n){const r=e[t];return de(r)?r:new Ud(e,t,n)}class Kd{constructor(t,n,r,s){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this._dirty=!0,this.effect=new fr(t,()=>{this._dirty||(this._dirty=!0,ws(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!s,this.__v_isReadonly=r}get value(){const t=G(this);return ho(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}function Wd(e,t,n=!1){let r,s;const i=z(e);return i?(r=e,s=Ae):(r=e.get,s=e.set),new Kd(r,s,i||!s,n)}function zd(e,...t){}function Jd(e,t){}function pt(e,t,n,r){let s;try{s=r?e(...r):e()}catch(i){nn(i,t,n)}return s}function $e(e,t,n,r){if(z(e)){const i=pt(e,t,n,r);return i&&ro(i)&&i.catch(o=>{nn(o,t,n)}),i}const s=[];for(let i=0;i>>1;Yn(Te[r])st&&Te.splice(t,1)}function bo(e){H(e)?mn.push(...e):(!ut||!ut.includes(e,e.allowRecurse?jt+1:jt))&&mn.push(e),oa()}function Tl(e,t=Qn?st+1:0){for(;tYn(n)-Yn(r)),jt=0;jte.id==null?1/0:e.id,Yd=(e,t)=>{const n=Yn(e)-Yn(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function la(e){wi=!1,Qn=!0,Te.sort(Yd);const t=Ae;try{for(st=0;stan.emit(s,...i)),Rr=[]):typeof window<"u"&&window.HTMLElement&&!((r=(n=window.navigator)==null?void 0:n.userAgent)!=null&&r.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ca(i,t)}),setTimeout(()=>{an||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Rr=[])},3e3)):Rr=[]}function Xd(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||oe;let s=n;const i=t.startsWith("update:"),o=i&&t.slice(7);if(o&&o in r){const u=`${o==="modelValue"?"model":o}Modifiers`,{number:d,trim:v}=r[u]||oe;v&&(s=n.map(h=>Q(h)?h.trim():h)),d&&(s=n.map(Jr))}let l,c=r[l=pn(t)]||r[l=pn(ye(t))];!c&&i&&(c=r[l=pn(je(t))]),c&&$e(c,e,6,s);const a=r[l+"Once"];if(a){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,$e(a,e,6,s)}}function aa(e,t,n=!1){const r=t.emitsCache,s=r.get(e);if(s!==void 0)return s;const i=e.emits;let o={},l=!1;if(!z(e)){const c=a=>{const u=aa(a,t,!0);u&&(l=!0,ee(o,u))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?(le(e)&&r.set(e,null),null):(H(i)?i.forEach(c=>o[c]=null):ee(o,i),le(e)&&r.set(e,o),o)}function Os(e,t){return!e||!Gt(t)?!1:(t=t.slice(2).replace(/Once$/,""),re(e,t[0].toLowerCase()+t.slice(1))||re(e,je(t))||re(e,t))}let Ee=null,Ns=null;function Xn(e){const t=Ee;return Ee=e,Ns=e&&e.type.__scopeId||null,t}function Gd(e){Ns=e}function ep(){Ns=null}const tp=e=>vo;function vo(e,t=Ee,n){if(!t||e._n)return e;const r=(...s)=>{r._d&&Ai(-1);const i=Xn(t);let o;try{o=e(...s)}finally{Xn(i),r._d&&Ai(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function jr(e){const{type:t,vnode:n,proxy:r,withProxy:s,props:i,propsOptions:[o],slots:l,attrs:c,emit:a,render:u,renderCache:d,data:v,setupState:h,ctx:g,inheritAttrs:p}=e;let b,m;const f=Xn(e);try{if(n.shapeFlag&4){const y=s||r;b=xe(u.call(y,y,d,i,h,v,g)),m=c}else{const y=t;b=xe(y.length>1?y(i,{attrs:c,slots:l,emit:a}):y(i,null)),m=t.props?c:rp(c)}}catch(y){Vn.length=0,nn(y,e,1),b=ae(Ne)}let E=b;if(m&&p!==!1){const y=Object.keys(m),{shapeFlag:w}=E;y.length&&w&7&&(o&&y.some(to)&&(m=sp(m,o)),E=it(E,m))}return n.dirs&&(E=it(E),E.dirs=E.dirs?E.dirs.concat(n.dirs):n.dirs),n.transition&&(E.transition=n.transition),b=E,Xn(f),b}function np(e){let t;for(let n=0;n{let t;for(const n in e)(n==="class"||n==="style"||Gt(n))&&((t||(t={}))[n]=e[n]);return t},sp=(e,t)=>{const n={};for(const r in e)(!to(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function ip(e,t,n){const{props:r,children:s,component:i}=e,{props:o,children:l,patchFlag:c}=t,a=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?Ol(r,o,a):!!o;if(c&8){const u=t.dynamicProps;for(let d=0;de.__isSuspense,op={name:"Suspense",__isSuspense:!0,process(e,t,n,r,s,i,o,l,c,a){e==null?cp(t,n,r,s,i,o,l,c,a):ap(e,t,n,r,s,o,l,c,a)},hydrate:up,create:Eo,normalize:fp},lp=op;function Gn(e,t){const n=e.props&&e.props[t];z(n)&&n()}function cp(e,t,n,r,s,i,o,l,c){const{p:a,o:{createElement:u}}=c,d=u("div"),v=e.suspense=Eo(e,s,r,t,d,n,i,o,l,c);a(null,v.pendingBranch=e.ssContent,d,null,r,v,i,o),v.deps>0?(Gn(e,"onPending"),Gn(e,"onFallback"),a(null,e.ssFallback,t,n,r,null,i,o),gn(v,e.ssFallback)):v.resolve(!1,!0)}function ap(e,t,n,r,s,i,o,l,{p:c,um:a,o:{createElement:u}}){const d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;const v=t.ssContent,h=t.ssFallback,{activeBranch:g,pendingBranch:p,isInFallback:b,isHydrating:m}=d;if(p)d.pendingBranch=v,Xe(v,p)?(c(p,v,d.hiddenContainer,null,s,d,i,o,l),d.deps<=0?d.resolve():b&&(c(g,h,n,r,s,null,i,o,l),gn(d,h))):(d.pendingId++,m?(d.isHydrating=!1,d.activeBranch=p):a(p,s,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u("div"),b?(c(null,v,d.hiddenContainer,null,s,d,i,o,l),d.deps<=0?d.resolve():(c(g,h,n,r,s,null,i,o,l),gn(d,h))):g&&Xe(v,g)?(c(g,v,n,r,s,d,i,o,l),d.resolve(!0)):(c(null,v,d.hiddenContainer,null,s,d,i,o,l),d.deps<=0&&d.resolve()));else if(g&&Xe(v,g))c(g,v,n,r,s,d,i,o,l),gn(d,v);else if(Gn(t,"onPending"),d.pendingBranch=v,d.pendingId++,c(null,v,d.hiddenContainer,null,s,d,i,o,l),d.deps<=0)d.resolve();else{const{timeout:f,pendingId:E}=d;f>0?setTimeout(()=>{d.pendingId===E&&d.fallback(h)},f):f===0&&d.fallback(h)}}function Eo(e,t,n,r,s,i,o,l,c,a,u=!1){const{p:d,m:v,um:h,n:g,o:{parentNode:p,remove:b}}=a;let m;const f=dp(e);f&&t!=null&&t.pendingBranch&&(m=t.pendingId,t.deps++);const E=e.props?Zr(e.props.timeout):void 0,y={vnode:e,parent:t,parentComponent:n,isSVG:o,container:r,hiddenContainer:s,anchor:i,deps:0,pendingId:0,timeout:typeof E=="number"?E:-1,activeBranch:null,pendingBranch:null,isInFallback:!0,isHydrating:u,isUnmounted:!1,effects:[],resolve(w=!1,O=!1){const{vnode:N,activeBranch:_,pendingBranch:T,pendingId:R,effects:A,parentComponent:I,container:L}=y;if(y.isHydrating)y.isHydrating=!1;else if(!w){const W=_&&T.transition&&T.transition.mode==="out-in";W&&(_.transition.afterLeave=()=>{R===y.pendingId&&v(T,L,te,0)});let{anchor:te}=y;_&&(te=g(_),h(_,I,y,!0)),W||v(T,L,te,0)}gn(y,T),y.pendingBranch=null,y.isInFallback=!1;let D=y.parent,Z=!1;for(;D;){if(D.pendingBranch){D.effects.push(...A),Z=!0;break}D=D.parent}Z||bo(A),y.effects=[],f&&t&&t.pendingBranch&&m===t.pendingId&&(t.deps--,t.deps===0&&!O&&t.resolve()),Gn(N,"onResolve")},fallback(w){if(!y.pendingBranch)return;const{vnode:O,activeBranch:N,parentComponent:_,container:T,isSVG:R}=y;Gn(O,"onFallback");const A=g(N),I=()=>{y.isInFallback&&(d(null,w,T,A,_,null,R,l,c),gn(y,w))},L=w.transition&&w.transition.mode==="out-in";L&&(N.transition.afterLeave=I),y.isInFallback=!0,h(N,_,null,!0),L||I()},move(w,O,N){y.activeBranch&&v(y.activeBranch,w,O,N),y.container=w},next(){return y.activeBranch&&g(y.activeBranch)},registerDep(w,O){const N=!!y.pendingBranch;N&&y.deps++;const _=w.vnode.el;w.asyncDep.catch(T=>{nn(T,w,0)}).then(T=>{if(w.isUnmounted||y.isUnmounted||y.pendingId!==w.suspenseId)return;w.asyncResolved=!0;const{vnode:R}=w;Ii(w,T,!1),_&&(R.el=_);const A=!_&&w.subTree.el;O(w,R,p(_||w.subTree.el),_?null:g(w.subTree),y,o,c),A&&b(A),_o(w,R.el),N&&--y.deps===0&&y.resolve()})},unmount(w,O){y.isUnmounted=!0,y.activeBranch&&h(y.activeBranch,n,w,O),y.pendingBranch&&h(y.pendingBranch,n,w,O)}};return y}function up(e,t,n,r,s,i,o,l,c){const a=t.suspense=Eo(t,r,n,e.parentNode,document.createElement("div"),null,s,i,o,l,!0),u=c(e,a.pendingBranch=t.ssContent,n,a,i,o);return a.deps===0&&a.resolve(!1,!0),u}function fp(e){const{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=Nl(r?n.default:n),e.ssFallback=r?Nl(n.fallback):ae(Ne)}function Nl(e){let t;if(z(e)){const n=Yt&&e._c;n&&(e._d=!1,Ms()),e=e(),n&&(e._d=!0,t=Fe,Ha())}return H(e)&&(e=np(e)),e=xe(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function fa(e,t){t&&t.pendingBranch?H(e)?t.effects.push(...e):t.effects.push(e):bo(e)}function gn(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e,s=n.el=t.el;r&&r.subTree===n&&(r.vnode.el=s,_o(r,s))}function dp(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}function pp(e,t){return pr(e,null,t)}function da(e,t){return pr(e,null,{flush:"post"})}function hp(e,t){return pr(e,null,{flush:"sync"})}const Pr={};function Nt(e,t,n){return pr(e,t,n)}function pr(e,t,{immediate:n,deep:r,flush:s,onTrack:i,onTrigger:o}=oe){var l;const c=lo()===((l=ge)==null?void 0:l.scope)?ge:null;let a,u=!1,d=!1;if(de(e)?(a=()=>e.value,u=Jn(e)):dt(e)?(a=()=>e,r=!0):H(e)?(d=!0,u=e.some(y=>dt(y)||Jn(y)),a=()=>e.map(y=>{if(de(y))return y.value;if(dt(y))return Ht(y);if(z(y))return pt(y,c,2)})):z(e)?t?a=()=>pt(e,c,2):a=()=>{if(!(c&&c.isUnmounted))return v&&v(),$e(e,c,3,[h])}:a=Ae,t&&r){const y=a;a=()=>Ht(y())}let v,h=y=>{v=f.onStop=()=>{pt(y,c,4)}},g;if(_n)if(h=Ae,t?n&&$e(t,c,3,[a(),d?[]:void 0,h]):a(),s==="sync"){const y=Ga();g=y.__watcherHandles||(y.__watcherHandles=[])}else return Ae;let p=d?new Array(e.length).fill(Pr):Pr;const b=()=>{if(f.active)if(t){const y=f.run();(r||u||(d?y.some((w,O)=>bn(w,p[O])):bn(y,p)))&&(v&&v(),$e(t,c,3,[y,p===Pr?void 0:d&&p[0]===Pr?[]:p,h]),p=y)}else f.run()};b.allowRecurse=!!t;let m;s==="sync"?m=b:s==="post"?m=()=>we(b,c&&c.suspense):(b.pre=!0,c&&(b.id=c.uid),m=()=>Ts(b));const f=new fr(a,m);t?n?b():p=f.run():s==="post"?we(f.run.bind(f),c&&c.suspense):f.run();const E=()=>{f.stop(),c&&c.scope&&no(c.scope.effects,f)};return g&&g.push(E),E}function mp(e,t,n){const r=this.proxy,s=Q(e)?e.includes(".")?pa(r,e):()=>r[e]:e.bind(r,r);let i;z(t)?i=t:(i=t.handler,n=t);const o=ge;Mt(this);const l=pr(s,i.bind(r),n);return o?Mt(o):Rt(),l}function pa(e,t){const n=t.split(".");return()=>{let r=e;for(let s=0;s{Ht(n,t)});else if(Dc(e))for(const n in e)Ht(e[n],t);return e}function gp(e,t){const n=Ee;if(n===null)return e;const r=Bs(n)||n.proxy,s=e.dirs||(e.dirs=[]);for(let i=0;i{e.isMounted=!0}),Fs(()=>{e.isUnmounting=!0}),e}const Ve=[Function,Array],wo={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Ve,onEnter:Ve,onAfterEnter:Ve,onEnterCancelled:Ve,onBeforeLeave:Ve,onLeave:Ve,onAfterLeave:Ve,onLeaveCancelled:Ve,onBeforeAppear:Ve,onAppear:Ve,onAfterAppear:Ve,onAppearCancelled:Ve},yp={name:"BaseTransition",props:wo,setup(e,{slots:t}){const n=yt(),r=So();let s;return()=>{const i=t.default&&Rs(t.default(),!0);if(!i||!i.length)return;let o=i[0];if(i.length>1){for(const p of i)if(p.type!==Ne){o=p;break}}const l=G(e),{mode:c}=l;if(r.isLeaving)return Xs(o);const a=Rl(o);if(!a)return Xs(o);const u=vn(a,l,r,n);Zt(a,u);const d=n.subTree,v=d&&Rl(d);let h=!1;const{getTransitionKey:g}=a.type;if(g){const p=g();s===void 0?s=p:p!==s&&(s=p,h=!0)}if(v&&v.type!==Ne&&(!Xe(a,v)||h)){const p=vn(v,l,r,n);if(Zt(v,p),c==="out-in")return r.isLeaving=!0,p.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&n.update()},Xs(o);c==="in-out"&&a.type!==Ne&&(p.delayLeave=(b,m,f)=>{const E=ma(r,v);E[String(v.key)]=v,b._leaveCb=()=>{m(),b._leaveCb=void 0,delete u.delayedLeave},u.delayedLeave=f})}return o}}},ha=yp;function ma(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function vn(e,t,n,r){const{appear:s,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:a,onEnterCancelled:u,onBeforeLeave:d,onLeave:v,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:p,onAppear:b,onAfterAppear:m,onAppearCancelled:f}=t,E=String(e.key),y=ma(n,e),w=(_,T)=>{_&&$e(_,r,9,T)},O=(_,T)=>{const R=T[1];w(_,T),H(_)?_.every(A=>A.length<=1)&&R():_.length<=1&&R()},N={mode:i,persisted:o,beforeEnter(_){let T=l;if(!n.isMounted)if(s)T=p||l;else return;_._leaveCb&&_._leaveCb(!0);const R=y[E];R&&Xe(e,R)&&R.el._leaveCb&&R.el._leaveCb(),w(T,[_])},enter(_){let T=c,R=a,A=u;if(!n.isMounted)if(s)T=b||c,R=m||a,A=f||u;else return;let I=!1;const L=_._enterCb=D=>{I||(I=!0,D?w(A,[_]):w(R,[_]),N.delayedLeave&&N.delayedLeave(),_._enterCb=void 0)};T?O(T,[_,L]):L()},leave(_,T){const R=String(e.key);if(_._enterCb&&_._enterCb(!0),n.isUnmounting)return T();w(d,[_]);let A=!1;const I=_._leaveCb=L=>{A||(A=!0,T(),L?w(g,[_]):w(h,[_]),_._leaveCb=void 0,y[R]===e&&delete y[R])};y[R]=e,v?O(v,[_,I]):I()},clone(_){return vn(_,t,n,r)}};return N}function Xs(e){if(hr(e))return e=it(e),e.children=null,e}function Rl(e){return hr(e)?e.children?e.children[0]:void 0:e}function Zt(e,t){e.shapeFlag&6&&e.component?Zt(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Rs(e,t=!1,n){let r=[],s=0;for(let i=0;i1)for(let i=0;iee({name:e.name},t,{setup:e}))():e}const Kt=e=>!!e.type.__asyncLoader;function bp(e){z(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:s=200,timeout:i,suspensible:o=!0,onError:l}=e;let c=null,a,u=0;const d=()=>(u++,c=null,v()),v=()=>{let h;return c||(h=c=t().catch(g=>{if(g=g instanceof Error?g:new Error(String(g)),l)return new Promise((p,b)=>{l(g,()=>p(d()),()=>b(g),u+1)});throw g}).then(g=>h!==c&&c?c:(g&&(g.__esModule||g[Symbol.toStringTag]==="Module")&&(g=g.default),a=g,g)))};return Ps({name:"AsyncComponentWrapper",__asyncLoader:v,get __asyncResolved(){return a},setup(){const h=ge;if(a)return()=>Gs(a,h);const g=f=>{c=null,nn(f,h,13,!r)};if(o&&h.suspense||_n)return v().then(f=>()=>Gs(f,h)).catch(f=>(g(f),()=>r?ae(r,{error:f}):null));const p=Ot(!1),b=Ot(),m=Ot(!!s);return s&&setTimeout(()=>{m.value=!1},s),i!=null&&setTimeout(()=>{if(!p.value&&!b.value){const f=new Error(`Async component timed out after ${i}ms.`);g(f),b.value=f}},i),v().then(()=>{p.value=!0,h.parent&&hr(h.parent.vnode)&&Ts(h.parent.update)}).catch(f=>{g(f),b.value=f}),()=>{if(p.value&&a)return Gs(a,h);if(b.value&&r)return ae(r,{error:b.value});if(n&&!m.value)return ae(n)}}})}function Gs(e,t){const{ref:n,props:r,children:s,ce:i}=t.vnode,o=ae(e,r,s);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const hr=e=>e.type.__isKeepAlive,vp={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=yt(),r=n.ctx;if(!r.renderer)return()=>{const f=t.default&&t.default();return f&&f.length===1?f[0]:f};const s=new Map,i=new Set;let o=null;const l=n.suspense,{renderer:{p:c,m:a,um:u,o:{createElement:d}}}=r,v=d("div");r.activate=(f,E,y,w,O)=>{const N=f.component;a(f,E,y,0,l),c(N.vnode,f,E,y,N,l,w,f.slotScopeIds,O),we(()=>{N.isDeactivated=!1,N.a&&hn(N.a);const _=f.props&&f.props.onVnodeMounted;_&&Ie(_,N.parent,f)},l)},r.deactivate=f=>{const E=f.component;a(f,v,null,1,l),we(()=>{E.da&&hn(E.da);const y=f.props&&f.props.onVnodeUnmounted;y&&Ie(y,E.parent,f),E.isDeactivated=!0},l)};function h(f){ei(f),u(f,n,l,!0)}function g(f){s.forEach((E,y)=>{const w=ki(E.type);w&&(!f||!f(w))&&p(y)})}function p(f){const E=s.get(f);!o||!Xe(E,o)?h(E):o&&ei(o),s.delete(f),i.delete(f)}Nt(()=>[e.include,e.exclude],([f,E])=>{f&&g(y=>jn(f,y)),E&&g(y=>!jn(E,y))},{flush:"post",deep:!0});let b=null;const m=()=>{b!=null&&s.set(b,ti(n.subTree))};return mr(m),Is(m),Fs(()=>{s.forEach(f=>{const{subTree:E,suspense:y}=n,w=ti(E);if(f.type===w.type&&f.key===w.key){ei(w);const O=w.component.da;O&&we(O,y);return}h(f)})}),()=>{if(b=null,!t.default)return null;const f=t.default(),E=f[0];if(f.length>1)return o=null,f;if(!kt(E)||!(E.shapeFlag&4)&&!(E.shapeFlag&128))return o=null,E;let y=ti(E);const w=y.type,O=ki(Kt(y)?y.type.__asyncResolved||{}:w),{include:N,exclude:_,max:T}=e;if(N&&(!O||!jn(N,O))||_&&O&&jn(_,O))return o=y,E;const R=y.key==null?w:y.key,A=s.get(R);return y.el&&(y=it(y),E.shapeFlag&128&&(E.ssContent=y)),b=R,A?(y.el=A.el,y.component=A.component,y.transition&&Zt(y,y.transition),y.shapeFlag|=512,i.delete(R),i.add(R)):(i.add(R),T&&i.size>parseInt(T,10)&&p(i.values().next().value)),y.shapeFlag|=256,o=y,ua(E.type)?E:y}}},_p=vp;function jn(e,t){return H(e)?e.some(n=>jn(n,t)):Q(e)?e.split(",").includes(t):Df(e)?e.test(t):!1}function ga(e,t){ba(e,"a",t)}function ya(e,t){ba(e,"da",t)}function ba(e,t,n=ge){const r=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(As(t,r,n),n){let s=n.parent;for(;s&&s.parent;)hr(s.parent.vnode)&&Ep(r,t,n,s),s=s.parent}}function Ep(e,t,n,r){const s=As(t,e,r,!0);ks(()=>{no(r[t],s)},n)}function ei(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function ti(e){return e.shapeFlag&128?e.ssContent:e}function As(e,t,n=ge,r=!1){if(n){const s=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;Rn(),Mt(n);const l=$e(t,n,e,o);return Rt(),Pn(),l});return r?s.unshift(i):s.push(i),i}}const gt=e=>(t,n=ge)=>(!_n||e==="sp")&&As(e,(...r)=>t(...r),n),va=gt("bm"),mr=gt("m"),_a=gt("bu"),Is=gt("u"),Fs=gt("bum"),ks=gt("um"),Ea=gt("sp"),Sa=gt("rtg"),wa=gt("rtc");function Ca(e,t=ge){As("ec",e,t)}const Co="components",Sp="directives";function wp(e,t){return To(Co,e,!0,t)||e}const Ta=Symbol.for("v-ndc");function Cp(e){return Q(e)?To(Co,e,!1)||e:e||Ta}function Tp(e){return To(Sp,e)}function To(e,t,n=!0,r=!1){const s=Ee||ge;if(s){const i=s.type;if(e===Co){const l=ki(i,!1);if(l&&(l===t||l===ye(t)||l===tn(ye(t))))return i}const o=Pl(s[e]||i[e],t)||Pl(s.appContext[e],t);return!o&&r?i:o}}function Pl(e,t){return e&&(e[t]||e[ye(t)]||e[tn(ye(t))])}function Op(e,t,n,r){let s;const i=n&&n[r];if(H(e)||Q(e)){s=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);s=new Array(o.length);for(let l=0,c=o.length;l{const i=r.fn(...s);return i&&(i.key=r.key),i}:r.fn)}return e}function Rp(e,t,n={},r,s){if(Ee.isCE||Ee.parent&&Kt(Ee.parent)&&Ee.parent.isCE)return t!=="default"&&(n.name=t),ae("slot",n,r&&r());let i=e[t];i&&i._c&&(i._d=!1),Ms();const o=i&&Oa(i(n)),l=Po(Ce,{key:n.key||o&&o.key||`_${t}`},o||(r?r():[]),o&&e._===1?64:-2);return!s&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function Oa(e){return e.some(t=>kt(t)?!(t.type===Ne||t.type===Ce&&!Oa(t.children)):!0)?e:null}function Pp(e,t){const n={};for(const r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:pn(r)]=e[r];return n}const Ci=e=>e?Wa(e)?Bs(e)||e.proxy:Ci(e.parent):null,Hn=ee(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ci(e.parent),$root:e=>Ci(e.root),$emit:e=>e.emit,$options:e=>Oo(e),$forceUpdate:e=>e.f||(e.f=()=>Ts(e.update)),$nextTick:e=>e.n||(e.n=Cs.bind(e.proxy)),$watch:e=>mp.bind(e)}),ni=(e,t)=>e!==oe&&!e.__isScriptSetup&&re(e,t),Ti={get({_:e},t){const{ctx:n,setupState:r,data:s,props:i,accessCache:o,type:l,appContext:c}=e;let a;if(t[0]!=="$"){const h=o[t];if(h!==void 0)switch(h){case 1:return r[t];case 2:return s[t];case 4:return n[t];case 3:return i[t]}else{if(ni(r,t))return o[t]=1,r[t];if(s!==oe&&re(s,t))return o[t]=2,s[t];if((a=e.propsOptions[0])&&re(a,t))return o[t]=3,i[t];if(n!==oe&&re(n,t))return o[t]=4,n[t];Oi&&(o[t]=0)}}const u=Hn[t];let d,v;if(u)return t==="$attrs"&&Me(e,"get",t),u(e);if((d=l.__cssModules)&&(d=d[t]))return d;if(n!==oe&&re(n,t))return o[t]=4,n[t];if(v=c.config.globalProperties,re(v,t))return v[t]},set({_:e},t,n){const{data:r,setupState:s,ctx:i}=e;return ni(s,t)?(s[t]=n,!0):r!==oe&&re(r,t)?(r[t]=n,!0):re(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:s,propsOptions:i}},o){let l;return!!n[o]||e!==oe&&re(e,o)||ni(t,o)||(l=i[0])&&re(l,o)||re(r,o)||re(Hn,o)||re(s.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:re(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},Ap=ee({},Ti,{get(e,t){if(t!==Symbol.unscopables)return Ti.get(e,t,e)},has(e,t){return t[0]!=="_"&&!Vf(t)}});function Ip(){return null}function Fp(){return null}function kp(e){}function Mp(e){}function Lp(){return null}function Bp(){}function Dp(e,t){return null}function xp(){return Na().slots}function jp(){return Na().attrs}function $p(e,t,n){const r=yt();if(n&&n.local){const s=Ot(e[t]);return Nt(()=>e[t],i=>s.value=i),Nt(s,i=>{i!==e[t]&&r.emit(`update:${t}`,i)}),s}else return{__v_isRef:!0,get value(){return e[t]},set value(s){r.emit(`update:${t}`,s)}}}function Na(){const e=yt();return e.setupContext||(e.setupContext=Qa(e))}function er(e){return H(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function Hp(e,t){const n=er(e);for(const r in t){if(r.startsWith("__skip"))continue;let s=n[r];s?H(s)||z(s)?s=n[r]={type:s,default:t[r]}:s.default=t[r]:s===null&&(s=n[r]={default:t[r]}),s&&t[`__skip_${r}`]&&(s.skipFactory=!0)}return n}function Up(e,t){return!e||!t?e||t:H(e)&&H(t)?e.concat(t):ee({},er(e),er(t))}function Vp(e,t){const n={};for(const r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n}function qp(e){const t=yt();let n=e();return Rt(),ro(n)&&(n=n.catch(r=>{throw Mt(t),r})),[n,()=>Mt(t)]}let Oi=!0;function Kp(e){const t=Oo(e),n=e.proxy,r=e.ctx;Oi=!1,t.beforeCreate&&Al(t.beforeCreate,e,"bc");const{data:s,computed:i,methods:o,watch:l,provide:c,inject:a,created:u,beforeMount:d,mounted:v,beforeUpdate:h,updated:g,activated:p,deactivated:b,beforeDestroy:m,beforeUnmount:f,destroyed:E,unmounted:y,render:w,renderTracked:O,renderTriggered:N,errorCaptured:_,serverPrefetch:T,expose:R,inheritAttrs:A,components:I,directives:L,filters:D}=t;if(a&&Wp(a,r,null),o)for(const te in o){const ne=o[te];z(ne)&&(r[te]=ne.bind(n))}if(s){const te=s.call(n,n);le(te)&&(e.data=ot(te))}if(Oi=!0,i)for(const te in i){const ne=i[te],Se=z(ne)?ne.bind(n,n):z(ne.get)?ne.get.bind(n,n):Ae,Bt=!z(ne)&&z(ne.set)?ne.set.bind(n):Ae,Ze=Lo({get:Se,set:Bt});Object.defineProperty(r,te,{enumerable:!0,configurable:!0,get:()=>Ze.value,set:_e=>Ze.value=_e})}if(l)for(const te in l)Ra(l[te],r,n,te);if(c){const te=z(c)?c.call(n):c;Reflect.ownKeys(te).forEach(ne=>{Aa(ne,te[ne])})}u&&Al(u,e,"c");function W(te,ne){H(ne)?ne.forEach(Se=>te(Se.bind(n))):ne&&te(ne.bind(n))}if(W(va,d),W(mr,v),W(_a,h),W(Is,g),W(ga,p),W(ya,b),W(Ca,_),W(wa,O),W(Sa,N),W(Fs,f),W(ks,y),W(Ea,T),H(R))if(R.length){const te=e.exposed||(e.exposed={});R.forEach(ne=>{Object.defineProperty(te,ne,{get:()=>n[ne],set:Se=>n[ne]=Se})})}else e.exposed||(e.exposed={});w&&e.render===Ae&&(e.render=w),A!=null&&(e.inheritAttrs=A),I&&(e.components=I),L&&(e.directives=L)}function Wp(e,t,n=Ae){H(e)&&(e=Ni(e));for(const r in e){const s=e[r];let i;le(s)?"default"in s?i=yn(s.from||r,s.default,!0):i=yn(s.from||r):i=yn(s),de(i)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[r]=i}}function Al(e,t,n){$e(H(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function Ra(e,t,n,r){const s=r.includes(".")?pa(n,r):()=>n[r];if(Q(e)){const i=t[e];z(i)&&Nt(s,i)}else if(z(e))Nt(s,e.bind(n));else if(le(e))if(H(e))e.forEach(i=>Ra(i,t,n,r));else{const i=z(e.handler)?e.handler.bind(n):t[e.handler];z(i)&&Nt(s,i,e)}}function Oo(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:s,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!s.length&&!n&&!r?c=t:(c={},s.length&&s.forEach(a=>Xr(c,a,o,!0)),Xr(c,t,o)),le(t)&&i.set(t,c),c}function Xr(e,t,n,r=!1){const{mixins:s,extends:i}=t;i&&Xr(e,i,n,!0),s&&s.forEach(o=>Xr(e,o,n,!0));for(const o in t)if(!(r&&o==="expose")){const l=zp[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const zp={data:Il,props:Fl,emits:Fl,methods:$n,computed:$n,beforeCreate:Pe,created:Pe,beforeMount:Pe,mounted:Pe,beforeUpdate:Pe,updated:Pe,beforeDestroy:Pe,beforeUnmount:Pe,destroyed:Pe,unmounted:Pe,activated:Pe,deactivated:Pe,errorCaptured:Pe,serverPrefetch:Pe,components:$n,directives:$n,watch:Zp,provide:Il,inject:Jp};function Il(e,t){return t?e?function(){return ee(z(e)?e.call(this,this):e,z(t)?t.call(this,this):t)}:t:e}function Jp(e,t){return $n(Ni(e),Ni(t))}function Ni(e){if(H(e)){const t={};for(let n=0;n1)return n&&z(t)?t.call(r&&r.proxy):t}}function Ia(){return!!(ge||Ee||tr)}function Xp(e,t,n,r=!1){const s={},i={};zr(i,Ls,1),e.propsDefaults=Object.create(null),Fa(e,t,s,i);for(const o in e.propsOptions[0])o in s||(s[o]=void 0);n?e.props=r?s:ta(s):e.type.props?e.props=s:e.props=i,e.attrs=i}function Gp(e,t,n,r){const{props:s,attrs:i,vnode:{patchFlag:o}}=e,l=G(s),[c]=e.propsOptions;let a=!1;if((r||o>0)&&!(o&16)){if(o&8){const u=e.vnode.dynamicProps;for(let d=0;d{c=!0;const[v,h]=ka(d,t,!0);ee(o,v),h&&l.push(...h)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!i&&!c)return le(e)&&r.set(e,fn),fn;if(H(i))for(let u=0;u-1,h[1]=p<0||g-1||re(h,"default"))&&l.push(d)}}}const a=[o,l];return le(e)&&r.set(e,a),a}function kl(e){return e[0]!=="$"}function Ml(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function Ll(e,t){return Ml(e)===Ml(t)}function Bl(e,t){return H(t)?t.findIndex(n=>Ll(n,e)):z(t)&&Ll(t,e)?0:-1}const Ma=e=>e[0]==="_"||e==="$stable",No=e=>H(e)?e.map(xe):[xe(e)],eh=(e,t,n)=>{if(t._n)return t;const r=vo((...s)=>No(t(...s)),n);return r._c=!1,r},La=(e,t,n)=>{const r=e._ctx;for(const s in e){if(Ma(s))continue;const i=e[s];if(z(i))t[s]=eh(s,i,r);else if(i!=null){const o=No(i);t[s]=()=>o}}},Ba=(e,t)=>{const n=No(t);e.slots.default=()=>n},th=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=G(t),zr(t,"_",n)):La(t,e.slots={})}else e.slots={},t&&Ba(e,t);zr(e.slots,Ls,1)},nh=(e,t,n)=>{const{vnode:r,slots:s}=e;let i=!0,o=oe;if(r.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:(ee(s,t),!n&&l===1&&delete s._):(i=!t.$stable,La(t,s)),o=t}else t&&(Ba(e,t),o={default:1});if(i)for(const l in s)!Ma(l)&&!(l in o)&&delete s[l]};function Gr(e,t,n,r,s=!1){if(H(e)){e.forEach((v,h)=>Gr(v,t&&(H(t)?t[h]:t),n,r,s));return}if(Kt(r)&&!s)return;const i=r.shapeFlag&4?Bs(r.component)||r.component.proxy:r.el,o=s?null:i,{i:l,r:c}=e,a=t&&t.r,u=l.refs===oe?l.refs={}:l.refs,d=l.setupState;if(a!=null&&a!==c&&(Q(a)?(u[a]=null,re(d,a)&&(d[a]=null)):de(a)&&(a.value=null)),z(c))pt(c,l,12,[o,u]);else{const v=Q(c),h=de(c);if(v||h){const g=()=>{if(e.f){const p=v?re(d,c)?d[c]:u[c]:c.value;s?H(p)&&no(p,i):H(p)?p.includes(i)||p.push(i):v?(u[c]=[i],re(d,c)&&(d[c]=u[c])):(c.value=[i],e.k&&(u[e.k]=c.value))}else v?(u[c]=o,re(d,c)&&(d[c]=o)):h&&(c.value=o,e.k&&(u[e.k]=o))};o?(g.id=-1,we(g,n)):g()}}}let vt=!1;const Ar=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",Ir=e=>e.nodeType===8;function rh(e){const{mt:t,p:n,o:{patchProp:r,createText:s,nextSibling:i,parentNode:o,remove:l,insert:c,createComment:a}}=e,u=(m,f)=>{if(!f.hasChildNodes()){n(null,m,f),Yr(),f._vnode=m;return}vt=!1,d(f.firstChild,m,null,null,null),Yr(),f._vnode=m},d=(m,f,E,y,w,O=!1)=>{const N=Ir(m)&&m.data==="[",_=()=>p(m,f,E,y,w,N),{type:T,ref:R,shapeFlag:A,patchFlag:I}=f;let L=m.nodeType;f.el=m,I===-2&&(O=!1,f.dynamicChildren=null);let D=null;switch(T){case Qt:L!==3?f.children===""?(c(f.el=s(""),o(m),m),D=m):D=_():(m.data!==f.children&&(vt=!0,m.data=f.children),D=i(m));break;case Ne:L!==8||N?D=_():D=i(m);break;case Wt:if(N&&(m=i(m),L=m.nodeType),L===1||L===3){D=m;const Z=!f.children.length;for(let W=0;W{O=O||!!f.dynamicChildren;const{type:N,props:_,patchFlag:T,shapeFlag:R,dirs:A}=f,I=N==="input"&&A||N==="option";if(I||T!==-1){if(A&&rt(f,null,E,"created"),_)if(I||!O||T&48)for(const D in _)(I&&D.endsWith("value")||Gt(D)&&!Vt(D))&&r(m,D,null,_[D],!1,void 0,E);else _.onClick&&r(m,"onClick",null,_.onClick,!1,void 0,E);let L;if((L=_&&_.onVnodeBeforeMount)&&Ie(L,E,f),A&&rt(f,null,E,"beforeMount"),((L=_&&_.onVnodeMounted)||A)&&fa(()=>{L&&Ie(L,E,f),A&&rt(f,null,E,"mounted")},y),R&16&&!(_&&(_.innerHTML||_.textContent))){let D=h(m.firstChild,f,m,E,y,w,O);for(;D;){vt=!0;const Z=D;D=D.nextSibling,l(Z)}}else R&8&&m.textContent!==f.children&&(vt=!0,m.textContent=f.children)}return m.nextSibling},h=(m,f,E,y,w,O,N)=>{N=N||!!f.dynamicChildren;const _=f.children,T=_.length;for(let R=0;R{const{slotScopeIds:N}=f;N&&(w=w?w.concat(N):N);const _=o(m),T=h(i(m),f,_,E,y,w,O);return T&&Ir(T)&&T.data==="]"?i(f.anchor=T):(vt=!0,c(f.anchor=a("]"),_,T),T)},p=(m,f,E,y,w,O)=>{if(vt=!0,f.el=null,O){const T=b(m);for(;;){const R=i(m);if(R&&R!==T)l(R);else break}}const N=i(m),_=o(m);return l(m),n(null,f,_,N,E,y,Ar(_),w),N},b=m=>{let f=0;for(;m;)if(m=i(m),m&&Ir(m)&&(m.data==="["&&f++,m.data==="]")){if(f===0)return i(m);f--}return m};return[u,d]}const we=fa;function Da(e){return ja(e)}function xa(e){return ja(e,rh)}function ja(e,t){const n=vi();n.__VUE__=!0;const{insert:r,remove:s,patchProp:i,createElement:o,createText:l,createComment:c,setText:a,setElementText:u,parentNode:d,nextSibling:v,setScopeId:h=Ae,insertStaticContent:g}=e,p=(S,C,P,M=null,k=null,j=null,U=!1,x=null,$=!!C.dynamicChildren)=>{if(S===C)return;S&&!Xe(S,C)&&(M=Sr(S),_e(S,k,j,!0),S=null),C.patchFlag===-2&&($=!1,C.dynamicChildren=null);const{type:B,ref:q,shapeFlag:V}=C;switch(B){case Qt:b(S,C,P,M);break;case Ne:m(S,C,P,M);break;case Wt:S==null&&f(C,P,M,U);break;case Ce:I(S,C,P,M,k,j,U,x,$);break;default:V&1?w(S,C,P,M,k,j,U,x,$):V&6?L(S,C,P,M,k,j,U,x,$):(V&64||V&128)&&B.process(S,C,P,M,k,j,U,x,$,rn)}q!=null&&k&&Gr(q,S&&S.ref,j,C||S,!C)},b=(S,C,P,M)=>{if(S==null)r(C.el=l(C.children),P,M);else{const k=C.el=S.el;C.children!==S.children&&a(k,C.children)}},m=(S,C,P,M)=>{S==null?r(C.el=c(C.children||""),P,M):C.el=S.el},f=(S,C,P,M)=>{[S.el,S.anchor]=g(S.children,C,P,M,S.el,S.anchor)},E=({el:S,anchor:C},P,M)=>{let k;for(;S&&S!==C;)k=v(S),r(S,P,M),S=k;r(C,P,M)},y=({el:S,anchor:C})=>{let P;for(;S&&S!==C;)P=v(S),s(S),S=P;s(C)},w=(S,C,P,M,k,j,U,x,$)=>{U=U||C.type==="svg",S==null?O(C,P,M,k,j,U,x,$):T(S,C,k,j,U,x,$)},O=(S,C,P,M,k,j,U,x)=>{let $,B;const{type:q,props:V,shapeFlag:K,transition:J,dirs:X}=S;if($=S.el=o(S.type,j,V&&V.is,V),K&8?u($,S.children):K&16&&_(S.children,$,null,M,k,j&&q!=="foreignObject",U,x),X&&rt(S,null,M,"created"),N($,S,S.scopeId,U,M),V){for(const ce in V)ce!=="value"&&!Vt(ce)&&i($,ce,null,V[ce],j,S.children,M,k,ct);"value"in V&&i($,"value",null,V.value),(B=V.onVnodeBeforeMount)&&Ie(B,M,S)}X&&rt(S,null,M,"beforeMount");const ue=(!k||k&&!k.pendingBranch)&&J&&!J.persisted;ue&&J.beforeEnter($),r($,C,P),((B=V&&V.onVnodeMounted)||ue||X)&&we(()=>{B&&Ie(B,M,S),ue&&J.enter($),X&&rt(S,null,M,"mounted")},k)},N=(S,C,P,M,k)=>{if(P&&h(S,P),M)for(let j=0;j{for(let B=$;B{const x=C.el=S.el;let{patchFlag:$,dynamicChildren:B,dirs:q}=C;$|=S.patchFlag&16;const V=S.props||oe,K=C.props||oe;let J;P&&Dt(P,!1),(J=K.onVnodeBeforeUpdate)&&Ie(J,P,C,S),q&&rt(C,S,P,"beforeUpdate"),P&&Dt(P,!0);const X=k&&C.type!=="foreignObject";if(B?R(S.dynamicChildren,B,x,P,M,X,j):U||ne(S,C,x,null,P,M,X,j,!1),$>0){if($&16)A(x,C,V,K,P,M,k);else if($&2&&V.class!==K.class&&i(x,"class",null,K.class,k),$&4&&i(x,"style",V.style,K.style,k),$&8){const ue=C.dynamicProps;for(let ce=0;ce{J&&Ie(J,P,C,S),q&&rt(C,S,P,"updated")},M)},R=(S,C,P,M,k,j,U)=>{for(let x=0;x{if(P!==M){if(P!==oe)for(const x in P)!Vt(x)&&!(x in M)&&i(S,x,P[x],null,U,C.children,k,j,ct);for(const x in M){if(Vt(x))continue;const $=M[x],B=P[x];$!==B&&x!=="value"&&i(S,x,B,$,U,C.children,k,j,ct)}"value"in M&&i(S,"value",P.value,M.value)}},I=(S,C,P,M,k,j,U,x,$)=>{const B=C.el=S?S.el:l(""),q=C.anchor=S?S.anchor:l("");let{patchFlag:V,dynamicChildren:K,slotScopeIds:J}=C;J&&(x=x?x.concat(J):J),S==null?(r(B,P,M),r(q,P,M),_(C.children,P,q,k,j,U,x,$)):V>0&&V&64&&K&&S.dynamicChildren?(R(S.dynamicChildren,K,P,k,j,U,x),(C.key!=null||k&&C===k.subTree)&&Ro(S,C,!0)):ne(S,C,P,q,k,j,U,x,$)},L=(S,C,P,M,k,j,U,x,$)=>{C.slotScopeIds=x,S==null?C.shapeFlag&512?k.ctx.activate(C,P,M,U,$):D(C,P,M,k,j,U,$):Z(S,C,$)},D=(S,C,P,M,k,j,U)=>{const x=S.component=Ka(S,M,k);if(hr(S)&&(x.ctx.renderer=rn),za(x),x.asyncDep){if(k&&k.registerDep(x,W),!S.el){const $=x.subTree=ae(Ne);m(null,$,C,P)}return}W(x,S,C,P,k,j,U)},Z=(S,C,P)=>{const M=C.component=S.component;if(ip(S,C,P))if(M.asyncDep&&!M.asyncResolved){te(M,C,P);return}else M.next=C,Qd(M.update),M.update();else C.el=S.el,M.vnode=C},W=(S,C,P,M,k,j,U)=>{const x=()=>{if(S.isMounted){let{next:q,bu:V,u:K,parent:J,vnode:X}=S,ue=q,ce;Dt(S,!1),q?(q.el=X.el,te(S,q,U)):q=X,V&&hn(V),(ce=q.props&&q.props.onVnodeBeforeUpdate)&&Ie(ce,J,q,X),Dt(S,!0);const he=jr(S),Qe=S.subTree;S.subTree=he,p(Qe,he,d(Qe.el),Sr(Qe),S,k,j),q.el=he.el,ue===null&&_o(S,he.el),K&&we(K,k),(ce=q.props&&q.props.onVnodeUpdated)&&we(()=>Ie(ce,J,q,X),k)}else{let q;const{el:V,props:K}=C,{bm:J,m:X,parent:ue}=S,ce=Kt(C);if(Dt(S,!1),J&&hn(J),!ce&&(q=K&&K.onVnodeBeforeMount)&&Ie(q,ue,C),Dt(S,!0),V&&Ys){const he=()=>{S.subTree=jr(S),Ys(V,S.subTree,S,k,null)};ce?C.type.__asyncLoader().then(()=>!S.isUnmounted&&he()):he()}else{const he=S.subTree=jr(S);p(null,he,P,M,S,k,j),C.el=he.el}if(X&&we(X,k),!ce&&(q=K&&K.onVnodeMounted)){const he=C;we(()=>Ie(q,ue,he),k)}(C.shapeFlag&256||ue&&Kt(ue.vnode)&&ue.vnode.shapeFlag&256)&&S.a&&we(S.a,k),S.isMounted=!0,C=P=M=null}},$=S.effect=new fr(x,()=>Ts(B),S.scope),B=S.update=()=>$.run();B.id=S.uid,Dt(S,!0),B()},te=(S,C,P)=>{C.component=S;const M=S.vnode.props;S.vnode=C,S.next=null,Gp(S,C.props,M,P),nh(S,C.children,P),Rn(),Tl(),Pn()},ne=(S,C,P,M,k,j,U,x,$=!1)=>{const B=S&&S.children,q=S?S.shapeFlag:0,V=C.children,{patchFlag:K,shapeFlag:J}=C;if(K>0){if(K&128){Bt(B,V,P,M,k,j,U,x,$);return}else if(K&256){Se(B,V,P,M,k,j,U,x,$);return}}J&8?(q&16&&ct(B,k,j),V!==B&&u(P,V)):q&16?J&16?Bt(B,V,P,M,k,j,U,x,$):ct(B,k,j,!0):(q&8&&u(P,""),J&16&&_(V,P,M,k,j,U,x,$))},Se=(S,C,P,M,k,j,U,x,$)=>{S=S||fn,C=C||fn;const B=S.length,q=C.length,V=Math.min(B,q);let K;for(K=0;Kq?ct(S,k,j,!0,!1,V):_(C,P,M,k,j,U,x,$,V)},Bt=(S,C,P,M,k,j,U,x,$)=>{let B=0;const q=C.length;let V=S.length-1,K=q-1;for(;B<=V&&B<=K;){const J=S[B],X=C[B]=$?Ct(C[B]):xe(C[B]);if(Xe(J,X))p(J,X,P,null,k,j,U,x,$);else break;B++}for(;B<=V&&B<=K;){const J=S[V],X=C[K]=$?Ct(C[K]):xe(C[K]);if(Xe(J,X))p(J,X,P,null,k,j,U,x,$);else break;V--,K--}if(B>V){if(B<=K){const J=K+1,X=JK)for(;B<=V;)_e(S[B],k,j,!0),B++;else{const J=B,X=B,ue=new Map;for(B=X;B<=K;B++){const Be=C[B]=$?Ct(C[B]):xe(C[B]);Be.key!=null&&ue.set(Be.key,B)}let ce,he=0;const Qe=K-X+1;let sn=!1,pl=0;const kn=new Array(Qe);for(B=0;B=Qe){_e(Be,k,j,!0);continue}let nt;if(Be.key!=null)nt=ue.get(Be.key);else for(ce=X;ce<=K;ce++)if(kn[ce-X]===0&&Xe(Be,C[ce])){nt=ce;break}nt===void 0?_e(Be,k,j,!0):(kn[nt-X]=B+1,nt>=pl?pl=nt:sn=!0,p(Be,C[nt],P,null,k,j,U,x,$),he++)}const hl=sn?sh(kn):fn;for(ce=hl.length-1,B=Qe-1;B>=0;B--){const Be=X+B,nt=C[Be],ml=Be+1{const{el:j,type:U,transition:x,children:$,shapeFlag:B}=S;if(B&6){Ze(S.component.subTree,C,P,M);return}if(B&128){S.suspense.move(C,P,M);return}if(B&64){U.move(S,C,P,rn);return}if(U===Ce){r(j,C,P);for(let V=0;V<$.length;V++)Ze($[V],C,P,M);r(S.anchor,C,P);return}if(U===Wt){E(S,C,P);return}if(M!==2&&B&1&&x)if(M===0)x.beforeEnter(j),r(j,C,P),we(()=>x.enter(j),k);else{const{leave:V,delayLeave:K,afterLeave:J}=x,X=()=>r(j,C,P),ue=()=>{V(j,()=>{X(),J&&J()})};K?K(j,X,ue):ue()}else r(j,C,P)},_e=(S,C,P,M=!1,k=!1)=>{const{type:j,props:U,ref:x,children:$,dynamicChildren:B,shapeFlag:q,patchFlag:V,dirs:K}=S;if(x!=null&&Gr(x,null,P,S,!0),q&256){C.ctx.deactivate(S);return}const J=q&1&&K,X=!Kt(S);let ue;if(X&&(ue=U&&U.onVnodeBeforeUnmount)&&Ie(ue,C,S),q&6)Fn(S.component,P,M);else{if(q&128){S.suspense.unmount(P,M);return}J&&rt(S,null,C,"beforeUnmount"),q&64?S.type.remove(S,C,P,k,rn,M):B&&(j!==Ce||V>0&&V&64)?ct(B,C,P,!1,!0):(j===Ce&&V&384||!k&&q&16)&&ct($,C,P),M&&In(S)}(X&&(ue=U&&U.onVnodeUnmounted)||J)&&we(()=>{ue&&Ie(ue,C,S),J&&rt(S,null,C,"unmounted")},P)},In=S=>{const{type:C,el:P,anchor:M,transition:k}=S;if(C===Ce){Zs(P,M);return}if(C===Wt){y(S);return}const j=()=>{s(P),k&&!k.persisted&&k.afterLeave&&k.afterLeave()};if(S.shapeFlag&1&&k&&!k.persisted){const{leave:U,delayLeave:x}=k,$=()=>U(P,j);x?x(S.el,j,$):$()}else j()},Zs=(S,C)=>{let P;for(;S!==C;)P=v(S),s(S),S=P;s(C)},Fn=(S,C,P)=>{const{bum:M,scope:k,update:j,subTree:U,um:x}=S;M&&hn(M),k.stop(),j&&(j.active=!1,_e(U,S,C,P)),x&&we(x,C),we(()=>{S.isUnmounted=!0},C),C&&C.pendingBranch&&!C.isUnmounted&&S.asyncDep&&!S.asyncResolved&&S.suspenseId===C.pendingId&&(C.deps--,C.deps===0&&C.resolve())},ct=(S,C,P,M=!1,k=!1,j=0)=>{for(let U=j;US.shapeFlag&6?Sr(S.component.subTree):S.shapeFlag&128?S.suspense.next():v(S.anchor||S.el),dl=(S,C,P)=>{S==null?C._vnode&&_e(C._vnode,null,null,!0):p(C._vnode||null,S,C,null,null,null,P),Tl(),Yr(),C._vnode=S},rn={p,um:_e,m:Ze,r:In,mt:D,mc:_,pc:ne,pbc:R,n:Sr,o:e};let Qs,Ys;return t&&([Qs,Ys]=t(rn)),{render:dl,hydrate:Qs,createApp:Yp(dl,Qs)}}function Dt({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Ro(e,t,n=!1){const r=e.children,s=t.children;if(H(r)&&H(s))for(let i=0;i>1,e[n[l]]0&&(t[r]=n[i-1]),n[i]=r)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}const ih=e=>e.__isTeleport,Un=e=>e&&(e.disabled||e.disabled===""),Dl=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Pi=(e,t)=>{const n=e&&e.to;return Q(n)?t?t(n):null:n},oh={__isTeleport:!0,process(e,t,n,r,s,i,o,l,c,a){const{mc:u,pc:d,pbc:v,o:{insert:h,querySelector:g,createText:p,createComment:b}}=a,m=Un(t.props);let{shapeFlag:f,children:E,dynamicChildren:y}=t;if(e==null){const w=t.el=p(""),O=t.anchor=p("");h(w,n,r),h(O,n,r);const N=t.target=Pi(t.props,g),_=t.targetAnchor=p("");N&&(h(_,N),o=o||Dl(N));const T=(R,A)=>{f&16&&u(E,R,A,s,i,o,l,c)};m?T(n,O):N&&T(N,_)}else{t.el=e.el;const w=t.anchor=e.anchor,O=t.target=e.target,N=t.targetAnchor=e.targetAnchor,_=Un(e.props),T=_?n:O,R=_?w:N;if(o=o||Dl(O),y?(v(e.dynamicChildren,y,T,s,i,o,l),Ro(e,t,!0)):c||d(e,t,T,R,s,i,o,l,!1),m)_||Fr(t,n,w,a,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const A=t.target=Pi(t.props,g);A&&Fr(t,A,null,a,0)}else _&&Fr(t,O,N,a,1)}$a(t)},remove(e,t,n,r,{um:s,o:{remove:i}},o){const{shapeFlag:l,children:c,anchor:a,targetAnchor:u,target:d,props:v}=e;if(d&&i(u),(o||!Un(v))&&(i(a),l&16))for(let h=0;h0?Fe||fn:null,Ha(),Yt>0&&Fe&&Fe.push(e),e}function ah(e,t,n,r,s,i){return Ua(Ao(e,t,n,r,s,i,!0))}function Po(e,t,n,r,s){return Ua(ae(e,t,n,r,s,!0))}function kt(e){return e?e.__v_isVNode===!0:!1}function Xe(e,t){return e.type===t.type&&e.key===t.key}function uh(e){}const Ls="__vInternal",Va=({key:e})=>e??null,$r=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Q(e)||de(e)||z(e)?{i:Ee,r:e,k:t,f:!!n}:e:null);function Ao(e,t=null,n=null,r=0,s=null,i=e===Ce?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Va(t),ref:t&&$r(t),scopeId:Ns,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:Ee};return l?(Fo(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=Q(n)?8:16),Yt>0&&!o&&Fe&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Fe.push(c),c}const ae=fh;function fh(e,t=null,n=null,r=0,s=null,i=!1){if((!e||e===Ta)&&(e=Ne),kt(e)){const l=it(e,t,!0);return n&&Fo(l,n),Yt>0&&!i&&Fe&&(l.shapeFlag&6?Fe[Fe.indexOf(e)]=l:Fe.push(l)),l.patchFlag|=-2,l}if(vh(e)&&(e=e.__vccOpts),t){t=qa(t);let{class:l,style:c}=t;l&&!Q(l)&&(t.class=ur(l)),le(c)&&(fo(c)&&!H(c)&&(c=ee({},c)),t.style=ar(c))}const o=Q(e)?1:ua(e)?128:ih(e)?64:le(e)?4:z(e)?2:0;return Ao(e,t,n,r,s,o,i,!0)}function qa(e){return e?fo(e)||Ls in e?ee({},e):e:null}function it(e,t,n=!1){const{props:r,ref:s,patchFlag:i,children:o}=e,l=t?ko(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&Va(l),ref:t&&t.ref?n&&s?H(s)?s.concat($r(t)):[s,$r(t)]:$r(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:o,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ce?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&it(e.ssContent),ssFallback:e.ssFallback&&it(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function Io(e=" ",t=0){return ae(Qt,null,e,t)}function dh(e,t){const n=ae(Wt,null,e);return n.staticCount=t,n}function ph(e="",t=!1){return t?(Ms(),Po(Ne,null,e)):ae(Ne,null,e)}function xe(e){return e==null||typeof e=="boolean"?ae(Ne):H(e)?ae(Ce,null,e.slice()):typeof e=="object"?Ct(e):ae(Qt,null,String(e))}function Ct(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:it(e)}function Fo(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(H(t))n=16;else if(typeof t=="object")if(r&65){const s=t.default;s&&(s._c&&(s._d=!1),Fo(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!(Ls in t)?t._ctx=Ee:s===3&&Ee&&(Ee.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else z(t)?(t={default:t,_ctx:Ee},n=32):(t=String(t),r&64?(n=16,t=[Io(t)]):n=8);e.children=t,e.shapeFlag|=n}function ko(...e){const t={};for(let n=0;nge||Ee;let Mo,on,xl="__VUE_INSTANCE_SETTERS__";(on=vi()[xl])||(on=vi()[xl]=[]),on.push(e=>ge=e),Mo=e=>{on.length>1?on.forEach(t=>t(e)):on[0](e)};const Mt=e=>{Mo(e),e.scope.on()},Rt=()=>{ge&&ge.scope.off(),Mo(null)};function Wa(e){return e.vnode.shapeFlag&4}let _n=!1;function za(e,t=!1){_n=t;const{props:n,children:r}=e.vnode,s=Wa(e);Xp(e,n,s,t),th(e,r);const i=s?gh(e,t):void 0;return _n=!1,i}function gh(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=dr(new Proxy(e.ctx,Ti));const{setup:r}=n;if(r){const s=e.setupContext=r.length>1?Qa(e):null;Mt(e),Rn();const i=pt(r,e,0,[e.props,s]);if(Pn(),Rt(),ro(i)){if(i.then(Rt,Rt),t)return i.then(o=>{Ii(e,o,t)}).catch(o=>{nn(o,e,0)});e.asyncDep=i}else Ii(e,i,t)}else Za(e,t)}function Ii(e,t,n){z(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:le(t)&&(e.setupState=go(t)),Za(e,n)}let es,Fi;function Ja(e){es=e,Fi=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,Ap))}}const yh=()=>!es;function Za(e,t,n){const r=e.type;if(!e.render){if(!t&&es&&!r.render){const s=r.template||Oo(e).template;if(s){const{isCustomElement:i,compilerOptions:o}=e.appContext.config,{delimiters:l,compilerOptions:c}=r,a=ee(ee({isCustomElement:i,delimiters:l},o),c);r.render=es(s,a)}}e.render=r.render||Ae,Fi&&Fi(e)}Mt(e),Rn(),Kp(e),Pn(),Rt()}function bh(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return Me(e,"get","$attrs"),t[n]}}))}function Qa(e){const t=n=>{e.exposed=n||{}};return{get attrs(){return bh(e)},slots:e.slots,emit:e.emit,expose:t}}function Bs(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(go(dr(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Hn)return Hn[n](e)},has(t,n){return n in t||n in Hn}}))}function ki(e,t=!0){return z(e)?e.displayName||e.name:e.name||t&&e.__name}function vh(e){return z(e)&&"__vccOpts"in e}const Lo=(e,t)=>Wd(e,t,_n);function Ya(e,t,n){const r=arguments.length;return r===2?le(t)&&!H(t)?kt(t)?ae(e,null,[t]):ae(e,t):ae(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&kt(n)&&(n=[n]),ae(e,t,n))}const Xa=Symbol.for("v-scx"),Ga=()=>yn(Xa);function _h(){}function Eh(e,t,n,r){const s=n[r];if(s&&eu(s,e))return s;const i=t();return i.memo=e.slice(),n[r]=i}function eu(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let r=0;r0&&Fe&&Fe.push(e),!0}const tu="3.3.4",Sh={createComponentInstance:Ka,setupComponent:za,renderComponentRoot:jr,setCurrentRenderingInstance:Xn,isVNode:kt,normalizeVNode:xe},wh=Sh,Ch=null,Th=null,Oh="http://www.w3.org/2000/svg",$t=typeof document<"u"?document:null,jl=$t&&$t.createElement("template"),Nh={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t?$t.createElementNS(Oh,e):$t.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>$t.createTextNode(e),createComment:e=>$t.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>$t.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,i){const o=n?n.previousSibling:t.lastChild;if(s&&(s===i||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===i||!(s=s.nextSibling)););else{jl.innerHTML=r?`${e}`:e;const l=jl.content;if(r){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function Rh(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function Ph(e,t,n){const r=e.style,s=Q(n);if(n&&!s){if(t&&!Q(t))for(const i in t)n[i]==null&&Mi(r,i,"");for(const i in n)Mi(r,i,n[i])}else{const i=r.display;s?t!==n&&(r.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(r.display=i)}}const $l=/\s*!important$/;function Mi(e,t,n){if(H(n))n.forEach(r=>Mi(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=Ah(e,t);$l.test(n)?e.setProperty(je(r),n.replace($l,""),"important"):e[r]=n}}const Hl=["Webkit","Moz","ms"],ri={};function Ah(e,t){const n=ri[t];if(n)return n;let r=ye(t);if(r!=="filter"&&r in e)return ri[t]=r;r=tn(r);for(let s=0;ssi||(Bh.then(()=>si=0),si=Date.now());function xh(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;$e(jh(r,n.value),t,5,[r])};return n.value=e,n.attached=Dh(),n}function jh(e,t){if(H(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const ql=/^on[a-z]/,$h=(e,t,n,r,s=!1,i,o,l,c)=>{t==="class"?Rh(e,r,s):t==="style"?Ph(e,n,r):Gt(t)?to(t)||Mh(e,t,n,r,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Hh(e,t,r,s))?Fh(e,t,r,i,o,l,c):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),Ih(e,t,r,s))};function Hh(e,t,n,r){return r?!!(t==="innerHTML"||t==="textContent"||t in e&&ql.test(t)&&z(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||ql.test(t)&&Q(n)?!1:t in e}function nu(e,t){const n=Ps(e);class r extends Ds{constructor(i){super(n,i,t)}}return r.def=n,r}const Uh=e=>nu(e,bu),Vh=typeof HTMLElement<"u"?HTMLElement:class{};class Ds extends Vh{constructor(t,n={},r){super(),this._def=t,this._props=n,this._instance=null,this._connected=!1,this._resolved=!1,this._numberProps=null,this.shadowRoot&&r?r(this._createVNode(),this.shadowRoot):(this.attachShadow({mode:"open"}),this._def.__asyncLoader||this._resolveProps(this._def))}connectedCallback(){this._connected=!0,this._instance||(this._resolved?this._update():this._resolveDef())}disconnectedCallback(){this._connected=!1,Cs(()=>{this._connected||(Di(null,this.shadowRoot),this._instance=null)})}_resolveDef(){this._resolved=!0;for(let r=0;r{for(const s of r)this._setAttr(s.attributeName)}).observe(this,{attributes:!0});const t=(r,s=!1)=>{const{props:i,styles:o}=r;let l;if(i&&!H(i))for(const c in i){const a=i[c];(a===Number||a&&a.type===Number)&&(c in this._props&&(this._props[c]=Zr(this._props[c])),(l||(l=Object.create(null)))[ye(c)]=!0)}this._numberProps=l,s&&this._resolveProps(r),this._applyStyles(o),this._update()},n=this._def.__asyncLoader;n?n().then(r=>t(r,!0)):t(this._def)}_resolveProps(t){const{props:n}=t,r=H(n)?n:Object.keys(n||{});for(const s of Object.keys(this))s[0]!=="_"&&r.includes(s)&&this._setProp(s,this[s],!0,!1);for(const s of r.map(ye))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(i){this._setProp(s,i)}})}_setAttr(t){let n=this.getAttribute(t);const r=ye(t);this._numberProps&&this._numberProps[r]&&(n=Zr(n)),this._setProp(r,n,!1)}_getProp(t){return this._props[t]}_setProp(t,n,r=!0,s=!0){n!==this._props[t]&&(this._props[t]=n,s&&this._instance&&this._update(),r&&(n===!0?this.setAttribute(je(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(je(t),n+""):n||this.removeAttribute(je(t))))}_update(){Di(this._createVNode(),this.shadowRoot)}_createVNode(){const t=ae(this._def,ee({},this._props));return this._instance||(t.ce=n=>{this._instance=n,n.isCE=!0;const r=(i,o)=>{this.dispatchEvent(new CustomEvent(i,{detail:o}))};n.emit=(i,...o)=>{r(i,o),je(i)!==i&&r(je(i),o)};let s=this;for(;s=s&&(s.parentNode||s.host);)if(s instanceof Ds){n.parent=s._instance,n.provides=s._instance.provides;break}}),t}_applyStyles(t){t&&t.forEach(n=>{const r=document.createElement("style");r.textContent=n,this.shadowRoot.appendChild(r)})}}function qh(e="$style"){{const t=yt();if(!t)return oe;const n=t.type.__cssModules;if(!n)return oe;const r=n[e];return r||oe}}function Kh(e){const t=yt();if(!t)return;const n=t.ut=(s=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(i=>Bi(i,s))},r=()=>{const s=e(t.proxy);Li(t.subTree,s),n(s)};da(r),mr(()=>{const s=new MutationObserver(r);s.observe(t.subTree.el.parentNode,{childList:!0}),ks(()=>s.disconnect())})}function Li(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Li(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Bi(e.el,t);else if(e.type===Ce)e.children.forEach(n=>Li(n,t));else if(e.type===Wt){let{el:n,anchor:r}=e;for(;n&&(Bi(n,t),n!==r);)n=n.nextSibling}}function Bi(e,t){if(e.nodeType===1){const n=e.style;for(const r in t)n.setProperty(`--${r}`,t[r])}}const _t="transition",Mn="animation",Bo=(e,{slots:t})=>Ya(ha,su(e),t);Bo.displayName="Transition";const ru={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Wh=Bo.props=ee({},wo,ru),xt=(e,t=[])=>{H(e)?e.forEach(n=>n(...t)):e&&e(...t)},Kl=e=>e?H(e)?e.some(t=>t.length>1):e.length>1:!1;function su(e){const t={};for(const I in e)I in ru||(t[I]=e[I]);if(e.css===!1)return t;const{name:n="v",type:r,duration:s,enterFromClass:i=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:a=o,appearToClass:u=l,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:v=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,g=zh(s),p=g&&g[0],b=g&&g[1],{onBeforeEnter:m,onEnter:f,onEnterCancelled:E,onLeave:y,onLeaveCancelled:w,onBeforeAppear:O=m,onAppear:N=f,onAppearCancelled:_=E}=t,T=(I,L,D)=>{St(I,L?u:l),St(I,L?a:o),D&&D()},R=(I,L)=>{I._isLeaving=!1,St(I,d),St(I,h),St(I,v),L&&L()},A=I=>(L,D)=>{const Z=I?N:f,W=()=>T(L,I,D);xt(Z,[L,W]),Wl(()=>{St(L,I?c:i),at(L,I?u:l),Kl(Z)||zl(L,r,p,W)})};return ee(t,{onBeforeEnter(I){xt(m,[I]),at(I,i),at(I,o)},onBeforeAppear(I){xt(O,[I]),at(I,c),at(I,a)},onEnter:A(!1),onAppear:A(!0),onLeave(I,L){I._isLeaving=!0;const D=()=>R(I,L);at(I,d),ou(),at(I,v),Wl(()=>{I._isLeaving&&(St(I,d),at(I,h),Kl(y)||zl(I,r,b,D))}),xt(y,[I,D])},onEnterCancelled(I){T(I,!1),xt(E,[I])},onAppearCancelled(I){T(I,!0),xt(_,[I])},onLeaveCancelled(I){R(I),xt(w,[I])}})}function zh(e){if(e==null)return null;if(le(e))return[ii(e.enter),ii(e.leave)];{const t=ii(e);return[t,t]}}function ii(e){return Zr(e)}function at(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function St(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function Wl(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Jh=0;function zl(e,t,n,r){const s=e._endId=++Jh,i=()=>{s===e._endId&&r()};if(n)return setTimeout(i,n);const{type:o,timeout:l,propCount:c}=iu(e,t);if(!o)return r();const a=o+"end";let u=0;const d=()=>{e.removeEventListener(a,v),i()},v=h=>{h.target===e&&++u>=c&&d()};setTimeout(()=>{u(n[g]||"").split(", "),s=r(`${_t}Delay`),i=r(`${_t}Duration`),o=Jl(s,i),l=r(`${Mn}Delay`),c=r(`${Mn}Duration`),a=Jl(l,c);let u=null,d=0,v=0;t===_t?o>0&&(u=_t,d=o,v=i.length):t===Mn?a>0&&(u=Mn,d=a,v=c.length):(d=Math.max(o,a),u=d>0?o>a?_t:Mn:null,v=u?u===_t?i.length:c.length:0);const h=u===_t&&/\b(transform|all)(,|$)/.test(r(`${_t}Property`).toString());return{type:u,timeout:d,propCount:v,hasTransform:h}}function Jl(e,t){for(;e.lengthZl(n)+Zl(e[r])))}function Zl(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function ou(){return document.body.offsetHeight}const lu=new WeakMap,cu=new WeakMap,au={name:"TransitionGroup",props:ee({},Wh,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=yt(),r=So();let s,i;return Is(()=>{if(!s.length)return;const o=e.moveClass||`${e.name||"v"}-move`;if(!em(s[0].el,n.vnode.el,o))return;s.forEach(Yh),s.forEach(Xh);const l=s.filter(Gh);ou(),l.forEach(c=>{const a=c.el,u=a.style;at(a,o),u.transform=u.webkitTransform=u.transitionDuration="";const d=a._moveCb=v=>{v&&v.target!==a||(!v||/transform$/.test(v.propertyName))&&(a.removeEventListener("transitionend",d),a._moveCb=null,St(a,o))};a.addEventListener("transitionend",d)})}),()=>{const o=G(e),l=su(o);let c=o.tag||Ce;s=i,i=t.default?Rs(t.default()):[];for(let a=0;adelete e.mode;au.props;const Qh=au;function Yh(e){const t=e.el;t._moveCb&&t._moveCb(),t._enterCb&&t._enterCb()}function Xh(e){cu.set(e,e.el.getBoundingClientRect())}function Gh(e){const t=lu.get(e),n=cu.get(e),r=t.left-n.left,s=t.top-n.top;if(r||s){const i=e.el.style;return i.transform=i.webkitTransform=`translate(${r}px,${s}px)`,i.transitionDuration="0s",e}}function em(e,t,n){const r=e.cloneNode();e._vtc&&e._vtc.forEach(o=>{o.split(/\s+/).forEach(l=>l&&r.classList.remove(l))}),n.split(/\s+/).forEach(o=>o&&r.classList.add(o)),r.style.display="none";const s=t.nodeType===1?t:t.parentNode;s.appendChild(r);const{hasTransform:i}=iu(r);return s.removeChild(r),i}const Lt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return H(t)?n=>hn(t,n):t};function tm(e){e.target.composing=!0}function Ql(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ts={created(e,{modifiers:{lazy:t,trim:n,number:r}},s){e._assign=Lt(s);const i=r||s.props&&s.props.type==="number";ft(e,t?"change":"input",o=>{if(o.target.composing)return;let l=e.value;n&&(l=l.trim()),i&&(l=Jr(l)),e._assign(l)}),n&&ft(e,"change",()=>{e.value=e.value.trim()}),t||(ft(e,"compositionstart",tm),ft(e,"compositionend",Ql),ft(e,"change",Ql))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:s}},i){if(e._assign=Lt(i),e.composing||document.activeElement===e&&e.type!=="range"&&(n||r&&e.value.trim()===t||(s||e.type==="number")&&Jr(e.value)===t))return;const o=t??"";e.value!==o&&(e.value=o)}},Do={deep:!0,created(e,t,n){e._assign=Lt(n),ft(e,"change",()=>{const r=e._modelValue,s=En(e),i=e.checked,o=e._assign;if(H(r)){const l=bs(r,s),c=l!==-1;if(i&&!c)o(r.concat(s));else if(!i&&c){const a=[...r];a.splice(l,1),o(a)}}else if(en(r)){const l=new Set(r);i?l.add(s):l.delete(s),o(l)}else o(fu(e,i))})},mounted:Yl,beforeUpdate(e,t,n){e._assign=Lt(n),Yl(e,t,n)}};function Yl(e,{value:t,oldValue:n},r){e._modelValue=t,H(t)?e.checked=bs(t,r.props.value)>-1:en(t)?e.checked=t.has(r.props.value):t!==n&&(e.checked=It(t,fu(e,!0)))}const xo={created(e,{value:t},n){e.checked=It(t,n.props.value),e._assign=Lt(n),ft(e,"change",()=>{e._assign(En(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e._assign=Lt(r),t!==n&&(e.checked=It(t,r.props.value))}},uu={deep:!0,created(e,{value:t,modifiers:{number:n}},r){const s=en(t);ft(e,"change",()=>{const i=Array.prototype.filter.call(e.options,o=>o.selected).map(o=>n?Jr(En(o)):En(o));e._assign(e.multiple?s?new Set(i):i:i[0])}),e._assign=Lt(r)},mounted(e,{value:t}){Xl(e,t)},beforeUpdate(e,t,n){e._assign=Lt(n)},updated(e,{value:t}){Xl(e,t)}};function Xl(e,t){const n=e.multiple;if(!(n&&!H(t)&&!en(t))){for(let r=0,s=e.options.length;r-1:i.selected=t.has(o);else if(It(En(i),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function En(e){return"_value"in e?e._value:e.value}function fu(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const du={created(e,t,n){kr(e,t,n,null,"created")},mounted(e,t,n){kr(e,t,n,null,"mounted")},beforeUpdate(e,t,n,r){kr(e,t,n,r,"beforeUpdate")},updated(e,t,n,r){kr(e,t,n,r,"updated")}};function pu(e,t){switch(e){case"SELECT":return uu;case"TEXTAREA":return ts;default:switch(t){case"checkbox":return Do;case"radio":return xo;default:return ts}}}function kr(e,t,n,r,s){const o=pu(e.tagName,n.props&&n.props.type)[s];o&&o(e,t,n,r)}function nm(){ts.getSSRProps=({value:e})=>({value:e}),xo.getSSRProps=({value:e},t)=>{if(t.props&&It(t.props.value,e))return{checked:!0}},Do.getSSRProps=({value:e},t)=>{if(H(e)){if(t.props&&bs(e,t.props.value)>-1)return{checked:!0}}else if(en(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},du.getSSRProps=(e,t)=>{if(typeof t.type!="string")return;const n=pu(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}const rm=["ctrl","shift","alt","meta"],sm={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>rm.some(n=>e[`${n}Key`]&&!t.includes(n))},im=(e,t)=>(n,...r)=>{for(let s=0;sn=>{if(!("key"in n))return;const r=je(n.key);if(t.some(s=>s===r||om[s]===r))return e(n)},hu={beforeMount(e,{value:t},{transition:n}){e._vod=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Ln(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),Ln(e,!0),r.enter(e)):r.leave(e,()=>{Ln(e,!1)}):Ln(e,t))},beforeUnmount(e,{value:t}){Ln(e,t)}};function Ln(e,t){e.style.display=t?e._vod:"none"}function cm(){hu.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}}}const mu=ee({patchProp:$h},Nh);let qn,Gl=!1;function gu(){return qn||(qn=Da(mu))}function yu(){return qn=Gl?qn:xa(mu),Gl=!0,qn}const Di=(...e)=>{gu().render(...e)},bu=(...e)=>{yu().hydrate(...e)},am=(...e)=>{const t=gu().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=vu(r);if(!s)return;const i=t._component;!z(i)&&!i.render&&!i.template&&(i.template=s.innerHTML),s.innerHTML="";const o=n(s,!1,s instanceof SVGElement);return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),o},t},um=(...e)=>{const t=yu().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=vu(r);if(s)return n(s,!0,s instanceof SVGElement)},t};function vu(e){return Q(e)?document.querySelector(e):e}let ec=!1;const fm=()=>{ec||(ec=!0,nm(),cm())},dm=Object.freeze(Object.defineProperty({__proto__:null,BaseTransition:ha,BaseTransitionPropsValidators:wo,Comment:Ne,EffectScope:io,Fragment:Ce,KeepAlive:_p,ReactiveEffect:fr,Static:Wt,Suspense:lp,Teleport:ch,Text:Qt,Transition:Bo,TransitionGroup:Qh,VueElement:Ds,assertNumber:Jd,callWithAsyncErrorHandling:$e,callWithErrorHandling:pt,camelize:ye,capitalize:tn,cloneVNode:it,compatUtils:Th,computed:Lo,createApp:am,createBlock:Po,createCommentVNode:ph,createElementBlock:ah,createElementVNode:Ao,createHydrationRenderer:xa,createPropsRestProxy:Vp,createRenderer:Da,createSSRApp:um,createSlots:Np,createStaticVNode:dh,createTextVNode:Io,createVNode:ae,customRef:Hd,defineAsyncComponent:bp,defineComponent:Ps,defineCustomElement:nu,defineEmits:Fp,defineExpose:kp,defineModel:Bp,defineOptions:Mp,defineProps:Ip,defineSSRCustomElement:Uh,defineSlots:Lp,get devtools(){return an},effect:od,effectScope:oo,getCurrentInstance:yt,getCurrentScope:lo,getTransitionRawChildren:Rs,guardReactiveProps:qa,h:Ya,handleError:nn,hasInjectionContext:Ia,hydrate:bu,initCustomFormatter:_h,initDirectivesForSSR:fm,inject:yn,isMemoSame:eu,isProxy:fo,isReactive:dt,isReadonly:Jt,isRef:de,isRuntimeOnly:yh,isShallow:Jn,isVNode:kt,markRaw:dr,mergeDefaults:Hp,mergeModels:Up,mergeProps:ko,nextTick:Cs,normalizeClass:ur,normalizeProps:zf,normalizeStyle:ar,onActivated:ga,onBeforeMount:va,onBeforeUnmount:Fs,onBeforeUpdate:_a,onDeactivated:ya,onErrorCaptured:Ca,onMounted:mr,onRenderTracked:wa,onRenderTriggered:Sa,onScopeDispose:Uc,onServerPrefetch:Ea,onUnmounted:ks,onUpdated:Is,openBlock:Ms,popScopeId:ep,provide:Aa,proxyRefs:go,pushScopeId:Gd,queuePostFlushCb:bo,reactive:ot,readonly:uo,ref:Ot,registerRuntimeCompiler:Ja,render:Di,renderList:Op,renderSlot:Rp,resolveComponent:wp,resolveDirective:Tp,resolveDynamicComponent:Cp,resolveFilter:Ch,resolveTransitionHooks:vn,setBlockTracking:Ai,setDevtoolsHook:ca,setTransitionHooks:Zt,shallowReactive:ta,shallowReadonly:Md,shallowRef:Ld,ssrContextKey:Xa,ssrUtils:wh,stop:ld,toDisplayString:rd,toHandlerKey:pn,toHandlers:Pp,toRaw:G,toRef:qd,toRefs:ra,toValue:xd,transformVNodeArgs:uh,triggerRef:Dd,unref:mo,useAttrs:jp,useCssModule:qh,useCssVars:Kh,useModel:$p,useSSRContext:Ga,useSlots:xp,useTransitionState:So,vModelCheckbox:Do,vModelDynamic:du,vModelRadio:xo,vModelSelect:uu,vModelText:ts,vShow:hu,version:tu,warn:zd,watch:Nt,watchEffect:pp,watchPostEffect:da,watchSyncEffect:hp,withAsyncContext:qp,withCtx:vo,withDefaults:Dp,withDirectives:gp,withKeys:lm,withMemo:Eh,withModifiers:im,withScopeId:tp},Symbol.toStringTag,{value:"Module"}));function jo(e){throw e}function _u(e){}function fe(e,t,n,r){const s=e,i=new SyntaxError(String(s));return i.code=e,i.loc=t,i}const nr=Symbol(""),Kn=Symbol(""),$o=Symbol(""),ns=Symbol(""),Eu=Symbol(""),Xt=Symbol(""),Su=Symbol(""),wu=Symbol(""),Ho=Symbol(""),Uo=Symbol(""),gr=Symbol(""),Vo=Symbol(""),Cu=Symbol(""),qo=Symbol(""),rs=Symbol(""),Ko=Symbol(""),Wo=Symbol(""),zo=Symbol(""),Jo=Symbol(""),Tu=Symbol(""),Ou=Symbol(""),xs=Symbol(""),ss=Symbol(""),Zo=Symbol(""),Qo=Symbol(""),rr=Symbol(""),yr=Symbol(""),Yo=Symbol(""),xi=Symbol(""),pm=Symbol(""),ji=Symbol(""),is=Symbol(""),hm=Symbol(""),mm=Symbol(""),Xo=Symbol(""),gm=Symbol(""),ym=Symbol(""),Go=Symbol(""),Nu=Symbol(""),Sn={[nr]:"Fragment",[Kn]:"Teleport",[$o]:"Suspense",[ns]:"KeepAlive",[Eu]:"BaseTransition",[Xt]:"openBlock",[Su]:"createBlock",[wu]:"createElementBlock",[Ho]:"createVNode",[Uo]:"createElementVNode",[gr]:"createCommentVNode",[Vo]:"createTextVNode",[Cu]:"createStaticVNode",[qo]:"resolveComponent",[rs]:"resolveDynamicComponent",[Ko]:"resolveDirective",[Wo]:"resolveFilter",[zo]:"withDirectives",[Jo]:"renderList",[Tu]:"renderSlot",[Ou]:"createSlots",[xs]:"toDisplayString",[ss]:"mergeProps",[Zo]:"normalizeClass",[Qo]:"normalizeStyle",[rr]:"normalizeProps",[yr]:"guardReactiveProps",[Yo]:"toHandlers",[xi]:"camelize",[pm]:"capitalize",[ji]:"toHandlerKey",[is]:"setBlockTracking",[hm]:"pushScopeId",[mm]:"popScopeId",[Xo]:"withCtx",[gm]:"unref",[ym]:"isRef",[Go]:"withMemo",[Nu]:"isMemoSame"};function bm(e){Object.getOwnPropertySymbols(e).forEach(t=>{Sn[t]=e[t]})}const Ue={source:"",start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0}};function vm(e,t=Ue){return{type:0,children:e,helpers:new Set,components:[],directives:[],hoists:[],imports:[],cached:0,temps:0,codegenNode:void 0,loc:t}}function sr(e,t,n,r,s,i,o,l=!1,c=!1,a=!1,u=Ue){return e&&(l?(e.helper(Xt),e.helper(Tn(e.inSSR,a))):e.helper(Cn(e.inSSR,a)),o&&e.helper(zo)),{type:13,tag:t,props:n,children:r,patchFlag:s,dynamicProps:i,directives:o,isBlock:l,disableTracking:c,isComponent:a,loc:u}}function br(e,t=Ue){return{type:17,loc:t,elements:e}}function Ke(e,t=Ue){return{type:15,loc:t,properties:e}}function pe(e,t){return{type:16,loc:Ue,key:Q(e)?Y(e,!0):e,value:t}}function Y(e,t=!1,n=Ue,r=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:r}}function tt(e,t=Ue){return{type:8,loc:t,children:e}}function me(e,t=[],n=Ue){return{type:14,loc:n,callee:e,arguments:t}}function wn(e,t=void 0,n=!1,r=!1,s=Ue){return{type:18,params:e,returns:t,newline:n,isSlot:r,loc:s}}function $i(e,t,n,r=!0){return{type:19,test:e,consequent:t,alternate:n,newline:r,loc:Ue}}function _m(e,t,n=!1){return{type:20,index:e,value:t,isVNode:n,loc:Ue}}function Em(e){return{type:21,body:e,loc:Ue}}function Cn(e,t){return e||t?Ho:Uo}function Tn(e,t){return e||t?Su:wu}function el(e,{helper:t,removeHelper:n,inSSR:r}){e.isBlock||(e.isBlock=!0,n(Cn(r,e.isComponent)),t(Xt),t(Tn(r,e.isComponent)))}const ke=e=>e.type===4&&e.isStatic,un=(e,t)=>e===t||e===je(t);function Ru(e){if(un(e,"Teleport"))return Kn;if(un(e,"Suspense"))return $o;if(un(e,"KeepAlive"))return ns;if(un(e,"BaseTransition"))return Eu}const Sm=/^\d|[^\$\w]/,tl=e=>!Sm.test(e),wm=/[A-Za-z_$\xA0-\uFFFF]/,Cm=/[\.\?\w$\xA0-\uFFFF]/,Tm=/\s+[.[]\s*|\s*[.[]\s+/g,Om=e=>{e=e.trim().replace(Tm,o=>o.trim());let t=0,n=[],r=0,s=0,i=null;for(let o=0;ot.type===7&&t.name==="bind"&&(!t.arg||t.arg.type!==4||!t.arg.isStatic))}function oi(e){return e.type===5||e.type===2}function Rm(e){return e.type===7&&e.name==="slot"}function cs(e){return e.type===1&&e.tagType===3}function as(e){return e.type===1&&e.tagType===2}const Pm=new Set([rr,yr]);function Iu(e,t=[]){if(e&&!Q(e)&&e.type===14){const n=e.callee;if(!Q(n)&&Pm.has(n))return Iu(e.arguments[0],t.concat(e))}return[e,t]}function us(e,t,n){let r,s=e.type===13?e.props:e.arguments[2],i=[],o;if(s&&!Q(s)&&s.type===14){const l=Iu(s);s=l[0],i=l[1],o=i[i.length-1]}if(s==null||Q(s))r=Ke([t]);else if(s.type===14){const l=s.arguments[0];!Q(l)&&l.type===15?tc(t,l)||l.properties.unshift(t):s.callee===Yo?r=me(n.helper(ss),[Ke([t]),s]):s.arguments.unshift(Ke([t])),!r&&(r=s)}else s.type===15?(tc(t,s)||s.properties.unshift(t),r=s):(r=me(n.helper(ss),[Ke([t]),s]),o&&o.callee===yr&&(o=i[i.length-2]));e.type===13?o?o.arguments[0]=r:e.props=r:o?o.arguments[0]=r:e.arguments[2]=r}function tc(e,t){let n=!1;if(e.key.type===4){const r=e.key.content;n=t.properties.some(s=>s.key.type===4&&s.key.content===r)}return n}function ir(e,t){return`_${t}_${e.replace(/[^\w]/g,(n,r)=>n==="-"?"_":e.charCodeAt(r).toString())}`}function Am(e){return e.type===14&&e.callee===Go?e.arguments[1].returns:e}function nc(e,t){const n=t.options?t.options.compatConfig:t.compatConfig,r=n&&n[e];return e==="MODE"?r||3:r}function zt(e,t){const n=nc("MODE",t),r=nc(e,t);return n===3?r===!0:r!==!1}function or(e,t,n,...r){return zt(e,t)}const Im=/&(gt|lt|amp|apos|quot);/g,Fm={gt:">",lt:"<",amp:"&",apos:"'",quot:'"'},rc={delimiters:["{{","}}"],getNamespace:()=>0,getTextMode:()=>0,isVoidTag:xr,isPreTag:xr,isCustomElement:xr,decodeEntities:e=>e.replace(Im,(t,n)=>Fm[n]),onError:jo,onWarn:_u,comments:!1};function km(e,t={}){const n=Mm(e,t),r=He(n);return vm(nl(n,0,[]),Je(n,r))}function Mm(e,t){const n=ee({},rc);let r;for(r in t)n[r]=t[r]===void 0?rc[r]:t[r];return{options:n,column:1,line:1,offset:0,originalSource:e,source:e,inPre:!1,inVPre:!1,onWarn:n.onWarn}}function nl(e,t,n){const r=$s(n),s=r?r.ns:0,i=[];for(;!Vm(e,t,n);){const l=e.source;let c;if(t===0||t===1){if(!e.inVPre&&Oe(l,e.options.delimiters[0]))c=Hm(e,t);else if(t===0&&l[0]==="<")if(l.length===1)ie(e,5,1);else if(l[1]==="!")Oe(l,"=0;){const a=o[l];a&&a.type===9&&(c+=a.branches.length)}return()=>{if(i)r.codegenNode=ac(s,c,n);else{const a=pg(r.codegenNode);a.alternate=ac(s,c+r.branches.length-1,n)}}}));function dg(e,t,n,r){if(t.name!=="else"&&(!t.exp||!t.exp.content.trim())){const s=t.exp?t.exp.loc:e.loc;n.onError(fe(28,t.loc)),t.exp=Y("true",!1,s)}if(t.name==="if"){const s=cc(e,t),i={type:9,loc:e.loc,branches:[s]};if(n.replaceNode(i),r)return r(i,s,!0)}else{const s=n.parent.children;let i=s.indexOf(e);for(;i-->=-1;){const o=s[i];if(o&&o.type===3){n.removeNode(o);continue}if(o&&o.type===2&&!o.content.trim().length){n.removeNode(o);continue}if(o&&o.type===9){t.name==="else-if"&&o.branches[o.branches.length-1].condition===void 0&&n.onError(fe(30,e.loc)),n.removeNode();const l=cc(e,t);o.branches.push(l);const c=r&&r(o,l,!1);Hs(l,n),c&&c(),n.currentNode=null}else n.onError(fe(30,e.loc));break}}}function cc(e,t){const n=e.tagType===3;return{type:10,loc:e.loc,condition:t.name==="else"?void 0:t.exp,children:n&&!qe(e,"for")?e.children:[e],userKey:js(e,"key"),isTemplateIf:n}}function ac(e,t,n){return e.condition?$i(e.condition,uc(e,t,n),me(n.helper(gr),['""',"true"])):uc(e,t,n)}function uc(e,t,n){const{helper:r}=n,s=pe("key",Y(`${t}`,!1,Ue,2)),{children:i}=e,o=i[0];if(i.length!==1||o.type!==1)if(i.length===1&&o.type===11){const c=o.codegenNode;return us(c,s,n),c}else{let c=64;return sr(n,r(nr),Ke([s]),i,c+"",void 0,void 0,!0,!1,!1,e.loc)}else{const c=o.codegenNode,a=Am(c);return a.type===13&&el(a,n),us(a,s,n),c}}function pg(e){for(;;)if(e.type===19)if(e.alternate.type===19)e=e.alternate;else return e;else e.type===20&&(e=e.value)}const hg=xu("for",(e,t,n)=>{const{helper:r,removeHelper:s}=n;return mg(e,t,n,i=>{const o=me(r(Jo),[i.source]),l=cs(e),c=qe(e,"memo"),a=js(e,"key"),u=a&&(a.type===6?Y(a.value.content,!0):a.exp),d=a?pe("key",u):null,v=i.source.type===4&&i.source.constType>0,h=v?64:a?128:256;return i.codegenNode=sr(n,r(nr),void 0,o,h+"",void 0,void 0,!0,!v,!1,e.loc),()=>{let g;const{children:p}=i,b=p.length!==1||p[0].type!==1,m=as(e)?e:l&&e.children.length===1&&as(e.children[0])?e.children[0]:null;if(m?(g=m.codegenNode,l&&d&&us(g,d,n)):b?g=sr(n,r(nr),d?Ke([d]):void 0,e.children,"64",void 0,void 0,!0,void 0,!1):(g=p[0].codegenNode,l&&d&&us(g,d,n),g.isBlock!==!v&&(g.isBlock?(s(Xt),s(Tn(n.inSSR,g.isComponent))):s(Cn(n.inSSR,g.isComponent))),g.isBlock=!v,g.isBlock?(r(Xt),r(Tn(n.inSSR,g.isComponent))):r(Cn(n.inSSR,g.isComponent))),c){const f=wn(Vi(i.parseResult,[Y("_cached")]));f.body=Em([tt(["const _memo = (",c.exp,")"]),tt(["if (_cached",...u?[" && _cached.key === ",u]:[],` && ${n.helperString(Nu)}(_cached, _memo)) return _cached`]),tt(["const _item = ",g]),Y("_item.memo = _memo"),Y("return _item")]),o.arguments.push(f,Y("_cache"),Y(String(n.cached++)))}else o.arguments.push(wn(Vi(i.parseResult),g,!0))}})});function mg(e,t,n,r){if(!t.exp){n.onError(fe(31,t.loc));return}const s=Uu(t.exp);if(!s){n.onError(fe(32,t.loc));return}const{addIdentifiers:i,removeIdentifiers:o,scopes:l}=n,{source:c,value:a,key:u,index:d}=s,v={type:11,loc:t.loc,source:c,valueAlias:a,keyAlias:u,objectIndexAlias:d,parseResult:s,children:cs(e)?e.children:[e]};n.replaceNode(v),l.vFor++;const h=r&&r(v);return()=>{l.vFor--,h&&h()}}const gg=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,fc=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,yg=/^\(|\)$/g;function Uu(e,t){const n=e.loc,r=e.content,s=r.match(gg);if(!s)return;const[,i,o]=s,l={source:Mr(n,o.trim(),r.indexOf(o,i.length)),value:void 0,key:void 0,index:void 0};let c=i.trim().replace(yg,"").trim();const a=i.indexOf(c),u=c.match(fc);if(u){c=c.replace(fc,"").trim();const d=u[1].trim();let v;if(d&&(v=r.indexOf(d,a+c.length),l.key=Mr(n,d,v)),u[2]){const h=u[2].trim();h&&(l.index=Mr(n,h,r.indexOf(h,l.key?v+d.length:a+c.length)))}}return c&&(l.value=Mr(n,c,a)),l}function Mr(e,t,n){return Y(t,!1,Au(e,n,t.length))}function Vi({value:e,key:t,index:n},r=[]){return bg([e,t,n,...r])}function bg(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map((n,r)=>n||Y("_".repeat(r+1),!1))}const dc=Y("undefined",!1),vg=(e,t)=>{if(e.type===1&&(e.tagType===1||e.tagType===3)){const n=qe(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},_g=(e,t,n)=>wn(e,t,!1,!0,t.length?t[0].loc:n);function Eg(e,t,n=_g){t.helper(Xo);const{children:r,loc:s}=e,i=[],o=[];let l=t.scopes.vSlot>0||t.scopes.vFor>0;const c=qe(e,"slot",!0);if(c){const{arg:b,exp:m}=c;b&&!ke(b)&&(l=!0),i.push(pe(b||Y("default",!0),n(m,r,s)))}let a=!1,u=!1;const d=[],v=new Set;let h=0;for(let b=0;b{const E=n(m,f,s);return t.compatConfig&&(E.isNonScopedSlot=!0),pe("default",E)};a?d.length&&d.some(m=>Vu(m))&&(u?t.onError(fe(39,d[0].loc)):i.push(b(void 0,d))):i.push(b(void 0,r))}const g=l?2:Ur(e.children)?3:1;let p=Ke(i.concat(pe("_",Y(g+"",!1))),s);return o.length&&(p=me(t.helper(Ou),[p,br(o)])),{slots:p,hasDynamicSlots:l}}function Lr(e,t,n){const r=[pe("name",e),pe("fn",t)];return n!=null&&r.push(pe("key",Y(String(n),!0))),Ke(r)}function Ur(e){for(let t=0;tfunction(){if(e=t.currentNode,!(e.type===1&&(e.tagType===0||e.tagType===1)))return;const{tag:r,props:s}=e,i=e.tagType===1;let o=i?wg(e,t):`"${r}"`;const l=le(o)&&o.callee===rs;let c,a,u,d=0,v,h,g,p=l||o===Kn||o===$o||!i&&(r==="svg"||r==="foreignObject");if(s.length>0){const b=Ku(e,t,void 0,i,l);c=b.props,d=b.patchFlag,h=b.dynamicPropNames;const m=b.directives;g=m&&m.length?br(m.map(f=>Tg(f,t))):void 0,b.shouldUseBlock&&(p=!0)}if(e.children.length>0)if(o===ns&&(p=!0,d|=1024),i&&o!==Kn&&o!==ns){const{slots:m,hasDynamicSlots:f}=Eg(e,t);a=m,f&&(d|=1024)}else if(e.children.length===1&&o!==Kn){const m=e.children[0],f=m.type,E=f===5||f===8;E&&We(m,t)===0&&(d|=1),E||f===2?a=m:a=e.children}else a=e.children;d!==0&&(u=String(d),h&&h.length&&(v=Og(h))),e.codegenNode=sr(t,o,c,a,u,v,g,!!p,!1,i,e.loc)};function wg(e,t,n=!1){let{tag:r}=e;const s=qi(r),i=js(e,"is");if(i)if(s||zt("COMPILER_IS_ON_ELEMENT",t)){const c=i.type===6?i.value&&Y(i.value.content,!0):i.exp;if(c)return me(t.helper(rs),[c])}else i.type===6&&i.value.content.startsWith("vue:")&&(r=i.value.content.slice(4));const o=!s&&qe(e,"is");if(o&&o.exp)return me(t.helper(rs),[o.exp]);const l=Ru(r)||t.isBuiltInComponent(r);return l?(n||t.helper(l),l):(t.helper(qo),t.components.add(r),ir(r,"component"))}function Ku(e,t,n=e.props,r,s,i=!1){const{tag:o,loc:l,children:c}=e;let a=[];const u=[],d=[],v=c.length>0;let h=!1,g=0,p=!1,b=!1,m=!1,f=!1,E=!1,y=!1;const w=[],O=T=>{a.length&&(u.push(Ke(pc(a),l)),a=[]),T&&u.push(T)},N=({key:T,value:R})=>{if(ke(T)){const A=T.content,I=Gt(A);if(I&&(!r||s)&&A.toLowerCase()!=="onclick"&&A!=="onUpdate:modelValue"&&!Vt(A)&&(f=!0),I&&Vt(A)&&(y=!0),R.type===20||(R.type===4||R.type===8)&&We(R,t)>0)return;A==="ref"?p=!0:A==="class"?b=!0:A==="style"?m=!0:A!=="key"&&!w.includes(A)&&w.push(A),r&&(A==="class"||A==="style")&&!w.includes(A)&&w.push(A)}else E=!0};for(let T=0;T0&&a.push(pe(Y("ref_for",!0),Y("true")))),I==="is"&&(qi(o)||L&&L.content.startsWith("vue:")||zt("COMPILER_IS_ON_ELEMENT",t)))continue;a.push(pe(Y(I,!0,Au(A,0,I.length)),Y(L?L.content:"",D,L?L.loc:A)))}else{const{name:A,arg:I,exp:L,loc:D}=R,Z=A==="bind",W=A==="on";if(A==="slot"){r||t.onError(fe(40,D));continue}if(A==="once"||A==="memo"||A==="is"||Z&&Ut(I,"is")&&(qi(o)||zt("COMPILER_IS_ON_ELEMENT",t))||W&&i)continue;if((Z&&Ut(I,"key")||W&&v&&Ut(I,"vue:before-update"))&&(h=!0),Z&&Ut(I,"ref")&&t.scopes.vFor>0&&a.push(pe(Y("ref_for",!0),Y("true"))),!I&&(Z||W)){if(E=!0,L)if(Z){if(O(),zt("COMPILER_V_BIND_OBJECT_ORDER",t)){u.unshift(L);continue}u.push(L)}else O({type:14,loc:D,callee:t.helper(Yo),arguments:r?[L]:[L,"true"]});else t.onError(fe(Z?34:35,D));continue}const te=t.directiveTransforms[A];if(te){const{props:ne,needRuntime:Se}=te(R,e,t);!i&&ne.forEach(N),W&&I&&!ke(I)?O(Ke(ne,l)):a.push(...ne),Se&&(d.push(R),At(Se)&&qu.set(R,Se))}else jf(A)||(d.push(R),v&&(h=!0))}}let _;if(u.length?(O(),u.length>1?_=me(t.helper(ss),u,l):_=u[0]):a.length&&(_=Ke(pc(a),l)),E?g|=16:(b&&!r&&(g|=2),m&&!r&&(g|=4),w.length&&(g|=8),f&&(g|=32)),!h&&(g===0||g===32)&&(p||y||d.length>0)&&(g|=512),!t.inSSR&&_)switch(_.type){case 15:let T=-1,R=-1,A=!1;for(let D=0;D<_.properties.length;D++){const Z=_.properties[D].key;ke(Z)?Z.content==="class"?T=D:Z.content==="style"&&(R=D):Z.isHandlerKey||(A=!0)}const I=_.properties[T],L=_.properties[R];A?_=me(t.helper(rr),[_]):(I&&!ke(I.value)&&(I.value=me(t.helper(Zo),[I.value])),L&&(m||L.value.type===4&&L.value.content.trim()[0]==="["||L.value.type===17)&&(L.value=me(t.helper(Qo),[L.value])));break;case 14:break;default:_=me(t.helper(rr),[me(t.helper(yr),[_])]);break}return{props:_,directives:d,patchFlag:g,dynamicPropNames:w,shouldUseBlock:h}}function pc(e){const t=new Map,n=[];for(let r=0;rpe(o,i)),s))}return br(n,e.loc)}function Og(e){let t="[";for(let n=0,r=e.length;n{if(as(e)){const{children:n,loc:r}=e,{slotName:s,slotProps:i}=Rg(e,t),o=[t.prefixIdentifiers?"_ctx.$slots":"$slots",s,"{}","undefined","true"];let l=2;i&&(o[2]=i,l=3),n.length&&(o[3]=wn([],n,!1,!1,r),l=4),t.scopeId&&!t.slotted&&(l=5),o.splice(l),e.codegenNode=me(t.helper(Tu),o,r)}};function Rg(e,t){let n='"default"',r;const s=[];for(let i=0;i0){const{props:i,directives:o}=Ku(e,t,s,!1,!1);r=i,o.length&&t.onError(fe(36,o[0].loc))}return{slotName:n,slotProps:r}}const Pg=/^\s*([\w$_]+|(async\s*)?\([^)]*?\))\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/,Wu=(e,t,n,r)=>{const{loc:s,modifiers:i,arg:o}=e;!e.exp&&!i.length&&n.onError(fe(35,s));let l;if(o.type===4)if(o.isStatic){let d=o.content;d.startsWith("vue:")&&(d=`vnode-${d.slice(4)}`);const v=t.tagType!==0||d.startsWith("vnode")||!/[A-Z]/.test(d)?pn(ye(d)):`on:${d}`;l=Y(v,!0,o.loc)}else l=tt([`${n.helperString(ji)}(`,o,")"]);else l=o,l.children.unshift(`${n.helperString(ji)}(`),l.children.push(")");let c=e.exp;c&&!c.content.trim()&&(c=void 0);let a=n.cacheHandlers&&!c&&!n.inVOnce;if(c){const d=Pu(c.content),v=!(d||Pg.test(c.content)),h=c.content.includes(";");(v||a&&d)&&(c=tt([`${v?"$event":"(...args)"} => ${h?"{":"("}`,c,h?"}":")"]))}let u={props:[pe(l,c||Y("() => {}",!1,s))]};return r&&(u=r(u)),a&&(u.props[0].value=n.cache(u.props[0].value)),u.props.forEach(d=>d.key.isHandlerKey=!0),u},Ag=(e,t,n)=>{const{exp:r,modifiers:s,loc:i}=e,o=e.arg;return o.type!==4?(o.children.unshift("("),o.children.push(') || ""')):o.isStatic||(o.content=`${o.content} || ""`),s.includes("camel")&&(o.type===4?o.isStatic?o.content=ye(o.content):o.content=`${n.helperString(xi)}(${o.content})`:(o.children.unshift(`${n.helperString(xi)}(`),o.children.push(")"))),n.inSSR||(s.includes("prop")&&hc(o,"."),s.includes("attr")&&hc(o,"^")),!r||r.type===4&&!r.content.trim()?(n.onError(fe(34,i)),{props:[pe(o,Y("",!0,i))]}):{props:[pe(o,r)]}},hc=(e,t)=>{e.type===4?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},Ig=(e,t)=>{if(e.type===0||e.type===1||e.type===11||e.type===10)return()=>{const n=e.children;let r,s=!1;for(let i=0;ii.type===7&&!t.directiveTransforms[i.name])&&e.tag!=="template")))for(let i=0;i{if(e.type===1&&qe(e,"once",!0))return mc.has(e)||t.inVOnce||t.inSSR?void 0:(mc.add(e),t.inVOnce=!0,t.helper(is),()=>{t.inVOnce=!1;const n=t.currentNode;n.codegenNode&&(n.codegenNode=t.cache(n.codegenNode,!0))})},zu=(e,t,n)=>{const{exp:r,arg:s}=e;if(!r)return n.onError(fe(41,e.loc)),Br();const i=r.loc.source,o=r.type===4?r.content:i,l=n.bindingMetadata[i];if(l==="props"||l==="props-aliased")return n.onError(fe(44,r.loc)),Br();const c=!1;if(!o.trim()||!Pu(o)&&!c)return n.onError(fe(42,r.loc)),Br();const a=s||Y("modelValue",!0),u=s?ke(s)?`onUpdate:${ye(s.content)}`:tt(['"onUpdate:" + ',s]):"onUpdate:modelValue";let d;const v=n.isTS?"($event: any)":"$event";d=tt([`${v} => ((`,r,") = $event)"]);const h=[pe(a,e.exp),pe(u,d)];if(e.modifiers.length&&t.tagType===1){const g=e.modifiers.map(b=>(tl(b)?b:JSON.stringify(b))+": true").join(", "),p=s?ke(s)?`${s.content}Modifiers`:tt([s,' + "Modifiers"']):"modelModifiers";h.push(pe(p,Y(`{ ${g} }`,!1,e.loc,2)))}return Br(h)};function Br(e=[]){return{props:e}}const kg=/[\w).+\-_$\]]/,Mg=(e,t)=>{zt("COMPILER_FILTER",t)&&(e.type===5&&ds(e.content,t),e.type===1&&e.props.forEach(n=>{n.type===7&&n.name!=="for"&&n.exp&&ds(n.exp,t)}))};function ds(e,t){if(e.type===4)gc(e,t);else for(let n=0;n=0&&(f=n.charAt(m),f===" ");m--);(!f||!kg.test(f))&&(o=!0)}}g===void 0?g=n.slice(0,h).trim():u!==0&&b();function b(){p.push(n.slice(u,h).trim()),u=h+1}if(p.length){for(h=0;h{if(e.type===1){const n=qe(e,"memo");return!n||yc.has(e)?void 0:(yc.add(e),()=>{const r=e.codegenNode||t.currentNode.codegenNode;r&&r.type===13&&(e.tagType!==1&&el(r,t),e.codegenNode=me(t.helper(Go),[n.exp,wn(void 0,r),"_cache",String(t.cached++)]))})}};function Dg(e){return[[Fg,fg,Bg,hg,Mg,Ng,Sg,vg,Ig],{on:Wu,bind:Ag,model:zu}]}function xg(e,t={}){const n=t.onError||jo,r=t.mode==="module";t.prefixIdentifiers===!0?n(fe(47)):r&&n(fe(48));const s=!1;t.cacheHandlers&&n(fe(49)),t.scopeId&&!r&&n(fe(50));const i=Q(e)?km(e,t):e,[o,l]=Dg();return zm(i,ee({},t,{prefixIdentifiers:s,nodeTransforms:[...o,...t.nodeTransforms||[]],directiveTransforms:ee({},l,t.directiveTransforms||{})})),Qm(i,ee({},t,{prefixIdentifiers:s}))}const jg=()=>({props:[]}),Ju=Symbol(""),Zu=Symbol(""),Qu=Symbol(""),Yu=Symbol(""),Ki=Symbol(""),Xu=Symbol(""),Gu=Symbol(""),ef=Symbol(""),tf=Symbol(""),nf=Symbol("");bm({[Ju]:"vModelRadio",[Zu]:"vModelCheckbox",[Qu]:"vModelText",[Yu]:"vModelSelect",[Ki]:"vModelDynamic",[Xu]:"withModifiers",[Gu]:"withKeys",[ef]:"vShow",[tf]:"Transition",[nf]:"TransitionGroup"});let ln;function $g(e,t=!1){return ln||(ln=document.createElement("div")),t?(ln.innerHTML=`
`,ln.children[0].getAttribute("foo")):(ln.innerHTML=e,ln.textContent)}const Hg=Le("style,iframe,script,noscript",!0),Ug={isVoidTag:Gf,isNativeTag:e=>Yf(e)||Xf(e),isPreTag:e=>e==="pre",decodeEntities:$g,isBuiltInComponent:e=>{if(un(e,"Transition"))return tf;if(un(e,"TransitionGroup"))return nf},getNamespace(e,t){let n=t?t.ns:0;if(t&&n===2)if(t.tag==="annotation-xml"){if(e==="svg")return 1;t.props.some(r=>r.type===6&&r.name==="encoding"&&r.value!=null&&(r.value.content==="text/html"||r.value.content==="application/xhtml+xml"))&&(n=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&e!=="mglyph"&&e!=="malignmark"&&(n=0);else t&&n===1&&(t.tag==="foreignObject"||t.tag==="desc"||t.tag==="title")&&(n=0);if(n===0){if(e==="svg")return 1;if(e==="math")return 2}return n},getTextMode({tag:e,ns:t}){if(t===0){if(e==="textarea"||e==="title")return 1;if(Hg(e))return 2}return 0}},Vg=e=>{e.type===1&&e.props.forEach((t,n)=>{t.type===6&&t.name==="style"&&t.value&&(e.props[n]={type:7,name:"bind",arg:Y("style",!0,t.loc),exp:qg(t.value.content,t.loc),modifiers:[],loc:t.loc})})},qg=(e,t)=>{const n=xc(e);return Y(JSON.stringify(n),!1,t,3)};function Pt(e,t){return fe(e,t)}const Kg=(e,t,n)=>{const{exp:r,loc:s}=e;return r||n.onError(Pt(53,s)),t.children.length&&(n.onError(Pt(54,s)),t.children.length=0),{props:[pe(Y("innerHTML",!0,s),r||Y("",!0))]}},Wg=(e,t,n)=>{const{exp:r,loc:s}=e;return r||n.onError(Pt(55,s)),t.children.length&&(n.onError(Pt(56,s)),t.children.length=0),{props:[pe(Y("textContent",!0),r?We(r,n)>0?r:me(n.helperString(xs),[r],s):Y("",!0))]}},zg=(e,t,n)=>{const r=zu(e,t,n);if(!r.props.length||t.tagType===1)return r;e.arg&&n.onError(Pt(58,e.arg.loc));const{tag:s}=t,i=n.isCustomElement(s);if(s==="input"||s==="textarea"||s==="select"||i){let o=Qu,l=!1;if(s==="input"||i){const c=js(t,"type");if(c){if(c.type===7)o=Ki;else if(c.value)switch(c.value.content){case"radio":o=Ju;break;case"checkbox":o=Zu;break;case"file":l=!0,n.onError(Pt(59,e.loc));break}}else Nm(t)&&(o=Ki)}else s==="select"&&(o=Yu);l||(r.needRuntime=n.helper(o))}else n.onError(Pt(57,e.loc));return r.props=r.props.filter(o=>!(o.key.type===4&&o.key.content==="modelValue")),r},Jg=Le("passive,once,capture"),Zg=Le("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),Qg=Le("left,right"),rf=Le("onkeyup,onkeydown,onkeypress",!0),Yg=(e,t,n,r)=>{const s=[],i=[],o=[];for(let l=0;lke(e)&&e.content.toLowerCase()==="onclick"?Y(t,!0):e.type!==4?tt(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,Xg=(e,t,n)=>Wu(e,t,n,r=>{const{modifiers:s}=e;if(!s.length)return r;let{key:i,value:o}=r.props[0];const{keyModifiers:l,nonKeyModifiers:c,eventOptionModifiers:a}=Yg(i,s,n,e.loc);if(c.includes("right")&&(i=bc(i,"onContextmenu")),c.includes("middle")&&(i=bc(i,"onMouseup")),c.length&&(o=me(n.helper(Xu),[o,JSON.stringify(c)])),l.length&&(!ke(i)||rf(i.content))&&(o=me(n.helper(Gu),[o,JSON.stringify(l)])),a.length){const u=a.map(tn).join("");i=ke(i)?Y(`${i.content}${u}`,!0):tt(["(",i,`) + "${u}"`])}return{props:[pe(i,o)]}}),Gg=(e,t,n)=>{const{exp:r,loc:s}=e;return r||n.onError(Pt(61,s)),{props:[],needRuntime:n.helper(ef)}},ey=(e,t)=>{e.type===1&&e.tagType===0&&(e.tag==="script"||e.tag==="style")&&t.removeNode()},ty=[Vg],ny={cloak:jg,html:Kg,text:Wg,model:zg,on:Xg,show:Gg};function ry(e,t={}){return xg(e,ee({},Ug,t,{nodeTransforms:[ey,...ty,...t.nodeTransforms||[]],directiveTransforms:ee({},ny,t.directiveTransforms||{}),transformHoist:null}))}const vc=Object.create(null);function sy(e,t){if(!Q(e))if(e.nodeType)e=e.innerHTML;else return Ae;const n=e,r=vc[n];if(r)return r;if(e[0]==="#"){const l=document.querySelector(e);e=l?l.innerHTML:""}const s=ee({hoistStatic:!0,onError:void 0,onWarn:Ae},t);!s.isCustomElement&&typeof customElements<"u"&&(s.isCustomElement=l=>!!customElements.get(l));const{code:i}=ry(e,s),o=new Function("Vue",i)(dm);return o._rc=!0,vc[n]=o}Ja(sy);const Kb=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n};var iy=!1;/*! +`),c()),u||s("return "),e.codegenNode?Ae(e.codegenNode,n):s("null"),h&&(l(),s("}")),l(),s("}"),{ast:e,code:n.code,preamble:g?p.code:"",map:n.map?n.map.toJSON():void 0}}function Qm(e,t){const{ssr:n,prefixIdentifiers:r,push:s,newline:i,runtimeModuleName:o,runtimeGlobalName:l,ssrRuntimeModuleName:c}=t,a=l,u=Array.from(e.helpers);if(u.length>0&&(s(`const _Vue = ${a} +`),e.hoists.length)){const d=[$o,Uo,gr,Vo,Cu].filter(v=>u.includes(v)).map(ju).join(", ");s(`const { ${d} } = _Vue +`)}Ym(e.hoists,t),i(),s("return ")}function li(e,t,{helper:n,push:r,newline:s,isTS:i}){const o=n(t==="filter"?Wo:t==="component"?qo:Ko);for(let l=0;l3||!1;t.push("["),n&&t.indent(),vr(e,t,n),n&&t.deindent(),t.push("]")}function vr(e,t,n=!1,r=!0){const{push:s,newline:i}=t;for(let o=0;on||"null")}function ig(e,t){const{push:n,helper:r,pure:s}=t,i=Z(e.callee)?e.callee:r(e.callee);s&&n(Us),n(i+"(",e),vr(e.arguments,t),n(")")}function og(e,t){const{push:n,indent:r,deindent:s,newline:i}=t,{properties:o}=e;if(!o.length){n("{}",e);return}const l=o.length>1||!1;n(l?"{":"{ "),l&&r();for(let c=0;c "),(c||l)&&(n("{"),r()),o?(c&&n("return "),$(o)?rl(o,t):Ae(o,t)):l&&Ae(l,t),(c||l)&&(s(),n("}")),a&&(e.isNonScopedSlot&&n(", undefined, true"),n(")"))}function ag(e,t){const{test:n,consequent:r,alternate:s,newline:i}=e,{push:o,indent:l,deindent:c,newline:a}=t;if(n.type===4){const d=!tl(n.content);d&&o("("),Hu(n,t),d&&o(")")}else o("("),Ae(n,t),o(")");i&&l(),t.indentLevel++,i||o(" "),o("? "),Ae(r,t),t.indentLevel--,i&&a(),i||o(" "),o(": ");const u=s.type===19;u||t.indentLevel++,Ae(s,t),u||t.indentLevel--,i&&c(!0)}function ug(e,t){const{push:n,helper:r,indent:s,deindent:i,newline:o}=t;n(`_cache[${e.index}] || (`),e.isVNode&&(s(),n(`${r(is)}(-1),`),o()),n(`_cache[${e.index}] = `),Ae(e.value,t),e.isVNode&&(n(","),o(),n(`${r(is)}(1),`),o(),n(`_cache[${e.index}]`),i()),n(")")}new RegExp("\\b"+"arguments,await,break,case,catch,class,const,continue,debugger,default,delete,do,else,export,extends,finally,for,function,if,import,let,new,return,super,switch,throw,try,var,void,while,with,yield".split(",").join("\\b|\\b")+"\\b");const fg=xu(/^(if|else|else-if)$/,(e,t,n)=>dg(e,t,n,(r,s,i)=>{const o=n.parent.children;let l=o.indexOf(r),c=0;for(;l-->=0;){const a=o[l];a&&a.type===9&&(c+=a.branches.length)}return()=>{if(i)r.codegenNode=ac(s,c,n);else{const a=pg(r.codegenNode);a.alternate=ac(s,c+r.branches.length-1,n)}}}));function dg(e,t,n,r){if(t.name!=="else"&&(!t.exp||!t.exp.content.trim())){const s=t.exp?t.exp.loc:e.loc;n.onError(fe(28,t.loc)),t.exp=Q("true",!1,s)}if(t.name==="if"){const s=cc(e,t),i={type:9,loc:e.loc,branches:[s]};if(n.replaceNode(i),r)return r(i,s,!0)}else{const s=n.parent.children;let i=s.indexOf(e);for(;i-->=-1;){const o=s[i];if(o&&o.type===3){n.removeNode(o);continue}if(o&&o.type===2&&!o.content.trim().length){n.removeNode(o);continue}if(o&&o.type===9){t.name==="else-if"&&o.branches[o.branches.length-1].condition===void 0&&n.onError(fe(30,e.loc)),n.removeNode();const l=cc(e,t);o.branches.push(l);const c=r&&r(o,l,!1);$s(l,n),c&&c(),n.currentNode=null}else n.onError(fe(30,e.loc));break}}}function cc(e,t){const n=e.tagType===3;return{type:10,loc:e.loc,condition:t.name==="else"?void 0:t.exp,children:n&&!qe(e,"for")?e.children:[e],userKey:js(e,"key"),isTemplateIf:n}}function ac(e,t,n){return e.condition?Hi(e.condition,uc(e,t,n),me(n.helper(gr),['""',"true"])):uc(e,t,n)}function uc(e,t,n){const{helper:r}=n,s=pe("key",Q(`${t}`,!1,Ue,2)),{children:i}=e,o=i[0];if(i.length!==1||o.type!==1)if(i.length===1&&o.type===11){const c=o.codegenNode;return us(c,s,n),c}else{let c=64;return sr(n,r(nr),Ke([s]),i,c+"",void 0,void 0,!0,!1,!1,e.loc)}else{const c=o.codegenNode,a=Pm(c);return a.type===13&&el(a,n),us(a,s,n),c}}function pg(e){for(;;)if(e.type===19)if(e.alternate.type===19)e=e.alternate;else return e;else e.type===20&&(e=e.value)}const hg=xu("for",(e,t,n)=>{const{helper:r,removeHelper:s}=n;return mg(e,t,n,i=>{const o=me(r(Jo),[i.source]),l=cs(e),c=qe(e,"memo"),a=js(e,"key"),u=a&&(a.type===6?Q(a.value.content,!0):a.exp),d=a?pe("key",u):null,v=i.source.type===4&&i.source.constType>0,h=v?64:a?128:256;return i.codegenNode=sr(n,r(nr),void 0,o,h+"",void 0,void 0,!0,!v,!1,e.loc),()=>{let g;const{children:p}=i,b=p.length!==1||p[0].type!==1,m=as(e)?e:l&&e.children.length===1&&as(e.children[0])?e.children[0]:null;if(m?(g=m.codegenNode,l&&d&&us(g,d,n)):b?g=sr(n,r(nr),d?Ke([d]):void 0,e.children,"64",void 0,void 0,!0,void 0,!1):(g=p[0].codegenNode,l&&d&&us(g,d,n),g.isBlock!==!v&&(g.isBlock?(s(Yt),s(Tn(n.inSSR,g.isComponent))):s(Cn(n.inSSR,g.isComponent))),g.isBlock=!v,g.isBlock?(r(Yt),r(Tn(n.inSSR,g.isComponent))):r(Cn(n.inSSR,g.isComponent))),c){const f=wn(Vi(i.parseResult,[Q("_cached")]));f.body=Em([tt(["const _memo = (",c.exp,")"]),tt(["if (_cached",...u?[" && _cached.key === ",u]:[],` && ${n.helperString(Nu)}(_cached, _memo)) return _cached`]),tt(["const _item = ",g]),Q("_item.memo = _memo"),Q("return _item")]),o.arguments.push(f,Q("_cache"),Q(String(n.cached++)))}else o.arguments.push(wn(Vi(i.parseResult),g,!0))}})});function mg(e,t,n,r){if(!t.exp){n.onError(fe(31,t.loc));return}const s=Uu(t.exp);if(!s){n.onError(fe(32,t.loc));return}const{addIdentifiers:i,removeIdentifiers:o,scopes:l}=n,{source:c,value:a,key:u,index:d}=s,v={type:11,loc:t.loc,source:c,valueAlias:a,keyAlias:u,objectIndexAlias:d,parseResult:s,children:cs(e)?e.children:[e]};n.replaceNode(v),l.vFor++;const h=r&&r(v);return()=>{l.vFor--,h&&h()}}const gg=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,fc=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,yg=/^\(|\)$/g;function Uu(e,t){const n=e.loc,r=e.content,s=r.match(gg);if(!s)return;const[,i,o]=s,l={source:Mr(n,o.trim(),r.indexOf(o,i.length)),value:void 0,key:void 0,index:void 0};let c=i.trim().replace(yg,"").trim();const a=i.indexOf(c),u=c.match(fc);if(u){c=c.replace(fc,"").trim();const d=u[1].trim();let v;if(d&&(v=r.indexOf(d,a+c.length),l.key=Mr(n,d,v)),u[2]){const h=u[2].trim();h&&(l.index=Mr(n,h,r.indexOf(h,l.key?v+d.length:a+c.length)))}}return c&&(l.value=Mr(n,c,a)),l}function Mr(e,t,n){return Q(t,!1,Pu(e,n,t.length))}function Vi({value:e,key:t,index:n},r=[]){return bg([e,t,n,...r])}function bg(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map((n,r)=>n||Q("_".repeat(r+1),!1))}const dc=Q("undefined",!1),vg=(e,t)=>{if(e.type===1&&(e.tagType===1||e.tagType===3)){const n=qe(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},_g=(e,t,n)=>wn(e,t,!1,!0,t.length?t[0].loc:n);function Eg(e,t,n=_g){t.helper(Yo);const{children:r,loc:s}=e,i=[],o=[];let l=t.scopes.vSlot>0||t.scopes.vFor>0;const c=qe(e,"slot",!0);if(c){const{arg:b,exp:m}=c;b&&!ke(b)&&(l=!0),i.push(pe(b||Q("default",!0),n(m,r,s)))}let a=!1,u=!1;const d=[],v=new Set;let h=0;for(let b=0;b{const E=n(m,f,s);return t.compatConfig&&(E.isNonScopedSlot=!0),pe("default",E)};a?d.length&&d.some(m=>Vu(m))&&(u?t.onError(fe(39,d[0].loc)):i.push(b(void 0,d))):i.push(b(void 0,r))}const g=l?2:Ur(e.children)?3:1;let p=Ke(i.concat(pe("_",Q(g+"",!1))),s);return o.length&&(p=me(t.helper(Ou),[p,br(o)])),{slots:p,hasDynamicSlots:l}}function Lr(e,t,n){const r=[pe("name",e),pe("fn",t)];return n!=null&&r.push(pe("key",Q(String(n),!0))),Ke(r)}function Ur(e){for(let t=0;tfunction(){if(e=t.currentNode,!(e.type===1&&(e.tagType===0||e.tagType===1)))return;const{tag:r,props:s}=e,i=e.tagType===1;let o=i?wg(e,t):`"${r}"`;const l=le(o)&&o.callee===rs;let c,a,u,d=0,v,h,g,p=l||o===Kn||o===Ho||!i&&(r==="svg"||r==="foreignObject");if(s.length>0){const b=Ku(e,t,void 0,i,l);c=b.props,d=b.patchFlag,h=b.dynamicPropNames;const m=b.directives;g=m&&m.length?br(m.map(f=>Tg(f,t))):void 0,b.shouldUseBlock&&(p=!0)}if(e.children.length>0)if(o===ns&&(p=!0,d|=1024),i&&o!==Kn&&o!==ns){const{slots:m,hasDynamicSlots:f}=Eg(e,t);a=m,f&&(d|=1024)}else if(e.children.length===1&&o!==Kn){const m=e.children[0],f=m.type,E=f===5||f===8;E&&We(m,t)===0&&(d|=1),E||f===2?a=m:a=e.children}else a=e.children;d!==0&&(u=String(d),h&&h.length&&(v=Og(h))),e.codegenNode=sr(t,o,c,a,u,v,g,!!p,!1,i,e.loc)};function wg(e,t,n=!1){let{tag:r}=e;const s=qi(r),i=js(e,"is");if(i)if(s||zt("COMPILER_IS_ON_ELEMENT",t)){const c=i.type===6?i.value&&Q(i.value.content,!0):i.exp;if(c)return me(t.helper(rs),[c])}else i.type===6&&i.value.content.startsWith("vue:")&&(r=i.value.content.slice(4));const o=!s&&qe(e,"is");if(o&&o.exp)return me(t.helper(rs),[o.exp]);const l=Au(r)||t.isBuiltInComponent(r);return l?(n||t.helper(l),l):(t.helper(qo),t.components.add(r),ir(r,"component"))}function Ku(e,t,n=e.props,r,s,i=!1){const{tag:o,loc:l,children:c}=e;let a=[];const u=[],d=[],v=c.length>0;let h=!1,g=0,p=!1,b=!1,m=!1,f=!1,E=!1,y=!1;const w=[],O=T=>{a.length&&(u.push(Ke(pc(a),l)),a=[]),T&&u.push(T)},N=({key:T,value:A})=>{if(ke(T)){const P=T.content,I=Xt(P);if(I&&(!r||s)&&P.toLowerCase()!=="onclick"&&P!=="onUpdate:modelValue"&&!Vt(P)&&(f=!0),I&&Vt(P)&&(y=!0),A.type===20||(A.type===4||A.type===8)&&We(A,t)>0)return;P==="ref"?p=!0:P==="class"?b=!0:P==="style"?m=!0:P!=="key"&&!w.includes(P)&&w.push(P),r&&(P==="class"||P==="style")&&!w.includes(P)&&w.push(P)}else E=!0};for(let T=0;T0&&a.push(pe(Q("ref_for",!0),Q("true")))),I==="is"&&(qi(o)||L&&L.content.startsWith("vue:")||zt("COMPILER_IS_ON_ELEMENT",t)))continue;a.push(pe(Q(I,!0,Pu(P,0,I.length)),Q(L?L.content:"",D,L?L.loc:P)))}else{const{name:P,arg:I,exp:L,loc:D}=A,G=P==="bind",W=P==="on";if(P==="slot"){r||t.onError(fe(40,D));continue}if(P==="once"||P==="memo"||P==="is"||G&&Ut(I,"is")&&(qi(o)||zt("COMPILER_IS_ON_ELEMENT",t))||W&&i)continue;if((G&&Ut(I,"key")||W&&v&&Ut(I,"vue:before-update"))&&(h=!0),G&&Ut(I,"ref")&&t.scopes.vFor>0&&a.push(pe(Q("ref_for",!0),Q("true"))),!I&&(G||W)){if(E=!0,L)if(G){if(O(),zt("COMPILER_V_BIND_OBJECT_ORDER",t)){u.unshift(L);continue}u.push(L)}else O({type:14,loc:D,callee:t.helper(Qo),arguments:r?[L]:[L,"true"]});else t.onError(fe(G?34:35,D));continue}const te=t.directiveTransforms[P];if(te){const{props:ne,needRuntime:Se}=te(A,e,t);!i&&ne.forEach(N),W&&I&&!ke(I)?O(Ke(ne,l)):a.push(...ne),Se&&(d.push(A),Pt(Se)&&qu.set(A,Se))}else jf(P)||(d.push(A),v&&(h=!0))}}let _;if(u.length?(O(),u.length>1?_=me(t.helper(ss),u,l):_=u[0]):a.length&&(_=Ke(pc(a),l)),E?g|=16:(b&&!r&&(g|=2),m&&!r&&(g|=4),w.length&&(g|=8),f&&(g|=32)),!h&&(g===0||g===32)&&(p||y||d.length>0)&&(g|=512),!t.inSSR&&_)switch(_.type){case 15:let T=-1,A=-1,P=!1;for(let D=0;D<_.properties.length;D++){const G=_.properties[D].key;ke(G)?G.content==="class"?T=D:G.content==="style"&&(A=D):G.isHandlerKey||(P=!0)}const I=_.properties[T],L=_.properties[A];P?_=me(t.helper(rr),[_]):(I&&!ke(I.value)&&(I.value=me(t.helper(Go),[I.value])),L&&(m||L.value.type===4&&L.value.content.trim()[0]==="["||L.value.type===17)&&(L.value=me(t.helper(Zo),[L.value])));break;case 14:break;default:_=me(t.helper(rr),[me(t.helper(yr),[_])]);break}return{props:_,directives:d,patchFlag:g,dynamicPropNames:w,shouldUseBlock:h}}function pc(e){const t=new Map,n=[];for(let r=0;rpe(o,i)),s))}return br(n,e.loc)}function Og(e){let t="[";for(let n=0,r=e.length;n{if(as(e)){const{children:n,loc:r}=e,{slotName:s,slotProps:i}=Ag(e,t),o=[t.prefixIdentifiers?"_ctx.$slots":"$slots",s,"{}","undefined","true"];let l=2;i&&(o[2]=i,l=3),n.length&&(o[3]=wn([],n,!1,!1,r),l=4),t.scopeId&&!t.slotted&&(l=5),o.splice(l),e.codegenNode=me(t.helper(Tu),o,r)}};function Ag(e,t){let n='"default"',r;const s=[];for(let i=0;i0){const{props:i,directives:o}=Ku(e,t,s,!1,!1);r=i,o.length&&t.onError(fe(36,o[0].loc))}return{slotName:n,slotProps:r}}const Rg=/^\s*([\w$_]+|(async\s*)?\([^)]*?\))\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/,Wu=(e,t,n,r)=>{const{loc:s,modifiers:i,arg:o}=e;!e.exp&&!i.length&&n.onError(fe(35,s));let l;if(o.type===4)if(o.isStatic){let d=o.content;d.startsWith("vue:")&&(d=`vnode-${d.slice(4)}`);const v=t.tagType!==0||d.startsWith("vnode")||!/[A-Z]/.test(d)?pn(ye(d)):`on:${d}`;l=Q(v,!0,o.loc)}else l=tt([`${n.helperString(ji)}(`,o,")"]);else l=o,l.children.unshift(`${n.helperString(ji)}(`),l.children.push(")");let c=e.exp;c&&!c.content.trim()&&(c=void 0);let a=n.cacheHandlers&&!c&&!n.inVOnce;if(c){const d=Ru(c.content),v=!(d||Rg.test(c.content)),h=c.content.includes(";");(v||a&&d)&&(c=tt([`${v?"$event":"(...args)"} => ${h?"{":"("}`,c,h?"}":")"]))}let u={props:[pe(l,c||Q("() => {}",!1,s))]};return r&&(u=r(u)),a&&(u.props[0].value=n.cache(u.props[0].value)),u.props.forEach(d=>d.key.isHandlerKey=!0),u},Pg=(e,t,n)=>{const{exp:r,modifiers:s,loc:i}=e,o=e.arg;return o.type!==4?(o.children.unshift("("),o.children.push(') || ""')):o.isStatic||(o.content=`${o.content} || ""`),s.includes("camel")&&(o.type===4?o.isStatic?o.content=ye(o.content):o.content=`${n.helperString(xi)}(${o.content})`:(o.children.unshift(`${n.helperString(xi)}(`),o.children.push(")"))),n.inSSR||(s.includes("prop")&&hc(o,"."),s.includes("attr")&&hc(o,"^")),!r||r.type===4&&!r.content.trim()?(n.onError(fe(34,i)),{props:[pe(o,Q("",!0,i))]}):{props:[pe(o,r)]}},hc=(e,t)=>{e.type===4?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},Ig=(e,t)=>{if(e.type===0||e.type===1||e.type===11||e.type===10)return()=>{const n=e.children;let r,s=!1;for(let i=0;ii.type===7&&!t.directiveTransforms[i.name])&&e.tag!=="template")))for(let i=0;i{if(e.type===1&&qe(e,"once",!0))return mc.has(e)||t.inVOnce||t.inSSR?void 0:(mc.add(e),t.inVOnce=!0,t.helper(is),()=>{t.inVOnce=!1;const n=t.currentNode;n.codegenNode&&(n.codegenNode=t.cache(n.codegenNode,!0))})},zu=(e,t,n)=>{const{exp:r,arg:s}=e;if(!r)return n.onError(fe(41,e.loc)),Br();const i=r.loc.source,o=r.type===4?r.content:i,l=n.bindingMetadata[i];if(l==="props"||l==="props-aliased")return n.onError(fe(44,r.loc)),Br();const c=!1;if(!o.trim()||!Ru(o)&&!c)return n.onError(fe(42,r.loc)),Br();const a=s||Q("modelValue",!0),u=s?ke(s)?`onUpdate:${ye(s.content)}`:tt(['"onUpdate:" + ',s]):"onUpdate:modelValue";let d;const v=n.isTS?"($event: any)":"$event";d=tt([`${v} => ((`,r,") = $event)"]);const h=[pe(a,e.exp),pe(u,d)];if(e.modifiers.length&&t.tagType===1){const g=e.modifiers.map(b=>(tl(b)?b:JSON.stringify(b))+": true").join(", "),p=s?ke(s)?`${s.content}Modifiers`:tt([s,' + "Modifiers"']):"modelModifiers";h.push(pe(p,Q(`{ ${g} }`,!1,e.loc,2)))}return Br(h)};function Br(e=[]){return{props:e}}const kg=/[\w).+\-_$\]]/,Mg=(e,t)=>{zt("COMPILER_FILTER",t)&&(e.type===5&&ds(e.content,t),e.type===1&&e.props.forEach(n=>{n.type===7&&n.name!=="for"&&n.exp&&ds(n.exp,t)}))};function ds(e,t){if(e.type===4)gc(e,t);else for(let n=0;n=0&&(f=n.charAt(m),f===" ");m--);(!f||!kg.test(f))&&(o=!0)}}g===void 0?g=n.slice(0,h).trim():u!==0&&b();function b(){p.push(n.slice(u,h).trim()),u=h+1}if(p.length){for(h=0;h{if(e.type===1){const n=qe(e,"memo");return!n||yc.has(e)?void 0:(yc.add(e),()=>{const r=e.codegenNode||t.currentNode.codegenNode;r&&r.type===13&&(e.tagType!==1&&el(r,t),e.codegenNode=me(t.helper(Xo),[n.exp,wn(void 0,r),"_cache",String(t.cached++)]))})}};function Dg(e){return[[Fg,fg,Bg,hg,Mg,Ng,Sg,vg,Ig],{on:Wu,bind:Pg,model:zu}]}function xg(e,t={}){const n=t.onError||jo,r=t.mode==="module";t.prefixIdentifiers===!0?n(fe(47)):r&&n(fe(48));const s=!1;t.cacheHandlers&&n(fe(49)),t.scopeId&&!r&&n(fe(50));const i=Z(e)?km(e,t):e,[o,l]=Dg();return zm(i,ee({},t,{prefixIdentifiers:s,nodeTransforms:[...o,...t.nodeTransforms||[]],directiveTransforms:ee({},l,t.directiveTransforms||{})})),Zm(i,ee({},t,{prefixIdentifiers:s}))}const jg=()=>({props:[]}),Ju=Symbol(""),Gu=Symbol(""),Zu=Symbol(""),Qu=Symbol(""),Ki=Symbol(""),Yu=Symbol(""),Xu=Symbol(""),ef=Symbol(""),tf=Symbol(""),nf=Symbol("");bm({[Ju]:"vModelRadio",[Gu]:"vModelCheckbox",[Zu]:"vModelText",[Qu]:"vModelSelect",[Ki]:"vModelDynamic",[Yu]:"withModifiers",[Xu]:"withKeys",[ef]:"vShow",[tf]:"Transition",[nf]:"TransitionGroup"});let ln;function Hg(e,t=!1){return ln||(ln=document.createElement("div")),t?(ln.innerHTML=`
`,ln.children[0].getAttribute("foo")):(ln.innerHTML=e,ln.textContent)}const $g=Le("style,iframe,script,noscript",!0),Ug={isVoidTag:Xf,isNativeTag:e=>Qf(e)||Yf(e),isPreTag:e=>e==="pre",decodeEntities:Hg,isBuiltInComponent:e=>{if(un(e,"Transition"))return tf;if(un(e,"TransitionGroup"))return nf},getNamespace(e,t){let n=t?t.ns:0;if(t&&n===2)if(t.tag==="annotation-xml"){if(e==="svg")return 1;t.props.some(r=>r.type===6&&r.name==="encoding"&&r.value!=null&&(r.value.content==="text/html"||r.value.content==="application/xhtml+xml"))&&(n=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&e!=="mglyph"&&e!=="malignmark"&&(n=0);else t&&n===1&&(t.tag==="foreignObject"||t.tag==="desc"||t.tag==="title")&&(n=0);if(n===0){if(e==="svg")return 1;if(e==="math")return 2}return n},getTextMode({tag:e,ns:t}){if(t===0){if(e==="textarea"||e==="title")return 1;if($g(e))return 2}return 0}},Vg=e=>{e.type===1&&e.props.forEach((t,n)=>{t.type===6&&t.name==="style"&&t.value&&(e.props[n]={type:7,name:"bind",arg:Q("style",!0,t.loc),exp:qg(t.value.content,t.loc),modifiers:[],loc:t.loc})})},qg=(e,t)=>{const n=xc(e);return Q(JSON.stringify(n),!1,t,3)};function Rt(e,t){return fe(e,t)}const Kg=(e,t,n)=>{const{exp:r,loc:s}=e;return r||n.onError(Rt(53,s)),t.children.length&&(n.onError(Rt(54,s)),t.children.length=0),{props:[pe(Q("innerHTML",!0,s),r||Q("",!0))]}},Wg=(e,t,n)=>{const{exp:r,loc:s}=e;return r||n.onError(Rt(55,s)),t.children.length&&(n.onError(Rt(56,s)),t.children.length=0),{props:[pe(Q("textContent",!0),r?We(r,n)>0?r:me(n.helperString(xs),[r],s):Q("",!0))]}},zg=(e,t,n)=>{const r=zu(e,t,n);if(!r.props.length||t.tagType===1)return r;e.arg&&n.onError(Rt(58,e.arg.loc));const{tag:s}=t,i=n.isCustomElement(s);if(s==="input"||s==="textarea"||s==="select"||i){let o=Zu,l=!1;if(s==="input"||i){const c=js(t,"type");if(c){if(c.type===7)o=Ki;else if(c.value)switch(c.value.content){case"radio":o=Ju;break;case"checkbox":o=Gu;break;case"file":l=!0,n.onError(Rt(59,e.loc));break}}else Nm(t)&&(o=Ki)}else s==="select"&&(o=Qu);l||(r.needRuntime=n.helper(o))}else n.onError(Rt(57,e.loc));return r.props=r.props.filter(o=>!(o.key.type===4&&o.key.content==="modelValue")),r},Jg=Le("passive,once,capture"),Gg=Le("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),Zg=Le("left,right"),rf=Le("onkeyup,onkeydown,onkeypress",!0),Qg=(e,t,n,r)=>{const s=[],i=[],o=[];for(let l=0;lke(e)&&e.content.toLowerCase()==="onclick"?Q(t,!0):e.type!==4?tt(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,Yg=(e,t,n)=>Wu(e,t,n,r=>{const{modifiers:s}=e;if(!s.length)return r;let{key:i,value:o}=r.props[0];const{keyModifiers:l,nonKeyModifiers:c,eventOptionModifiers:a}=Qg(i,s,n,e.loc);if(c.includes("right")&&(i=bc(i,"onContextmenu")),c.includes("middle")&&(i=bc(i,"onMouseup")),c.length&&(o=me(n.helper(Yu),[o,JSON.stringify(c)])),l.length&&(!ke(i)||rf(i.content))&&(o=me(n.helper(Xu),[o,JSON.stringify(l)])),a.length){const u=a.map(tn).join("");i=ke(i)?Q(`${i.content}${u}`,!0):tt(["(",i,`) + "${u}"`])}return{props:[pe(i,o)]}}),Xg=(e,t,n)=>{const{exp:r,loc:s}=e;return r||n.onError(Rt(61,s)),{props:[],needRuntime:n.helper(ef)}},ey=(e,t)=>{e.type===1&&e.tagType===0&&(e.tag==="script"||e.tag==="style")&&t.removeNode()},ty=[Vg],ny={cloak:jg,html:Kg,text:Wg,model:zg,on:Yg,show:Xg};function ry(e,t={}){return xg(e,ee({},Ug,t,{nodeTransforms:[ey,...ty,...t.nodeTransforms||[]],directiveTransforms:ee({},ny,t.directiveTransforms||{}),transformHoist:null}))}const vc=Object.create(null);function sy(e,t){if(!Z(e))if(e.nodeType)e=e.innerHTML;else return Pe;const n=e,r=vc[n];if(r)return r;if(e[0]==="#"){const l=document.querySelector(e);e=l?l.innerHTML:""}const s=ee({hoistStatic:!0,onError:void 0,onWarn:Pe},t);!s.isCustomElement&&typeof customElements<"u"&&(s.isCustomElement=l=>!!customElements.get(l));const{code:i}=ry(e,s),o=new Function("Vue",i)(dm);return o._rc=!0,vc[n]=o}Ja(sy);const Kb=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n};var iy=!1;/*! * pinia v2.1.6 * (c) 2023 Eduardo San Martin Morote * @license MIT - */let sf;const Vs=e=>sf=e,of=Symbol();function Wi(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var zn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(zn||(zn={}));function Wb(){const e=oo(!0),t=e.run(()=>Ot({}));let n=[],r=[];const s=dr({install(i){Vs(s),s._a=i,i.provide(of,s),i.config.globalProperties.$pinia=s,r.forEach(o=>n.push(o)),r=[]},use(i){return!this._a&&!iy?r.push(i):n.push(i),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return s}const lf=()=>{};function _c(e,t,n,r=lf){e.push(t);const s=()=>{const i=e.indexOf(t);i>-1&&(e.splice(i,1),r())};return!n&&lo()&&Uc(s),s}function cn(e,...t){e.slice().forEach(n=>{n(...t)})}const oy=e=>e();function zi(e,t){e instanceof Map&&t instanceof Map&&t.forEach((n,r)=>e.set(r,n)),e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],s=e[n];Wi(s)&&Wi(r)&&e.hasOwnProperty(n)&&!de(r)&&!dt(r)?e[n]=zi(s,r):e[n]=r}return e}const ly=Symbol();function cy(e){return!Wi(e)||!e.hasOwnProperty(ly)}const{assign:wt}=Object;function ay(e){return!!(de(e)&&e.effect)}function uy(e,t,n,r){const{state:s,actions:i,getters:o}=t,l=n.state.value[e];let c;function a(){l||(n.state.value[e]=s?s():{});const u=ra(n.state.value[e]);return wt(u,i,Object.keys(o||{}).reduce((d,v)=>(d[v]=dr(Lo(()=>{Vs(n);const h=n._s.get(e);return o[v].call(h,h)})),d),{}))}return c=cf(e,a,t,n,r,!0),c}function cf(e,t,n={},r,s,i){let o;const l=wt({actions:{}},n),c={deep:!0};let a,u,d=[],v=[],h;const g=r.state.value[e];!i&&!g&&(r.state.value[e]={}),Ot({});let p;function b(_){let T;a=u=!1,typeof _=="function"?(_(r.state.value[e]),T={type:zn.patchFunction,storeId:e,events:h}):(zi(r.state.value[e],_),T={type:zn.patchObject,payload:_,storeId:e,events:h});const R=p=Symbol();Cs().then(()=>{p===R&&(a=!0)}),u=!0,cn(d,T,r.state.value[e])}const m=i?function(){const{state:T}=n,R=T?T():{};this.$patch(A=>{wt(A,R)})}:lf;function f(){o.stop(),d=[],v=[],r._s.delete(e)}function E(_,T){return function(){Vs(r);const R=Array.from(arguments),A=[],I=[];function L(W){A.push(W)}function D(W){I.push(W)}cn(v,{args:R,name:_,store:w,after:L,onError:D});let Z;try{Z=T.apply(this&&this.$id===e?this:w,R)}catch(W){throw cn(I,W),W}return Z instanceof Promise?Z.then(W=>(cn(A,W),W)).catch(W=>(cn(I,W),Promise.reject(W))):(cn(A,Z),Z)}}const y={_p:r,$id:e,$onAction:_c.bind(null,v),$patch:b,$reset:m,$subscribe(_,T={}){const R=_c(d,_,T.detached,()=>A()),A=o.run(()=>Nt(()=>r.state.value[e],I=>{(T.flush==="sync"?u:a)&&_({storeId:e,type:zn.direct,events:h},I)},wt({},c,T)));return R},$dispose:f},w=ot(y);r._s.set(e,w);const O=r._a&&r._a.runWithContext||oy,N=r._e.run(()=>(o=oo(),O(()=>o.run(t))));for(const _ in N){const T=N[_];if(de(T)&&!ay(T)||dt(T))i||(g&&cy(T)&&(de(T)?T.value=g[_]:zi(T,g[_])),r.state.value[e][_]=T);else if(typeof T=="function"){const R=E(_,T);N[_]=R,l.actions[_]=T}}return wt(w,N),wt(G(w),N),Object.defineProperty(w,"$state",{get:()=>r.state.value[e],set:_=>{b(T=>{wt(T,_)})}}),r._p.forEach(_=>{wt(w,o.run(()=>_({store:w,app:r._a,pinia:r,options:l})))}),g&&i&&n.hydrate&&n.hydrate(w.$state,g),a=!0,u=!0,w}function af(e,t,n){let r,s;const i=typeof t=="function";typeof e=="string"?(r=e,s=i?n:t):(s=e,r=e.id);function o(l,c){const a=Ia();return l=l||(a?yn(of,null):null),l&&Vs(l),l=sf,l._s.has(r)||(i?cf(r,t,s,l):uy(r,s,l)),l._s.get(r)}return o.$id=r,o}const uf=af("error",{state:()=>({message:null,errors:{}})});function ff(e,t){return function(){return e.apply(t,arguments)}}const{toString:fy}=Object.prototype,{getPrototypeOf:sl}=Object,qs=(e=>t=>{const n=fy.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),lt=e=>(e=e.toLowerCase(),t=>qs(t)===e),Ks=e=>t=>typeof t===e,{isArray:An}=Array,cr=Ks("undefined");function dy(e){return e!==null&&!cr(e)&&e.constructor!==null&&!cr(e.constructor)&&ze(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const df=lt("ArrayBuffer");function py(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&df(e.buffer),t}const hy=Ks("string"),ze=Ks("function"),pf=Ks("number"),Ws=e=>e!==null&&typeof e=="object",my=e=>e===!0||e===!1,Vr=e=>{if(qs(e)!=="object")return!1;const t=sl(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},gy=lt("Date"),yy=lt("File"),by=lt("Blob"),vy=lt("FileList"),_y=e=>Ws(e)&&ze(e.pipe),Ey=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ze(e.append)&&((t=qs(e))==="formdata"||t==="object"&&ze(e.toString)&&e.toString()==="[object FormData]"))},Sy=lt("URLSearchParams"),wy=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function _r(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,s;if(typeof e!="object"&&(e=[e]),An(e))for(r=0,s=e.length;r0;)if(s=n[r],t===s.toLowerCase())return s;return null}const mf=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),gf=e=>!cr(e)&&e!==mf;function Ji(){const{caseless:e}=gf(this)&&this||{},t={},n=(r,s)=>{const i=e&&hf(t,s)||s;Vr(t[i])&&Vr(r)?t[i]=Ji(t[i],r):Vr(r)?t[i]=Ji({},r):An(r)?t[i]=r.slice():t[i]=r};for(let r=0,s=arguments.length;r(_r(t,(s,i)=>{n&&ze(s)?e[i]=ff(s,n):e[i]=s},{allOwnKeys:r}),e),Ty=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Oy=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},Ny=(e,t,n,r)=>{let s,i,o;const l={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)o=s[i],(!r||r(o,e,t))&&!l[o]&&(t[o]=e[o],l[o]=!0);e=n!==!1&&sl(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Ry=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},Py=e=>{if(!e)return null;if(An(e))return e;let t=e.length;if(!pf(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Ay=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&sl(Uint8Array)),Iy=(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let s;for(;(s=r.next())&&!s.done;){const i=s.value;t.call(e,i[0],i[1])}},Fy=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},ky=lt("HTMLFormElement"),My=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),Ec=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Ly=lt("RegExp"),yf=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};_r(n,(s,i)=>{let o;(o=t(s,i,e))!==!1&&(r[i]=o||s)}),Object.defineProperties(e,r)},By=e=>{yf(e,(t,n)=>{if(ze(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(ze(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Dy=(e,t)=>{const n={},r=s=>{s.forEach(i=>{n[i]=!0})};return An(e)?r(e):r(String(e).split(t)),n},xy=()=>{},jy=(e,t)=>(e=+e,Number.isFinite(e)?e:t),ci="abcdefghijklmnopqrstuvwxyz",Sc="0123456789",bf={DIGIT:Sc,ALPHA:ci,ALPHA_DIGIT:ci+ci.toUpperCase()+Sc},$y=(e=16,t=bf.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function Hy(e){return!!(e&&ze(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const Uy=e=>{const t=new Array(10),n=(r,s)=>{if(Ws(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[s]=r;const i=An(r)?[]:{};return _r(r,(o,l)=>{const c=n(o,s+1);!cr(c)&&(i[l]=c)}),t[s]=void 0,i}}return r};return n(e,0)},Vy=lt("AsyncFunction"),qy=e=>e&&(Ws(e)||ze(e))&&ze(e.then)&&ze(e.catch),F={isArray:An,isArrayBuffer:df,isBuffer:dy,isFormData:Ey,isArrayBufferView:py,isString:hy,isNumber:pf,isBoolean:my,isObject:Ws,isPlainObject:Vr,isUndefined:cr,isDate:gy,isFile:yy,isBlob:by,isRegExp:Ly,isFunction:ze,isStream:_y,isURLSearchParams:Sy,isTypedArray:Ay,isFileList:vy,forEach:_r,merge:Ji,extend:Cy,trim:wy,stripBOM:Ty,inherits:Oy,toFlatObject:Ny,kindOf:qs,kindOfTest:lt,endsWith:Ry,toArray:Py,forEachEntry:Iy,matchAll:Fy,isHTMLForm:ky,hasOwnProperty:Ec,hasOwnProp:Ec,reduceDescriptors:yf,freezeMethods:By,toObjectSet:Dy,toCamelCase:My,noop:xy,toFiniteNumber:jy,findKey:hf,global:mf,isContextDefined:gf,ALPHABET:bf,generateString:$y,isSpecCompliantForm:Hy,toJSONObject:Uy,isAsyncFn:Vy,isThenable:qy};function se(e,t,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s)}F.inherits(se,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:F.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const vf=se.prototype,_f={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{_f[e]={value:e}});Object.defineProperties(se,_f);Object.defineProperty(vf,"isAxiosError",{value:!0});se.from=(e,t,n,r,s,i)=>{const o=Object.create(vf);return F.toFlatObject(e,o,function(c){return c!==Error.prototype},l=>l!=="isAxiosError"),se.call(o,e.message,t,n,r,s),o.cause=e,o.name=e.name,i&&Object.assign(o,i),o};const Ky=null;function Zi(e){return F.isPlainObject(e)||F.isArray(e)}function Ef(e){return F.endsWith(e,"[]")?e.slice(0,-2):e}function wc(e,t,n){return e?e.concat(t).map(function(s,i){return s=Ef(s),!n&&i?"["+s+"]":s}).join(n?".":""):t}function Wy(e){return F.isArray(e)&&!e.some(Zi)}const zy=F.toFlatObject(F,{},null,function(t){return/^is[A-Z]/.test(t)});function zs(e,t,n){if(!F.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=F.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(p,b){return!F.isUndefined(b[p])});const r=n.metaTokens,s=n.visitor||u,i=n.dots,o=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&F.isSpecCompliantForm(t);if(!F.isFunction(s))throw new TypeError("visitor must be a function");function a(g){if(g===null)return"";if(F.isDate(g))return g.toISOString();if(!c&&F.isBlob(g))throw new se("Blob is not supported. Use a Buffer instead.");return F.isArrayBuffer(g)||F.isTypedArray(g)?c&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function u(g,p,b){let m=g;if(g&&!b&&typeof g=="object"){if(F.endsWith(p,"{}"))p=r?p:p.slice(0,-2),g=JSON.stringify(g);else if(F.isArray(g)&&Wy(g)||(F.isFileList(g)||F.endsWith(p,"[]"))&&(m=F.toArray(g)))return p=Ef(p),m.forEach(function(E,y){!(F.isUndefined(E)||E===null)&&t.append(o===!0?wc([p],y,i):o===null?p:p+"[]",a(E))}),!1}return Zi(g)?!0:(t.append(wc(b,p,i),a(g)),!1)}const d=[],v=Object.assign(zy,{defaultVisitor:u,convertValue:a,isVisitable:Zi});function h(g,p){if(!F.isUndefined(g)){if(d.indexOf(g)!==-1)throw Error("Circular reference detected in "+p.join("."));d.push(g),F.forEach(g,function(m,f){(!(F.isUndefined(m)||m===null)&&s.call(t,m,F.isString(f)?f.trim():f,p,v))===!0&&h(m,p?p.concat(f):[f])}),d.pop()}}if(!F.isObject(e))throw new TypeError("data must be an object");return h(e),t}function Cc(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function il(e,t){this._pairs=[],e&&zs(e,this,t)}const Sf=il.prototype;Sf.append=function(t,n){this._pairs.push([t,n])};Sf.toString=function(t){const n=t?function(r){return t.call(this,r,Cc)}:Cc;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function Jy(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function wf(e,t,n){if(!t)return e;const r=n&&n.encode||Jy,s=n&&n.serialize;let i;if(s?i=s(t,n):i=F.isURLSearchParams(t)?t.toString():new il(t,n).toString(r),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class Zy{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){F.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Tc=Zy,Cf={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Qy=typeof URLSearchParams<"u"?URLSearchParams:il,Yy=typeof FormData<"u"?FormData:null,Xy=typeof Blob<"u"?Blob:null,Gy=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),eb=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),et={isBrowser:!0,classes:{URLSearchParams:Qy,FormData:Yy,Blob:Xy},isStandardBrowserEnv:Gy,isStandardBrowserWebWorkerEnv:eb,protocols:["http","https","file","blob","url","data"]};function tb(e,t){return zs(e,new et.classes.URLSearchParams,Object.assign({visitor:function(n,r,s,i){return et.isNode&&F.isBuffer(n)?(this.append(r,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function nb(e){return F.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function rb(e){const t={},n=Object.keys(e);let r;const s=n.length;let i;for(r=0;r=n.length;return o=!o&&F.isArray(s)?s.length:o,c?(F.hasOwnProp(s,o)?s[o]=[s[o],r]:s[o]=r,!l):((!s[o]||!F.isObject(s[o]))&&(s[o]=[]),t(n,r,s[o],i)&&F.isArray(s[o])&&(s[o]=rb(s[o])),!l)}if(F.isFormData(e)&&F.isFunction(e.entries)){const n={};return F.forEachEntry(e,(r,s)=>{t(nb(r),s,n,0)}),n}return null}function sb(e,t,n){if(F.isString(e))try{return(t||JSON.parse)(e),F.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const ol={transitional:Cf,adapter:et.isNode?"http":"xhr",transformRequest:[function(t,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,i=F.isObject(t);if(i&&F.isHTMLForm(t)&&(t=new FormData(t)),F.isFormData(t))return s&&s?JSON.stringify(Tf(t)):t;if(F.isArrayBuffer(t)||F.isBuffer(t)||F.isStream(t)||F.isFile(t)||F.isBlob(t))return t;if(F.isArrayBufferView(t))return t.buffer;if(F.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return tb(t,this.formSerializer).toString();if((l=F.isFileList(t))||r.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return zs(l?{"files[]":t}:t,c&&new c,this.formSerializer)}}return i||s?(n.setContentType("application/json",!1),sb(t)):t}],transformResponse:[function(t){const n=this.transitional||ol.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(t&&F.isString(t)&&(r&&!this.responseType||s)){const o=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(l){if(o)throw l.name==="SyntaxError"?se.from(l,se.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:et.classes.FormData,Blob:et.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};F.forEach(["delete","get","head","post","put","patch"],e=>{ol.headers[e]={}});const ll=ol,ib=F.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ob=e=>{const t={};let n,r,s;return e&&e.split(` + */let sf;const Vs=e=>sf=e,of=Symbol();function Wi(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var zn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(zn||(zn={}));function Wb(){const e=oo(!0),t=e.run(()=>Ot({}));let n=[],r=[];const s=dr({install(i){Vs(s),s._a=i,i.provide(of,s),i.config.globalProperties.$pinia=s,r.forEach(o=>n.push(o)),r=[]},use(i){return!this._a&&!iy?r.push(i):n.push(i),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return s}const lf=()=>{};function _c(e,t,n,r=lf){e.push(t);const s=()=>{const i=e.indexOf(t);i>-1&&(e.splice(i,1),r())};return!n&&lo()&&Uc(s),s}function cn(e,...t){e.slice().forEach(n=>{n(...t)})}const oy=e=>e();function zi(e,t){e instanceof Map&&t instanceof Map&&t.forEach((n,r)=>e.set(r,n)),e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],s=e[n];Wi(s)&&Wi(r)&&e.hasOwnProperty(n)&&!de(r)&&!dt(r)?e[n]=zi(s,r):e[n]=r}return e}const ly=Symbol();function cy(e){return!Wi(e)||!e.hasOwnProperty(ly)}const{assign:wt}=Object;function ay(e){return!!(de(e)&&e.effect)}function uy(e,t,n,r){const{state:s,actions:i,getters:o}=t,l=n.state.value[e];let c;function a(){l||(n.state.value[e]=s?s():{});const u=ra(n.state.value[e]);return wt(u,i,Object.keys(o||{}).reduce((d,v)=>(d[v]=dr(Lo(()=>{Vs(n);const h=n._s.get(e);return o[v].call(h,h)})),d),{}))}return c=cf(e,a,t,n,r,!0),c}function cf(e,t,n={},r,s,i){let o;const l=wt({actions:{}},n),c={deep:!0};let a,u,d=[],v=[],h;const g=r.state.value[e];!i&&!g&&(r.state.value[e]={}),Ot({});let p;function b(_){let T;a=u=!1,typeof _=="function"?(_(r.state.value[e]),T={type:zn.patchFunction,storeId:e,events:h}):(zi(r.state.value[e],_),T={type:zn.patchObject,payload:_,storeId:e,events:h});const A=p=Symbol();Cs().then(()=>{p===A&&(a=!0)}),u=!0,cn(d,T,r.state.value[e])}const m=i?function(){const{state:T}=n,A=T?T():{};this.$patch(P=>{wt(P,A)})}:lf;function f(){o.stop(),d=[],v=[],r._s.delete(e)}function E(_,T){return function(){Vs(r);const A=Array.from(arguments),P=[],I=[];function L(W){P.push(W)}function D(W){I.push(W)}cn(v,{args:A,name:_,store:w,after:L,onError:D});let G;try{G=T.apply(this&&this.$id===e?this:w,A)}catch(W){throw cn(I,W),W}return G instanceof Promise?G.then(W=>(cn(P,W),W)).catch(W=>(cn(I,W),Promise.reject(W))):(cn(P,G),G)}}const y={_p:r,$id:e,$onAction:_c.bind(null,v),$patch:b,$reset:m,$subscribe(_,T={}){const A=_c(d,_,T.detached,()=>P()),P=o.run(()=>Nt(()=>r.state.value[e],I=>{(T.flush==="sync"?u:a)&&_({storeId:e,type:zn.direct,events:h},I)},wt({},c,T)));return A},$dispose:f},w=ot(y);r._s.set(e,w);const O=r._a&&r._a.runWithContext||oy,N=r._e.run(()=>(o=oo(),O(()=>o.run(t))));for(const _ in N){const T=N[_];if(de(T)&&!ay(T)||dt(T))i||(g&&cy(T)&&(de(T)?T.value=g[_]:zi(T,g[_])),r.state.value[e][_]=T);else if(typeof T=="function"){const A=E(_,T);N[_]=A,l.actions[_]=T}}return wt(w,N),wt(X(w),N),Object.defineProperty(w,"$state",{get:()=>r.state.value[e],set:_=>{b(T=>{wt(T,_)})}}),r._p.forEach(_=>{wt(w,o.run(()=>_({store:w,app:r._a,pinia:r,options:l})))}),g&&i&&n.hydrate&&n.hydrate(w.$state,g),a=!0,u=!0,w}function af(e,t,n){let r,s;const i=typeof t=="function";typeof e=="string"?(r=e,s=i?n:t):(s=e,r=e.id);function o(l,c){const a=Ia();return l=l||(a?yn(of,null):null),l&&Vs(l),l=sf,l._s.has(r)||(i?cf(r,t,s,l):uy(r,s,l)),l._s.get(r)}return o.$id=r,o}const uf=af("error",{state:()=>({message:null,errors:{}})});function ff(e,t){return function(){return e.apply(t,arguments)}}const{toString:fy}=Object.prototype,{getPrototypeOf:sl}=Object,qs=(e=>t=>{const n=fy.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),lt=e=>(e=e.toLowerCase(),t=>qs(t)===e),Ks=e=>t=>typeof t===e,{isArray:Pn}=Array,cr=Ks("undefined");function dy(e){return e!==null&&!cr(e)&&e.constructor!==null&&!cr(e.constructor)&&ze(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const df=lt("ArrayBuffer");function py(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&df(e.buffer),t}const hy=Ks("string"),ze=Ks("function"),pf=Ks("number"),Ws=e=>e!==null&&typeof e=="object",my=e=>e===!0||e===!1,Vr=e=>{if(qs(e)!=="object")return!1;const t=sl(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},gy=lt("Date"),yy=lt("File"),by=lt("Blob"),vy=lt("FileList"),_y=e=>Ws(e)&&ze(e.pipe),Ey=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ze(e.append)&&((t=qs(e))==="formdata"||t==="object"&&ze(e.toString)&&e.toString()==="[object FormData]"))},Sy=lt("URLSearchParams"),wy=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function _r(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,s;if(typeof e!="object"&&(e=[e]),Pn(e))for(r=0,s=e.length;r0;)if(s=n[r],t===s.toLowerCase())return s;return null}const mf=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),gf=e=>!cr(e)&&e!==mf;function Ji(){const{caseless:e}=gf(this)&&this||{},t={},n=(r,s)=>{const i=e&&hf(t,s)||s;Vr(t[i])&&Vr(r)?t[i]=Ji(t[i],r):Vr(r)?t[i]=Ji({},r):Pn(r)?t[i]=r.slice():t[i]=r};for(let r=0,s=arguments.length;r(_r(t,(s,i)=>{n&&ze(s)?e[i]=ff(s,n):e[i]=s},{allOwnKeys:r}),e),Ty=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Oy=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},Ny=(e,t,n,r)=>{let s,i,o;const l={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)o=s[i],(!r||r(o,e,t))&&!l[o]&&(t[o]=e[o],l[o]=!0);e=n!==!1&&sl(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Ay=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},Ry=e=>{if(!e)return null;if(Pn(e))return e;let t=e.length;if(!pf(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Py=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&sl(Uint8Array)),Iy=(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let s;for(;(s=r.next())&&!s.done;){const i=s.value;t.call(e,i[0],i[1])}},Fy=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},ky=lt("HTMLFormElement"),My=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),Ec=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Ly=lt("RegExp"),yf=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};_r(n,(s,i)=>{let o;(o=t(s,i,e))!==!1&&(r[i]=o||s)}),Object.defineProperties(e,r)},By=e=>{yf(e,(t,n)=>{if(ze(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(ze(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Dy=(e,t)=>{const n={},r=s=>{s.forEach(i=>{n[i]=!0})};return Pn(e)?r(e):r(String(e).split(t)),n},xy=()=>{},jy=(e,t)=>(e=+e,Number.isFinite(e)?e:t),ci="abcdefghijklmnopqrstuvwxyz",Sc="0123456789",bf={DIGIT:Sc,ALPHA:ci,ALPHA_DIGIT:ci+ci.toUpperCase()+Sc},Hy=(e=16,t=bf.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function $y(e){return!!(e&&ze(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const Uy=e=>{const t=new Array(10),n=(r,s)=>{if(Ws(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[s]=r;const i=Pn(r)?[]:{};return _r(r,(o,l)=>{const c=n(o,s+1);!cr(c)&&(i[l]=c)}),t[s]=void 0,i}}return r};return n(e,0)},Vy=lt("AsyncFunction"),qy=e=>e&&(Ws(e)||ze(e))&&ze(e.then)&&ze(e.catch),F={isArray:Pn,isArrayBuffer:df,isBuffer:dy,isFormData:Ey,isArrayBufferView:py,isString:hy,isNumber:pf,isBoolean:my,isObject:Ws,isPlainObject:Vr,isUndefined:cr,isDate:gy,isFile:yy,isBlob:by,isRegExp:Ly,isFunction:ze,isStream:_y,isURLSearchParams:Sy,isTypedArray:Py,isFileList:vy,forEach:_r,merge:Ji,extend:Cy,trim:wy,stripBOM:Ty,inherits:Oy,toFlatObject:Ny,kindOf:qs,kindOfTest:lt,endsWith:Ay,toArray:Ry,forEachEntry:Iy,matchAll:Fy,isHTMLForm:ky,hasOwnProperty:Ec,hasOwnProp:Ec,reduceDescriptors:yf,freezeMethods:By,toObjectSet:Dy,toCamelCase:My,noop:xy,toFiniteNumber:jy,findKey:hf,global:mf,isContextDefined:gf,ALPHABET:bf,generateString:Hy,isSpecCompliantForm:$y,toJSONObject:Uy,isAsyncFn:Vy,isThenable:qy};function se(e,t,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s)}F.inherits(se,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:F.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const vf=se.prototype,_f={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{_f[e]={value:e}});Object.defineProperties(se,_f);Object.defineProperty(vf,"isAxiosError",{value:!0});se.from=(e,t,n,r,s,i)=>{const o=Object.create(vf);return F.toFlatObject(e,o,function(c){return c!==Error.prototype},l=>l!=="isAxiosError"),se.call(o,e.message,t,n,r,s),o.cause=e,o.name=e.name,i&&Object.assign(o,i),o};const Ky=null;function Gi(e){return F.isPlainObject(e)||F.isArray(e)}function Ef(e){return F.endsWith(e,"[]")?e.slice(0,-2):e}function wc(e,t,n){return e?e.concat(t).map(function(s,i){return s=Ef(s),!n&&i?"["+s+"]":s}).join(n?".":""):t}function Wy(e){return F.isArray(e)&&!e.some(Gi)}const zy=F.toFlatObject(F,{},null,function(t){return/^is[A-Z]/.test(t)});function zs(e,t,n){if(!F.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=F.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(p,b){return!F.isUndefined(b[p])});const r=n.metaTokens,s=n.visitor||u,i=n.dots,o=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&F.isSpecCompliantForm(t);if(!F.isFunction(s))throw new TypeError("visitor must be a function");function a(g){if(g===null)return"";if(F.isDate(g))return g.toISOString();if(!c&&F.isBlob(g))throw new se("Blob is not supported. Use a Buffer instead.");return F.isArrayBuffer(g)||F.isTypedArray(g)?c&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function u(g,p,b){let m=g;if(g&&!b&&typeof g=="object"){if(F.endsWith(p,"{}"))p=r?p:p.slice(0,-2),g=JSON.stringify(g);else if(F.isArray(g)&&Wy(g)||(F.isFileList(g)||F.endsWith(p,"[]"))&&(m=F.toArray(g)))return p=Ef(p),m.forEach(function(E,y){!(F.isUndefined(E)||E===null)&&t.append(o===!0?wc([p],y,i):o===null?p:p+"[]",a(E))}),!1}return Gi(g)?!0:(t.append(wc(b,p,i),a(g)),!1)}const d=[],v=Object.assign(zy,{defaultVisitor:u,convertValue:a,isVisitable:Gi});function h(g,p){if(!F.isUndefined(g)){if(d.indexOf(g)!==-1)throw Error("Circular reference detected in "+p.join("."));d.push(g),F.forEach(g,function(m,f){(!(F.isUndefined(m)||m===null)&&s.call(t,m,F.isString(f)?f.trim():f,p,v))===!0&&h(m,p?p.concat(f):[f])}),d.pop()}}if(!F.isObject(e))throw new TypeError("data must be an object");return h(e),t}function Cc(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function il(e,t){this._pairs=[],e&&zs(e,this,t)}const Sf=il.prototype;Sf.append=function(t,n){this._pairs.push([t,n])};Sf.toString=function(t){const n=t?function(r){return t.call(this,r,Cc)}:Cc;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function Jy(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function wf(e,t,n){if(!t)return e;const r=n&&n.encode||Jy,s=n&&n.serialize;let i;if(s?i=s(t,n):i=F.isURLSearchParams(t)?t.toString():new il(t,n).toString(r),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class Gy{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){F.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Tc=Gy,Cf={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Zy=typeof URLSearchParams<"u"?URLSearchParams:il,Qy=typeof FormData<"u"?FormData:null,Yy=typeof Blob<"u"?Blob:null,Xy=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),eb=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),et={isBrowser:!0,classes:{URLSearchParams:Zy,FormData:Qy,Blob:Yy},isStandardBrowserEnv:Xy,isStandardBrowserWebWorkerEnv:eb,protocols:["http","https","file","blob","url","data"]};function tb(e,t){return zs(e,new et.classes.URLSearchParams,Object.assign({visitor:function(n,r,s,i){return et.isNode&&F.isBuffer(n)?(this.append(r,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function nb(e){return F.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function rb(e){const t={},n=Object.keys(e);let r;const s=n.length;let i;for(r=0;r=n.length;return o=!o&&F.isArray(s)?s.length:o,c?(F.hasOwnProp(s,o)?s[o]=[s[o],r]:s[o]=r,!l):((!s[o]||!F.isObject(s[o]))&&(s[o]=[]),t(n,r,s[o],i)&&F.isArray(s[o])&&(s[o]=rb(s[o])),!l)}if(F.isFormData(e)&&F.isFunction(e.entries)){const n={};return F.forEachEntry(e,(r,s)=>{t(nb(r),s,n,0)}),n}return null}function sb(e,t,n){if(F.isString(e))try{return(t||JSON.parse)(e),F.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const ol={transitional:Cf,adapter:et.isNode?"http":"xhr",transformRequest:[function(t,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,i=F.isObject(t);if(i&&F.isHTMLForm(t)&&(t=new FormData(t)),F.isFormData(t))return s&&s?JSON.stringify(Tf(t)):t;if(F.isArrayBuffer(t)||F.isBuffer(t)||F.isStream(t)||F.isFile(t)||F.isBlob(t))return t;if(F.isArrayBufferView(t))return t.buffer;if(F.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return tb(t,this.formSerializer).toString();if((l=F.isFileList(t))||r.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return zs(l?{"files[]":t}:t,c&&new c,this.formSerializer)}}return i||s?(n.setContentType("application/json",!1),sb(t)):t}],transformResponse:[function(t){const n=this.transitional||ol.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(t&&F.isString(t)&&(r&&!this.responseType||s)){const o=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(l){if(o)throw l.name==="SyntaxError"?se.from(l,se.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:et.classes.FormData,Blob:et.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};F.forEach(["delete","get","head","post","put","patch"],e=>{ol.headers[e]={}});const ll=ol,ib=F.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ob=e=>{const t={};let n,r,s;return e&&e.split(` `).forEach(function(o){s=o.indexOf(":"),n=o.substring(0,s).trim().toLowerCase(),r=o.substring(s+1).trim(),!(!n||t[n]&&ib[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},Oc=Symbol("internals");function Dn(e){return e&&String(e).trim().toLowerCase()}function qr(e){return e===!1||e==null?e:F.isArray(e)?e.map(qr):String(e)}function lb(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const cb=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function ai(e,t,n,r,s){if(F.isFunction(r))return r.call(this,t,n);if(s&&(t=n),!!F.isString(t)){if(F.isString(r))return t.indexOf(r)!==-1;if(F.isRegExp(r))return r.test(t)}}function ab(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function ub(e,t){const n=F.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(s,i,o){return this[r].call(this,t,s,i,o)},configurable:!0})})}class Js{constructor(t){t&&this.set(t)}set(t,n,r){const s=this;function i(l,c,a){const u=Dn(c);if(!u)throw new Error("header name must be a non-empty string");const d=F.findKey(s,u);(!d||s[d]===void 0||a===!0||a===void 0&&s[d]!==!1)&&(s[d||c]=qr(l))}const o=(l,c)=>F.forEach(l,(a,u)=>i(a,u,c));return F.isPlainObject(t)||t instanceof this.constructor?o(t,n):F.isString(t)&&(t=t.trim())&&!cb(t)?o(ob(t),n):t!=null&&i(n,t,r),this}get(t,n){if(t=Dn(t),t){const r=F.findKey(this,t);if(r){const s=this[r];if(!n)return s;if(n===!0)return lb(s);if(F.isFunction(n))return n.call(this,s,r);if(F.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Dn(t),t){const r=F.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||ai(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let s=!1;function i(o){if(o=Dn(o),o){const l=F.findKey(r,o);l&&(!n||ai(r,r[l],l,n))&&(delete r[l],s=!0)}}return F.isArray(t)?t.forEach(i):i(t),s}clear(t){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const i=n[r];(!t||ai(this,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){const n=this,r={};return F.forEach(this,(s,i)=>{const o=F.findKey(r,i);if(o){n[o]=qr(s),delete n[i];return}const l=t?ab(i):String(i).trim();l!==i&&delete n[i],n[l]=qr(s),r[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return F.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=t&&F.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(s=>r.set(s)),r}static accessor(t){const r=(this[Oc]=this[Oc]={accessors:{}}).accessors,s=this.prototype;function i(o){const l=Dn(o);r[l]||(ub(s,o),r[l]=!0)}return F.isArray(t)?t.forEach(i):i(t),this}}Js.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);F.reduceDescriptors(Js.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});F.freezeMethods(Js);const ht=Js;function ui(e,t){const n=this||ll,r=t||n,s=ht.from(r.headers);let i=r.data;return F.forEach(e,function(l){i=l.call(n,i,s.normalize(),t?t.status:void 0)}),s.normalize(),i}function Of(e){return!!(e&&e.__CANCEL__)}function Er(e,t,n){se.call(this,e??"canceled",se.ERR_CANCELED,t,n),this.name="CanceledError"}F.inherits(Er,se,{__CANCEL__:!0});function fb(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new se("Request failed with status code "+n.status,[se.ERR_BAD_REQUEST,se.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}const db=et.isStandardBrowserEnv?function(){return{write:function(n,r,s,i,o,l){const c=[];c.push(n+"="+encodeURIComponent(r)),F.isNumber(s)&&c.push("expires="+new Date(s).toGMTString()),F.isString(i)&&c.push("path="+i),F.isString(o)&&c.push("domain="+o),l===!0&&c.push("secure"),document.cookie=c.join("; ")},read:function(n){const r=document.cookie.match(new RegExp("(^|;\\s*)("+n+")=([^;]*)"));return r?decodeURIComponent(r[3]):null},remove:function(n){this.write(n,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function pb(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function hb(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function Nf(e,t){return e&&!pb(t)?hb(e,t):t}const mb=et.isStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");let r;function s(i){let o=i;return t&&(n.setAttribute("href",o),o=n.href),n.setAttribute("href",o),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=s(window.location.href),function(o){const l=F.isString(o)?s(o):o;return l.protocol===r.protocol&&l.host===r.host}}():function(){return function(){return!0}}();function gb(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function yb(e,t){e=e||10;const n=new Array(e),r=new Array(e);let s=0,i=0,o;return t=t!==void 0?t:1e3,function(c){const a=Date.now(),u=r[i];o||(o=a),n[s]=c,r[s]=a;let d=i,v=0;for(;d!==s;)v+=n[d++],d=d%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),a-o{const i=s.loaded,o=s.lengthComputable?s.total:void 0,l=i-n,c=r(l),a=i<=o;n=i;const u={loaded:i,total:o,progress:o?i/o:void 0,bytes:l,rate:c||void 0,estimated:c&&o&&a?(o-i)/c:void 0,event:s};u[t?"download":"upload"]=!0,e(u)}}const bb=typeof XMLHttpRequest<"u",vb=bb&&function(e){return new Promise(function(n,r){let s=e.data;const i=ht.from(e.headers).normalize(),o=e.responseType;let l;function c(){e.cancelToken&&e.cancelToken.unsubscribe(l),e.signal&&e.signal.removeEventListener("abort",l)}F.isFormData(s)&&(et.isStandardBrowserEnv||et.isStandardBrowserWebWorkerEnv?i.setContentType(!1):i.setContentType("multipart/form-data;",!1));let a=new XMLHttpRequest;if(e.auth){const h=e.auth.username||"",g=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+g))}const u=Nf(e.baseURL,e.url);a.open(e.method.toUpperCase(),wf(u,e.params,e.paramsSerializer),!0),a.timeout=e.timeout;function d(){if(!a)return;const h=ht.from("getAllResponseHeaders"in a&&a.getAllResponseHeaders()),p={data:!o||o==="text"||o==="json"?a.responseText:a.response,status:a.status,statusText:a.statusText,headers:h,config:e,request:a};fb(function(m){n(m),c()},function(m){r(m),c()},p),a=null}if("onloadend"in a?a.onloadend=d:a.onreadystatechange=function(){!a||a.readyState!==4||a.status===0&&!(a.responseURL&&a.responseURL.indexOf("file:")===0)||setTimeout(d)},a.onabort=function(){a&&(r(new se("Request aborted",se.ECONNABORTED,e,a)),a=null)},a.onerror=function(){r(new se("Network Error",se.ERR_NETWORK,e,a)),a=null},a.ontimeout=function(){let g=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const p=e.transitional||Cf;e.timeoutErrorMessage&&(g=e.timeoutErrorMessage),r(new se(g,p.clarifyTimeoutError?se.ETIMEDOUT:se.ECONNABORTED,e,a)),a=null},et.isStandardBrowserEnv){const h=(e.withCredentials||mb(u))&&e.xsrfCookieName&&db.read(e.xsrfCookieName);h&&i.set(e.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in a&&F.forEach(i.toJSON(),function(g,p){a.setRequestHeader(p,g)}),F.isUndefined(e.withCredentials)||(a.withCredentials=!!e.withCredentials),o&&o!=="json"&&(a.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&a.addEventListener("progress",Nc(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&a.upload&&a.upload.addEventListener("progress",Nc(e.onUploadProgress)),(e.cancelToken||e.signal)&&(l=h=>{a&&(r(!h||h.type?new Er(null,e,a):h),a.abort(),a=null)},e.cancelToken&&e.cancelToken.subscribe(l),e.signal&&(e.signal.aborted?l():e.signal.addEventListener("abort",l)));const v=gb(u);if(v&&et.protocols.indexOf(v)===-1){r(new se("Unsupported protocol "+v+":",se.ERR_BAD_REQUEST,e));return}a.send(s||null)})},Kr={http:Ky,xhr:vb};F.forEach(Kr,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Rf={getAdapter:e=>{e=F.isArray(e)?e:[e];const{length:t}=e;let n,r;for(let s=0;se instanceof ht?e.toJSON():e;function On(e,t){t=t||{};const n={};function r(a,u,d){return F.isPlainObject(a)&&F.isPlainObject(u)?F.merge.call({caseless:d},a,u):F.isPlainObject(u)?F.merge({},u):F.isArray(u)?u.slice():u}function s(a,u,d){if(F.isUndefined(u)){if(!F.isUndefined(a))return r(void 0,a,d)}else return r(a,u,d)}function i(a,u){if(!F.isUndefined(u))return r(void 0,u)}function o(a,u){if(F.isUndefined(u)){if(!F.isUndefined(a))return r(void 0,a)}else return r(void 0,u)}function l(a,u,d){if(d in t)return r(a,u);if(d in e)return r(void 0,a)}const c={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:l,headers:(a,u)=>s(Pc(a),Pc(u),!0)};return F.forEach(Object.keys(Object.assign({},e,t)),function(u){const d=c[u]||s,v=d(e[u],t[u],u);F.isUndefined(v)&&d!==l||(n[u]=v)}),n}const Pf="1.5.0",cl={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{cl[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const Ac={};cl.transitional=function(t,n,r){function s(i,o){return"[Axios v"+Pf+"] Transitional option '"+i+"'"+o+(r?". "+r:"")}return(i,o,l)=>{if(t===!1)throw new se(s(o," has been removed"+(n?" in "+n:"")),se.ERR_DEPRECATED);return n&&!Ac[o]&&(Ac[o]=!0),t?t(i,o,l):!0}};function _b(e,t,n){if(typeof e!="object")throw new se("options must be an object",se.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let s=r.length;for(;s-- >0;){const i=r[s],o=t[i];if(o){const l=e[i],c=l===void 0||o(l,i,e);if(c!==!0)throw new se("option "+i+" must be "+c,se.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new se("Unknown option "+i,se.ERR_BAD_OPTION)}}const Qi={assertOptions:_b,validators:cl},Et=Qi.validators;class ps{constructor(t){this.defaults=t,this.interceptors={request:new Tc,response:new Tc}}request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=On(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:i}=n;r!==void 0&&Qi.assertOptions(r,{silentJSONParsing:Et.transitional(Et.boolean),forcedJSONParsing:Et.transitional(Et.boolean),clarifyTimeoutError:Et.transitional(Et.boolean)},!1),s!=null&&(F.isFunction(s)?n.paramsSerializer={serialize:s}:Qi.assertOptions(s,{encode:Et.function,serialize:Et.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=i&&F.merge(i.common,i[n.method]);i&&F.forEach(["delete","get","head","post","put","patch","common"],g=>{delete i[g]}),n.headers=ht.concat(o,i);const l=[];let c=!0;this.interceptors.request.forEach(function(p){typeof p.runWhen=="function"&&p.runWhen(n)===!1||(c=c&&p.synchronous,l.unshift(p.fulfilled,p.rejected))});const a=[];this.interceptors.response.forEach(function(p){a.push(p.fulfilled,p.rejected)});let u,d=0,v;if(!c){const g=[Rc.bind(this),void 0];for(g.unshift.apply(g,l),g.push.apply(g,a),v=g.length,u=Promise.resolve(n);d{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](s);r._listeners=null}),this.promise.then=s=>{let i;const o=new Promise(l=>{r.subscribe(l),i=l}).then(s);return o.cancel=function(){r.unsubscribe(i)},o},t(function(i,o,l){r.reason||(r.reason=new Er(i,o,l),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}static source(){let t;return{token:new al(function(s){t=s}),cancel:t}}}const Eb=al;function Sb(e){return function(n){return e.apply(null,n)}}function wb(e){return F.isObject(e)&&e.isAxiosError===!0}const Yi={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Yi).forEach(([e,t])=>{Yi[t]=e});const Cb=Yi;function Af(e){const t=new Wr(e),n=ff(Wr.prototype.request,t);return F.extend(n,Wr.prototype,t,{allOwnKeys:!0}),F.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return Af(On(e,s))},n}const be=Af(ll);be.Axios=Wr;be.CanceledError=Er;be.CancelToken=Eb;be.isCancel=Of;be.VERSION=Pf;be.toFormData=zs;be.AxiosError=se;be.Cancel=be.CanceledError;be.all=function(t){return Promise.all(t)};be.spread=Sb;be.isAxiosError=wb;be.mergeConfig=On;be.AxiosHeaders=ht;be.formToJSON=e=>Tf(F.isHTMLForm(e)?new FormData(e):e);be.getAdapter=Rf.getAdapter;be.HttpStatusCode=Cb;be.default=be;const Ge=be;/*! js-cookie v3.0.5 | MIT */function Dr(e){for(var t=1;t"u")){o=Dr({},t,o),typeof o.expires=="number"&&(o.expires=new Date(Date.now()+o.expires*864e5)),o.expires&&(o.expires=o.expires.toUTCString()),s=encodeURIComponent(s).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var l="";for(var c in o)o[c]&&(l+="; "+c,o[c]!==!0&&(l+="="+o[c].split(";")[0]));return document.cookie=s+"="+e.write(i,s)+l}}function r(s){if(!(typeof document>"u"||arguments.length&&!s)){for(var i=document.cookie?document.cookie.split("; "):[],o={},l=0;lGe.get("/sanctum/csrf-cookie");Ge.interceptors.request.use(function(e){return uf().$reset(),Gi.get("XSRF-TOKEN")?e:Ob().then(t=>e)},function(e){return Promise.reject(e)});Ge.interceptors.response.use(function(e){var t,n,r,s,i,o;return(((r=(n=(t=e==null?void 0:e.data)==null?void 0:t.data)==null?void 0:n.csrf_token)==null?void 0:r.length)>0||((o=(i=(s=e==null?void 0:e.data)==null?void 0:s.data)==null?void 0:i.token)==null?void 0:o.length)>0)&&Gi.set("XSRF-TOKEN",e.data.data.csrf_token),e},function(e){switch(e.response.status){case 401:localStorage.removeItem("token"),window.location.reload();break;case 403:case 404:break;case 422:uf().$state=e.response.data;break;default:}return Promise.reject(e)});function hs(e){return hs=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},hs(e)}function di(e,t){if(!e.vueAxiosInstalled){var n=If(t)?Pb(t):t;if(Ab(n)){var r=Ib(e);if(r){var s=r<3?Nb:Rb;Object.keys(n).forEach(function(i){s(e,i,n[i])}),e.vueAxiosInstalled=!0}}}}function Nb(e,t,n){Object.defineProperty(e.prototype,t,{get:function(){return n}}),e[t]=n}function Rb(e,t,n){e.config.globalProperties[t]=n,e[t]=n}function If(e){return e&&typeof e.get=="function"&&typeof e.post=="function"}function Pb(e){return{axios:e,$http:e}}function Ab(e){return hs(e)==="object"&&Object.keys(e).every(function(t){return If(e[t])})}function Ib(e){return e&&e.version&&Number(e.version.split(".")[0])}(typeof exports>"u"?"undefined":hs(exports))=="object"?module.exports=di:typeof define=="function"&&define.amd?define([],function(){return di}):window.Vue&&window.axios&&window.Vue.use&&Vue.use(di,window.axios);const pi=af("auth",{state:()=>({loggedIn:!!localStorage.getItem("token"),user:null}),getters:{},actions:{async login(e){await Ge.get("sanctum/csrf-cookie");const t=(await Ge.post("api/login",e)).data;if(t){const n=`Bearer ${t.token}`;localStorage.setItem("token",n),Ge.defaults.headers.common.Authorization=n,await this.ftechUser()}},async logout(){(await Ge.post("api/logout")).data&&(localStorage.removeItem("token"),this.$reset())},async ftechUser(){this.user=(await Ge.get("api/me")).data,this.loggedIn=!0}}}),zb={install:({config:e})=>{e.globalProperties.$auth=pi(),pi().loggedIn&&pi().ftechUser()}};function Fb(e){return{all:e=e||new Map,on:function(t,n){var r=e.get(t);r?r.push(n):e.set(t,[n])},off:function(t,n){var r=e.get(t);r&&(n?r.splice(r.indexOf(n)>>>0,1):e.set(t,[]))},emit:function(t,n){var r=e.get(t);r&&r.slice().map(function(s){s(n)}),(r=e.get("*"))&&r.slice().map(function(s){s(t,n)})}}}const Jb={install:(e,t)=>{e.config.globalProperties.$eventBus=Fb()}},Ff={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",TOP_CENTER:"top-center",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",BOTTOM_CENTER:"bottom-center"},ms={LIGHT:"light",DARK:"dark",COLORED:"colored",AUTO:"auto"},ul={INFO:"info",SUCCESS:"success",WARNING:"warning",ERROR:"error",DEFAULT:"default"},kf={dangerouslyHTMLString:!1,multiple:!0,position:Ff.TOP_RIGHT,autoClose:5e3,transition:"bounce",hideProgressBar:!1,pauseOnHover:!0,pauseOnFocusLoss:!0,closeOnClick:!0,className:"",bodyClassName:"",style:{},progressClassName:"",progressStyle:{},role:"alert",theme:"light"},kb={rtl:!1,newestOnTop:!1,toastClassName:""},Mb={...kf,...kb};({...kf,type:ul.DEFAULT});var gs=(e=>(e[e.COLLAPSE_DURATION=300]="COLLAPSE_DURATION",e[e.DEBOUNCE_DURATION=50]="DEBOUNCE_DURATION",e.CSS_NAMESPACE="Toastify",e))(gs||{});ot({});ot({});ot({items:[]});const Lb=ot({});ot({});function Bb(...e){return ko(...e)}function Db(e={}){Lb["".concat(gs.CSS_NAMESPACE,"-default-options")]=e}Ff.TOP_LEFT,ms.AUTO,ul.DEFAULT;ul.DEFAULT,ms.AUTO;ms.AUTO,ms.LIGHT;const xb={install(e,t={}){jb(t)}};typeof window<"u"&&(window.Vue3Toastify=xb);function jb(e={}){const t=Bb(Mb,e);Db(t)}const $b={url:"https://echoscoop.com",port:null,defaults:{},routes:{"sanctum.csrf-cookie":{uri:"sanctum/csrf-cookie",methods:["GET","HEAD"]},"ignition.healthCheck":{uri:"_ignition/health-check",methods:["GET","HEAD"]},"ignition.executeSolution":{uri:"_ignition/execute-solution",methods:["POST"]},"ignition.updateConfig":{uri:"_ignition/update-config",methods:["POST"]}}};typeof window<"u"&&typeof window.Ziggy<"u"&&Object.assign($b.routes,window.Ziggy.routes);var Hb=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},eo={exports:{}},hi,Ic;function fl(){if(Ic)return hi;Ic=1;var e=String.prototype.replace,t=/%20/g,n={RFC1738:"RFC1738",RFC3986:"RFC3986"};return hi={default:n.RFC3986,formatters:{RFC1738:function(r){return e.call(r,t,"+")},RFC3986:function(r){return String(r)}},RFC1738:n.RFC1738,RFC3986:n.RFC3986},hi}var mi,Fc;function Mf(){if(Fc)return mi;Fc=1;var e=fl(),t=Object.prototype.hasOwnProperty,n=Array.isArray,r=function(){for(var p=[],b=0;b<256;++b)p.push("%"+((b<16?"0":"")+b.toString(16)).toUpperCase());return p}(),s=function(b){for(;b.length>1;){var m=b.pop(),f=m.obj[m.prop];if(n(f)){for(var E=[],y=0;y=48&&_<=57||_>=65&&_<=90||_>=97&&_<=122||y===e.RFC1738&&(_===40||_===41)){O+=w.charAt(N);continue}if(_<128){O=O+r[_];continue}if(_<2048){O=O+(r[192|_>>6]+r[128|_&63]);continue}if(_<55296||_>=57344){O=O+(r[224|_>>12]+r[128|_>>6&63]+r[128|_&63]);continue}N+=1,_=65536+((_&1023)<<10|w.charCodeAt(N)&1023),O+=r[240|_>>18]+r[128|_>>12&63]+r[128|_>>6&63]+r[128|_&63]}return O},u=function(b){for(var m=[{obj:{o:b},prop:"o"}],f=[],E=0;E"u")return ne;var Se;if(m==="comma"&&s(L))Se=[{value:L.length>0?L.join(",")||null:void 0}];else if(s(w))Se=w;else{var Bt=Object.keys(L);Se=O?Bt.sort(O):Bt}for(var Ze=0;Ze"u"?u.allowDots:!!p.allowDots,charset:b,charsetSentinel:typeof p.charsetSentinel=="boolean"?p.charsetSentinel:u.charsetSentinel,delimiter:typeof p.delimiter>"u"?u.delimiter:p.delimiter,encode:typeof p.encode=="boolean"?p.encode:u.encode,encoder:typeof p.encoder=="function"?p.encoder:u.encoder,encodeValuesOnly:typeof p.encodeValuesOnly=="boolean"?p.encodeValuesOnly:u.encodeValuesOnly,filter:E,format:m,formatter:f,serializeDate:typeof p.serializeDate=="function"?p.serializeDate:u.serializeDate,skipNulls:typeof p.skipNulls=="boolean"?p.skipNulls:u.skipNulls,sort:typeof p.sort=="function"?p.sort:null,strictNullHandling:typeof p.strictNullHandling=="boolean"?p.strictNullHandling:u.strictNullHandling}};return gi=function(g,p){var b=g,m=h(p),f,E;typeof m.filter=="function"?(E=m.filter,b=E("",b)):s(m.filter)&&(E=m.filter,f=E);var y=[];if(typeof b!="object"||b===null)return"";var w;p&&p.arrayFormat in r?w=p.arrayFormat:p&&"indices"in p?w=p.indices?"indices":"repeat":w="indices";var O=r[w];f||(f=Object.keys(b)),m.sort&&f.sort(m.sort);for(var N=0;N0?R+T:""},gi}var yi,Mc;function Vb(){if(Mc)return yi;Mc=1;var e=Mf(),t=Object.prototype.hasOwnProperty,n=Array.isArray,r={allowDots:!1,allowPrototypes:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decoder:e.decode,delimiter:"&",depth:5,ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},s=function(v){return v.replace(/&#(\d+);/g,function(h,g){return String.fromCharCode(parseInt(g,10))})},i=function(v,h){return v&&typeof v=="string"&&h.comma&&v.indexOf(",")>-1?v.split(","):v},o="utf8=%26%2310003%3B",l="utf8=%E2%9C%93",c=function(h,g){var p={},b=g.ignoreQueryPrefix?h.replace(/^\?/,""):h,m=g.parameterLimit===1/0?void 0:g.parameterLimit,f=b.split(g.delimiter,m),E=-1,y,w=g.charset;if(g.charsetSentinel)for(y=0;y-1&&(R=n(R)?[R]:R),t.call(p,T)?p[T]=e.combine(p[T],R):p[T]=R}return p},a=function(v,h,g,p){for(var b=p?h:i(h,g),m=v.length-1;m>=0;--m){var f,E=v[m];if(E==="[]"&&g.parseArrays)f=[].concat(b);else{f=g.plainObjects?Object.create(null):{};var y=E.charAt(0)==="["&&E.charAt(E.length-1)==="]"?E.slice(1,-1):E,w=parseInt(y,10);!g.parseArrays&&y===""?f={0:b}:!isNaN(w)&&E!==y&&String(w)===y&&w>=0&&g.parseArrays&&w<=g.arrayLimit?(f=[],f[w]=b):y!=="__proto__"&&(f[y]=b)}b=f}return b},u=function(h,g,p,b){if(h){var m=p.allowDots?h.replace(/\.([^.[]+)/g,"[$1]"):h,f=/(\[[^[\]]*])/,E=/(\[[^[\]]*])/g,y=p.depth>0&&f.exec(m),w=y?m.slice(0,y.index):m,O=[];if(w){if(!p.plainObjects&&t.call(Object.prototype,w)&&!p.allowPrototypes)return;O.push(w)}for(var N=0;p.depth>0&&(y=E.exec(m))!==null&&N"u"?r.charset:h.charset;return{allowDots:typeof h.allowDots>"u"?r.allowDots:!!h.allowDots,allowPrototypes:typeof h.allowPrototypes=="boolean"?h.allowPrototypes:r.allowPrototypes,arrayLimit:typeof h.arrayLimit=="number"?h.arrayLimit:r.arrayLimit,charset:g,charsetSentinel:typeof h.charsetSentinel=="boolean"?h.charsetSentinel:r.charsetSentinel,comma:typeof h.comma=="boolean"?h.comma:r.comma,decoder:typeof h.decoder=="function"?h.decoder:r.decoder,delimiter:typeof h.delimiter=="string"||e.isRegExp(h.delimiter)?h.delimiter:r.delimiter,depth:typeof h.depth=="number"||h.depth===!1?+h.depth:r.depth,ignoreQueryPrefix:h.ignoreQueryPrefix===!0,interpretNumericEntities:typeof h.interpretNumericEntities=="boolean"?h.interpretNumericEntities:r.interpretNumericEntities,parameterLimit:typeof h.parameterLimit=="number"?h.parameterLimit:r.parameterLimit,parseArrays:h.parseArrays!==!1,plainObjects:typeof h.plainObjects=="boolean"?h.plainObjects:r.plainObjects,strictNullHandling:typeof h.strictNullHandling=="boolean"?h.strictNullHandling:r.strictNullHandling}};return yi=function(v,h){var g=d(h);if(v===""||v===null||typeof v>"u")return g.plainObjects?Object.create(null):{};for(var p=typeof v=="string"?c(v,g):v,b=g.plainObjects?Object.create(null):{},m=Object.keys(p),f=0;f"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}()?Reflect.construct.bind():function(b,m,f){var E=[null];E.push.apply(E,m);var y=new(Function.bind.apply(b,E));return f&&c(y,f.prototype),y},a.apply(null,arguments)}function u(h){var g=typeof Map=="function"?new Map:void 0;return u=function(p){if(p===null||Function.toString.call(p).indexOf("[native code]")===-1)return p;if(typeof p!="function")throw new TypeError("Super expression must either be null or a function");if(g!==void 0){if(g.has(p))return g.get(p);g.set(p,b)}function b(){return a(p,arguments,l(this).constructor)}return b.prototype=Object.create(p.prototype,{constructor:{value:b,enumerable:!1,writable:!0,configurable:!0}}),c(b,p)},u(h)}var d=function(){function h(p,b,m){var f,E;this.name=p,this.definition=b,this.bindings=(f=b.bindings)!=null?f:{},this.wheres=(E=b.wheres)!=null?E:{},this.config=m}var g=h.prototype;return g.matchesUrl=function(p){var b=this;if(!this.definition.methods.includes("GET"))return!1;var m=this.template.replace(/(\/?){([^}?]*)(\??)}/g,function(N,_,T,R){var A,I="(?<"+T+">"+(((A=b.wheres[T])==null?void 0:A.replace(/(^\^)|(\$$)/g,""))||"[^/?]+")+")";return R?"("+_+I+")?":""+_+I}).replace(/^\w+:\/\//,""),f=p.replace(/^\w+:\/\//,"").split("?"),E=f[0],y=f[1],w=new RegExp("^"+m+"/?$").exec(E);if(w){for(var O in w.groups)w.groups[O]=typeof w.groups[O]=="string"?decodeURIComponent(w.groups[O]):w.groups[O];return{params:w.groups,query:r.parse(y)}}return!1},g.compile=function(p){var b=this,m=this.parameterSegments;return m.length?this.template.replace(/{([^}?]+)(\??)}/g,function(f,E,y){var w;if(!y&&[null,void 0].includes(p[E]))throw new Error("Ziggy error: '"+E+"' parameter is required for route '"+b.name+"'.");if(b.wheres[E]){var O,N;if(!new RegExp("^"+(y?"("+b.wheres[E]+")?":b.wheres[E])+"$").test((O=p[E])!=null?O:""))throw new Error("Ziggy error: '"+E+"' parameter does not match required format '"+b.wheres[E]+"' for route '"+b.name+"'.");if(m[m.length-1].name===E)return encodeURIComponent((N=p[E])!=null?N:"").replace(/%2F/g,"/")}return encodeURIComponent((w=p[E])!=null?w:"")}).replace(this.origin+"//",this.origin+"/").replace(/\/+$/,""):this.template},i(h,[{key:"template",get:function(){return(this.origin+"/"+this.definition.uri).replace(/\/+$/,"")}},{key:"origin",get:function(){return this.config.absolute?this.definition.domain?""+this.config.url.match(/^\w+:\/\//)[0]+this.definition.domain+(this.config.port?":"+this.config.port:""):this.config.url:""}},{key:"parameterSegments",get:function(){var p,b;return(p=(b=this.template.match(/{[^}?]+\??}/g))==null?void 0:b.map(function(m){return{name:m.replace(/{|\??}/g,""),required:!/\?}$/.test(m)}}))!=null?p:[]}}]),h}(),v=function(h){var g,p;function b(f,E,y,w){var O;if(y===void 0&&(y=!0),(O=h.call(this)||this).t=w??(typeof Ziggy<"u"?Ziggy:globalThis==null?void 0:globalThis.Ziggy),O.t=o({},O.t,{absolute:y}),f){if(!O.t.routes[f])throw new Error("Ziggy error: route '"+f+"' is not in the route list.");O.i=new d(f,O.t.routes[f],O.t),O.u=O.o(E)}return O}p=h,(g=b).prototype=Object.create(p.prototype),g.prototype.constructor=g,c(g,p);var m=b.prototype;return m.toString=function(){var f=this,E=Object.keys(this.u).filter(function(y){return!f.i.parameterSegments.some(function(w){return w.name===y})}).filter(function(y){return y!=="_query"}).reduce(function(y,w){var O;return o({},y,((O={})[w]=f.u[w],O))},{});return this.i.compile(this.u)+r.stringify(o({},E,this.u._query),{addQueryPrefix:!0,arrayFormat:"indices",encodeValuesOnly:!0,skipNulls:!0,encoder:function(y,w){return typeof y=="boolean"?Number(y):w(y)}})},m.l=function(f){var E=this;f?this.t.absolute&&f.startsWith("/")&&(f=this.h().host+f):f=this.v();var y={},w=Object.entries(this.t.routes).find(function(O){return y=new d(O[0],O[1],E.t).matchesUrl(f)})||[void 0,void 0];return o({name:w[0]},y,{route:w[1]})},m.v=function(){var f=this.h(),E=f.pathname,y=f.search;return(this.t.absolute?f.host+E:E.replace(this.t.url.replace(/^\w*:\/\/[^/]+/,""),"").replace(/^\/+/,"/"))+y},m.current=function(f,E){var y=this.l(),w=y.name,O=y.params,N=y.query,_=y.route;if(!f)return w;var T=new RegExp("^"+f.replace(/\./g,"\\.").replace(/\*/g,".*")+"$").test(w);if([null,void 0].includes(E)||!T)return T;var R=new d(w,_,this.t);E=this.o(E,R);var A=o({},O,N);return!(!Object.values(E).every(function(I){return!I})||Object.values(A).some(function(I){return I!==void 0}))||Object.entries(E).every(function(I){return A[I[0]]==I[1]})},m.h=function(){var f,E,y,w,O,N,_=typeof window<"u"?window.location:{},T=_.host,R=_.pathname,A=_.search;return{host:(f=(E=this.t.location)==null?void 0:E.host)!=null?f:T===void 0?"":T,pathname:(y=(w=this.t.location)==null?void 0:w.pathname)!=null?y:R===void 0?"":R,search:(O=(N=this.t.location)==null?void 0:N.search)!=null?O:A===void 0?"":A}},m.has=function(f){return Object.keys(this.t.routes).includes(f)},m.o=function(f,E){var y=this;f===void 0&&(f={}),E===void 0&&(E=this.i),f!=null||(f={}),f=["string","number"].includes(typeof f)?[f]:f;var w=E.parameterSegments.filter(function(N){return!y.t.defaults[N.name]});if(Array.isArray(f))f=f.reduce(function(N,_,T){var R,A;return o({},N,w[T]?((R={})[w[T].name]=_,R):typeof _=="object"?_:((A={})[_]="",A))},{});else if(w.length===1&&!f[w[0].name]&&(f.hasOwnProperty(Object.values(E.bindings)[0])||f.hasOwnProperty("id"))){var O;(O={})[w[0].name]=f,f=O}return o({},this.p(E),this.g(f,E))},m.p=function(f){var E=this;return f.parameterSegments.filter(function(y){return E.t.defaults[y.name]}).reduce(function(y,w,O){var N,_=w.name;return o({},y,((N={})[_]=E.t.defaults[_],N))},{})},m.g=function(f,E){var y=E.bindings,w=E.parameterSegments;return Object.entries(f).reduce(function(O,N){var _,T,R=N[0],A=N[1];if(!A||typeof A!="object"||Array.isArray(A)||!w.some(function(I){return I.name===R}))return o({},O,((T={})[R]=A,T));if(!A.hasOwnProperty(y[R])){if(!A.hasOwnProperty("id"))throw new Error("Ziggy error: object passed as '"+R+"' parameter is missing route model binding key '"+y[R]+"'.");y[R]="id"}return o({},O,((_={})[R]=A[y[R]],_))},{})},m.valueOf=function(){return this.toString()},m.check=function(f){return this.has(f)},i(b,[{key:"params",get:function(){var f=this.l();return o({},f.params,f.query)}}]),b}(u(String));n.ZiggyVue={install:function(h,g){var p=function(b,m,f,E){return E===void 0&&(E=g),function(y,w,O,N){var _=new v(y,w,O,N);return y?_.toString():_}(b,m,f,E)};h.mixin({methods:{route:p}}),parseInt(h.version)>2&&h.provide("route",p)}}})})(eo,eo.exports);var Zb=eo.exports;export{$b as Z,Kb as _,am as a,Wb as b,ah as c,Ge as d,zb as e,Jb as f,xb as g,bp as h,Ms as o,di as p,Zb as v}; +`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(s=>r.set(s)),r}static accessor(t){const r=(this[Oc]=this[Oc]={accessors:{}}).accessors,s=this.prototype;function i(o){const l=Dn(o);r[l]||(ub(s,o),r[l]=!0)}return F.isArray(t)?t.forEach(i):i(t),this}}Js.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);F.reduceDescriptors(Js.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});F.freezeMethods(Js);const ht=Js;function ui(e,t){const n=this||ll,r=t||n,s=ht.from(r.headers);let i=r.data;return F.forEach(e,function(l){i=l.call(n,i,s.normalize(),t?t.status:void 0)}),s.normalize(),i}function Of(e){return!!(e&&e.__CANCEL__)}function Er(e,t,n){se.call(this,e??"canceled",se.ERR_CANCELED,t,n),this.name="CanceledError"}F.inherits(Er,se,{__CANCEL__:!0});function fb(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new se("Request failed with status code "+n.status,[se.ERR_BAD_REQUEST,se.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}const db=et.isStandardBrowserEnv?function(){return{write:function(n,r,s,i,o,l){const c=[];c.push(n+"="+encodeURIComponent(r)),F.isNumber(s)&&c.push("expires="+new Date(s).toGMTString()),F.isString(i)&&c.push("path="+i),F.isString(o)&&c.push("domain="+o),l===!0&&c.push("secure"),document.cookie=c.join("; ")},read:function(n){const r=document.cookie.match(new RegExp("(^|;\\s*)("+n+")=([^;]*)"));return r?decodeURIComponent(r[3]):null},remove:function(n){this.write(n,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function pb(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function hb(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function Nf(e,t){return e&&!pb(t)?hb(e,t):t}const mb=et.isStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");let r;function s(i){let o=i;return t&&(n.setAttribute("href",o),o=n.href),n.setAttribute("href",o),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=s(window.location.href),function(o){const l=F.isString(o)?s(o):o;return l.protocol===r.protocol&&l.host===r.host}}():function(){return function(){return!0}}();function gb(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function yb(e,t){e=e||10;const n=new Array(e),r=new Array(e);let s=0,i=0,o;return t=t!==void 0?t:1e3,function(c){const a=Date.now(),u=r[i];o||(o=a),n[s]=c,r[s]=a;let d=i,v=0;for(;d!==s;)v+=n[d++],d=d%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),a-o{const i=s.loaded,o=s.lengthComputable?s.total:void 0,l=i-n,c=r(l),a=i<=o;n=i;const u={loaded:i,total:o,progress:o?i/o:void 0,bytes:l,rate:c||void 0,estimated:c&&o&&a?(o-i)/c:void 0,event:s};u[t?"download":"upload"]=!0,e(u)}}const bb=typeof XMLHttpRequest<"u",vb=bb&&function(e){return new Promise(function(n,r){let s=e.data;const i=ht.from(e.headers).normalize(),o=e.responseType;let l;function c(){e.cancelToken&&e.cancelToken.unsubscribe(l),e.signal&&e.signal.removeEventListener("abort",l)}F.isFormData(s)&&(et.isStandardBrowserEnv||et.isStandardBrowserWebWorkerEnv?i.setContentType(!1):i.setContentType("multipart/form-data;",!1));let a=new XMLHttpRequest;if(e.auth){const h=e.auth.username||"",g=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+g))}const u=Nf(e.baseURL,e.url);a.open(e.method.toUpperCase(),wf(u,e.params,e.paramsSerializer),!0),a.timeout=e.timeout;function d(){if(!a)return;const h=ht.from("getAllResponseHeaders"in a&&a.getAllResponseHeaders()),p={data:!o||o==="text"||o==="json"?a.responseText:a.response,status:a.status,statusText:a.statusText,headers:h,config:e,request:a};fb(function(m){n(m),c()},function(m){r(m),c()},p),a=null}if("onloadend"in a?a.onloadend=d:a.onreadystatechange=function(){!a||a.readyState!==4||a.status===0&&!(a.responseURL&&a.responseURL.indexOf("file:")===0)||setTimeout(d)},a.onabort=function(){a&&(r(new se("Request aborted",se.ECONNABORTED,e,a)),a=null)},a.onerror=function(){r(new se("Network Error",se.ERR_NETWORK,e,a)),a=null},a.ontimeout=function(){let g=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const p=e.transitional||Cf;e.timeoutErrorMessage&&(g=e.timeoutErrorMessage),r(new se(g,p.clarifyTimeoutError?se.ETIMEDOUT:se.ECONNABORTED,e,a)),a=null},et.isStandardBrowserEnv){const h=(e.withCredentials||mb(u))&&e.xsrfCookieName&&db.read(e.xsrfCookieName);h&&i.set(e.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in a&&F.forEach(i.toJSON(),function(g,p){a.setRequestHeader(p,g)}),F.isUndefined(e.withCredentials)||(a.withCredentials=!!e.withCredentials),o&&o!=="json"&&(a.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&a.addEventListener("progress",Nc(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&a.upload&&a.upload.addEventListener("progress",Nc(e.onUploadProgress)),(e.cancelToken||e.signal)&&(l=h=>{a&&(r(!h||h.type?new Er(null,e,a):h),a.abort(),a=null)},e.cancelToken&&e.cancelToken.subscribe(l),e.signal&&(e.signal.aborted?l():e.signal.addEventListener("abort",l)));const v=gb(u);if(v&&et.protocols.indexOf(v)===-1){r(new se("Unsupported protocol "+v+":",se.ERR_BAD_REQUEST,e));return}a.send(s||null)})},Kr={http:Ky,xhr:vb};F.forEach(Kr,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Af={getAdapter:e=>{e=F.isArray(e)?e:[e];const{length:t}=e;let n,r;for(let s=0;se instanceof ht?e.toJSON():e;function On(e,t){t=t||{};const n={};function r(a,u,d){return F.isPlainObject(a)&&F.isPlainObject(u)?F.merge.call({caseless:d},a,u):F.isPlainObject(u)?F.merge({},u):F.isArray(u)?u.slice():u}function s(a,u,d){if(F.isUndefined(u)){if(!F.isUndefined(a))return r(void 0,a,d)}else return r(a,u,d)}function i(a,u){if(!F.isUndefined(u))return r(void 0,u)}function o(a,u){if(F.isUndefined(u)){if(!F.isUndefined(a))return r(void 0,a)}else return r(void 0,u)}function l(a,u,d){if(d in t)return r(a,u);if(d in e)return r(void 0,a)}const c={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:l,headers:(a,u)=>s(Rc(a),Rc(u),!0)};return F.forEach(Object.keys(Object.assign({},e,t)),function(u){const d=c[u]||s,v=d(e[u],t[u],u);F.isUndefined(v)&&d!==l||(n[u]=v)}),n}const Rf="1.5.0",cl={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{cl[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const Pc={};cl.transitional=function(t,n,r){function s(i,o){return"[Axios v"+Rf+"] Transitional option '"+i+"'"+o+(r?". "+r:"")}return(i,o,l)=>{if(t===!1)throw new se(s(o," has been removed"+(n?" in "+n:"")),se.ERR_DEPRECATED);return n&&!Pc[o]&&(Pc[o]=!0),t?t(i,o,l):!0}};function _b(e,t,n){if(typeof e!="object")throw new se("options must be an object",se.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let s=r.length;for(;s-- >0;){const i=r[s],o=t[i];if(o){const l=e[i],c=l===void 0||o(l,i,e);if(c!==!0)throw new se("option "+i+" must be "+c,se.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new se("Unknown option "+i,se.ERR_BAD_OPTION)}}const Zi={assertOptions:_b,validators:cl},Et=Zi.validators;class ps{constructor(t){this.defaults=t,this.interceptors={request:new Tc,response:new Tc}}request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=On(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:i}=n;r!==void 0&&Zi.assertOptions(r,{silentJSONParsing:Et.transitional(Et.boolean),forcedJSONParsing:Et.transitional(Et.boolean),clarifyTimeoutError:Et.transitional(Et.boolean)},!1),s!=null&&(F.isFunction(s)?n.paramsSerializer={serialize:s}:Zi.assertOptions(s,{encode:Et.function,serialize:Et.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=i&&F.merge(i.common,i[n.method]);i&&F.forEach(["delete","get","head","post","put","patch","common"],g=>{delete i[g]}),n.headers=ht.concat(o,i);const l=[];let c=!0;this.interceptors.request.forEach(function(p){typeof p.runWhen=="function"&&p.runWhen(n)===!1||(c=c&&p.synchronous,l.unshift(p.fulfilled,p.rejected))});const a=[];this.interceptors.response.forEach(function(p){a.push(p.fulfilled,p.rejected)});let u,d=0,v;if(!c){const g=[Ac.bind(this),void 0];for(g.unshift.apply(g,l),g.push.apply(g,a),v=g.length,u=Promise.resolve(n);d{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](s);r._listeners=null}),this.promise.then=s=>{let i;const o=new Promise(l=>{r.subscribe(l),i=l}).then(s);return o.cancel=function(){r.unsubscribe(i)},o},t(function(i,o,l){r.reason||(r.reason=new Er(i,o,l),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}static source(){let t;return{token:new al(function(s){t=s}),cancel:t}}}const Eb=al;function Sb(e){return function(n){return e.apply(null,n)}}function wb(e){return F.isObject(e)&&e.isAxiosError===!0}const Qi={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Qi).forEach(([e,t])=>{Qi[t]=e});const Cb=Qi;function Pf(e){const t=new Wr(e),n=ff(Wr.prototype.request,t);return F.extend(n,Wr.prototype,t,{allOwnKeys:!0}),F.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return Pf(On(e,s))},n}const be=Pf(ll);be.Axios=Wr;be.CanceledError=Er;be.CancelToken=Eb;be.isCancel=Of;be.VERSION=Rf;be.toFormData=zs;be.AxiosError=se;be.Cancel=be.CanceledError;be.all=function(t){return Promise.all(t)};be.spread=Sb;be.isAxiosError=wb;be.mergeConfig=On;be.AxiosHeaders=ht;be.formToJSON=e=>Tf(F.isHTMLForm(e)?new FormData(e):e);be.getAdapter=Af.getAdapter;be.HttpStatusCode=Cb;be.default=be;const Xe=be;/*! js-cookie v3.0.5 | MIT */function Dr(e){for(var t=1;t"u")){o=Dr({},t,o),typeof o.expires=="number"&&(o.expires=new Date(Date.now()+o.expires*864e5)),o.expires&&(o.expires=o.expires.toUTCString()),s=encodeURIComponent(s).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var l="";for(var c in o)o[c]&&(l+="; "+c,o[c]!==!0&&(l+="="+o[c].split(";")[0]));return document.cookie=s+"="+e.write(i,s)+l}}function r(s){if(!(typeof document>"u"||arguments.length&&!s)){for(var i=document.cookie?document.cookie.split("; "):[],o={},l=0;lXe.get("/sanctum/csrf-cookie");Xe.interceptors.request.use(function(e){return uf().$reset(),Xi.get("XSRF-TOKEN")?e:Ob().then(t=>e)},function(e){return Promise.reject(e)});Xe.interceptors.response.use(function(e){var t,n,r,s,i,o;return(((r=(n=(t=e==null?void 0:e.data)==null?void 0:t.data)==null?void 0:n.csrf_token)==null?void 0:r.length)>0||((o=(i=(s=e==null?void 0:e.data)==null?void 0:s.data)==null?void 0:i.token)==null?void 0:o.length)>0)&&Xi.set("XSRF-TOKEN",e.data.data.csrf_token),e},function(e){switch(e.response.status){case 401:localStorage.removeItem("token"),window.location.reload();break;case 403:case 404:break;case 422:uf().$state=e.response.data;break;default:}return Promise.reject(e)});function hs(e){return hs=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},hs(e)}function di(e,t){if(!e.vueAxiosInstalled){var n=If(t)?Rb(t):t;if(Pb(n)){var r=Ib(e);if(r){var s=r<3?Nb:Ab;Object.keys(n).forEach(function(i){s(e,i,n[i])}),e.vueAxiosInstalled=!0}}}}function Nb(e,t,n){Object.defineProperty(e.prototype,t,{get:function(){return n}}),e[t]=n}function Ab(e,t,n){e.config.globalProperties[t]=n,e[t]=n}function If(e){return e&&typeof e.get=="function"&&typeof e.post=="function"}function Rb(e){return{axios:e,$http:e}}function Pb(e){return hs(e)==="object"&&Object.keys(e).every(function(t){return If(e[t])})}function Ib(e){return e&&e.version&&Number(e.version.split(".")[0])}(typeof exports>"u"?"undefined":hs(exports))=="object"?module.exports=di:typeof define=="function"&&define.amd?define([],function(){return di}):window.Vue&&window.axios&&window.Vue.use&&Vue.use(di,window.axios);const pi=af("auth",{state:()=>({loggedIn:!!localStorage.getItem("token"),user:null}),getters:{},actions:{async login(e){await Xe.get("sanctum/csrf-cookie");const t=(await Xe.post("api/login",e)).data;if(t){const n=`Bearer ${t.token}`;localStorage.setItem("token",n),Xe.defaults.headers.common.Authorization=n,await this.ftechUser()}},async logout(){(await Xe.post("api/logout")).data&&(localStorage.removeItem("token"),this.$reset())},async ftechUser(){this.user=(await Xe.get("api/me")).data,this.loggedIn=!0}}}),zb={install:({config:e})=>{e.globalProperties.$auth=pi(),pi().loggedIn&&pi().ftechUser()}};function Fb(e){return{all:e=e||new Map,on:function(t,n){var r=e.get(t);r?r.push(n):e.set(t,[n])},off:function(t,n){var r=e.get(t);r&&(n?r.splice(r.indexOf(n)>>>0,1):e.set(t,[]))},emit:function(t,n){var r=e.get(t);r&&r.slice().map(function(s){s(n)}),(r=e.get("*"))&&r.slice().map(function(s){s(t,n)})}}}const Jb={install:(e,t)=>{e.config.globalProperties.$eventBus=Fb()}},Ff={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",TOP_CENTER:"top-center",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",BOTTOM_CENTER:"bottom-center"},ms={LIGHT:"light",DARK:"dark",COLORED:"colored",AUTO:"auto"},ul={INFO:"info",SUCCESS:"success",WARNING:"warning",ERROR:"error",DEFAULT:"default"},kf={dangerouslyHTMLString:!1,multiple:!0,position:Ff.TOP_RIGHT,autoClose:5e3,transition:"bounce",hideProgressBar:!1,pauseOnHover:!0,pauseOnFocusLoss:!0,closeOnClick:!0,className:"",bodyClassName:"",style:{},progressClassName:"",progressStyle:{},role:"alert",theme:"light"},kb={rtl:!1,newestOnTop:!1,toastClassName:""},Mb={...kf,...kb};({...kf,type:ul.DEFAULT});var gs=(e=>(e[e.COLLAPSE_DURATION=300]="COLLAPSE_DURATION",e[e.DEBOUNCE_DURATION=50]="DEBOUNCE_DURATION",e.CSS_NAMESPACE="Toastify",e))(gs||{});ot({});ot({});ot({items:[]});const Lb=ot({});ot({});function Bb(...e){return ko(...e)}function Db(e={}){Lb["".concat(gs.CSS_NAMESPACE,"-default-options")]=e}Ff.TOP_LEFT,ms.AUTO,ul.DEFAULT;ul.DEFAULT,ms.AUTO;ms.AUTO,ms.LIGHT;const xb={install(e,t={}){jb(t)}};typeof window<"u"&&(window.Vue3Toastify=xb);function jb(e={}){const t=Bb(Mb,e);Db(t)}const Hb={url:"https://echoscoop.com",port:null,defaults:{},routes:{"sanctum.csrf-cookie":{uri:"sanctum/csrf-cookie",methods:["GET","HEAD"]},"ignition.healthCheck":{uri:"_ignition/health-check",methods:["GET","HEAD"]},"ignition.executeSolution":{uri:"_ignition/execute-solution",methods:["POST"]},"ignition.updateConfig":{uri:"_ignition/update-config",methods:["POST"]},"feeds.main":{uri:"feeds/posts-feed",methods:["GET","HEAD"]},"front.home":{uri:"/",methods:["GET","HEAD"]},"front.terms":{uri:"terms",methods:["GET","HEAD"]},"front.privacy":{uri:"privacy",methods:["GET","HEAD"]},"front.disclaimer":{uri:"disclaimer",methods:["GET","HEAD"]},"front.all":{uri:"news",methods:["GET","HEAD"]},"front.post":{uri:"news/{slug}",methods:["GET","HEAD"]},"front.category":{uri:"{category_slug}",methods:["GET","HEAD"]}}};typeof window<"u"&&typeof window.Ziggy<"u"&&Object.assign(Hb.routes,window.Ziggy.routes);var $b=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},eo={exports:{}},hi,Ic;function fl(){if(Ic)return hi;Ic=1;var e=String.prototype.replace,t=/%20/g,n={RFC1738:"RFC1738",RFC3986:"RFC3986"};return hi={default:n.RFC3986,formatters:{RFC1738:function(r){return e.call(r,t,"+")},RFC3986:function(r){return String(r)}},RFC1738:n.RFC1738,RFC3986:n.RFC3986},hi}var mi,Fc;function Mf(){if(Fc)return mi;Fc=1;var e=fl(),t=Object.prototype.hasOwnProperty,n=Array.isArray,r=function(){for(var p=[],b=0;b<256;++b)p.push("%"+((b<16?"0":"")+b.toString(16)).toUpperCase());return p}(),s=function(b){for(;b.length>1;){var m=b.pop(),f=m.obj[m.prop];if(n(f)){for(var E=[],y=0;y=48&&_<=57||_>=65&&_<=90||_>=97&&_<=122||y===e.RFC1738&&(_===40||_===41)){O+=w.charAt(N);continue}if(_<128){O=O+r[_];continue}if(_<2048){O=O+(r[192|_>>6]+r[128|_&63]);continue}if(_<55296||_>=57344){O=O+(r[224|_>>12]+r[128|_>>6&63]+r[128|_&63]);continue}N+=1,_=65536+((_&1023)<<10|w.charCodeAt(N)&1023),O+=r[240|_>>18]+r[128|_>>12&63]+r[128|_>>6&63]+r[128|_&63]}return O},u=function(b){for(var m=[{obj:{o:b},prop:"o"}],f=[],E=0;E"u")return ne;var Se;if(m==="comma"&&s(L))Se=[{value:L.length>0?L.join(",")||null:void 0}];else if(s(w))Se=w;else{var Bt=Object.keys(L);Se=O?Bt.sort(O):Bt}for(var Ge=0;Ge"u"?u.allowDots:!!p.allowDots,charset:b,charsetSentinel:typeof p.charsetSentinel=="boolean"?p.charsetSentinel:u.charsetSentinel,delimiter:typeof p.delimiter>"u"?u.delimiter:p.delimiter,encode:typeof p.encode=="boolean"?p.encode:u.encode,encoder:typeof p.encoder=="function"?p.encoder:u.encoder,encodeValuesOnly:typeof p.encodeValuesOnly=="boolean"?p.encodeValuesOnly:u.encodeValuesOnly,filter:E,format:m,formatter:f,serializeDate:typeof p.serializeDate=="function"?p.serializeDate:u.serializeDate,skipNulls:typeof p.skipNulls=="boolean"?p.skipNulls:u.skipNulls,sort:typeof p.sort=="function"?p.sort:null,strictNullHandling:typeof p.strictNullHandling=="boolean"?p.strictNullHandling:u.strictNullHandling}};return gi=function(g,p){var b=g,m=h(p),f,E;typeof m.filter=="function"?(E=m.filter,b=E("",b)):s(m.filter)&&(E=m.filter,f=E);var y=[];if(typeof b!="object"||b===null)return"";var w;p&&p.arrayFormat in r?w=p.arrayFormat:p&&"indices"in p?w=p.indices?"indices":"repeat":w="indices";var O=r[w];f||(f=Object.keys(b)),m.sort&&f.sort(m.sort);for(var N=0;N0?A+T:""},gi}var yi,Mc;function Vb(){if(Mc)return yi;Mc=1;var e=Mf(),t=Object.prototype.hasOwnProperty,n=Array.isArray,r={allowDots:!1,allowPrototypes:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decoder:e.decode,delimiter:"&",depth:5,ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},s=function(v){return v.replace(/&#(\d+);/g,function(h,g){return String.fromCharCode(parseInt(g,10))})},i=function(v,h){return v&&typeof v=="string"&&h.comma&&v.indexOf(",")>-1?v.split(","):v},o="utf8=%26%2310003%3B",l="utf8=%E2%9C%93",c=function(h,g){var p={},b=g.ignoreQueryPrefix?h.replace(/^\?/,""):h,m=g.parameterLimit===1/0?void 0:g.parameterLimit,f=b.split(g.delimiter,m),E=-1,y,w=g.charset;if(g.charsetSentinel)for(y=0;y-1&&(A=n(A)?[A]:A),t.call(p,T)?p[T]=e.combine(p[T],A):p[T]=A}return p},a=function(v,h,g,p){for(var b=p?h:i(h,g),m=v.length-1;m>=0;--m){var f,E=v[m];if(E==="[]"&&g.parseArrays)f=[].concat(b);else{f=g.plainObjects?Object.create(null):{};var y=E.charAt(0)==="["&&E.charAt(E.length-1)==="]"?E.slice(1,-1):E,w=parseInt(y,10);!g.parseArrays&&y===""?f={0:b}:!isNaN(w)&&E!==y&&String(w)===y&&w>=0&&g.parseArrays&&w<=g.arrayLimit?(f=[],f[w]=b):y!=="__proto__"&&(f[y]=b)}b=f}return b},u=function(h,g,p,b){if(h){var m=p.allowDots?h.replace(/\.([^.[]+)/g,"[$1]"):h,f=/(\[[^[\]]*])/,E=/(\[[^[\]]*])/g,y=p.depth>0&&f.exec(m),w=y?m.slice(0,y.index):m,O=[];if(w){if(!p.plainObjects&&t.call(Object.prototype,w)&&!p.allowPrototypes)return;O.push(w)}for(var N=0;p.depth>0&&(y=E.exec(m))!==null&&N"u"?r.charset:h.charset;return{allowDots:typeof h.allowDots>"u"?r.allowDots:!!h.allowDots,allowPrototypes:typeof h.allowPrototypes=="boolean"?h.allowPrototypes:r.allowPrototypes,arrayLimit:typeof h.arrayLimit=="number"?h.arrayLimit:r.arrayLimit,charset:g,charsetSentinel:typeof h.charsetSentinel=="boolean"?h.charsetSentinel:r.charsetSentinel,comma:typeof h.comma=="boolean"?h.comma:r.comma,decoder:typeof h.decoder=="function"?h.decoder:r.decoder,delimiter:typeof h.delimiter=="string"||e.isRegExp(h.delimiter)?h.delimiter:r.delimiter,depth:typeof h.depth=="number"||h.depth===!1?+h.depth:r.depth,ignoreQueryPrefix:h.ignoreQueryPrefix===!0,interpretNumericEntities:typeof h.interpretNumericEntities=="boolean"?h.interpretNumericEntities:r.interpretNumericEntities,parameterLimit:typeof h.parameterLimit=="number"?h.parameterLimit:r.parameterLimit,parseArrays:h.parseArrays!==!1,plainObjects:typeof h.plainObjects=="boolean"?h.plainObjects:r.plainObjects,strictNullHandling:typeof h.strictNullHandling=="boolean"?h.strictNullHandling:r.strictNullHandling}};return yi=function(v,h){var g=d(h);if(v===""||v===null||typeof v>"u")return g.plainObjects?Object.create(null):{};for(var p=typeof v=="string"?c(v,g):v,b=g.plainObjects?Object.create(null):{},m=Object.keys(p),f=0;f"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}()?Reflect.construct.bind():function(b,m,f){var E=[null];E.push.apply(E,m);var y=new(Function.bind.apply(b,E));return f&&c(y,f.prototype),y},a.apply(null,arguments)}function u(h){var g=typeof Map=="function"?new Map:void 0;return u=function(p){if(p===null||Function.toString.call(p).indexOf("[native code]")===-1)return p;if(typeof p!="function")throw new TypeError("Super expression must either be null or a function");if(g!==void 0){if(g.has(p))return g.get(p);g.set(p,b)}function b(){return a(p,arguments,l(this).constructor)}return b.prototype=Object.create(p.prototype,{constructor:{value:b,enumerable:!1,writable:!0,configurable:!0}}),c(b,p)},u(h)}var d=function(){function h(p,b,m){var f,E;this.name=p,this.definition=b,this.bindings=(f=b.bindings)!=null?f:{},this.wheres=(E=b.wheres)!=null?E:{},this.config=m}var g=h.prototype;return g.matchesUrl=function(p){var b=this;if(!this.definition.methods.includes("GET"))return!1;var m=this.template.replace(/(\/?){([^}?]*)(\??)}/g,function(N,_,T,A){var P,I="(?<"+T+">"+(((P=b.wheres[T])==null?void 0:P.replace(/(^\^)|(\$$)/g,""))||"[^/?]+")+")";return A?"("+_+I+")?":""+_+I}).replace(/^\w+:\/\//,""),f=p.replace(/^\w+:\/\//,"").split("?"),E=f[0],y=f[1],w=new RegExp("^"+m+"/?$").exec(E);if(w){for(var O in w.groups)w.groups[O]=typeof w.groups[O]=="string"?decodeURIComponent(w.groups[O]):w.groups[O];return{params:w.groups,query:r.parse(y)}}return!1},g.compile=function(p){var b=this,m=this.parameterSegments;return m.length?this.template.replace(/{([^}?]+)(\??)}/g,function(f,E,y){var w;if(!y&&[null,void 0].includes(p[E]))throw new Error("Ziggy error: '"+E+"' parameter is required for route '"+b.name+"'.");if(b.wheres[E]){var O,N;if(!new RegExp("^"+(y?"("+b.wheres[E]+")?":b.wheres[E])+"$").test((O=p[E])!=null?O:""))throw new Error("Ziggy error: '"+E+"' parameter does not match required format '"+b.wheres[E]+"' for route '"+b.name+"'.");if(m[m.length-1].name===E)return encodeURIComponent((N=p[E])!=null?N:"").replace(/%2F/g,"/")}return encodeURIComponent((w=p[E])!=null?w:"")}).replace(this.origin+"//",this.origin+"/").replace(/\/+$/,""):this.template},i(h,[{key:"template",get:function(){return(this.origin+"/"+this.definition.uri).replace(/\/+$/,"")}},{key:"origin",get:function(){return this.config.absolute?this.definition.domain?""+this.config.url.match(/^\w+:\/\//)[0]+this.definition.domain+(this.config.port?":"+this.config.port:""):this.config.url:""}},{key:"parameterSegments",get:function(){var p,b;return(p=(b=this.template.match(/{[^}?]+\??}/g))==null?void 0:b.map(function(m){return{name:m.replace(/{|\??}/g,""),required:!/\?}$/.test(m)}}))!=null?p:[]}}]),h}(),v=function(h){var g,p;function b(f,E,y,w){var O;if(y===void 0&&(y=!0),(O=h.call(this)||this).t=w??(typeof Ziggy<"u"?Ziggy:globalThis==null?void 0:globalThis.Ziggy),O.t=o({},O.t,{absolute:y}),f){if(!O.t.routes[f])throw new Error("Ziggy error: route '"+f+"' is not in the route list.");O.i=new d(f,O.t.routes[f],O.t),O.u=O.o(E)}return O}p=h,(g=b).prototype=Object.create(p.prototype),g.prototype.constructor=g,c(g,p);var m=b.prototype;return m.toString=function(){var f=this,E=Object.keys(this.u).filter(function(y){return!f.i.parameterSegments.some(function(w){return w.name===y})}).filter(function(y){return y!=="_query"}).reduce(function(y,w){var O;return o({},y,((O={})[w]=f.u[w],O))},{});return this.i.compile(this.u)+r.stringify(o({},E,this.u._query),{addQueryPrefix:!0,arrayFormat:"indices",encodeValuesOnly:!0,skipNulls:!0,encoder:function(y,w){return typeof y=="boolean"?Number(y):w(y)}})},m.l=function(f){var E=this;f?this.t.absolute&&f.startsWith("/")&&(f=this.h().host+f):f=this.v();var y={},w=Object.entries(this.t.routes).find(function(O){return y=new d(O[0],O[1],E.t).matchesUrl(f)})||[void 0,void 0];return o({name:w[0]},y,{route:w[1]})},m.v=function(){var f=this.h(),E=f.pathname,y=f.search;return(this.t.absolute?f.host+E:E.replace(this.t.url.replace(/^\w*:\/\/[^/]+/,""),"").replace(/^\/+/,"/"))+y},m.current=function(f,E){var y=this.l(),w=y.name,O=y.params,N=y.query,_=y.route;if(!f)return w;var T=new RegExp("^"+f.replace(/\./g,"\\.").replace(/\*/g,".*")+"$").test(w);if([null,void 0].includes(E)||!T)return T;var A=new d(w,_,this.t);E=this.o(E,A);var P=o({},O,N);return!(!Object.values(E).every(function(I){return!I})||Object.values(P).some(function(I){return I!==void 0}))||Object.entries(E).every(function(I){return P[I[0]]==I[1]})},m.h=function(){var f,E,y,w,O,N,_=typeof window<"u"?window.location:{},T=_.host,A=_.pathname,P=_.search;return{host:(f=(E=this.t.location)==null?void 0:E.host)!=null?f:T===void 0?"":T,pathname:(y=(w=this.t.location)==null?void 0:w.pathname)!=null?y:A===void 0?"":A,search:(O=(N=this.t.location)==null?void 0:N.search)!=null?O:P===void 0?"":P}},m.has=function(f){return Object.keys(this.t.routes).includes(f)},m.o=function(f,E){var y=this;f===void 0&&(f={}),E===void 0&&(E=this.i),f!=null||(f={}),f=["string","number"].includes(typeof f)?[f]:f;var w=E.parameterSegments.filter(function(N){return!y.t.defaults[N.name]});if(Array.isArray(f))f=f.reduce(function(N,_,T){var A,P;return o({},N,w[T]?((A={})[w[T].name]=_,A):typeof _=="object"?_:((P={})[_]="",P))},{});else if(w.length===1&&!f[w[0].name]&&(f.hasOwnProperty(Object.values(E.bindings)[0])||f.hasOwnProperty("id"))){var O;(O={})[w[0].name]=f,f=O}return o({},this.p(E),this.g(f,E))},m.p=function(f){var E=this;return f.parameterSegments.filter(function(y){return E.t.defaults[y.name]}).reduce(function(y,w,O){var N,_=w.name;return o({},y,((N={})[_]=E.t.defaults[_],N))},{})},m.g=function(f,E){var y=E.bindings,w=E.parameterSegments;return Object.entries(f).reduce(function(O,N){var _,T,A=N[0],P=N[1];if(!P||typeof P!="object"||Array.isArray(P)||!w.some(function(I){return I.name===A}))return o({},O,((T={})[A]=P,T));if(!P.hasOwnProperty(y[A])){if(!P.hasOwnProperty("id"))throw new Error("Ziggy error: object passed as '"+A+"' parameter is missing route model binding key '"+y[A]+"'.");y[A]="id"}return o({},O,((_={})[A]=P[y[A]],_))},{})},m.valueOf=function(){return this.toString()},m.check=function(f){return this.has(f)},i(b,[{key:"params",get:function(){var f=this.l();return o({},f.params,f.query)}}]),b}(u(String));n.ZiggyVue={install:function(h,g){var p=function(b,m,f,E){return E===void 0&&(E=g),function(y,w,O,N){var _=new v(y,w,O,N);return y?_.toString():_}(b,m,f,E)};h.mixin({methods:{route:p}}),parseInt(h.version)>2&&h.provide("route",p)}}})})(eo,eo.exports);var Gb=eo.exports;export{Hb as Z,Kb as _,am as a,Wb as b,ah as c,Xe as d,zb as e,Jb as f,xb as g,bp as h,Ms as o,di as p,Gb as v}; diff --git a/public/build/assets/vue-8a418f6a.js.gz b/public/build/assets/vue-8a418f6a.js.gz new file mode 100644 index 0000000..917578e Binary files /dev/null and b/public/build/assets/vue-8a418f6a.js.gz differ diff --git a/public/build/assets/vue-a36422cb.js.gz b/public/build/assets/vue-a36422cb.js.gz deleted file mode 100644 index 44cd351..0000000 Binary files a/public/build/assets/vue-a36422cb.js.gz and /dev/null differ diff --git a/public/build/manifest.json b/public/build/manifest.json index 995d5d4..ff79d2c 100644 --- a/public/build/manifest.json +++ b/public/build/manifest.json @@ -1,9 +1,9 @@ { - "_vue-a36422cb.js": { + "_vue-8a418f6a.js": { "css": [ "assets/vue-935fc652.css" ], - "file": "assets/vue-a36422cb.js" + "file": "assets/vue-8a418f6a.js" }, "node_modules/bootstrap-icons/font/fonts/bootstrap-icons.woff": { "file": "assets/bootstrap-icons-4d4572ef.woff", @@ -13,31 +13,67 @@ "file": "assets/bootstrap-icons-bacd70af.woff2", "src": "node_modules/bootstrap-icons/font/fonts/bootstrap-icons.woff2" }, + "resources/fonts/Inter/Inter-Black.ttf": { + "file": "assets/Inter-Black-3afb2b05.ttf", + "src": "resources/fonts/Inter/Inter-Black.ttf" + }, + "resources/fonts/Inter/Inter-Bold.ttf": { + "file": "assets/Inter-Bold-790c108b.ttf", + "src": "resources/fonts/Inter/Inter-Bold.ttf" + }, + "resources/fonts/Inter/Inter-ExtraBold.ttf": { + "file": "assets/Inter-ExtraBold-4e2473b9.ttf", + "src": "resources/fonts/Inter/Inter-ExtraBold.ttf" + }, + "resources/fonts/Inter/Inter-ExtraLight.ttf": { + "file": "assets/Inter-ExtraLight-edba5be0.ttf", + "src": "resources/fonts/Inter/Inter-ExtraLight.ttf" + }, + "resources/fonts/Inter/Inter-Light.ttf": { + "file": "assets/Inter-Light-c44ff7a5.ttf", + "src": "resources/fonts/Inter/Inter-Light.ttf" + }, + "resources/fonts/Inter/Inter-Medium.ttf": { + "file": "assets/Inter-Medium-10d48331.ttf", + "src": "resources/fonts/Inter/Inter-Medium.ttf" + }, + "resources/fonts/Inter/Inter-Regular.ttf": { + "file": "assets/Inter-Regular-41ab0f70.ttf", + "src": "resources/fonts/Inter/Inter-Regular.ttf" + }, + "resources/fonts/Inter/Inter-SemiBold.ttf": { + "file": "assets/Inter-SemiBold-e8cbc2b8.ttf", + "src": "resources/fonts/Inter/Inter-SemiBold.ttf" + }, + "resources/fonts/Inter/Inter-Thin.ttf": { + "file": "assets/Inter-Thin-b778a52b.ttf", + "src": "resources/fonts/Inter/Inter-Thin.ttf" + }, "resources/js/app-auth.js": { - "file": "assets/app-auth-34561e68.js", + "file": "assets/app-auth-c0ceb740.js", "imports": [ - "_vue-a36422cb.js" + "_vue-8a418f6a.js" ], "isEntry": true, "src": "resources/js/app-auth.js" }, "resources/js/app-front.js": { - "file": "assets/app-front-948dc8d8.js", + "file": "assets/app-front-d35e891f.js", "imports": [ - "_vue-a36422cb.js" + "_vue-8a418f6a.js" ], "isEntry": true, "src": "resources/js/app-front.js" }, "resources/sass/app-auth.scss": { - "file": "assets/app-front-d32494d2.css", + "file": "assets/app-auth-d32494d2.css", "isEntry": true, "src": "resources/sass/app-auth.scss" }, "resources/sass/app-front.scss": { - "file": "assets/app-front-d32494d2.css", + "file": "assets/app-front-48c01c04.css", "isEntry": true, - "src": "resources/sass/app-auth.scss" + "src": "resources/sass/app-front.scss" }, "vue.css": { "file": "assets/vue-935fc652.css", diff --git a/public/build/manifest.json.gz b/public/build/manifest.json.gz index c84ab39..dd27088 100644 Binary files a/public/build/manifest.json.gz and b/public/build/manifest.json.gz differ diff --git a/public/vendor/feed/atom.xsl b/public/vendor/feed/atom.xsl new file mode 100644 index 0000000..a73daac --- /dev/null +++ b/public/vendor/feed/atom.xsl @@ -0,0 +1,82 @@ + + + + + + + + RSS Feed | <xsl:value-of select="/atom:feed/atom:title"/> + + + + + + + +
+

+ + + + + + + + + + + + + + + + + + + + + RSS Feed +

+

+

+ +

+
+ +
+ + +
+ +
+ +
+ Published on + by +
+
+
+
+ + +
+
diff --git a/public/vendor/feed/style.css b/public/vendor/feed/style.css new file mode 100644 index 0000000..fef864f --- /dev/null +++ b/public/vendor/feed/style.css @@ -0,0 +1,37 @@ +.layout-content { + max-width: 640px; + margin-left: auto; + margin-right: auto; + + font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; +} + +hr { + margin: 2rem 0; +} + +.post { + margin-bottom: 2rem; +} + +.post .title { + font-size: 1.5rem; + line-height: 2rem; + margin-bottom: 1rem; +} + +.post .summary { + font-size: 1rem; + line-height: 1.5rem; + margin-bottom: 1rem; +} + +.post .published-info { + font-size: 0.75rem; + line-height: 1rem; + color: #666; +} + +img { + max-width: 100%; +} diff --git a/resources/css/app-front.css b/resources/css/app-front.css index e69de29..38e2cf8 100644 --- a/resources/css/app-front.css +++ b/resources/css/app-front.css @@ -0,0 +1,21 @@ +.nav-scroller { + position: relative; + z-index: 2; + height: 2.75rem; + overflow-y: hidden; +} + +.nav-scroller .nav { + display: flex; + flex-wrap: nowrap; + padding-bottom: 1rem; + margin-top: -1px; + overflow-x: auto; + text-align: center; + white-space: nowrap; + -webkit-overflow-scrolling: touch; +} + +.hover-text-decoration-underline:hover { + text-decoration: underline !important; +} diff --git a/resources/fonts/Inter/Inter-Black.ttf b/resources/fonts/Inter/Inter-Black.ttf new file mode 100644 index 0000000..5aecf7d Binary files /dev/null and b/resources/fonts/Inter/Inter-Black.ttf differ diff --git a/resources/fonts/Inter/Inter-Bold.ttf b/resources/fonts/Inter/Inter-Bold.ttf new file mode 100644 index 0000000..8e82c70 Binary files /dev/null and b/resources/fonts/Inter/Inter-Bold.ttf differ diff --git a/resources/fonts/Inter/Inter-ExtraBold.ttf b/resources/fonts/Inter/Inter-ExtraBold.ttf new file mode 100644 index 0000000..cb4b821 Binary files /dev/null and b/resources/fonts/Inter/Inter-ExtraBold.ttf differ diff --git a/resources/fonts/Inter/Inter-ExtraLight.ttf b/resources/fonts/Inter/Inter-ExtraLight.ttf new file mode 100644 index 0000000..64aee30 Binary files /dev/null and b/resources/fonts/Inter/Inter-ExtraLight.ttf differ diff --git a/resources/fonts/Inter/Inter-Light.ttf b/resources/fonts/Inter/Inter-Light.ttf new file mode 100644 index 0000000..9e265d8 Binary files /dev/null and b/resources/fonts/Inter/Inter-Light.ttf differ diff --git a/resources/fonts/Inter/Inter-Medium.ttf b/resources/fonts/Inter/Inter-Medium.ttf new file mode 100644 index 0000000..b53fb1c Binary files /dev/null and b/resources/fonts/Inter/Inter-Medium.ttf differ diff --git a/resources/fonts/Inter/Inter-Regular.ttf b/resources/fonts/Inter/Inter-Regular.ttf new file mode 100644 index 0000000..8d4eebf Binary files /dev/null and b/resources/fonts/Inter/Inter-Regular.ttf differ diff --git a/resources/fonts/Inter/Inter-SemiBold.ttf b/resources/fonts/Inter/Inter-SemiBold.ttf new file mode 100644 index 0000000..c6aeeb1 Binary files /dev/null and b/resources/fonts/Inter/Inter-SemiBold.ttf differ diff --git a/resources/fonts/Inter/Inter-Thin.ttf b/resources/fonts/Inter/Inter-Thin.ttf new file mode 100644 index 0000000..7aed55d Binary files /dev/null and b/resources/fonts/Inter/Inter-Thin.ttf differ diff --git a/resources/js/ziggy.js b/resources/js/ziggy.js index ac83706..866379e 100644 --- a/resources/js/ziggy.js +++ b/resources/js/ziggy.js @@ -1,4 +1,4 @@ -const Ziggy = {"url":"https:\/\/echoscoop.com","port":null,"defaults":{},"routes":{"sanctum.csrf-cookie":{"uri":"sanctum\/csrf-cookie","methods":["GET","HEAD"]},"ignition.healthCheck":{"uri":"_ignition\/health-check","methods":["GET","HEAD"]},"ignition.executeSolution":{"uri":"_ignition\/execute-solution","methods":["POST"]},"ignition.updateConfig":{"uri":"_ignition\/update-config","methods":["POST"]}}}; +const Ziggy = {"url":"https:\/\/echoscoop.com","port":null,"defaults":{},"routes":{"sanctum.csrf-cookie":{"uri":"sanctum\/csrf-cookie","methods":["GET","HEAD"]},"ignition.healthCheck":{"uri":"_ignition\/health-check","methods":["GET","HEAD"]},"ignition.executeSolution":{"uri":"_ignition\/execute-solution","methods":["POST"]},"ignition.updateConfig":{"uri":"_ignition\/update-config","methods":["POST"]},"feeds.main":{"uri":"feeds\/posts-feed","methods":["GET","HEAD"]},"front.home":{"uri":"\/","methods":["GET","HEAD"]},"front.terms":{"uri":"terms","methods":["GET","HEAD"]},"front.privacy":{"uri":"privacy","methods":["GET","HEAD"]},"front.disclaimer":{"uri":"disclaimer","methods":["GET","HEAD"]},"front.all":{"uri":"news","methods":["GET","HEAD"]},"front.post":{"uri":"news\/{slug}","methods":["GET","HEAD"]},"front.category":{"uri":"{category_slug}","methods":["GET","HEAD"]}}}; if (typeof window !== 'undefined' && typeof window.Ziggy !== 'undefined') { Object.assign(Ziggy.routes, window.Ziggy.routes); diff --git a/resources/markdown/disclaimer.md b/resources/markdown/disclaimer.md new file mode 100644 index 0000000..19e99b1 --- /dev/null +++ b/resources/markdown/disclaimer.md @@ -0,0 +1,29 @@ +# **Disclaimer** + +## **1. General Information** + +- **Purpose**: The content on this website is solely for **informational purposes**. It should not be taken as legal, financial, or medical advice. +- **Professional Advice**: Before making any decisions based on this content, consult with a **lawyer** for legal matters, a **financial advisor** for financial queries, and a **medical professional** for health-related issues. + +## **2. Accuracy & Completeness** + +- **No Guarantee**: The accuracy, completeness, or suitability of the information on this website for any particular purpose is not guaranteed. +- **Third-party Sources**: We hold no responsibility for the accuracy or completeness of information sourced from third parties. + +## **3. Liability** + +- **Risks**: Any use of the information on this website is **at your own risk**. +- **No Liability**: We shall not be liable for any consequences including but not limited to loss of profits, data, or other losses resulting from the use of this website. +- **Legal Actions**: Users acknowledge that we bear no liability for any legal actions arising from their use of this website. + +## **4. Third-Party Links & Content** + +- **External Links**: This website may provide links to external sites. We neither control nor are responsible for the content, policies, or practices of such third-party websites. + +## **5. Agreement** + +- **Terms**: By using this website, you agree to this disclaimer and all related terms of use. + +## **6. Contact** + +If you have any questions regarding this disclaimer, contact us via email: support@echoscoop.com diff --git a/resources/markdown/privacy.md b/resources/markdown/privacy.md new file mode 100644 index 0000000..14780fe --- /dev/null +++ b/resources/markdown/privacy.md @@ -0,0 +1,241 @@ +Updated at 2023-09-24 + +EchoScoop.com (“we,” “our,” or “us”) is committed to protecting your privacy. This Privacy Policy explains how your personal information is collected, used, and disclosed by EchoScoop.com. + +This Privacy Policy applies to our website, and its associated subdomains (collectively, our “Service”) alongside our application, EchoScoop.com. By accessing or using our Service, you signify that you have read, understood, and agree to our collection, storage, use, and disclosure of your personal information as described in this Privacy Policy and our Terms of Service. + +## Definitions and key terms + +To help explain things as clearly as possible in this Privacy Policy, every time any of these terms are referenced, are strictly defined as: + +- Cookie: small amount of data generated by a website and saved by your web browser. It is used to identify your browser, provide analytics, remember information about you such as your language preference or login information. +- Company: when this policy mentions “Company,” “we,” “us,” or “our,” it refers to Exastellar Industries, (35A, Jalan PSK 6, Pusat Perdagangan Seri Kembangan) that is responsible for your information under this Privacy Policy. +- Country: where EchoScoop.com or the owners/founders of EchoScoop.com are based, in this case is Malaysia +- Customer: refers to the company, organization or person that signs up to use the EchoScoop.com Service to manage the relationships with your consumers or service users. +- Device: any internet connected device such as a phone, tablet, computer or any other device that can be used to visit EchoScoop.com and use the services. +- IP address: Every device connected to the Internet is assigned a number known as an Internet protocol (IP) address. These numbers are usually assigned in geographic blocks. An IP address can often be used to identify the location from which a device is connecting to the Internet. +- Personnel: refers to those individuals who are employed by EchoScoop.com or are under contract to perform a service on behalf of one of the parties. +- Personal Data: any information that directly, indirectly, or in connection with other information — including a personal identification number — allows for the identification or identifiability of a natural person. +- Service: refers to the service provided by EchoScoop.com as described in the relative terms (if available) and on this platform. +- Third-party service: refers to advertisers, contest sponsors, promotional and marketing partners, and others who provide our content or whose products or services we think may interest you. +- Website: EchoScoop.com."’s" site, which can be accessed via this URL: https://EchoScoop.com +- You: a person or entity that is registered with EchoScoop.com to use the Services. + +## What Information Do We Collect? + +We collect information from you when you visit our website, register on our site, place an order, subscribe to our newsletter, respond to a survey or fill out a form. + +- Name / Username +- Email Addresses +- Job Titles +- Billing Addresses +- Debit/credit card numbers + +We also collect information from mobile devices for a better user experience, although these features are completely optional: + +## How Do We Use The Information We Collect? + +Any of the information we collect from you may be used in one of the following ways: + +- To personalize your experience (your information helps us to better respond to your individual needs) +- To improve our website (we continually strive to improve our website offerings based on the information and feedback we receive from you) +- To improve customer service (your information helps us to more effectively respond to your customer service requests and support needs) +- To process transactions +- To administer a contest, promotion, survey or other site feature +- To send periodic emails + +## When does EchoScoop.com use end user information from third parties? + +EchoScoop.com will collect End User Data necessary to provide the EchoScoop.com services to our customers. + +End users may voluntarily provide us with information they have made available on social media websites. If you provide us with any such information, we may collect publicly available information from the social media websites you have indicated. You can control how much of your information social media websites make public by visiting these websites and changing your privacy settings. + +## When does EchoScoop.com use customer information from third parties? + +We receive some information from the third parties when you contact us. For example, when you submit your email address to us to show interest in becoming a EchoScoop.com customer, we receive information from a third party that provides automated fraud detection services to EchoScoop.com. We also occasionally collect information that is made publicly available on social media websites. You can control how much of your information social media websites make public by visiting these websites and changing your privacy settings. + +## Do we share the information we collect with third parties? + +We may share the information that we collect, both personal and non-personal, with third parties such as advertisers, contest sponsors, promotional and marketing partners, and others who provide our content or whose products or services we think may interest you. We may also share it with our current and future affiliated companies and business partners, and if we are involved in a merger, asset sale or other business reorganization, we may also share or transfer your personal and non-personal information to our successors-in-interest. + +We may engage trusted third party service providers to perform functions and provide services to us, such as hosting and maintaining our servers and the website, database storage and management, e-mail management, storage marketing, credit card processing, customer service and fulfilling orders for products and services you may purchase through the website. We will likely share your personal information, and possibly some non-personal information, with these third parties to enable them to perform these services for us and for you. + +We may share portions of our log file data, including IP addresses, for analytics purposes with third parties such as web analytics partners, application developers, and ad networks. If your IP address is shared, it may be used to estimate general location and other technographics such as connection speed, whether you have visited the website in a shared location, and type of the device used to visit the website. They may aggregate information about our advertising and what you see on the website and then provide auditing, research and reporting for us and our advertisers. + +We may also disclose personal and non-personal information about you to government or law enforcement officials or private parties as we, in our sole discretion, believe necessary or appropriate in order to respond to claims, legal process (including subpoenas), to protect our rights and interests or those of a third party, the safety of the public or any person, to prevent or stop any illegal, unethical, or legally actionable activity, or to otherwise comply with applicable court orders, laws, rules and regulations. + +## Where and when is information collected from customers and end users? + +EchoScoop.com will collect personal information that you submit to us. We may also receive personal information about you from third parties as described above. + +## How Do We Use Your Email Address? + +By submitting your email address on this website, you agree to receive emails from us. You can cancel your participation in any of these email lists at any time by clicking on the opt-out link or other unsubscribe option that is included in the respective email. We only send emails to people who have authorized us to contact them, either directly, or through a third party. We do not send unsolicited commercial emails, because we hate spam as much as you do. By submitting your email address, you also agree to allow us to use your email address for customer audience targeting on sites like Facebook, where we display custom advertising to specific people who have opted-in to receive communications from us. Email addresses submitted only through the order processing page will be used for the sole purpose of sending you information and updates pertaining to your order. If, however, you have provided the same email to us through another method, we may use it for any of the purposes stated in this Policy. Note: If at any time you would like to unsubscribe from receiving future emails, we include detailed unsubscribe instructions at the bottom of each email. + +## How Long Do We Keep Your Information? + +We keep your information only so long as we need it to provide EchoScoop.com to you and fulfill the purposes described in this policy. This is also the case for anyone that we share your information with and who carries out services on our behalf. When we no longer need to use your information and there is no need for us to keep it to comply with our legal or regulatory obligations, we’ll either remove it from our systems or depersonalize it so that we can't identify you. + +## How Do We Protect Your Information? + +We implement a variety of security measures to maintain the safety of your personal information when you place an order or enter, submit, or access your personal information. We offer the use of a secure server. All supplied sensitive/credit information is transmitted via Secure Socket Layer (SSL) technology and then encrypted into our Payment gateway providers database only to be accessible by those authorized with special access rights to such systems, and are required to keep the information confidential. After a transaction, your private information (credit cards, social security numbers, financials, etc.) is never kept on file. We cannot, however, ensure or warrant the absolute security of any information you transmit to EchoScoop.com or guarantee that your information on the Service may not be accessed, disclosed, altered, or destroyed by a breach of any of our physical, technical, or managerial safeguards. + +## Could my information be transferred to other countries? + +Exastellar Industries is incorporated in Malaysia. Information collected via our website, through direct interactions with you, or from use of our help services may be transferred from time to time to our offices or personnel, or to third parties, located throughout the world, and may be viewed and hosted anywhere in the world, including countries that may not have laws of general applicability regulating the use and transfer of such data. To the fullest extent allowed by applicable law, by using any of the above, you voluntarily consent to the trans-border transfer and hosting of such information. + +## Is the information collected through the EchoScoop.com Service secure? + +We take precautions to protect the security of your information. We have physical, electronic, and managerial procedures to help safeguard, prevent unauthorized access, maintain data security, and correctly use your information. However, neither people nor security systems are foolproof, including encryption systems. In addition, people can commit intentional crimes, make mistakes or fail to follow policies. Therefore, while we use reasonable efforts to protect your personal information, we cannot guarantee its absolute security. If applicable law imposes any non-disclaimable duty to protect your personal information, you agree that intentional misconduct will be the standards used to measure our compliance with that duty. + +## Can I update or correct my information? + +The rights you have to request updates or corrections to the information EchoScoop.com collects depend on your relationship with EchoScoop.com. Personnel may update or correct their information as detailed in our internal company employment policies. + +Customers have the right to request the restriction of certain uses and disclosures of personally identifiable information as follows. You can contact us in order to (1) update or correct your personally identifiable information, (2) change your preferences with respect to communications and other information you receive from us, or (3) delete the personally identifiable information maintained about you on our systems (subject to the following paragraph), by cancelling your account. Such updates, corrections, changes and deletions will have no effect on other information that we maintain, or information that we have provided to third parties in accordance with this Privacy Policy prior to such update, correction, change or deletion. To protect your privacy and security, we may take reasonable steps (such as requesting a unique password) to verify your identity before granting you profile access or making corrections. You are responsible for maintaining the secrecy of your unique password and account information at all times. + +You should be aware that it is not technologically possible to remove each and every record of the information you have provided to us from our system. The need to back up our systems to protect information from inadvertent loss means that a copy of your information may exist in a non-erasable form that will be difficult or impossible for us to locate. Promptly after receiving your request, all personal information stored in databases we actively use, and other readily searchable media will be updated, corrected, changed or deleted, as appropriate, as soon as and to the extent reasonably and technically practicable. + +If you are an end user and wish to update, delete, or receive any information we have about you, you may do so by contacting the organization of which you are a customer. + +## Personnel + +If you are a EchoScoop.com worker or applicant, we collect information you voluntarily provide to us. We use the information collected for Human Resources purposes in order to administer benefits to workers and screen applicants. + +You may contact us in order to (1) update or correct your information, (2) change your preferences with respect to communications and other information you receive from us, or (3) receive a record of the information we have relating to you. Such updates, corrections, changes and deletions will have no effect on other information that we maintain, or information that we have provided to third parties in accordance with this Privacy Policy prior to such update, correction, change or deletion. + +## Sale of Business + +We reserve the right to transfer information to a third party in the event of a sale, merger or other transfer of all or substantially all of the assets of EchoScoop.com or any of its Corporate Affiliates (as defined herein), or that portion of EchoScoop.com or any of its Corporate Affiliates to which the Service relates, or in the event that we discontinue our business or file a petition or have filed against us a petition in bankruptcy, reorganization or similar proceeding, provided that the third party agrees to adhere to the terms of this Privacy Policy. + +## Affiliates + +We may disclose information (including personal information) about you to our Corporate Affiliates. For purposes of this Privacy Policy, "Corporate Affiliate" means any person or entity which directly or indirectly controls, is controlled by or is under common control with EchoScoop.com, whether by ownership or otherwise. Any information relating to you that we provide to our Corporate Affiliates will be treated by those Corporate Affiliates in accordance with the terms of this Privacy Policy. + +## Governing Law + +This Privacy Policy is governed by the laws of Malaysia without regard to its conflict of laws provision. You consent to the exclusive jurisdiction of the courts in connection with any action or dispute arising between the parties under or in connection with this Privacy Policy except for those individuals who may have rights to make claims under Privacy Shield, or the Swiss-US framework. + +The laws of Malaysia, excluding its conflicts of law rules, shall govern this Agreement and your use of the website. Your use of the website may also be subject to other local, state, national, or international laws. + +By using EchoScoop.com or contacting us directly, you signify your acceptance of this Privacy Policy. If you do not agree to this Privacy Policy, you should not engage with our website, or use our services. Continued use of the website, direct engagement with us, or following the posting of changes to this Privacy Policy that do not significantly affect the use or disclosure of your personal information will mean that you accept those changes. + +## Your Consent + +We've updated our Privacy Policy to provide you with complete transparency into what is being set when you visit our site and how it's being used. By using our website, registering an account, or making a purchase, you hereby consent to our Privacy Policy and agree to its terms. + +## Links to Other Websites + +This Privacy Policy applies only to the Services. The Services may contain links to other websites not operated or controlled by EchoScoop.com. We are not responsible for the content, accuracy or opinions expressed in such websites, and such websites are not investigated, monitored or checked for accuracy or completeness by us. Please remember that when you use a link to go from the Services to another website, our Privacy Policy is no longer in effect. Your browsing and interaction on any other website, including those that have a link on our platform, is subject to that website’s own rules and policies. Such third parties may use their own cookies or other methods to collect information about you. + +## Advertising + +This website may contain third party advertisements and links to third party sites. EchoScoop.com does not make any representation as to the accuracy or suitability of any of the information contained in those advertisements or sites and does not accept any responsibility or liability for the conduct or content of those advertisements and sites and the offerings made by the third parties. + +Advertising keeps EchoScoop.com and many of the websites and services you use free of charge. We work hard to make sure that ads are safe, unobtrusive, and as relevant as possible. + +Third party advertisements and links to other sites where goods or services are advertised are not endorsements or recommendations by EchoScoop.com of the third party sites, goods or services. EchoScoop.com takes no responsibility for the content of any of the ads, promises made, or the quality/reliability of the products or services offered in all advertisements. + +## Cookies for Advertising + +These cookies collect information over time about your online activity on the website and other online services to make online advertisements more relevant and effective to you. This is known as interest-based advertising. They also perform functions like preventing the same ad from continuously reappearing and ensuring that ads are properly displayed for advertisers. Without cookies, it’s really hard for an advertiser to reach its audience, or to know how many ads were shown and how many clicks they received. + +## Cookies + +EchoScoop.com uses "Cookies" to identify the areas of our website that you have visited. A Cookie is a small piece of data stored on your computer or mobile device by your web browser. We use Cookies to enhance the performance and functionality of our website but are non-essential to their use. However, without these cookies, certain functionality like videos may become unavailable or you would be required to enter your login details every time you visit the website as we would not be able to remember that you had logged in previously. Most web browsers can be set to disable the use of Cookies. However, if you disable Cookies, you may not be able to access functionality on our website correctly or at all. We never place Personally Identifiable Information in Cookies. + +## Blocking and disabling cookies and similar technologies + +Wherever you're located you may also set your browser to block cookies and similar technologies, but this action may block our essential cookies and prevent our website from functioning properly, and you may not be able to fully utilize all of its features and services. You should also be aware that you may also lose some saved information (e.g. saved login details, site preferences) if you block cookies on your browser. Different browsers make different controls available to you. Disabling a cookie or category of cookie does not delete the cookie from your browser, you will need to do this yourself from within your browser, you should visit your browser's help menu for more information. + +## Remarketing Services + +We use remarketing services. What Is Remarketing? In digital marketing, remarketing (or retargeting) is the practice of serving ads across the internet to people who have already visited your website. It allows your company to seem like they're “following” people around the internet by serving ads on the websites and platforms they use most. + +## Payment Details + +In respect to any credit card or other payment processing details you have provided us, we commit that this confidential information will be stored in the most secure manner possible. + +## Kids' Privacy + +We do not address anyone under the age of 13. We do not knowingly collect personally identifiable information from anyone under the age of 13. If You are a parent or guardian and You are aware that Your child has provided Us with Personal Data, please contact Us. If We become aware that We have collected Personal Data from anyone under the age of 13 without verification of parental consent, We take steps to remove that information from Our servers. + +## Changes To Our Privacy Policy + +We may change our Service and policies, and we may need to make changes to this Privacy Policy so that they accurately reflect our Service and policies. Unless otherwise required by law, we will notify you (for example, through our Service) before we make changes to this Privacy Policy and give you an opportunity to review them before they go into effect. Then, if you continue to use the Service, you will be bound by the updated Privacy Policy. If you do not want to agree to this or any updated Privacy Policy, you can delete your account. + +## Third-Party Services + +We may display, include or make available third-party content (including data, information, applications and other products services) or provide links to third-party websites or services ("Third- Party Services"). +You acknowledge and agree that EchoScoop.com shall not be responsible for any Third-Party Services, including their accuracy, completeness, timeliness, validity, copyright compliance, legality, decency, quality or any other aspect thereof. EchoScoop.com does not assume and shall not have any liability or responsibility to you or any other person or entity for any Third-Party Services. +Third-Party Services and links thereto are provided solely as a convenience to you and you access and use them entirely at your own risk and subject to such third parties' terms and conditions. + +## Facebook Pixel + +Facebook pixel is an analytics tool that allows you to measure the effectiveness of your advertising by understanding the actions people take on your website. You can use the pixel to: Make sure your ads are shown to the right people. Facebook pixel may collect information from your device when you use the service. Facebook pixel collects information that is held in accordance with its Privacy Policy + +## Tracking Technologies + +- Cookies + +We use Cookies to enhance the performance and functionality of our website but are non-essential to their use. However, without these cookies, certain functionality like videos may become unavailable or you would be required to enter your login details every time you visit the website as we would not be able to remember that you had logged in previously. + +- Local Storage + +Local Storage sometimes known as DOM storage, provides web apps with methods and protocols for storing client-side data. Web storage supports persistent data storage, similar to cookies but with a greatly enhanced capacity and no information stored in the HTTP request header. + +- Sessions + +EchoScoop.com uses "Sessions" to identify the areas of our website that you have visited. A Session is a small piece of data stored on your computer or mobile device by your web browser. + +## Information about General Data Protection Regulation (GDPR) + +We may be collecting and using information from you if you are from the European Economic Area (EEA), and in this section of our Privacy Policy we are going to explain exactly how and why is this data collected, and how we maintain this data under protection from being replicated or used in the wrong way. + +### What is GDPR? + +GDPR is an EU-wide privacy and data protection law that regulates how EU residents' data is protected by companies and enhances the control the EU residents have, over their personal data. + +The GDPR is relevant to any globally operating company and not just the EU-based businesses and EU residents. Our customers’ data is important irrespective of where they are located, which is why we have implemented GDPR controls as our baseline standard for all our operations worldwide. + +### What is personal data? + +Any data that relates to an identifiable or identified individual. GDPR covers a broad spectrum of information that could be used on its own, or in combination with other pieces of information, to identify a person. Personal data extends beyond a person’s name or email address. Some examples include financial information, political opinions, genetic data, biometric data, IP addresses, physical address, sexual orientation, and ethnicity. + +The Data Protection Principles include requirements such as: + +- Personal data collected must be processed in a fair, legal, and transparent way and should only be used in a way that a person would reasonably expect. +- Personal data should only be collected to fulfil a specific purpose and it should only be used for that purpose. Organizations must specify why they need the personal data when they collect it. +- Personal data should be held no longer than necessary to fulfil its purpose. +- People covered by the GDPR have the right to access their own personal data. They can also request a copy of their data, and that their data be updated, deleted, restricted, or moved to another organization. + +### Why is GDPR important? + +GDPR adds some new requirements regarding how companies should protect individuals' personal data that they collect and process. It also raises the stakes for compliance by increasing enforcement and imposing greater fines for breach. Beyond these facts it's simply the right thing to do. At EchoScoop.com we strongly believe that your data privacy is very important and we already have solid security and privacy practices in place that go beyond the requirements of this new regulation. + +### Individual Data Subject's Rights - Data Access, Portability and Deletion + +We are committed to helping our customers meet the data subject rights requirements of GDPR. EchoScoop.com processes or stores all personal data in fully vetted, DPA compliant vendors. We do store all conversation and personal data for up to 6 years unless your account is deleted. In which case, we dispose of all data in accordance with our Terms of Service and Privacy Policy, but we will not hold it longer than 60 days. + +We are aware that if you are working with EU customers, you need to be able to provide them with the ability to access, update, retrieve and remove personal data. We got you! We've been set up as self service from the start and have always given you access to your data and your customers data. Our customer support team is here for you to answer any questions you might have about working with the API. + +## California Residents + +The California Consumer Privacy Act (CCPA) requires us to disclose categories of Personal Information we collect and how we use it, the categories of sources from whom we collect Personal Information, and the third parties with whom we share it, which we have explained above. + +We are also required to communicate information about rights California residents have under California law. You may exercise the following rights: + +- Right to Know and Access. You may submit a verifiable request for information regarding the: (1) categories of Personal Information we collect, use, or share; (2) purposes for which categories of Personal Information are collected or used by us; (3) categories of sources from which we collect Personal Information; and (4) specific pieces of Personal Information we have collected about you. +- Right to Equal Service. We will not discriminate against you if you exercise your privacy rights. +- Right to Delete. You may submit a verifiable request to close your account and we will delete Personal Information about you that we have collected. +- Request that a business that sells a consumer's personal data, not sell the consumer's personal data. + +If you make a request, we have one month to respond to you. If you would like to exercise any of these rights, please contact us. +We do not sell the Personal Information of our users. +For more information about these rights, please contact us. + +## Contact Us + +Don't hesitate to contact us if you have any questions. + +-Via Email: support@echoscoop.com diff --git a/resources/markdown/terms.md b/resources/markdown/terms.md new file mode 100644 index 0000000..04dacb9 --- /dev/null +++ b/resources/markdown/terms.md @@ -0,0 +1,201 @@ +Updated at 2023-09-24 + +## General Terms + +By accessing and placing an order with EchoScoop.com, you confirm that you are in agreement with and bound by the terms of service contained in the Terms & Conditions outlined below. These terms apply to the entire website and any email or other type of communication between you and EchoScoop.com. + +Under no circumstances shall EchoScoop.com team be liable for any direct, indirect, special, incidental or consequential damages, including, but not limited to, loss of data or profit, arising out of the use, or the inability to use, the materials on this site, even if EchoScoop.com team or an authorized representative has been advised of the possibility of such damages. If your use of materials from this site results in the need for servicing, repair or correction of equipment or data, you assume any costs thereof. + +EchoScoop.com will not be responsible for any outcome that may occur during the course of usage of our resources. We reserve the rights to change prices and revise the resources usage policy in any moment. + +## License + +EchoScoop.com grants you a revocable, non-exclusive, non-transferable, limited license to download, install and use the website strictly in accordance with the terms of this Agreement. + +These Terms & Conditions are a contract between you and EchoScoop.com (referred to in these Terms & Conditions as "EchoScoop.com", "us", "we" or "our"), the provider of the EchoScoop.com website and the services accessible from the EchoScoop.com website (which are collectively referred to in these Terms & Conditions as the "EchoScoop.com Service"). + +You are agreeing to be bound by these Terms & Conditions. If you do not agree to these Terms & Conditions, please do not use the EchoScoop.com Service. In these Terms & Conditions, "you" refers both to you as an individual and to the entity you represent. If you violate any of these Terms & Conditions, we reserve the right to cancel your account or block access to your account without notice. + +## Meanings + +For this Terms & Conditions: + +- Cookie: small amount of data generated by a website and saved by your web browser. It is used to identify your browser, provide analytics, remember information about you such as your language preference or login information. +- Company: when this policy mentions “Company,” “we,” “us,” or “our,” it refers to Exastellar Industries, that is responsible for your information under this Terms & Conditions. +- Country: where EchoScoop.com or the owners/founders of EchoScoop.com are based, in this case is Malaysia +- Device: any internet connected device such as a phone, tablet, computer or any other device that can be used to visit EchoScoop.com and use the services. +- Service: refers to the service provided by EchoScoop.com as described in the relative terms (if available) and on this platform. +- Third-party service: refers to advertisers, contest sponsors, promotional and marketing partners, and others who provide our content or whose products or services we think may interest you. +- Website: EchoScoop.com."’s" site, which can be accessed via this URL: EchoScoop.com.com +- You: a person or entity that is registered with EchoScoop.com to use the Services. + +## Restrictions + +You agree not to, and you will not permit others to: + +- License, sell, rent, lease, assign, distribute, transmit, host, outsource, disclose or otherwise commercially exploit the website or make the platform available to any third party. +- Modify, make derivative works of, disassemble, decrypt, reverse compile or reverse engineer any part of the website. +- Remove, alter or obscure any proprietary notice (including any notice of copyright or trademark) of EchoScoop.com or its affiliates, partners, suppliers or the licensors of the website. + +## Return and Refund Policy + +Thanks for shopping at EchoScoop.com. We appreciate the fact that you like to buy the stuff we build. We also want to make sure you have a rewarding experience while you’re exploring, evaluating, and purchasing our products. + +As with any shopping experience, there are terms and conditions that apply to transactions at EchoScoop.com. We’ll be as brief as our attorneys will allow. The main thing to remember is that by placing an order or making a purchase at EchoScoop.com, you agree to the terms along with EchoScoop.com."’s" Privacy Policy. + +If, for any reason, You are not completely satisfied with any good or service that we provide, don't hesitate to contact us and we will discuss any of the issues you are going through with our product. + +## Your Suggestions + +Any feedback, comments, ideas, improvements or suggestions (collectively, "Suggestions") provided by you to EchoScoop.com with respect to the website shall remain the sole and exclusive property of EchoScoop.com. + +EchoScoop.com shall be free to use, copy, modify, publish, or redistribute the Suggestions for any purpose and in any way without any credit or any compensation to you. + +## Your Consent + +We've updated our Terms & Conditions to provide you with complete transparency into what is being set when you visit our site and how it's being used. By using our website, registering an account, or making a purchase, you hereby consent to our Terms & Conditions. + +## Links to Other Websites + +This Terms & Conditions applies only to the Services. The Services may contain links to other websites not operated or controlled by EchoScoop.com. We are not responsible for the content, accuracy or opinions expressed in such websites, and such websites are not investigated, monitored or checked for accuracy or completeness by us. Please remember that when you use a link to go from the Services to another website, our Terms & Conditions are no longer in effect. Your browsing and interaction on any other website, including those that have a link on our platform, is subject to that website’s own rules and policies. Such third parties may use their own cookies or other methods to collect information about you. + +## Cookies + +EchoScoop.com uses "Cookies" to identify the areas of our website that you have visited. A Cookie is a small piece of data stored on your computer or mobile device by your web browser. We use Cookies to enhance the performance and functionality of our website but are non-essential to their use. However, without these cookies, certain functionality like videos may become unavailable or you would be required to enter your login details every time you visit the website as we would not be able to remember that you had logged in previously. Most web browsers can be set to disable the use of Cookies. However, if you disable Cookies, you may not be able to access functionality on our website correctly or at all. We never place Personally Identifiable Information in Cookies. + +## Changes To Our Terms & Conditions + +You acknowledge and agree that EchoScoop.com may stop (permanently or temporarily) providing the Service (or any features within the Service) to you or to users generally at EchoScoop.com’s sole discretion, without prior notice to you. You may stop using the Service at any time. You do not need to specifically inform EchoScoop.com when you stop using the Service. You acknowledge and agree that if EchoScoop.com disables access to your account, you may be prevented from accessing the Service, your account details or any files or other materials which is contained in your account. + +If we decide to change our Terms & Conditions, we will post those changes on this page, and/or update the Terms & Conditions modification date below. + +## Modifications to Our website + +EchoScoop.com reserves the right to modify, suspend or discontinue, temporarily or permanently, the website or any service to which it connects, with or without notice and without liability to you. + +## Updates to Our website + +EchoScoop.com may from time to time provide enhancements or improvements to the features/ functionality of the website, which may include patches, bug fixes, updates, upgrades and other modifications ("Updates"). + +Updates may modify or delete certain features and/or functionalities of the website. You agree that EchoScoop.com has no obligation to (i) provide any Updates, or (ii) continue to provide or enable any particular features and/or functionalities of the website to you. + +You further agree that all Updates will be (i) deemed to constitute an integral part of the website, and (ii) subject to the terms and conditions of this Agreement. + +## Third-Party Services + +We may display, include or make available third-party content (including data, information, applications and other products services) or provide links to third-party websites or services ("Third- Party Services"). + +You acknowledge and agree that EchoScoop.com shall not be responsible for any Third-Party Services, including their accuracy, completeness, timeliness, validity, copyright compliance, legality, decency, quality or any other aspect thereof. EchoScoop.com does not assume and shall not have any liability or responsibility to you or any other person or entity for any Third-Party Services. + +Third-Party Services and links thereto are provided solely as a convenience to you and you access and use them entirely at your own risk and subject to such third parties' terms and conditions. + +## Term and Termination + +This Agreement shall remain in effect until terminated by you or EchoScoop.com. + +EchoScoop.com may, in its sole discretion, at any time and for any or no reason, suspend or terminate this Agreement with or without prior notice. + +This Agreement will terminate immediately, without prior notice from EchoScoop.com, in the event that you fail to comply with any provision of this Agreement. You may also terminate this Agreement by deleting the website and all copies thereof from your computer. + +Upon termination of this Agreement, you shall cease all use of the website and delete all copies of the website from your computer. +Termination of this Agreement will not limit any of EchoScoop.com's rights or remedies at law or in equity in case of breach by you (during the term of this Agreement) of any of your obligations under the present Agreement. + +## Copyright Infringement Notice + +If you are a copyright owner or such owner’s agent and believe any material on our website constitutes an infringement on your copyright, please contact us setting forth the following information: (a) a physical or electronic signature of the copyright owner or a person authorized to act on his behalf; (b) identification of the material that is claimed to be infringing; (c) your contact information, including your address, telephone number, and an email; (d) a statement by you that you have a good faith belief that use of the material is not authorized by the copyright owners; and (e) the a statement that the information in the notification is accurate, and, under penalty of perjury you are authorized to act on behalf of the owner. + +## Indemnification + +You agree to indemnify and hold EchoScoop.com and its parents, subsidiaries, affiliates, officers, employees, agents, partners and licensors (if any) harmless from any claim or demand, including reasonable attorneys' fees, due to or arising out of your: (a) use of the website; (b) violation of this Agreement or any law or regulation; or (c) violation of any right of a third party. + +## No Warranties + +The website is provided to you "AS IS" and "AS AVAILABLE" and with all faults and defects without warranty of any kind. To the maximum extent permitted under applicable law, EchoScoop.com, on its own behalf and on behalf of its affiliates and its and their respective licensors and service providers, expressly disclaims all warranties, whether express, implied, statutory or otherwise, with respect to the website, including all implied warranties of merchantability, fitness for a particular purpose, title and non-infringement, and warranties that may arise out of course of dealing, course of performance, usage or trade practice. Without limitation to the foregoing, EchoScoop.com provides no warranty or undertaking, and makes no representation of any kind that the website will meet your requirements, achieve any intended results, be compatible or work with any other software, , systems or services, operate without interruption, meet any performance or reliability standards or be error free or that any errors or defects can or will be corrected. + +Without limiting the foregoing, neither EchoScoop.com nor any EchoScoop.com's provider makes any representation or warranty of any kind, express or implied: (i) as to the operation or availability of the website, or the information, content, and materials or products included thereon; (ii) that the website will be uninterrupted or error-free; (iii) as to the accuracy, reliability, or currency of any information or content provided through the website; or (iv) that the website, its servers, the content, or e-mails sent from or on behalf of EchoScoop.com are free of viruses, scripts, trojan horses, worms, malware, timebombs or other harmful components. + +Some jurisdictions do not allow the exclusion of or limitations on implied warranties or the limitations on the applicable statutory rights of a consumer, so some or all of the above exclusions and limitations may not apply to you. + +## Limitation of Liability + +Notwithstanding any damages that you might incur, the entire liability of EchoScoop.com and any of its suppliers under any provision of this Agreement and your exclusive remedy for all of the foregoing shall be limited to the amount actually paid by you for the website. + +To the maximum extent permitted by applicable law, in no event shall EchoScoop.com or its suppliers be liable for any special, incidental, indirect, or consequential damages whatsoever (including, but not limited to, damages for loss of profits, for loss of data or other information, for business interruption, for personal injury, for loss of privacy arising out of or in any way related to the use of or inability to use the website, third-party software and/or third-party hardware used with the website, or otherwise in connection with any provision of this Agreement), even if EchoScoop.com or any supplier has been advised of the possibility of such damages and even if the remedy fails of its essential purpose. + +Some states/jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation or exclusion may not apply to you. + +## Severability + +If any provision of this Agreement is held to be unenforceable or invalid, such provision will be changed and interpreted to accomplish the objectives of such provision to the greatest extent possible under applicable law and the remaining provisions will continue in full force and effect. + +This Agreement, together with the Privacy Policy and any other legal notices published by EchoScoop.com on the Services, shall constitute the entire agreement between you and EchoScoop.com concerning the Services. If any provision of this Agreement is deemed invalid by a court of competent jurisdiction, the invalidity of such provision shall not affect the validity of the remaining provisions of this Agreement, which shall remain in full force and effect. No waiver of any term of this Agreement shall be deemed a further or continuing waiver of such term or any other term, and EchoScoop.com."’s" failure to assert any right or provision under this Agreement shall not constitute a waiver of such right or provision. YOU AND EchoScoop.com AGREE THAT ANY CAUSE OF ACTION ARISING OUT OF OR RELATED TO THE SERVICES MUST COMMENCE WITHIN ONE (1) YEAR AFTER THE CAUSE OF ACTION ACCRUES. OTHERWISE, SUCH CAUSE OF ACTION IS PERMANENTLY BARRED. + +## Waiver + +Except as provided herein, the failure to exercise a right or to require performance of an obligation under this Agreement shall not effect a party's ability to exercise such right or require such performance at any time thereafter nor shall be the waiver of a breach constitute waiver of any subsequent breach. + +No failure to exercise, and no delay in exercising, on the part of either party, any right or any power under this Agreement shall operate as a waiver of that right or power. Nor shall any single or partial exercise of any right or power under this Agreement preclude further exercise of that or any other right granted herein. In the event of a conflict between this Agreement and any applicable purchase or other terms, the terms of this Agreement shall govern. + +## Amendments to this Agreement + +EchoScoop.com reserves the right, at its sole discretion, to modify or replace this Agreement at any time. If a revision is material we will provide at least 30 days' notice prior to any new terms taking effect. What constitutes a material change will be determined at our sole discretion. +By continuing to access or use our website after any revisions become effective, you agree to be bound by the revised terms. If you do not agree to the new terms, you are no longer authorized to use EchoScoop.com. + +## Entire Agreement + +The Agreement constitutes the entire agreement between you and EchoScoop.com regarding your use of the website and supersedes all prior and contemporaneous written or oral agreements between you and EchoScoop.com. +You may be subject to additional terms and conditions that apply when you use or purchase other EchoScoop.com's services, which EchoScoop.com will provide to you at the time of such use or purchase. + +## Updates to Our Terms + +We may change our Service and policies, and we may need to make changes to these Terms so that they accurately reflect our Service and policies. Unless otherwise required by law, we will notify you (for example, through our Service) before we make changes to these Terms and give you an opportunity to review them before they go into effect. Then, if you continue to use the Service, you will be bound by the updated Terms. If you do not want to agree to these or any updated Terms, you can delete your account. + +## Intellectual Property + +The website and its entire contents, features and functionality (including but not limited to all information, software, text, displays, images, video and audio, and the design, selection and arrangement thereof), are owned by EchoScoop.com, its licensors or other providers of such material and are protected by Malaysia and international copyright, trademark, patent, trade secret and other intellectual property or proprietary rights laws. The material may not be copied, modified, reproduced, downloaded or distributed in any way, in whole or in part, without the express prior written permission of EchoScoop.com, unless and except as is expressly provided in these Terms & Conditions. Any unauthorized use of the material is prohibited. + +## Agreement to Arbitrate + +This section applies to any dispute EXCEPT IT DOESN’T INCLUDE A DISPUTE RELATING TO CLAIMS FOR INJUNCTIVE OR EQUITABLE RELIEF REGARDING THE ENFORCEMENT OR VALIDITY OF YOUR OR EchoScoop.com."’s" INTELLECTUAL PROPERTY RIGHTS. The term “dispute” means any dispute, action, or other controversy between you and EchoScoop.com concerning the Services or this agreement, whether in contract, warranty, tort, statute, regulation, ordinance, or any other legal or equitable basis. “Dispute” will be given the broadest possible meaning allowable under law. + +## Notice of Dispute + +In the event of a dispute, you or EchoScoop.com must give the other a Notice of Dispute, which is a written statement that sets forth the name, address, and contact information of the party giving it, the facts giving rise to the dispute, and the relief requested. You must send any Notice of Dispute via email to: support@EchoScoop.com. EchoScoop.com will send any Notice of Dispute to you by mail to your address if we have it, or otherwise to your email address. You and EchoScoop.com will attempt to resolve any dispute through informal negotiation within sixty (60) days from the date the Notice of Dispute is sent. After sixty (60) days, you or EchoScoop.com may commence arbitration. + +## Binding Arbitration + +If you and EchoScoop.com don’t resolve any dispute by informal negotiation, any other effort to resolve the dispute will be conducted exclusively by binding arbitration as described in this section. You are giving up the right to litigate (or participate in as a party or class member) all disputes in court before a judge or jury. The dispute shall be settled by binding arbitration in accordance with the commercial arbitration rules of the American Arbitration Association. Either party may seek any interim or preliminary injunctive relief from any court of competent jurisdiction, as necessary to protect the party’s rights or property pending the completion of arbitration. Any and all legal, accounting, and other costs, fees, and expenses incurred by the prevailing party shall be borne by the non-prevailing party. + +## Submissions and Privacy + +In the event that you submit or post any ideas, creative suggestions, designs, photographs, information, advertisements, data or proposals, including ideas for new or improved products, services, features, technologies or promotions, you expressly agree that such submissions will automatically be treated as non-confidential and non-proprietary and will become the sole property of EchoScoop.com without any compensation or credit to you whatsoever. EchoScoop.com and its affiliates shall have no obligations with respect to such submissions or posts and may use the ideas contained in such submissions or posts for any purposes in any medium in perpetuity, including, but not limited to, developing, manufacturing, and marketing products and services using such ideas. + +## Promotions + +EchoScoop.com may, from time to time, include contests, promotions, sweepstakes, or other activities (“Promotions”) that require you to submit material or information concerning yourself. Please note that all Promotions may be governed by separate rules that may contain certain eligibility requirements, such as restrictions as to age and geographic location. You are responsible to read all Promotions rules to determine whether or not you are eligible to participate. If you enter any Promotion, you agree to abide by and to comply with all Promotions Rules. + +Additional terms and conditions may apply to purchases of goods or services on or through the Services, which terms and conditions are made a part of this Agreement by this reference. + +## Typographical Errors + +In the event a product and/or service is listed at an incorrect price or with incorrect information due to typographical error, we shall have the right to refuse or cancel any orders placed for the product and/or service listed at the incorrect price. We shall have the right to refuse or cancel any such order whether or not the order has been confirmed and your credit card charged. If your credit card has already been charged for the purchase and your order is canceled, we shall immediately issue a credit to your credit card account or other payment account in the amount of the charge. + +## Miscellaneous + +If for any reason a court of competent jurisdiction finds any provision or portion of these Terms & Conditions to be unenforceable, the remainder of these Terms & Conditions will continue in full force and effect. Any waiver of any provision of these Terms & Conditions will be effective only if in writing and signed by an authorized representative of EchoScoop.com. EchoScoop.com will be entitled to injunctive or other equitable relief (without the obligations of posting any bond or surety) in the event of any breach or anticipatory breach by you. EchoScoop.com operates and controls the EchoScoop.com Service from its offices in Malaysia. The Service is not intended for distribution to or use by any person or entity in any jurisdiction or country where such distribution or use would be contrary to law or regulation. Accordingly, those persons who choose to access the EchoScoop.com Service from other locations do so on their own initiative and are solely responsible for compliance with local laws, if and to the extent local laws are applicable. These Terms & Conditions (which include and incorporate the EchoScoop.com Privacy Policy) contains the entire understanding, and supersedes all prior understandings, between you and EchoScoop.com concerning its subject matter, and cannot be changed or modified by you. The section headings used in this Agreement are for convenience only and will not be given any legal import. + +## Disclaimer + +EchoScoop.com is not responsible for any content, code or any other imprecision. + +EchoScoop.com does not provide warranties or guarantees. + +In no event shall EchoScoop.com be liable for any special, direct, indirect, consequential, or incidental damages or any damages whatsoever, whether in an action of contract, negligence or other tort, arising out of or in connection with the use of the Service or the contents of the Service. EchoScoop.com reserves the right to make additions, deletions, or modifications to the contents on the Service at any time without prior notice. + +The EchoScoop.com Service and its contents are provided "as is" and "as available" without any warranty or representations of any kind, whether express or implied. EchoScoop.com is a distributor and not a publisher of the content supplied by third parties; as such, EchoScoop.com exercises no editorial control over such content and makes no warranty or representation as to the accuracy, reliability or currency of any information, content, service or merchandise provided through or accessible via the EchoScoop.com Service. Without limiting the foregoing, EchoScoop.com specifically disclaims all warranties and representations in any content transmitted on or in connection with the EchoScoop.com Service or on sites that may appear as links on the EchoScoop.com Service, or in the products provided as a part of, or otherwise in connection with, the EchoScoop.com Service, including without limitation any warranties of merchantability, fitness for a particular purpose or non-infringement of third party rights. No oral advice or written information given by EchoScoop.com or any of its affiliates, employees, officers, directors, agents, or the like will create a warranty. Price and availability information is subject to change without notice. Without limiting the foregoing, EchoScoop.com does not warrant that the EchoScoop.com Service will be uninterrupted, uncorrupted, timely, or error-free. + +## Contact Us + +Don't hesitate to contact us if you have any questions. + +- Via Email: support@echoscoop.com diff --git a/resources/sass/app-front.scss b/resources/sass/app-front.scss index f42f349..1cc9a9c 100644 --- a/resources/sass/app-front.scss +++ b/resources/sass/app-front.scss @@ -5,3 +5,11 @@ @import "~/bootstrap-icons/font/bootstrap-icons.css"; @import "../css/app-front.css"; + +a { + text-decoration: none; + + &:hover { + text-decoration: underline; + } +} diff --git a/resources/views/front/layouts/app.blade.php b/resources/views/front/layouts/app.blade.php index d898c15..ef46770 100644 --- a/resources/views/front/layouts/app.blade.php +++ b/resources/views/front/layouts/app.blade.php @@ -4,13 +4,14 @@ @include('front.layouts.partials.head') - @include('googletagmanager::body') -
- @include('front.layouts.partials.nav') -
- @yield('content') -
- @include('front.layouts.partials.footer') -
+ @include('googletagmanager::body') +
+ @include('front.layouts.partials.nav') +
+ @yield('content') +
+ @include('front.layouts.partials.footer') +
- \ No newline at end of file + + diff --git a/resources/views/front/layouts/partials/footer.blade.php b/resources/views/front/layouts/partials/footer.blade.php index a69b268..98d6b8f 100644 --- a/resources/views/front/layouts/partials/footer.blade.php +++ b/resources/views/front/layouts/partials/footer.blade.php @@ -1,3 +1,18 @@
-
-
\ No newline at end of file + +
diff --git a/resources/views/front/layouts/partials/head.blade.php b/resources/views/front/layouts/partials/head.blade.php index d7c768b..ef0e9b8 100644 --- a/resources/views/front/layouts/partials/head.blade.php +++ b/resources/views/front/layouts/partials/head.blade.php @@ -10,11 +10,13 @@ - - - - + @include('feed::links') + + + + + @vite(['resources/sass/app-front.scss', 'resources/js/app-front.js']) {{-- @laravelPWA --}} - @include('googletagmanager::head') \ No newline at end of file + @include('googletagmanager::head') diff --git a/resources/views/front/layouts/partials/nav.blade.php b/resources/views/front/layouts/partials/nav.blade.php index e73e28b..83f25ac 100644 --- a/resources/views/front/layouts/partials/nav.blade.php +++ b/resources/views/front/layouts/partials/nav.blade.php @@ -1,22 +1,21 @@
-
- - EchoScoop - +
+
- Breaking down news to bite-sized scoops. - -{{-- - -
- - -
--}} + +
-
\ No newline at end of file + + +
diff --git a/resources/views/front/pages.blade.php b/resources/views/front/pages.blade.php new file mode 100644 index 0000000..75cd410 --- /dev/null +++ b/resources/views/front/pages.blade.php @@ -0,0 +1,13 @@ +@extends('front.layouts.app') + +@section('content') +
+

{{ $title }}

+

+ {{ $description }} +

+
+ {!! $content !!} +
+
+@endsection diff --git a/resources/views/front/partials/about.blade.php b/resources/views/front/partials/about.blade.php new file mode 100644 index 0000000..1ca374e --- /dev/null +++ b/resources/views/front/partials/about.blade.php @@ -0,0 +1,7 @@ +
+

About EchoScoop

+

+ EchoScoop is a streamlined news platform delivering concise global updates. Our goal is to keep you promptly + informed with each scoop. +

+
diff --git a/resources/views/front/partials/post_detail.blade.php b/resources/views/front/partials/post_detail.blade.php new file mode 100644 index 0000000..b2719cb --- /dev/null +++ b/resources/views/front/partials/post_detail.blade.php @@ -0,0 +1,17 @@ +
+
+ {{ $post->category->name }} +

{{ $post->title }}

+ @if (!is_empty($post->published_at)) +
{{ $post->published_at->format('M j') }}
+ @endif +

{{ $post->excerpt }}

+ + Continue reading + + + + +
+
diff --git a/resources/views/front/partials/welcome_blog_post.blade.php b/resources/views/front/partials/welcome_blog_post.blade.php new file mode 100644 index 0000000..0cf6061 --- /dev/null +++ b/resources/views/front/partials/welcome_blog_post.blade.php @@ -0,0 +1,155 @@ +

+ From the Firehose +

+ +
+ + + +

This blog post shows a few different types of content that’s supported and styled with Bootstrap. + Basic typography, lists, tables, images, code, and more are all supported as expected.

+
+

This is some additional paragraph placeholder content. It has been written to fill the available + space and show how a longer snippet of text affects the surrounding content. We'll repeat it often + to keep the demonstration flowing, so be on the lookout for this exact same string of text.

+

Blockquotes

+

This is an example blockquote in action:

+
+

Quoted text goes here.

+
+

This is some additional paragraph placeholder content. It has been written to fill the available + space and show how a longer snippet of text affects the surrounding content. We'll repeat it often + to keep the demonstration flowing, so be on the lookout for this exact same string of text.

+

Example lists

+

This is some additional paragraph placeholder content. It's a slightly shorter version of the other + highly repetitive body text used throughout. This is an example unordered list:

+
    +
  • First list item
  • +
  • Second list item with a longer description
  • +
  • Third list item to close it out
  • +
+

And this is an ordered list:

+
    +
  1. First list item
  2. +
  3. Second list item with a longer description
  4. +
  5. Third list item to close it out
  6. +
+

And this is a definition list:

+
+
HyperText Markup Language (HTML)
+
The language used to describe and define the content of a Web page
+
Cascading Style Sheets (CSS)
+
Used to describe the appearance of Web content
+
JavaScript (JS)
+
The programming language used to build advanced Web sites and applications
+
+

Inline HTML elements

+

HTML defines a long list of available inline tags, a complete list of which can be found on the Mozilla Developer Network. +

+
    +
  • To bold text, use <strong>. +
  • +
  • To italicize text, use <em>.
  • +
  • Abbreviations, like HTML should use <abbr>, with an optional title attribute for the full phrase. +
  • +
  • Citations, like — Mark Otto, should use <cite>.
  • +
  • Deleted text should use <del> and + inserted text + should use <ins>. +
  • +
  • Superscript text uses <sup> and + subscript + text uses <sub>. +
  • +
+

Most of these elements are styled by browsers with few modifications on our part.

+

Heading

+

This is some additional paragraph placeholder content. It has been written to fill the available + space and show how a longer snippet of text affects the surrounding content. We'll repeat it often + to keep the demonstration flowing, so be on the lookout for this exact same string of text.

+

Sub-heading

+

This is some additional paragraph placeholder content. It has been written to fill the available + space and show how a longer snippet of text affects the surrounding content. We'll repeat it often + to keep the demonstration flowing, so be on the lookout for this exact same string of text.

+
Example code block
+

This is some additional paragraph placeholder content. It's a slightly shorter version of the other + highly repetitive body text used throughout.

+
+ +
+ + + +

This is some additional paragraph placeholder content. It has been written to fill the available + space and show how a longer snippet of text affects the surrounding content. We'll repeat it often + to keep the demonstration flowing, so be on the lookout for this exact same string of text.

+
+

Longer quote goes here, maybe with some emphasized text in the middle of it.

+
+

This is some additional paragraph placeholder content. It has been written to fill the available + space and show how a longer snippet of text affects the surrounding content. We'll repeat it often + to keep the demonstration flowing, so be on the lookout for this exact same string of text.

+

Example table

+

And don't forget about tables in these posts:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameUpvotesDownvotes
Alice1011
Bob43
Charlie79
Totals2123
+ +

This is some additional paragraph placeholder content. It's a slightly shorter version of the other + highly repetitive body text used throughout.

+
+ +
+ + + +

This is some additional paragraph placeholder content. It has been written to fill the available + space and show how a longer snippet of text affects the surrounding content. We'll repeat it often + to keep the demonstration flowing, so be on the lookout for this exact same string of text.

+
    +
  • First list item
  • +
  • Second list item with a longer description
  • +
  • Third list item to close it out
  • +
+

This is some additional paragraph placeholder content. It's a slightly shorter version of the other + highly repetitive body text used throughout.

+
+ + diff --git a/resources/views/front/post_list.blade.php b/resources/views/front/post_list.blade.php new file mode 100644 index 0000000..3096e9f --- /dev/null +++ b/resources/views/front/post_list.blade.php @@ -0,0 +1,49 @@ +@extends('front.layouts.app') +@section('content') +
+ +
+
+

+ @if (isset($category) && !is_null($category)) + {{ $category->name }} News from EchoScoop + @else + Latest News from EchoScoop + @endif +

+ @if ($posts->count() > 0) + @foreach ($posts as $post) + @include('front.partials.post_detail', ['post' => $post]) + @endforeach + @if ($posts instanceof \Illuminate\Pagination\Paginator) +
+ {{ $posts->links('pagination::simple-bootstrap-5-rounded') }} +
+ @endif + @else +
+
No posts found yet.
+ +
+ @endif +
+ +
+
+ @include('front.partials.about') +
+
+
+
+@endsection diff --git a/resources/views/front/single_post.blade.php b/resources/views/front/single_post.blade.php new file mode 100644 index 0000000..cbd2cfa --- /dev/null +++ b/resources/views/front/single_post.blade.php @@ -0,0 +1,33 @@ +@extends('front.layouts.app') +@section('content') +
+ +
+
+ +
+ {!! $content !!} +
+ +
+ +
+
+ @include('front.partials.about') +
+
+
+
+@endsection diff --git a/resources/views/front/welcome.blade.php b/resources/views/front/welcome.blade.php new file mode 100644 index 0000000..24a82d6 --- /dev/null +++ b/resources/views/front/welcome.blade.php @@ -0,0 +1,35 @@ +@extends('front.layouts.app') +@section('content') +
+
+
+

{{ $featured_post->title }}

+

{{ $featured_post->excerpt }}

+

Continue reading...

+
+
+ + +
+
+ @foreach ($latest_posts as $post) + @include('front.partials.post_detail', ['post' => $post]) + @endforeach + + + +
+ +
+
+ @include('front.partials.about') +
+
+
+ +
+@endsection diff --git a/resources/views/vendor/googletagmanager/body.blade.php b/resources/views/vendor/googletagmanager/body.blade.php index 58f8b6b..b996640 100644 --- a/resources/views/vendor/googletagmanager/body.blade.php +++ b/resources/views/vendor/googletagmanager/body.blade.php @@ -1,4 +1,4 @@ -@if($enabled) - +@if ($enabled) + @endif diff --git a/resources/views/vendor/googletagmanager/head.blade.php b/resources/views/vendor/googletagmanager/head.blade.php index fe3130d..0fcd9b1 100644 --- a/resources/views/vendor/googletagmanager/head.blade.php +++ b/resources/views/vendor/googletagmanager/head.blade.php @@ -1,16 +1,27 @@ -@if($enabled) - - +@if ($enabled) + + @endif diff --git a/resources/views/vendor/pagination/bootstrap-4.blade.php b/resources/views/vendor/pagination/bootstrap-4.blade.php new file mode 100644 index 0000000..6b87485 --- /dev/null +++ b/resources/views/vendor/pagination/bootstrap-4.blade.php @@ -0,0 +1,51 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/bootstrap-5.blade.php b/resources/views/vendor/pagination/bootstrap-5.blade.php new file mode 100644 index 0000000..044ff46 --- /dev/null +++ b/resources/views/vendor/pagination/bootstrap-5.blade.php @@ -0,0 +1,94 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/default.blade.php b/resources/views/vendor/pagination/default.blade.php new file mode 100644 index 0000000..9399131 --- /dev/null +++ b/resources/views/vendor/pagination/default.blade.php @@ -0,0 +1,47 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/semantic-ui.blade.php b/resources/views/vendor/pagination/semantic-ui.blade.php new file mode 100644 index 0000000..af16ede --- /dev/null +++ b/resources/views/vendor/pagination/semantic-ui.blade.php @@ -0,0 +1,40 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-bootstrap-4.blade.php b/resources/views/vendor/pagination/simple-bootstrap-4.blade.php new file mode 100644 index 0000000..4bb4917 --- /dev/null +++ b/resources/views/vendor/pagination/simple-bootstrap-4.blade.php @@ -0,0 +1,27 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-bootstrap-5-rounded.blade.php b/resources/views/vendor/pagination/simple-bootstrap-5-rounded.blade.php new file mode 100644 index 0000000..ff4ec0a --- /dev/null +++ b/resources/views/vendor/pagination/simple-bootstrap-5-rounded.blade.php @@ -0,0 +1,31 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-bootstrap-5.blade.php b/resources/views/vendor/pagination/simple-bootstrap-5.blade.php new file mode 100644 index 0000000..cf2e049 --- /dev/null +++ b/resources/views/vendor/pagination/simple-bootstrap-5.blade.php @@ -0,0 +1,30 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-default.blade.php b/resources/views/vendor/pagination/simple-default.blade.php new file mode 100644 index 0000000..36bdbc1 --- /dev/null +++ b/resources/views/vendor/pagination/simple-default.blade.php @@ -0,0 +1,19 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-tailwind.blade.php b/resources/views/vendor/pagination/simple-tailwind.blade.php new file mode 100644 index 0000000..18b6ef5 --- /dev/null +++ b/resources/views/vendor/pagination/simple-tailwind.blade.php @@ -0,0 +1,29 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/tailwind.blade.php b/resources/views/vendor/pagination/tailwind.blade.php new file mode 100644 index 0000000..647ec1f --- /dev/null +++ b/resources/views/vendor/pagination/tailwind.blade.php @@ -0,0 +1,130 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/welcome.blade.php b/resources/views/welcome.blade.php deleted file mode 100644 index 59ac3db..0000000 --- a/resources/views/welcome.blade.php +++ /dev/null @@ -1,6 +0,0 @@ -@extends('front.layouts.app') -@section('content') -
-

Coming soon.

-
-@endsection diff --git a/routes/tests.php b/routes/tests.php new file mode 100644 index 0000000..01e7b0e --- /dev/null +++ b/routes/tests.php @@ -0,0 +1,64 @@ +onQueue('default')->onConnection('default'); + + dd($task); +}); + +Route::get('/gen_article_image', function () { + $post = Post::whereNull('featured_image')->where('status', 'draft')->first(); + $task = GenerateArticleFeaturedImageJob::dispatch($post)->onQueue('default')->onConnection('default'); + + dd($task); +}); + +Route::get('/suggest_titles', function () { + $results = OpenAI::suggestArticleTitles("It's 2019s Electric: How Fisker Is Reinventing The Automotive Industry And \nExpanding Its Business", "Fisker's approach to building electric vehicles is deeply intertwined with \nits overall business philosophy: use less, use better,...s", 1); + dd($results); +}); + +Route::get('/write_article_raw', function () { + $results = OpenAI::writeArticle("Fisker's Vision for the Future of Electric Cars", "Explore Fisker's innovative vision for the future of electric cars and its impact on the automotive industry.", 'Article', 500, 800); + dd($results); +}); + +// Route::get('/image_gen', function() { +// $post = +// return GenerateArticleFeaturedImageTask::handle("","","",""); +// }); diff --git a/routes/web.php b/routes/web.php index 51cf403..6e8e4b5 100644 --- a/routes/web.php +++ b/routes/web.php @@ -13,6 +13,18 @@ | */ -Route::get('/', function () { - return response(view('welcome'), 404); -}); +Route::feeds('feeds'); + +Route::get('/', [App\Http\Controllers\Front\FrontHomeController::class, 'home'])->name('front.home'); + +Route::get('/terms', [App\Http\Controllers\Front\FrontHomeController::class, 'terms'])->name('front.terms'); + +Route::get('/privacy', [App\Http\Controllers\Front\FrontHomeController::class, 'privacy'])->name('front.privacy'); + +Route::get('/disclaimer', [App\Http\Controllers\Front\FrontHomeController::class, 'disclaimer'])->name('front.disclaimer'); + +Route::get('/news', [App\Http\Controllers\Front\FrontListController::class, 'index'])->name('front.all'); + +Route::get('/news/{slug}', [App\Http\Controllers\Front\FrontPostController::class, 'index'])->name('front.post'); + +Route::get('/{category_slug}', [App\Http\Controllers\Front\FrontListController::class, 'category'])->name('front.category');