From a29095b68bf5bbef32682e3a1af86a186fe305d0 Mon Sep 17 00:00:00 2001 From: b1ek Date: Wed, 17 May 2023 06:20:28 +1000 Subject: [PATCH] half done docker --- .env.example | 9 + .gitignore | 3 - README.md | 81 +- conf/nginx/logs/.gitignore | 2 + conf/nginx/mime.types | 48 + conf/nginx/nginx.conf | 38 + conf/nginx/proxy.conf | 10 + data/.gitignore | 2 + docker-compose.yml | 45 + genkeys.sh | 97 ++ misc/1_step.png | Bin 48055 -> 0 bytes misc/2_step.png | Bin 61502 -> 0 bytes misc/3_step.png | Bin 88689 -> 0 bytes misc/4_step.png | Bin 15669 -> 0 bytes pairent_backend/Dockerfile | 17 + pairent_backend/docker-entry.sh | 6 + pairent_backend/pairent_backend/settings.py | 8 +- .../pairent_backend/templates/index.html | 20 + pairent_backend/pairent_backend/urls.py | 5 + pairent_backend/requirements.txt | 3 +- pairent_frontend_react/vite.config.js | 1 + static/assets/index-b130f2c5.css | 6 + static/assets/index-dc786e36.js | 1150 +++++++++++++++++ static/index.html | 20 + 24 files changed, 1489 insertions(+), 82 deletions(-) create mode 100644 .env.example create mode 100644 conf/nginx/logs/.gitignore create mode 100644 conf/nginx/mime.types create mode 100644 conf/nginx/nginx.conf create mode 100644 conf/nginx/proxy.conf create mode 100644 data/.gitignore create mode 100644 docker-compose.yml create mode 100755 genkeys.sh delete mode 100644 misc/1_step.png delete mode 100644 misc/2_step.png delete mode 100644 misc/3_step.png delete mode 100644 misc/4_step.png create mode 100644 pairent_backend/Dockerfile create mode 100644 pairent_backend/docker-entry.sh create mode 100644 pairent_backend/pairent_backend/templates/index.html create mode 100644 static/assets/index-b130f2c5.css create mode 100644 static/assets/index-dc786e36.js create mode 100644 static/index.html diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..de209ae --- /dev/null +++ b/.env.example @@ -0,0 +1,9 @@ +APP_DEBUG=false +APP_PORT=80 + +DB_HOST=db +DB_PORT=3306a +DB_PASSWORD= +DB_DATABASE=pairent + +DJANGO_KEY= diff --git a/.gitignore b/.gitignore index 7d0ad55..f283bac 100644 --- a/.gitignore +++ b/.gitignore @@ -28,7 +28,4 @@ local_settings.py db.sqlite3 # macOS moment -pairent_backend/.DS_Store -# macOS moment жиза .DS_Store - diff --git a/README.md b/README.md index d6aeab4..c5c94ae 100644 --- a/README.md +++ b/README.md @@ -1,76 +1,7 @@ -# Аренда квартир для студентов +

Точка

+Добро пожаловать в репозиторий проекта "точка" -В проекте есть три ветки: - -- main — в эту ветку загружается код после положительного тестирования и ревью. -- dev_stable — в эту ветку загружается стабильный код, который будет использоваться в продашкене. -- dev_unstable — основная ветка для разработчиков. - -## ТУТ НАЗВАНЫ ПАПКИ ПОД РАЗРАБОТКУ И ФРОНТ В БЕК НЕ ЗАХОДИТ И НИЧЕГО НЕ МЕНЯЕТ! - -## Как начать работать? - -- Устанавливаем [python](https://www.python.org/downloads/) версия 3.11.1 и [git](https://git-scm.com/) -- [Настройте git](https://tproger.ru/curriculum/git-guide/). В основном нужно только ввести имя пользователя и почту, пароль запросит при клонировании - -Если не хотите заморачиваться с терминалом. Советую использовать [GitHub Desktop](https://desktop.github.com/) - -### Клонирование проекта через терминал - -Команды написаны под windows. Вводить в командную строку. Проверяйте, что в терминале вы находитесь в правильной директории - -- Клонируем репозиторий - -```bash -git clone https://github.com/vvsu-rent-project/dev_rent.github -``` - -- В консоли переходим в папку проекта -- Далее переходим на ветку unstable - -```bash -git switch dev_unstable -``` - -### Клонирование проекта через GitHub Desktop - -- Заходим в настройки - -![Заходим в настройки](misc/1_step.png) - -- Входим в аккаунт - -![Входим в аккаунт](misc/2_step.png) - -- Клонируем репозиторий - -![Клонируем репозиторий](misc/3_step.png) - -![Клонируем репозиторий](misc/4_step.png) - -### Подготовка проекта к работе - -- Открываем VS Code, открываем папку проекта и запускаем терминал -- В терминале переходим в папку pairent_backend - -```bash -cd pairent_backend -``` - -- Создаем виртуальное окружение - -```bash -python -m venv venv -``` - -- Активируем виртуальное окружение. Активировать окружение нужно: когда запускаете сервер, устанавливаете зависимости, добавляете новое django приложение - -```bash -venv\Scripts\activate -``` - -- После активации, устанавливаем зависимости. - -```bash -pip install -r requirements.txt -``` +# Запуск локального сайта +1. Создайте `.env` файл, рекомендуем использовать для этого шаблон `.env.example` +2. Сгенерируйте ключи `genkeys.sh` +3. Поднимите контейнеры `docker-compose up -d` \ No newline at end of file diff --git a/conf/nginx/logs/.gitignore b/conf/nginx/logs/.gitignore new file mode 100644 index 0000000..c96a04f --- /dev/null +++ b/conf/nginx/logs/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore \ No newline at end of file diff --git a/conf/nginx/mime.types b/conf/nginx/mime.types new file mode 100644 index 0000000..62bd4b6 --- /dev/null +++ b/conf/nginx/mime.types @@ -0,0 +1,48 @@ +types { + text/html html htm shtml; + text/css css; + text/xml xml rss; + image/gif gif; + image/jpeg jpeg jpg; + application/x-javascript js; + text/plain txt; + text/x-component htc; + text/mathml mml; + image/png png; + image/x-icon ico; + image/x-jng jng; + image/vnd.wap.wbmp wbmp; + application/java-archive jar war ear; + application/mac-binhex40 hqx; + application/pdf pdf; + application/x-cocoa cco; + application/x-java-archive-diff jardiff; + application/x-java-jnlp-file jnlp; + application/x-makeself run; + application/x-perl pl pm; + application/x-pilot prc pdb; + application/x-rar-compressed rar; + application/x-redhat-package-manager rpm; + application/x-sea sea; + application/x-shockwave-flash swf; + application/x-stuffit sit; + application/x-tcl tcl tk; + application/x-x509-ca-cert der pem crt; + application/x-xpinstall xpi; + application/zip zip; + application/octet-stream deb; + application/octet-stream bin exe dll; + application/octet-stream dmg; + application/octet-stream eot; + application/octet-stream iso img; + application/octet-stream msi msp msm; + audio/mpeg mp3; + audio/x-realaudio ra; + video/mpeg mpeg mpg; + video/quicktime mov; + video/x-flv flv; + video/x-msvideo avi; + video/x-ms-wmv wmv; + video/x-ms-asf asx asf; + video/x-mng mng; +} \ No newline at end of file diff --git a/conf/nginx/nginx.conf b/conf/nginx/nginx.conf new file mode 100644 index 0000000..896e473 --- /dev/null +++ b/conf/nginx/nginx.conf @@ -0,0 +1,38 @@ +user nobody nobody; +worker_processes 5; +error_log logs/error.log; +pid logs/nginx.pid; +worker_rlimit_nofile 8192; + +events { + worker_connections 4096; +} + +http { + include mime.types; + include /etc/nginx/proxy.conf; + index index.html index.htm; + + default_type application/octet-stream; + log_format main '$remote_addr - $remote_user [$time_local] $status ' + '"$request" $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for"'; + access_log logs/access.log main; + sendfile on; + tcp_nopush on; + gzip on; + server_names_hash_bucket_size 128; # this seems to be required for some vhosts + + server { + listen 80; + + location / { + proxy_pass http://back; + } + + location /static { + root /var/www/static; + try_files $uri $uri/ index.html; + } + } +} \ No newline at end of file diff --git a/conf/nginx/proxy.conf b/conf/nginx/proxy.conf new file mode 100644 index 0000000..0906ee1 --- /dev/null +++ b/conf/nginx/proxy.conf @@ -0,0 +1,10 @@ +proxy_redirect off; +proxy_set_header Host $host; +proxy_set_header X-Real-IP $remote_addr; +proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; +client_max_body_size 10m; +client_body_buffer_size 128k; +proxy_connect_timeout 90; +proxy_send_timeout 90; +proxy_read_timeout 90; +proxy_buffers 32 4k; \ No newline at end of file diff --git a/data/.gitignore b/data/.gitignore new file mode 100644 index 0000000..c96a04f --- /dev/null +++ b/data/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..bc0b466 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,45 @@ +version: '3' +services: + nginx: + image: nginx:alpine + volumes: + - './conf/nginx:/etc/nginx' + - './static:/var/www/html' + restart: always + ports: + - '${APP_PORT:-80}:80' + networks: + pairent: + aliases: + - nginx + depends_on: + - back + back: + build: + context: ./pairent_backend + dockerfile: Dockerfile + networks: + pairent: + aliases: + - back + volumes: + - './pairent_backend:/opt/code' + environment: + DB_PASS: '${DB_PASSWORD}' + depends_on: + - db + db: + image: mariadb + networks: + pairent: + aliases: + - db + volumes: + - './data/db:/etc/mysql' + environment: + MARIADB_ROOT_PASSWORD: '${DB_PASSWORD}' + MARIADB_DATABASE: 'pairent_db' + +networks: + pairent: + driver: bridge \ No newline at end of file diff --git a/genkeys.sh b/genkeys.sh new file mode 100755 index 0000000..14845bc --- /dev/null +++ b/genkeys.sh @@ -0,0 +1,97 @@ +#!/bin/bash + +# ----- Start commands ----- + +fatal_err() { + echo -e "\033[31mFatal error $*\033[0m" +} + +# ----- End commands ----- + +# ----- Start safeguards ----- + +if [[ "$1" != '-a' ]]; then + fatal_err + echo " This script will potentially break any existing instance of Pairent." + echo " To execute this script, re-run it with option -a as first argument." + exit -1 +fi + +if ! [ -f .env ]; then + fatal_err + echo -e " No .env file was found." + echo -e " Please use the \033[32m.env.example\033[0m to create a dotenv file:" + echo -e " 1. \033[34mcp .env.example .env\033[0m" + echo -e " 2. Edit your \033[32m.env\033[0m in your favourite editor" + exit -1 +fi + +if ! [ -x "$(command -v python3)" ]; then + fatal_err + echo -e " Python is not installed." + echo -e " Please install Python 3.11 on your system" + exit -1 +fi + +# ----- End safeguards ----- + + + +# ----- Start bootstrap back ----- + +echo Generating keys... +KEY=$(python -c 'from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())') +sed -Ei "s/^DJANGO_KEY=.*$/DJANGO_KEY=/" .env +sed -Ei "s/^DJANGO_KEY=.*$/DJANGO_KEY='$KEY'/" .env + +DB_PASS=$(tr -dc A-Za-z0-9 ~*aTvAX0%Ssy+>erZ- z3vFiQLXHV8D3~dw36;4dDkv&ZA|fgv+xtbE`OWWt{^x!E=Y5}Zp7VH4r-Smnx$o<~ z?(6zopX+mT{m?;=#S2z0003a|-aR{y0DwUf0L*bVoCp5qb6fom@IOfO5s&RaDGMqD zU(5;F=D7_3%7_b9r{;pM=cD%cMFW6QgYF-MiG1=K0Ms1VyK~zybl`{@f8&t?`wsJa zZ;kI;ezTq(Aptjn7dVp1XR zHmHc!84vvVd@Fb^FO_D366_^Dn@5PqR{uRJ}Z~+9S^t9BfieTvDfBuP~ zkeB19*jCRdY>c8Grr`^#jLF{At6j0j1wB6jbW~iz^4Q?3NH~F{z!2&%lSre+6Fz#K z17Wa_e=Xb@mNK`kZZ1!Z9v<#7%;k$uU8+pGs*g$}BMCIg2|A|O%^Ja?UMGC78cA{A z>LA`&AwMpw`GD7?1$hQ(_VGhBT_;sF+U?UHeClqvTSN~?>@-(jAj*+(711S1k&vBu zewv1xHg3(4#kG+>5t*d@2z91PenHJ+cd!awvJw!IxV9|(RCI~RZ7c2quw$g7T+Yp@VAN6V&fT0p+Z;RwpzzN zFOKUAHIcvIBYmBLEUq#~f9zDV;)FK@T=t1Myr8{WMO-H(BhMcQ{9%|yihFEgyFJu( zEbz+r9b3inbX>nRPC1e5F|>WoD?^6obKEgf7O-gM19B@G1|mrMs2|si`Mu&kM*)P- zImrF_ zvQEQz7N;dS-ih9QGj!_*PZH8~UY20s5DT4jYwmYqV9%n6BlY1L&-7NM$VHCUvMP~j?ez2x=97lOWN%2>rVt`IqZzSF5O;zcgXH&0rl(G*usP7p1xiGF zU%y=VAhn}SV&Au43HKm{DQg|Xu6_Ql;|`=ZF|VLu9u2Dj=GPZm+B*ETlB%QZG+E5_ zUD@VDE3yNw_Y?b!>JG)7t`N8j#PVO1;?Ym)6Q!gb(vZm4T<$owg3D)o3c}C2;9jU{ zQhE23^jH%Y9&2WT?gwbn?vQocoV@j6lm*U|Oq*+bWpbD_G*nVingERcIY2D|{ZQI) z46ld6WjLn@-+jsrQDf87*>PIyHZNvR>N$k6YIR-SrKi4IwdFRgxM9rbh%(>pAYA)p z#P%MCXb>t+7!UDXoc=HxQO-GI+}_9jj8R5k7qqh}*wI@8QLs}tK8`&qj#7(5W+%Nv zv%cYBrDkTzNqpCzfzBqjzpdtMq2(oWBZkREX=q<+y$O2FNYg%U)WNDF&i)g(-`@w% z&{mwm*q9Pezv1rB5`l5_V)VB*5+Qtv0bX(}N} zt&k{)eNwx(JKK+b477Fid%u!=qUR-b}$cbatT`mtfd08U5yOE5Z&S-f|$@))t@M-W~WY$(F-u&wL3 zxQL-I;{2k03$vMW-7X6Fx_jH7iFwe@Yd7tQ+7T}^NYRq7r&)IlUVd_RvNYg`3#^t& zaqVC#7?^xa2)f37pKvEvAg5gu4~5{}8{=p!Tz-kn@sp#QyXkJ5=y8G5WC+LT_oHNs zFC?`v6uYjG)H^|vFgC^$1X!V<&8zc4Tz=du!N)=XE)B^=B#&bk!I%lG=(EK6GiyQJ zj9I`iK}XLah#{p|bJPlaO`;6xokqqUa`l-GUl%jA+eRLZ>%M6*yY$OnmnH2WFkHqd zRDmSBt&fs=JW-U~UG)KpUCd}`e;HDB{BGl4LGxciXi~Xh{g6z1*513%th(s0_o^2% z_?%4(3F=jV{>-@hhr1y1;*bAKasS_Qd!UotOGWH^(&%%qGkcOLHkVl}_|iYD@e9snF#12oL_uDJ%> zz7%wBhxY&Y@cUs&KAl1P@Iz_z8@ORX-A0ExEE4Z*#%YnHeNLcjWrcP)VOEOxDJ8G5 zHe@JSXrLW~dEv*I?uZF2U0mLd3Acd-Sd5w@!Z`aC4&6)wHh4WHi=XoJ#15c^VfR93 zKApKhQ-yBW1!(pM$xlx=22Dpzj|gzTZK^u}sr-YB+}Yn9JFNViW>*N)yeI7;sV3qM zHgyEWUv#!QJY}F^2(A%Zuz!|9oC%X2_(3nP+S|aQcVi2~b(^3wIshcy-M=&mKf%CQKDVYmSeQS1yxkd%V;WW4?-t)9VQqfoZgq z5_L5S&f-TFLu2@~0addkvDgQe*f|E3;uJjsOB=Ddrh}_V5R&o2tjDZXEC*QdCrdNb zn%7N~amqWB%WL|EGig)>&(>e*!4H$iE3d_Cvn%-;M85YQ{RnK>|zo^+ARmEq-3lP#1? zzQlQ|^}W-;IYL!Im)+_M?%r_r;R<-xq1^+CDrkQ6l?Y@}ZNvq(z^`ui1=kT@i8E^z zDG0}vRAO__WF?Q%a`OVdnT~I7j%bedY1e2Z)Z5K{O0nQZ6%`m$RNd@_=JlI ze4!V7kCIz;C*l}o+d5smI28R<4+Ur6+^ly_l`gWs?eqGqNo4S@@II#pVLiLIikGgc zH1pupQv+`1G){Fnd2pucB*zuYMd7PpYmhcX(`H#hS6R2TPSsnRSw>7n@t5d;FZPC#KU%!&jxX`s@Kip_?w{dE_1&g;Y zX{t-cu-&kmYwf&^i94dI9yr5-E46KGY7+@6a@t~XGDQiuN7urwQ@%`vHMw{aq>0s= zdbHum(TTXRyNZBjK9d5+ZwW*oZl56Qk1zV2V8qadr)zi^5qco8t6lc1U$K_DZ)PALoCOb01Qf{xlim8Dr^& zB)I(kyevGlKynQ2eqrv|Nzxn2;TM+qN0koyZ*{_2NxAz+HsjRJ5lSo@ocpI;3mM3o zvYV7q1hm&|T4N)8DAr6zsw|0~QwjUynNp6h-GDFY&6tQWVsI>k4`oe!a_t}9b(m>~ zYke`cz47PCE~BHd)sx}K72y`l;gbHTR94$5MFw~3=ER#sLNcF=Dfl!s(qd1!+4n0n zM9t?2E7-48$rDeBb%NKNJ>{xdFF&{}3E$!bzwI8QeAp1=oA{-zrh#eiom2DV_~6#- z$FF2CBP|A@2tKA~T~+Q;RtCl-iI3U&zROAPd_u&NtKElK^F^KMq_iHrYWVKl9j^tx z3mGYvMLl+~%}wJj0_?zY1*Jp8tdPYX-c_8z*(%s*vAVfQTE2*}%1Rr8AHh3ae7ozT zE{i-r260aLAfb&fZ@95FaF=WOOGgiWYPn6?99|S@Akm-fa@U_WJf^xUhu__d&g(}P zZ_UqOO4-CS9RdJ;ovcqvjM%6l5DUDpXYFdgdoK&4ySu3el3(EQo82sxFT4S|WO%<& zQ@^ddTAe@P&z;^`U7Kov`rx@i^LX$1N^;_QH$?~8i|FRyEJ%G9tv|+_bm}AJFVE#S z5A)Q}3&yO?B!jF>U3K+KYneXkN}qh~&MRD53Eb86ve%MJVK=}2(7kO-8tTrDvv6Xz zU*BUFgT5{+>FESG@yC^r3M_3sAxChHhIfx3l$GJrnPsQp~O4-IqTB5?T`f!d=m?1L2vXE*nUus0^6(Qjl?o9<#-tT1pIFkGpe}C3;|1b^EYw-PE>RFWc-kuNk-j6_|Is{5*tz zxYM_p(~N&OICgBbCOh>}31^jH%)hBW^_hag_5kb5vexh%3+6(`P}QzVOBnygXLzD| zhdxSKsaUQzb|$9h-7@V^`r#zY6UmVo!(sMBW^Q6$2f;o_ZT7AKQ1J?49xl&0*Z46c zXk~7L4Qwybv$e>8H;i#KV!&{;6&CY&wG;2-7F)s0l1M#!$d=GYlOZ4geB{q*4TD-H zweX|-W+2~3s4E}{dQM?V@#S>4I`F_9-wndTp#|LT*y#cgimgxP&*RCddkLNr=q&(%=6Zxa3E?wM0@5yI&&J$z8ql(`& z4@`v_=}(?xMcX8YgG)brz>37ZNqutmj-{abZD(*moCK`N7uDZ)6QCvm)pQ*4apycf z88>ieqAREGMqlEj`n)=rk9J-30^A_wz|=eB9wK%uv;OO_|1XIAe44sHCb%C^q2s59 znr-jJAr2c;k1{d%YANqjHC=jhVvu(c|8?_2&VhxDm>KkXD0&2d(sO^pm)#xW*ie|} zzorGWJV8R7S!-S*71;WTpc#nBR9ubKIPE!S&}T?L^V`op2Ks5j_!GmXwH|8o4db+8 z$B;S~h&+t@uRe(?Hhyw5pYPta-ya5LW7-lvc!)EaJh(#Tq)=Gl^C1i~I=VYPz8`>( zU1UEZj=qW;Crsf*Z8_(Ma+n;W#SG*gFciDEFgs)2ZwEft%O=eF+?S7@M3& z?Ouch9lkmA`j}F-5cQ(8^NdEjFw_QL9;;ehfyruEDx4}bAl2{Be7z{zkO5+ck6_eR zI7WC}*FM%pdUt+YZGOlHM7UN3iD5%`Zx#RP299W~w0kgwZ!l!6uc-^jvaac!9vU05 zrnHq5(p_p5U+Y}lFv`sSlBWnofCT#zH3za>2kBT4XWaFr^tac8@~zelTMEqGD_+n2 zs6*i%wi>bK{O-r74**mySe!IXVaCw>*OM+!_<*M z!}V~zjo@q@^7K)vsMWap$2i{2^q6Pit_N(RAQ!hEi(%L;$yJf6>3Kkx&@Sr2Ke$DCZr zIUNX(Kq9(t39+#1J9VYi;Seu4DL-L4d@?+8#60joksX{=dW>oet;VDMy`>R=D7%%+1~n5#Z;y-^<<6mDTve3@~eR0ho5@wyQ2rZd91N%n+Y{ zm0JYqLQ(30Ror>U0joT27|cA$#qtEXMXog%2)WW*>Bz5stHtjOC{$>JoN=nfAt2LK z+M)O5kLZPrhtBGrX5OSfME)e&EGa8(#sHoI@YEe>r88U(ymevOMTOp6_@qczkno)8 z?>4MCI_GhB?k&tWbnrDM@A99d&e~iN5 zd%lXT*or3O!jk%_5@Yv3C{oP{s{f4>1LSKKO~nQ6v*C{4 zeh;LD|n=6&T0DDz)DJhv4}#5TA8DGEMDS?t3hFt6RLpx|8` z7nMH*RD-{9H`O&!Bt21?5*;eN6%5Ctd4wwFe1?~kz>j6e4VK;90&J|t0iVU31J`)S;P@*ffG2Jh2Br~f)DV}3=uHq4aD>yraD+m&xJCXVmyB+{(i zrY;f-tr1any@=Nkc^()PV2^zek^}M5lcPD@T9<5#e%YNDIPIx;QDew8CVC{9{77wJ zSCHvcL2!$W0jy|EP0F^VNbKs83yz$8tngH~c7pj~=}~6h2?$8%bF=y+9fp)3l6T&mvbdewVbF+iumL+kQZ&TLCR-3+;d3u4lCpmZ| z(b>%r<9XW;vE!&4;B?ot(&TE$gTbW>OM(2mKE+>bnJN7g%bz@M#%;2`e0GIb^qjn% z?eA6N7efYOo|-0og~WAl1bLFvS~z*~xIHqaFJ&&zg}HU#*X8Z(=ZWx*iO9x;Gdusw z*>wjkWC`O~G;u6$l?|A^6Ho7qzc_}j{F(9{Cm$!NN6#Jgzjl98GiGrT zQeFC2UUzzA?H+}c$CJa6k3vZCiHWLDfQn)09MynZzPY2cVt9GIrHb!l6Sns z6qE9R#ja-J;B^nIOe)iEbUWH*ALQy)U$2o^73wJlyTDa;l%3us&6UnCzqHjoWn6mR zo&1R{O=S=KYe^Ewmpm~^>erh&O!tWNcUDbZ;+_NI)?nnyURKq7h7Q=A)x2^&%}Jhk zdDP^$G|o03n);zhRLvZoN@Xi7tCs|!&m${;Rvd+41SgA4lSp#k>5n`p)m_Ev|9Pmt zOfZ*MXf&Te()h+FytlpQ zL5=U@_U`dw+TKo~9@e~a9<1Apo#<KTZm~)Ci!fgYcxe}UhUiD7nAQZ&Vn_Z(t<8( z5Z-DyX~8l6P{e`dzv_G6+?OJ3ukgL&Z&faO8k1n{tu`V=YBOU(63R>&HaYxG%SyWP z$Z^GRw)FPIZ#|T)O)1<-rLFK&)_57UZK1@Ce$*z(fGlgSM=NcFQ%5By>P4NFiSuCi zwY5`s-iL{}^sK;2h5Ve=eliu}%sqlWw`@_$%_x-$%ir@UJ@Zry4Zrr!+YskJlupt@ z8EkhmJY-3H7^Jc*?!wQ6g9LkLZF8093%#+AF0AVXU_FB3v+r11ubFV)AmD!%z0B!oeiSzs4#8}ccXkbn5Prqdc5Lp2L z3T%nZu%t7ufDPo%+WrjWLF|#VfL~6CR&Mo@(2s@kffJ2dcZ{@?KGUd80s*KFdcMOf zNxIawdY1ErvJ2)jioV(v(8n8t_UH(@XAx|QSY#|{WN+Z;h{_x8$|~5M6^QF%wT4U5 zd@!$bhReFAJZ#--(4>m+mH{^#*a3t*MT?%kg_u&@7b~%(5>}YMg4d0r%l$ZkQiN72_mZJIiw&!8s!^g3U^QK6+F3JiK5N-~m2@2>~D6L@J}-GJoPC`(*IJ zd;Wd@s`?n1XYq|ytN@_F(mF9{4~L4d&+z#S#(5K6rUH`6pI1*wK(-9^`IA5F8LR3u z$UqamTXFcs6ny({RV9o5l@i_(?B{;=b>!xj`puNgn=jm~$@#WElU5WxXOaihNvtCY z?dY)yT=6tfd#k_d4{-rJ;zAg6bli8S>S_a_-906W+u(l7L-^d3ao;SdW67tN_VJ@%)zm&%kIYQ(?nc;sS;OlNf7nCOBmE6$JLLZ13}zD?+M7@WFGgc6Hzzhj115ER@qm zCzBdxTQQ9Dsf?U8NKj0`u_4zv2F%T+()lO6JSlmZhSl2l1~4yVyx3{O55pExVJ?pB znM!y~@=&cuqY0A5@XHG98!u?w} z>KRWx4bKS?f?xsNWt5INgWCCKQ>hiDxe{GCu^)Rt|=XB;%kPx>yG$^p$lh&qR(&G%f7M>X0Mu8w7a; zhBYRaq~SR&Vtxiw;mt~$$7>kmw+DtDp7qH6ql&y2^vU}mhw))Qxpyx&9|l$wFno27 z5i@!nM1H4rqPyNks3_&=TqJ3sHFwm-TfKW?aRtYX`HY)dSLSBW-%V@VWCv(H#Q4O@ zO_gpNfXxqe(h;*VA=t?R;|BVT<%%TY)TNRXVS(T)=U&XPP0||qX!zs8uy4cKU5>CF z-aVMn&Jb}BDXH~kURC?#FIpEfV9S#H4h89>a*q~|l!OOIew+0{VAx~^^Z`k?nyFaU zO(*hL#;^5pjzRf5d0l4Fr~T72nXjV`l?s=n&pmmt7$i2h(^a%xTbLjL07g{Wpjq|Y ziG$OOF-c7uGbl_$4BE*}rQgyfXUj0t2jgvt83Ip&t8)hvAvw8G^L_0L2f1I}6pF4o zzWyQKfM;jq1xqL6Mxg#ZbL#DI+u^?^S&kcqq@{=14stE z?RRS8R!(`|5=8F*4EF%8?SJ&mp1XhuHH>oqI8fR&(6NAb>Xj{hv-1?2&6hMxbX)hG zxDa+(OvMjuE6V_RGytCd%tbzYgJZ-HF-rs~mTR_;Zd`z9yI?VI@Q%7Ex^OD2F4%c^ zSiPJ1h6&;ea9aC~7?@1tD{y}?32@dnXY!aWa{h^EL%v#YNSJNZ|W*8Frax`Xaacf;!b>$)^XtTMzeS6fXGjmZ&$wz4e(f;@w zPH{(gJ`?B3v-I<{BR&*Q;2xrKwKuaJw$0=^=f#mZ0(q}LE}tKsE(muq0^Q=&O~b@o zxkWP&(A-Z2{j6c_?5U#-Ztc~J|KW0k3ib|)^;(jYa@Zvhpzq9!bfIP+2_F&zoUI79@f69N7?!|oV;~5Zm)lUl)6^l zjA};)N?egjzijg)0ay$DYc}}}7duc>OOYWMuw|Z-y_npa*JQ7oaFW!-CQSn8@ezLX7rtH{6tMXc0A+Sp$DXQ!Op2%eRnZ}P{ss=n<{RXB~y_2cy*xrH) z>_lT$o3ZK=d$A0x(v^dS^yu-G_z4e9%yAv8ga_JDDg?|agnS1+RK8UL$7#lhnpYp| zPKfYqnI~)2D`__kgacsr=X-$dqcpJ8&FYufpTIWsyC7A8U7;vJd8-VjF4L|qDW$)d zfK)Df?|K;(?hhM$a(rIbWLBUh0cMIOb_f1mWfC1-nIVvDm7oKG2pd6TSW_4?vRgWQ zz02Z$4V>#d{Gi@-rb_>(SuP0mQ9HRhOr8BZcu*=4MrmXn1a%m`+R?zee~k5YWm0h9 zihJe!D}ytY^BkTcRC{kmhVlBgI{-6vYXP7(m)DpHI6JeHjkyTfQH0wkD?~6ZoSv8< zJkoP{+78>Fwgcl3h4KFa_QYus#fJ!G4+D#^1d&9(La=n4f^J2N8VIIDzPhPL+Xli- zT|Zo!7BoH7Z$GZO_51RbHmAd=M+x7rv`Lnh{A&$um}fEI_%;qv;j@@g_JLvbA{VGcszG$VMg5yp0-%6pg;_SzIYeb8`pM??i$c-It%$h)&R)njy8nOA-{RlZ|xt z{@x#iF!TEE(%hKuq9S&_Q^9eRhVwhy(a^(A%y$?YLi9*$q%#;XU7j_eSA=u6fy832 zth&sNepa#4qn3+?a)JYuZnv2(wl1GHRKIlc=!fnXh=LYAUo||0@{b?_IrL7aL9yCa zAC;daOABrcW6~0Hi>IdTz0=qp;YBmbi2v9Xu%*C~xo5eLH;WI3CD3Ji?Cpj@-tZ4y zPx9gEGjrI`L&1SYf8I}jfe8$!(~eMUUplhGVK(_pOs4V*G=L9}dSNS5mulsRI|&4` zyS%htqgakfz!Z;{JAYAA*!L5)qVU4|mcE=&2)a+YY4mnzQ3QW-wS0IFC-71ZDQ-T) zqZT*fw}wJ>=8QiHO3lux zT2JFd&K^&9mEKByvVv+8K~8UNzLDVjovr@41bS+zlt9X4{w_F^9v)`UK@*>XI1?MC zhVK+zLuJjKBP)}nDt4kw#u|xR8MP(P908I=QS@DxLs$IP^4#BDyd-IVMJEwcr@x$s z(i=;xz`q0aI;4Gew5g5Q@hXW_KxqT97;KX}u5WMWjl}qV#iuL}<{cVwM|)u0giCr; z6JZfGGS@(O)!Kv2os<{|D~O1TuhCU@x)tP-Ky9q;IK?ee)y{m$z1lj@iVgwa#4O=r@0qUwsYN-u7e*~MtS&%JtM5p|ewgn6c4Vvac+yta_ zAqZJ)CtQ;>(JHMQfnMttR7DuZOgE}0Kos+g!)i?l+Nt80R5_w-q{JC~)e0O{&P4Y&%%QIy#H9sX~uvA)}TGUqNJRr6v<+%5q8mJhj zbx~J_m>c#FMed#_aO?`{LrZ72lhyeY6fV<=Zd1PToXnzIW!;ekuzD|C_25ihdlV*Z zcsYC9=F8_Xt^(+Oj+D@CxBcACcW|c{`lwXjyR!KTw4{0!F-u@ChI05WeN9s;XZ9Ph z_PNY|G^a0dy6CwGh;?UYDGCHA!;w?m87{uTJfV{^14S$;#~(@sV;yn(;b*1s_^qR<$8VCr@)O+_WTG(+4d&J@@3v z`STglR!#Eg)2Hoq4^5w$Y!nydeUVG_$I3zS*%*n3+kGTl%nO>+zI(-aKCNaR&xKsY z_`>b4YYgQcJ_$=-?B3?}D|7Bioexg)Ux5-+B!NC8BJG$xNG*?vkjj95e-2BL4f8U% zMm@ly@3cea(e8GD@`zn)?Sg#Nx6-Yp?up&O>#8S+uNA+Q&V8A4~#_f(oNkN4>r_x_Eok@ zQz&@BAp*TKzskWB|Mx0%&CazECV9xio_HGE>B4SRZm;9-G)&?$znqP(Zgwdj70Prg zYVz05mWgHvFlF1_2S@lR5O>U9@LWz}Ifr;HoXK8Re#JQP|@4|+SThV*;4T1Y=`*1beYMgxKX{rZT~=p7iJSJ6*Y%| zv8R8ViLO%h{Ob4tuwL~KP)0!kxMSZeLp*}ve6FHCnCCq2A0NEwTO0WKqJM&x>1#}M^@F=#5F61!;Nd!@4?kq_6t zNEq8F68G-+3FRR*G?Q?lW7N8iWKKVs#Z5_6|;su5Jxu=Zd zpUg)b$f4$xW#$P5Y1uViL-G*5cXyA!mroJrAct3BMES7qqJLbkCS5n(&uji3dqb=3 zJ=iXwt}Z_|E@H8j-FIt)BZ~L24lc7Nnk3mAbN~>mO%BI7mHtZ2t7}`#03QYd68|Q+ z4H+35AeAev$mGJ-qo_1Ywnf=^Za;kq?7fsj2q~+4$UHc2vB-nvI^ob*$t3&PEPP19?~-nnn%BnL@{DSlcm32O`kp`vc&!18FjH z?NmhNgNo}7zi!?}vDCMzM=jr%mRY{E?b1e9_%hb$W;Z%U4Wb!Q)sUe5O3!q{Q@>As z7Xp>JInTQ_QYZ{L%wCtq{%s3YolkT>IK+-VTRhokO=_8t_v2@-M8WqhG~g9_d$)ln zx$Xr;mOxx4{RSv!d(XKQhSkVA_0+_qjgQ$9=?;;vbUhyEI~ZquDq?UnG`w%GH{fwE z2bXcb!Ml*MhJPTYcy7Z@s6~#UFY$3o%F9pK#{wA~U}wBAEvdTInIU--5u?1=kxpBW<^0VlSLk2I6cV!~OSNO9w{KEs-da0h!Q z9lt2}Pz(ezz{I~N@aER}>5Y^XM{nA{3`#g7Rsqm%a?rvuDgQ$D;*z7%Gn_ovu9mklhOi-*bM}J-pqRJ{&nDDi{#X+R8?JCb!n}2ul#k#AZ7+L{ADW)L{9CASEA0K5&{7CI~yQq@1

2WsXH#IreejJ-u}P=Z|Pt!`&gqC5-fF7elk8{|L){spLsua-9W(4&qc04STY(bQgI5d9x@L=a+Ma5TqlT>ev zrr=|Av&_u_^>-$CSi(rz1jWY3I(QaJ%}DG~9U$+YO4l0`y7~dbH(jF6gztaVv*|cu zwW$5QNU$)Bq;;u<=|(x5_um4tZ==lNdF%%Qj|fZ;6ndMa7!}eCvd28^;4gefk>TlNE9}ocNipt)@Yi*x*+$z zJgv&$SsQ>TCu7MdKH)S8a7pK2|d|hM9T%EBN@2`lz2$xFE7k+%((zdDmDL z0m)l~GO8b<91%H(i|gt((bUl(39id;6=drqk8J?%#kW|T7K}GQ5f~CnhA7-m_ncRr)VU^4dMy#i;&gMlW8(D4UKGyCQB) z8C!X;>D;@k7#xnR-5;+>(WJcb-C1>rl_OZMZ)LtiW%;AlsFAI0$kI;!#yN#Yu*St+ zqHaCsFwk+}dSh>98)msf{(M7?Cp@o7&9?dXUV>)^7kcJmzajLm*a8--V`h+2ifu|& zYC~D|X789`?VvxLnX4kv^j<8AH!&cx(u z!n6u%y9PIi_}V@7J)jRg`0r6`4H*SG&Yk2mitZ zx;*de`o%SgQ|9=`doft^xj1Q#TIFc2BS`Y{9O`lEetcvPct zE2&BDKLaVw2cdRTZ|+yCowrZ!-LZ<9&5d*^!W_6Iet`uP_S*AjFrlpG8+ztiIo=>A4&1Ik zvw#t4^SKRdbF^m|oR8xlzsUK+kg;px#3zh%H*)zk>W6&^eWH?eW+ATBdC^S}^ctky z>9J$Kv6$%!|73;nS-}juRygos4zFS7Ynx!(+>}%%eT=B}EbI!J{fPOD1~H`XQ)xtt z)p@`Q(MNMzN#qYPr9OaQc|e_JqGvhsa%4CTb3hj_c|XkIK_J=gsk#VINeR!NA@Vlt z0P4z?u9_H=TbO~vF}C`JyE+nze?3|h?H`Rqnwn637sH(Z^Wd^0V1c~gEnQRQe?D5C z$Wpz5&y4yg(42l!bPIH^FujfDzv^VGW);ihtyn(*T$+>RNrPb!uHOW5ZD|i;*S)*l zR2I82B>Ic*Y%~j)Lr!S0;O740h85^caj0a5c{m+-naa^JQFW^lC@CSAKZ&3POlEn!<)Cm~?UsPTpvd{Oig_(k^;CRoQve}5} z3{LXfwJZ<=-ZJ2go^BkS*cUXjln37>vEOK?>wT_;a!!H`I`Hlm_$CjKg<23)6g5*8 zzFd;TZuI%^)mRfa{ZQME*stx6Yo|1v{tK%Sx6JAk%=3Xnt5L0b!hx(VnZPT}wT|je zt%zJe#`@mTU-;w%s5$)Q-v?B04AZ4l3Y}=vjT2P*H2Z@OeY$-jNS%zg)r(&LZ6=Fn zMF^iC#6jfU3EsE+YWlF7-4uP96LI*V7U9#v{Cz?4m*yXWv^hch*eZ&8ldl%L zNv510rNn7{7IM^G_#62e3c188%nDNZ?Izs`@OCmuPT<~-ppVzIb@z$gj=W7%%x2}= zo<`RQ)NIfs4g&w9Siz=m?b?uEr)IqxN; z(hS4Nubj${;ji((C8*&4#+6g3g+773o=O8_Yxl99lxH`?K7G^!vmJhttZAR<)J$^^ zh_Q6Tx9>wc%@}@5lVG;r3^)M3?G=}4m9V~6)ZG5Y7fg(Ecp@+C)>>IpYrj;k_!1^7 z0!MobYUB6u=+lk#ReI5nrY_DM`_Yg=1aFw>yd@^`XNbI)UAHlv-mh=xo}J!FxK*K# z!Ucjt?&0S^4}l@}!_>tuG8BDXz&re8F3-A8bL~x>x``i^^N(zPT^}`v3&pp9ZP)I| zKfA#)SM#BWvRiFHa&z!1v@(zs`2Fr5B6+e-Rkw?m$(Q9CJO`Q8#zOAYXYX{(M;B z%BmTc7K^pX6N|ZHi-i@Pf%~=NL7J8cTkg1R!*UfL0e-!LwN{2-RV)5vT#y4>UOCx6 z(c|HspI@!HFo_Nb{A*7^-MU9AK#Q|G@ig4xa}ZFM>1eF0SZ7*Ls6K+)lHsDqj033D zGoZ_gfLySP3;M@810G!+r-_(eiXZTLr1RHbr@xRje6VBm8n$8{FOIJ46~eHSK5a+Y zG(@e`wbZz0`G~ZxA6LPT#LQr?ZGijQA{i4*g?oyeY&gv7IXvGxH8qjp@v5ngLGL!D zD|L5pXJ^|eYnsOm<4bBMV;qPAW`*Dsigu?{=fFTbzYElX$RM3fAh-1=NW_#as08nm zv~C=%Q(}d5EnRbKLagbf@8_y(aB;`6r-J2JIuhMram_@&Fi5_A+6^&A@|L9((;fp> zrV#my@JH>n3KRKn5V?2vdcDzRR>S*}oHZj>=`ciW_?Vbta9$Lzj1-~UI5XUX#?Kkx z;)de9UXHH*t4na^mJgtf(|#@zCTOXM8>Kj9LK`)a6Za?xyk~i2+LF$XTckhMTNBsD zRej(-8#VTu2^`>;SFF;FQVJwygF)S};?}Qqe#KL^K3amO9?EtRk?8PyU1pbSfD1fu z*Ua&q`0x@Uzb=-CFZAGLn}4g~Y;z15UT#v(hu#ve!Z`PfZdguS&mJ-Q%bf|jB9EJc zoAkju)J~QlJ-O;$ZXRwDrj@m;SLxbmAtE7C+5JLUraig*qPa;l39Ynv#=HwkOi+np zq{$g^srPWY?UJPOJEk=zNn!OFJ{~{p{~|WL!p4IhV>rJrI@cWHHgd;O|lz|@S^MJc0NZn;-zS6zz7qKD3 z?H1_XoO$7YWlr2|&gFr5^_w#IpDFL(dHAoyw*BAD*}pRrZHB!1>vqSP!)f;g+h!|` z4NGkPXTzQbWjhRIUR-vU^;AaiM@o6_YL$iollL6D@(CUYN&=}OQOb1yddUgbL1BjNUT&5I z+5J!A4YnNsb%g?%_T+I;QFw}H>m$quFX9F#a>dG#v5Rw0CYk&@dk1ub-&FAhqwK>? z4`ksm&elyk;2K>kdttBR-64}pj;Al|{Ip4aO$8r7_PliAvZ`pm#t^DR?-G0g7PGaR zV>}C4L20FvxS$ujBMicOtTO4ZL?^7%cYYA@s&~^O4@1@^Cj%bX>MRE80-6mufkO#h zl#%B^0L}mfCzOpl4@t~_odKsqh761I7scO~^i|QfK;&PVl3!qI>K5yK1-)g%r0qTF z&s^FPXG2Do&(5xK3R@%q73S!`(gm#XFFY_0PGy5Pxpfss6RRO64%EtD^wS$Fd4YMJ z>HTar#(NAMG2m5BO6@csvgV$=HoU6`dd7Gm!w()bVfHSvcq;5_7rjTeab}CwV}T71 z#XrsC`Cifm$udyu2(pn4H}m}YE}b8``@D}^ytN2VxY1E++ys(>yN>`)mvg1_4N*h;WCN+ZKk{rFlpnn)WRF~O#KHNYzIE!7NG~#`C$>{+yP+@W3 z$y<-f-UMVRhktn+^*hQRR5n40C<|)T2K{g=qG^r7k(~l2-s&nS7Xpu60E)R@v*rwe zBBYlWRwTEy(}O*M4cjB$x~`sQ+*oE^lsXe_rJ!tJ`E6ae^qr@N3I-8*Yw26tre^;w z=BMJiRY1?2L1BBteZOrpQ6tys-%RVTfcwk6`eS3UY**@sW|sHyH^C;+#=i@ef?rm1 zso#EHa9dfNqv1@oA^=5Fv$vJ>A(ijf0_>$WF&rCQA<`o6p|~G{meWiLU*E6Lt=ZY` zpGdsTkP%`H)+%dfv@xi_eR#P%~Gp0HFH+N1*y2PVRjTc&eVy)WB}&>?!NfLW_3Hw;6%gvw#T}cyOc-k;0ub z#cHpvP~{j!UgU2ByT71&Qkkp0kp-EjBYqkli3lhnAp7#IW=zl0vGx-LFfbDVIJe}* zCl>%#HH!yDN_u{BG|`St&4@6F?y$hLj)Vo)4G+E!F1 zTe}+-1RMbgV7CM91llObEFz);34;*A6k1!+7KnY3L77zArj;QeLl~1NN|Zo?1B5Y& z#1JGvfB=CI;J2#+9_{n)JMY}zedpZw`E>nZ1S(a#_Fj9f@A|HxDzBtFZ@Y*6;+*Yf zNG*dEpGl$#pW)sM;5DY+ULLIw%`W#PMQ4ztCI-M>UWf*%B`DE2Pf$cdnrJcZ$fwCk zA)@RJKeW0s8$?56;U6W_axvBOV?Mw3$E&e2G0R6AGS__@ei#vt?N## z?Qbft0f4C3KKE^UtT)ful&Q&7z*#*V5a&`&*~e)uT;b_p)n>@ylT8GW$%rhE=%7WYv{U?K}HNK2k13KXWpO&(x}i z>*pOWbvGcr?q-KoICUbaW*V1~`F^d!h3OhbNTl;2j?&or z+kgxX`0qrv?WDQH2Gj{RMdQMKWNYp%pz_BVd9PYVM~j{FqtnB5el^j})(+QKFda+3 zt*aiUpBL=3Lu>Lq@0LO(Dl@RXYG~M0?M-)oM4InKw1&lLSe{^WG{ShWfU2T$ezd!1 zBGFt0*s0pSs-HmRkH^oOc|Pg~ZZuXtPPlx|%v&0&Z@w=gE;KD`=%_iw)bZYq*YcoE z?&RSpj$6FH@VT+JGc9NmCFJpWk8Vqp;qhyLM1ODtugZBNap@Brm8u^=oz&ZhCy2Zk zVc|K~GWOj{cUpnks(HluN!bqkuB1{$|L|{yzBaXudDn{bffGcq0A3o7-^-^SM#C-4r4sN>UVIAdM-nVb5aAbO?fDC-F~sSmfaJ=hc7g&}i>UCN zvZjlwWxOWJmeL@fuxaD>rQNpLp1IYWQ;d2aL=h9x8;~S8{N9%5ITMJQOj~%PIH)iXU`#y=Pvs30nxIIZQJ0yDh#R z-hVE`@qipGr~qQ6C!M}5n%H4x8aRpp;X&{I71TFOjU`l1vrQ&BKM7R06FFBAAYzTI zCx}F<48F1fslq>DF&3`c7$34ySxeN5y3Vno-g^@JHZ4l+h$;N!{yMXgvOgJeS^jD# z=Zi2eJr%C=`E8s{VFodsFJ+CYmAv*nYH>9~hc6;3ivc&9Kx`p!Qk(;vd-95Zlq<6| zWT;@lUx~me;21%SE-;(_gogbm<>ga&@sE`|OvnZb*7ob7v|0g4e!Lqgc?TZi_wY7= zOBNc!&y%i^O+r*(_ck=A6#^RwBUm`HUfMsNk4CME=>yN(8f5@uTt=R>^v)AmXPnQd zA2OS8AZ546U}h1w|Dt5AH77K}s`C$q5D)2;C+=i!hBEn+pdA&+46ugpCkO=TAU|_X znweWoUo})PwdXN%e~wGJgV_<;`19+t{DIx^d5MX|`sRhUdzCNtW=iGyQoU3p=E;#*4rRezQFA9N_{WS z2p|;cv4oo5uYYGBOs(n98m#<}^?jzrjH}%tkfECoic)%?gkk`Wp*!XIB5o_|&dSM# zy&mu*mOVoRX3h|`CkRYJbbhbQ$usi=WhWk|8uY!37W`qSAC|hoeEA7+l~y!wf*s~` zd(o5Uk2vcZ<3ZKn@l!e&CNt((g&Fe|?tLRF!(GRUnHg4{YibDJ!5A)FuP&02qS-&> z@cZK>0}u3@aC*)PsHq5$fTsFLUsLIFVMBYib~Mkl;g`;Cl+z?r3y<2lur{mkwglPG z@G{J}#ET%edf+D*--+Mj>zf*Z#cZ(z)Yj0!j)u6Fm9Iklt30mtuL4ee>O>7I!;H}r zY%Ork*wbh3{ao}`7|$rd9f1e57FkqzR>QaC_1LnyP(d>{K)){DVQuoOP*eODKJ?wr zYSaXtw^?HnDa_Db$%JTb%HAJvqxYrk$$0-0-cUfDxWno~A_AH~{0IU?)h0G;qLWXo zE<*P09KQUYvQhpK3R)J8=|df!R9Rn%-T5f!l6<=(-8ZU1303H5R2!!?14Ste0?@Ry zJJ$6#C;~>=RjwRFhoIIVb|zUL!em#fsJ-cI0(@NQL$XxhF>m9QK`#3t@Oc^V^P>q2>J``m~v*cg#c)qXWB|1VZLgH}CEe zxmvVA_S;sl-#!$h6)ZI2JHc+KEW%6hu4iR~I!=$ruj}+V??=2|nJ|$@EBal6sCNe3 z+yMZWMO23Yt>2~)-_seWU}kRj(!%>Bmnrj*4k(Rq!j-Q{)3?_^z5^UJSer~J4fcfN zV~&m8M8ZF<^^3UIN}G(G*$iBm7iKR9<<@RO>mIWdgU%zcoDu#*ek*{HJV48&7>*#- zL9((t%3UYUXsjvjIgqd9xM0MNJXqEFB1eWLd}U#VZD2XOjf)BtJB zsc};n#eu^BCj0-bF#G{%03>Hq@FKU0ALC(EyhSIZG+VL}>{f8hA{kJ801^$y<64~O zb3MK!XQG#6VgQjE^I@Pj)S3Pg2I)IZ$2M%`Ji@dCZ!o)7=eH6ezsk|UMCZ2#02km( zQ71q(Ry5nO!g)7IaZrwo_ZRhZJ;YV~GYX-7WA-Niq8P7+zr{ z!|yK0u$J@4A?=3&Lfsmw6>TzK97D>^f5v@M_=t!s?+Cn`fW$4Js-M&&Me6uk#jT*; zP~qZuJmWOb&4fVSw;djqKgQ zu=Yn0wN>CR^dNGR4p2_}2ef{DHz?;(h{5IHYu14VWS|B`tTYHTelaj4h$|@l0g>Vl z_E07j2inE*IuEAuFPws}1ZYe6*2-Lf8c;&ON89VhyjsKtBNRal-oC+f&17WTxd9>t zak%srQ?tK$I%x0o5RHhs6mH=F!{QMbkb*egxR!8qmb6!{e|{ifTnkN*b7W73cF_XOT=&)5Wt8J?jt@zZ>S;J{P8Y zr0Y*=#?AHC5!|pAe$9%5+>#st;)A6voZII+K|R8_=@LQV%du6NMZaLT3V;X`E)Q?y z{I~{QjTGD2 zI}liI3NDW7a_wX`J8GEmT9enY*`db<-RYuDXmpNERxq)jvgu}#)k1fTGvZ#sW2fFm zb}R7mfzSyal$=KJQ0SRiiLHIUgo>O7n#}!Uy!a<6_`k_RFn*keZ~#w$F9Ske8*2gF z|6y{AWkI;NXISRv7Ir%*WXJr>X`0M~s?rC#1vR??&P?%5ZO()uHiPcpKlrc!uZ8{8 z;--Pdg+L!Y0LJAoWayV&c}V+D3TvlaVSO3Rvv14>FzMuZAY6H?E8!&2W)QdTLE>Ju z?d!VZX}{OvgPdA%DLYN(Px9OCXhUesj-aBKmg=G6&~KKhjiv9>gD07L7~ykVk|2~! zhnwF2u&{Kw3iomhuic1nU(}bElI<|IA7XQW<`qv*45h80)|^5~#uzl$9mv{i!JQTn zRcNxVSVtYvR8KL%R|bw#(^a3nnLMn*4Qota9z@HzoRbp~qkl8C={d5vt#WQ41JdG% zocFf=RGD*mC{^+;=_F$|Vd8`X1a!IafU3iMfrt-!-+(sn1pZx@f$;I(Q^?Q_5Y%VT zxrn>mv>IHe$y~LJKW;qV=!i18+TFM0+pcp^NIuu9FJyU{PdJ zMsvu@#Z*u#y@%&)PLsVn=~EIgTH1(=@o#dfN)_9@ksyH*iI zQ+|XK5~~l3xCZO|s+u?S+Ay7sfn>IHQefrZKCY=dxX9ouz*nBl~ATH8=s0 z;nW4-orFtXCz`c~ho}Y1KtYWXt6l%eQ;wtMwouoiYu488|o* z!(1=51j;;hV*MLX2P_d=+D$SUa&#tV5VnGzs2w4%S5VcXye|#=pTMa5I&Z;-WqyEA zlF3Nks^=FxkmtrD>zOoXn^#4NFlK@!7zK+R_UsC??+4z8M|e9xOwd=gR{jNe!T`8L z&l_BrwjG+0($EhY(g6t3Q{ns+xML8}gDSM!721frG+O@+lw^31SCj2PEbat_cj9HZ z@VuX(2XZ0M;c>uWCV9L7#H92zo|K)GN5n?pydRiT>VY2%9H83d-|J!gS*#XNKa*(h zhl(&&B;k6raR8BYxE5^TRjFl}=v$Lt{++1dXGLw|73m_#YZ|i$e(-85J=n*Xx(uVj z$nXZh|MIoRG^<1($)tkcYHqw6}T=?OFU%Lz7 zsN6^|5Ss}y-weG-*+YdS6u+QFB z3OMKi{pgslcGBJ+2u*i8qDk`9nb(HnSzi}lP~pZL`7NUgy&6XYMPR)pr=#@!jiL~! zSOB+N1wk_hn3V+qhqHd|rxnT^Pnc^Sj6oYowW;Du!mNeVgvfSMM24e62iuB~6=B)J zo=8FNVBz~$Eq$BVIQlW-%3m2IFs+0w{Jv;5 z&}ljC8Y^fxK+v#C8!9S>PH9zxWZm-qvF6Z-AVppHy;Q0?Lqpg8n3W0QXF$(8{vID|I1^k7^J@PN;0`iejZAY1RF*o1U zceFQj6jL>J+%#?okg1LjocF)FRyq+u<2`@WdVOfg9L}hEd)LfgZ#^jq}XI7vys|IoR{NYA>lWMjrY94GzgXC8MNHa z2P_p@oW>(U`P$~iV^%jn)4u{A0elf?O3ue#1VD%T9-QatL$b026~q0k+i^Ldl9`CF zf;uXi#BZx)cLH*+^*qPb;%xWz4z+Zgs45aH7X?HaBl~E2&MyP{sB=S-4UHMFeRJ$- zZ+$ADoq8(++rJ9da*3%Gix0kg*V`JGci>t2E}P)#miIfH1b6m`&RiJ)eTr2Gpx2TT z-$!@#Z_cEG(naw8h`xca_W%v2p`akG{u2%T$jBQVkhOv%1eSXIN8QGfF+_bd&h4-N zzOe8=uonLuQ2&!B_|h{+@+K;F#X$bb|Fvz|Ke$=Tupp(Y&+y&A=1D%rFpumxK^8jE|wP!Px|R zADNR=`wi!##Oxe9o_Oze2I+UhOGBdzUNmgZ(QEIHL%u9P7DDh^nY-S8<|?=gFb*Jc zDkc&#IqWrQ9Dq2ly=WK*EYr~D2ZGt}AnH{RsLaiBn7In*f}c5O=MA(Ncf<<}WZG1I zFK5_PF3v7rBI`+){2HHp$=1b zE2w(@A>g%4oz$$t))Q5v*Jnq~fBtL)V2wbG7E$n{B_e;Y)0a2D1l-#W7d}JwZfFRyt4gE-K()A1zM16gP$gf~7862|@^3R2? z{#&*G=kD5rRTMZVMho?F2L0sV5rSMDc-rnjT0^u|hjqmt%uf3ml1~0gDhAHJe2^dzooSYn`li^IZXr)A$YK-Whr`1g;%LAaL@> z1c-MMMM8~eaOgvaqLX|Sa!YLq(ZuQfFUK^^Vazd9nuN&6)Vm8^PZ@c=F7R+qfgY%E z+|3qZkZ|bO??oU=tY7PmR_la=rS@`)5fPq4B*k%Ma9wc7eF3m@fm?(~@9gq^X3hS& zo%?6A`QN%`|9f%ylhW8&i|JcZdphD2Na7f=oF~T-vr*2E209xwJq2N!`bs2B6Hh8} z8Igx+kYp$p37M5oJnwUG?I*whl{r8L^i+{ZH|#}%nib$wTU?M8g7^tWKW~W+u}@1K z&0EDgQNPEI_90UiweBE>ZCKjLK3J*A`i1%a8nUB$;C7(E8&jhaU{YSoMwDG?o(&j# zU)9TAW>JxVzFgN`HMD?gt{#}Wti#vmdgP6s$}dPII=VjNWnWyi*1se!?H;c&tt{Np z+N|6L##0``Xbl_eQTl z9lz8!-F4O?!JTA_s2BJzarKOJtPd!4k44Pn>?kuJlr)O7wLTs_>JqE_1wwuKD4s_V z8qKEK_LvKUYB5VCnX5AwR$K{zG8R6)w}hG%bZ2P=Ao1UVSDL)p0?`(|dnoyG-9T+X z8&CZKOAxDZ48eO z{pPpv?>FC7`Bs#T%51Ev9l;D*LB7H7s zcsXVd2$SCN%aQ2uCe7RJCPA?zEH|@k1QL)L0JPaRIta)Hd1d`HWJiE7)djY9+e2k; zJFwRwUR7NnwzzFCPn9u||)luzoE-wa*6-YIMn*xMe z0-glWyo2y_L@Y>Wa0Ow>ju->cZ04(g<*ijaDpwqCYcdd zv1>`H+CiRo5k&+RYvGeOlZbv3eCFPP-SZ1O@B}7Tk>UB= zGDuz~D2Fvbw9;H5%X$6Idzc-YkT^-`TjT~H4n|b+ciZQZ3$d$QQ()S9*7EeAWUP?XA61bH@LamNYD0T>eZsr)9jBFHiyU`BPcZYhY=?&{9( zLxJ`T5&9p7#z#Oebn!~(*+4upcXC96-DU)7=qJ$If1qvRqAW|8)c!mv;(}7w!`O)LkwjCg|@m0%4~d+-RiFGHhT>@Wjiv#=jDvY@Nr|$Ew1G0r!BzY#mPm z>H{3JfqFTrhtn%i2z?7G&s4QDgFn(`$fin)M;zKfHe7L>cNGMj*Z-ZCgY!qyk+Tit zWUto}Y5-l(mX{%j^9F|MQ-3BrWlRExW{2*iR3*YH2-AuslDYy=M)9P_+bR-+ z3tl4>3_~7?dOVN&PBJy%YlL#!

Q_D28g?03A{?X+y)jYgJ|gwV@NHOa#|5;ARFR z4DisJg}X|>zzO0=pg<``J)}wzdq4K^V$eE3nG3i-={Tv1ESm!}TNN_tvG7j9LRNbF+BcUi$Q`WJy z+WR|(c!5{Yv9?#(>n~lvxrw{gvi#%gNTlBx9$#E`em7xSC(oy&%X2|)D-OmjNDbm) zOmUFT{-&Y2*6Zu<`??CpUU>PZM_>ldB@Uk3hw+IzUv{C)Eb}Z!Dtl;bj_VA#X&Arl z`ZHRfzF&s%T6nT{bLQkbUL@Jf<5LHBHs%dg<|IbaU|U}PdMtF4Lg*L&K^wYgTxy1k z!+nSS5)G2MX=>CUMe&w2nHW)G)3dV)D_HRos=61Qm)8ffE6knkz6&XnhMp}6z@;5q z!k|55g5o`I=DYDO)bErV$c|3>bygvQsI4vfOCLS`r1pC|$*I`xm340>Z{`&k@~AR_FV!M0h+9_mpVlsOw(zfIrUw)k6nqs->K-{9fh zWzM35+94%>AAaAnsgVo8C^P}32hn<4Q{E)3C~oNOIv-Aq{C!u{F49fJAl`soXE-xP z%Sx`eljp|yKSXiAX@>*7B}1QQBz&@4Jo>6L(T7XndQ~9Tf@x543%iA1W=gQ=6Q!9Q zKmqfp)rt0-+HGr)e53H8A$NSZPpFMNrdIGCnYJYH%0`fdySVjWZn4xnm_uy2_~ z7K8$VG`10$9_lwRRH=qr`=jSsEUfk#v3L$?*%xYiS)hq)zi4X6!Mw

w%o5(Dch!=2d^;P@BpyE^pzl4PYKY{Q97h3^l9E+@`;P|+sfPp zf0(7j*9edISgZ?SkU@|Dbd8Pkw5iPoKr20WyeaJycTm_-bvQnSM!)q40y>~UPt;uYC~aH zb*&Gv@8V=Em)#40ojvRY$h&;^Q5UC=Da@G!wmSt;P4gpP|L-= z+Vj{GVqFlg>b9>{w-6j&o!*zz>& z^?}IGPrR#b7a&H?!*=~kun2s19-@@Qb0!eX2RJ^`O#d$2|0g%J7QCf%Ak_DLRK=?{ zBQU*Sh_hf&9vy~*=AjW{x3=`3*+{Y6=aeABd3W+F2f1yRSH&^5&gYh`80m1{E%LQ( z*c`l&3I{ep7;`p6&WH1ztBd5oJZL@4&4s57l$a5+|^d8Rrv`^6n%}=B&8^wTY2Ats8d5Bt;-z}D-5a9wY z3=TO>3CEVfn!~@C)yiGN32~%T zBtDTd?bl^XnJK<7S==#mmN*T5QC{T`_wci;Yh^;?Im4|ccmvY?2nm62OSr_Y9+VV; zF6059Jta-NqR~AOXzF<5aUpTP6lL@2LkUdhQ-?P7SQDekGlF3jab~>UU16#%8@~}R z9f^BYN|QPb4!I2;i%KcC}NEz4|6*^rC7Yf^hkrK&c`eyR26>Ii+kXi z5|quOCd{amMRl1daxs+65|K^2WM+nHCteuMG0JpM7^o)B*jvs7-vV^_KJ(hPtTnE^nOq}1y2iC_xis*nWJT2|# zd^nr5@``k6Cf zc%(19u_m&nyop6U#5!+J1%K31*{H*$a1+x9suD~MPy7Hy+;mjro~Kp`Z~By%6}ecp zwHnSa8FaoC7Jazxm`O7d#*J5!UuP9W%ekvtttkDqCUbgekup{Nm+230OvYFLVE#3~2ff+Mj`yRZLiSllP!r;imwmO!`He)({{$mx2qI8HG@~lShy6)mo zwRFLGC9d=XC#E)INxVDDA33-?TUz%+W980PTdkW7ox~8&IgMggLp_)Zz<8>ld0oVYH{uI?t~f z`q^Jw`nzd6{ zQ4&)^$T+B@oa?DDn1%a(^eu+GMoQ#FIqDo&7$8r-^Vl7JbZT!k(b{M4Nm=NOlEm)1 zgN1d0rU!;BHG9gIHZ?w+rpQqQ?%P=Mii z!+-4$4cit+I~eufdJvZv=n+|MkY|{j*MErLCLt!#ja&^iS=hSTv65E-MJF9APcqW2 ztR{X0JczTbA)eCdiGP#%buFQ@3?4q@UzV*J&Du$-yHb+)xVYSffiXxd>A&G6)B_@iUefT3%C$o|&`=n;9(7M~KzP5Sn{h{~%QRmBDPP)y5c4^>?#3HP0 zv+krO9>%xe*qz!9jd$_;13h@B9Xp*mEhxuJ4c#~T`1p9?g7b1+tB%<>yKSNiS@aJN z4)LE|X&UY-e=yv2n?Kz3p(#)*b8@6y95K2iA*0B~QvOz`ku1|E^`_>x?(D?iECOylATJEdD`?rCnSHr=Lo_HY*_*L+%wbg4una-RI z;PnCYhy13%)8`+g?J7E9n4hMvJJaPfA(|P_9-bMHj^*ekVaVghCYsD=j-y>8vO8R6 zPLz{}#DP<4E6;m1(Axr9KbR+?+IB^`2``J>9eU@cUhUNUyVh_&%DbUW?9Mpkco_< zevAqfUMMfe5&K-Ef4Ef2Y|2Z=Jj%k(IUf@S4r(#Pf||Uq*WXxhj;bm2YKPJ+dPGfq7}HIFlh*mdd{y( z+#~lM+AcuWI4|KF^O%Wb28bEJW)faV`Z`p zXGZzqe4;zW&9Wk>$b~W-Q@fvmKi0R~q!aBEus(m6W(1 zEoI?RlTDAN%7ZIAaP05jE{Vp{)!nRu?}Bo!ujhmTj7ZOxn51EwuFo;Y1$JFY@TNc9 zmg5yP5rG?gqDG&QjwB8z8?g;IQKLUjh=^`Rcv)w|aH<5IM8X%ilp1ApjGhH@e`9#K z)`;HJAo+GiWw7o+|KrEzlHsuuSDsL3736S_SNJ&GmFXJoG-I$XWu^yRj_OmQTA@A> zm1*{3Z~9`RjEx-gfD7yDvYENJiu4#s`aa(D?3v*U6IQxaZh*se)5pss4s`L1x< z6;5PXLpVRq0iDzzmw8Jwm9oLeuS4I#1n<<`OmVlz3S8Oj+sf3Oc9Z=q3u7n)wb6W9 z+7+5Nl-_%uD~%vlne24a)*el8Ftlap-fA}wpBl?JQ|*ez7qc*rZIsiS%Bm-_gDiR_ ze@xc|hHsV7_yP)>l6~1tT!j&-)x2%53?{e*Sm1`uSUH(r=1U4m18g_9w(6@Nf|oM0 zg-w$UV?C)s&67kSc9QHEGgLDQog&CL{;BDBEr{aZRlh!)VbJenC@{=T4)RW}8@{bU zpTw{YDAm}a2&p)kPUMgs(Ycu$Ncm|SW+pzQ^1GYET3bVlI$B~Kc60R2g`!(=H;741 z^r82n!~@H!q9z`^3RY8%uGxMqx28#N9<|1J$Da0Gw>lSJ+4dr0RsPu*tG^rUvC9wt zs@H8prAha(wN;|){LA0J{%)#f%Az9a-J23ZcgLjGSPTpylFb$Puc$%Wa{1TY{ zoRYT!&;S)$Cg56N1379OfWedLzbbN0c)q|mQa(j$;fXyP$EM+I^*&TFm6Wr4k2~D z`J?(QuyQEKCj6b3_HeVpnMg9lZ_Nc8M$XL;(L%1$)5hMY{->-ycYnt4|Oc7ppR{B)Q7M2*O8BV}qdhd)I^ zC-(C-VWokMJn2?3QWVI0ZA5=Cs+*iRnyhE5Aeu)t&l2ivhS(>r+`O?QTJN1GYp`g* zWXW-fw6+abFMW8KbvsS%QnU4bMZWiPNbM5)axXA_T0eavC`8waA8qn-leYP2(91i2 z5`ZagEji@n!;1^-tGz!&^6}y4>Eh zng8GrwyxojNL0$%oNPE{=h#{0*lg&&S+i(9l^9iKbSC$5%hWwz=_gs{TiV!nnfzdn9svRQjR^{cV*p0=w`(9QUhXf?sh z(#UX>0mP_C+g97{)+_BSXXj=>I_=w_zS($GJqMWPx^8 zhu@n>svEwN!+*Y9K*zdA6h=tiW9c&i!xzo49+fT}zsjfyxAKZndSEb5z;EkKe_S$b z<7h6~Utaduhu8F&{Uu~Yh#$V#cXF9|<&?r$m#n&Z-d+4Gyq-wi2&o>@Or}qi=zE>- z-|y%;`CY41c#$uW;u^9u>c^c)?i)31Fv&sLJLzo`&iuCSbO1U!Uj_)eD*1I%TcBzx zoym6jejS^gb1;dcqYnF72WXq1_-rg;@S^X}f4p(nM4G5nE=4eHzpeb&|$L+I~`$0DMm^64U5;iJ5-nXzfCBEM!ud-qH#tFDWjgV zDg=gidWLw4OZoVlK))%QR>w+*kY;?T(5?Kj)UDMeEZfD2T{05V>W0S*7i0Q+Ydbr6 z11YY~&Q_~3DUTnA1PospYDs^V-L=~kx&9OUKrdeZ7q(+IOP{iDVD+w!nrn(~ z<#i5aiQ}&s#WB+<#?mWtd}~R6L-}qF+*&|UJ;M)llV0Xz>Ms6C@|1Iaffl>7e@5Da zifL_Wi&~|q8^ihzn6ax7{Xy3#d`~=2ZJk`BoD;uQ@UN&Ebt->6!Fyb-?%_}F#)-~z z^ixULc6V)UlN%A*7b7-;M7qt>XPLuo0;gEr$^Zm_a{ZYG;3A>+bJGJp;h-xFav;Bd z)emaK1*&Zc!32Et zSpXgxT12bX!(X95)K|}|_jK&3AKrCt&ZU9>{65|R^rzU|rE@wdJ9^GX0LGN2Q3!U> z-F+Qf0fab;P|N3;mGc8dn6skDYeG~h_F0%sH~o7;lR0jgX) z_a}c*fI{FO`J+ztMEZT{hmXOZK@{l-0c zli<(XiI3>G9E@@|X_2d*peZMbhFWw|&vu^L;XpGu>N(pM zMN8a-vKO8nq5|f~#&+xA8VGxI=9yl!DDtG`s@pkk=CvZVK$Xc|Yd7eat3YSh&n`8* zo-}#Crw~EiqTBPR z6Ejn13sQgbpPEs$j(oecb7EqW(4Yco8GSl9Sti-@9a@<>@kp@X(t2gaTGLCM4dE-c zLs}m}U--8`Lzb=X*>84TJ)N1vT zPcP652Hh2BjLqG=Z%{K5HMAI-Df{Hhg9#baM=)eDd->(l5O@5eX17zJT1O@ZjhG!g z3NB~+aoD|J^0^!4E&#hqE8#Q@a2Vr(3DwRz5r(f!wlJ#2ak&%TS}iBLe!Kp?6vS~Wy!19?pkv^ zWA_UM|7&_!Lj&Ti2PeKVh6c}sOP1(wvzXGHy|drhMbRdurF!n%0gHuI-HDA5^^Yps zYvEUsi@l3{?(xZqc2!Tekn7`Sam`Z$Vr2gF@j^``y#-QbeF^MKeS%!_{yhZq5j&_V zkf+D*P_x|R?G_0peAB>+t_+Vpx2^-9JcrRh6>4Iuq)%UBP3f5j{qfvlPlx$4i)Ss> z&%gWRG>g&2P%)U&!tfiH=SWU1GbrA{G;CM{I;SpKR#c_xG>g)}Oc!M16{54Z(Cw(R zqOj9iHJV0#F%L?4{t2pr^N9+KJteC?;&^aR>eJXx&)8WDT?~IN-WEdGGKT@dC-X%U zX}UT>_7Z=KIm5eg9Y57C$eQZzpW;N6HkM#!h7*P-nKMx=bG3lY0Y?J-YDzPsMn1e3 zXl9BFmWDnq43FJ1H!Q_dq4T#Y$N3uz*;4MCS5UyOr>#`x6{(-J8t=rTMs+fiAyWzN z7S|qHBL4Fzb}L^E9&cZ)FnCHfQ#k?T{IsN}6y4Ram!@Vv14 z_hzs!>l}5%r-mjoZJKig^=79Vw2}kyTXyD0hGtC4`bF8So0(4r+wRMZbZsRG!G+nf zv^~|NCDFpMciy)EP7OPj%u?(#`FtX6H}2`U{5@sCl5J(N;vU^6UTM~5muiVCBd9ug*V;Vdy#Z&H>~cX^ zbz1=#Oi+_gEzS*-Bs2@koM?S}m31rV3@40HC|qzXzrA~9y<4+oXH8ug`JGlxR7u#hsg-YLunAL8VhPJc?_{@fM3(|9lxVH3Y9UMsUV z_@}Abfi1Oja=ak=-9|4{vn2=Zu3imxRsQ*yhC)}slIU$e)u#@|5f|z_p)8Raz*BeMsxn3d`$9l#t-a<33Z-}H7vYlU)2qT{lRpTe7 zvL?i9?psQi3Kp0#{rjbNzON5z6wIFk;YYwGH>m&okq5DfwxZ_Y4^G_i)s?hWvu5*L z5KQZ-S+1E{rvZ$>|3YhPT5a@pFSn9j0V><0OK07{H=nKx&@ZYPit{0-`r#4GELbkS zy%8dpiHF}WcCiJv+ge?+BtW!GvdmMmQe{qKfKzOS7FpXWDM2yU!>>5HO}fCy92~{x z0oxCCADGosutou?#E3a+{8#6j+fa!SDm24@pR96N74G; zAKy0lbX)dD0S)kD{PnS#v77y)>>_Z9ikp*hyq1)XL-l4ZdXrwRZhIIjMjbV1@74sH zNz?_7I=_^5Sa)Vmmp`8v6w`Nfr35`2zd3nhOe=G$S8Bkbt;(DlMzwwKYEu(=C5&v^ zT^7cchQ&-3MKrQ&{C(?$kAzuTQ!y+TNu2PH_FiF~<>;t@U0XMba?EFXX5=!>gl5AL zp>cm3d`L*hOarF{aM-2cc_-kfAi8yGi;rf|hNPpNoQJLf8Ig8x_c!D_^x%H<88UnezO_c^Z&`rk6X=%trDiUSUyV;y>&MhXfPc$ zJiaS!iu~4njT$+WA?=g=Hs+ht?s+(gNAK-P5VRUe&rs6V$2&TZbiWof1e6ofj980s zmSg+yrL--A*onZ5Fk7>o^wAd6vjs;*8wqCETL5b8`iiy4F~2<~Xo-Mc5hgo1Q(-$m z99SM)X#aCTu)q1rfm+;EQtM6>aWcNi+u1d~q<73zH_E=86DFEi?PbOk-+8?GeOXur z&{Hn@v?Y^XkyGY6wByVZq8&8v8DFMUrrp4Kfa;D2s2{2cWF+5bP-Z@4h>P;tA6vwm zdDkb4--g!}I_A@Ax8UtZGlo-wtbt0*UmloulV1^OO7kb@=FkYE#L4&5y_Uz4efZLv zz+c2+@qcJ$up()_MR|q-=|)D-)J>l=GX^YP;Ne?BpMz%k8G6!vW~{m`HBpZ4Gx4-7 zO+iiJ4MVL~?M0S&YcUo)y}MSBtU${|IUwO?*Y97US9YbCXtnCqsaKtiwD@+?;-N)* z@7SsY{(?(cwi(`(o`k8uc+<14ol!T_OlW+|K(dSedt9VvqF<{HEv<VskCqdjs<`yHG5(^8I7XKnp|K-g5Hqw|Kp{ z`|h`b^0c<~C65kmV+Ly3SvXX)fN3hS5Q?$e@yWv};^$jvYIHOAUn***r)Uw5?u3_7 zwilSC6&A#A-ew+o5%o%MlCKp|Ur{l&)(jI*k9;3dZvR3o^A(o*5p;m%XKtqGRLNHFmi4Fm%-&WFG{{o0=|z{ z&BWt;9jj)_K*D6suU6h!Chu#gR=oCBrjHiaSQlzx#z91w-Wn`)u~+e}C%I{|C>} Btk3`e diff --git a/misc/2_step.png b/misc/2_step.png deleted file mode 100644 index eea748f6801e300762599b33fcc9fdfd5893a5a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61502 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 diff --git a/misc/3_step.png b/misc/3_step.png deleted file mode 100644 index 419adc06f319ba9153c51366bbd50b79acaeeb85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88689 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 diff --git a/misc/4_step.png b/misc/4_step.png deleted file mode 100644 index a36a2b62fd5c62bf0ca51c824723fec965db42a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15669 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 diff --git a/pairent_backend/Dockerfile b/pairent_backend/Dockerfile new file mode 100644 index 0000000..49f3e5f --- /dev/null +++ b/pairent_backend/Dockerfile @@ -0,0 +1,17 @@ +FROM python:alpine + +RUN apk add --no-cache \ + gcc musl-dev \ + mysql mariadb-connector-c-dev && \ + mkdir /opt/code + +COPY requirements.txt /opt/code/requirements.txt +WORKDIR /opt/code + +RUN pip install -r requirements.txt + +USER nobody + +COPY . /opt/code + +CMD [ "/bin/sh", "docker-entry.sh" ] \ No newline at end of file diff --git a/pairent_backend/docker-entry.sh b/pairent_backend/docker-entry.sh new file mode 100644 index 0000000..22efc3c --- /dev/null +++ b/pairent_backend/docker-entry.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +PYTHON='/usr/bin/env python3' + +$PYTHON manage.py migrate +$PYTHON manage.py runserver 0.0.0.0:80 \ No newline at end of file diff --git a/pairent_backend/pairent_backend/settings.py b/pairent_backend/pairent_backend/settings.py index c9eef6b..9caabb4 100644 --- a/pairent_backend/pairent_backend/settings.py +++ b/pairent_backend/pairent_backend/settings.py @@ -10,6 +10,7 @@ For the full list of settings and their values, see https://docs.djangoproject.com/en/4.1/ref/settings/ """ +from dotenv import dotenv_values from pathlib import Path # Build paths inside the project like this: BASE_DIR / 'subdir'. @@ -19,11 +20,12 @@ BASE_DIR = Path(__file__).resolve().parent.parent # Quick-start development settings - unsuitable for production # See https://docs.djangoproject.com/en/4.1/howto/deployment/checklist/ -# SECURITY WARNING: keep the secret key used in production secret! -SECRET_KEY = 'django-insecure-=(7b+4ka=5jak-mokuh4#-6_14f58#^0kjwqsz7wyon$4i@sel' +DOTENV = dotenv_values(BASE_DIR / '..' / '.env'); +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = DOTENV['DJANGO_KEY'] # SECURITY WARNING: don't run with debug turned on in production! -DEBUG = True +DEBUG = DOTENV['APP_DEBUG'] == 'true' ALLOWED_HOSTS = ['*'] diff --git a/pairent_backend/pairent_backend/templates/index.html b/pairent_backend/pairent_backend/templates/index.html new file mode 100644 index 0000000..7b2ba46 --- /dev/null +++ b/pairent_backend/pairent_backend/templates/index.html @@ -0,0 +1,20 @@ + + + + + Pairent + + + + + + + + +
+ + + diff --git a/pairent_backend/pairent_backend/urls.py b/pairent_backend/pairent_backend/urls.py index 3cabe48..96340ac 100644 --- a/pairent_backend/pairent_backend/urls.py +++ b/pairent_backend/pairent_backend/urls.py @@ -13,10 +13,15 @@ Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ +from django.template import loader from django.contrib import admin from django.urls import path, include +def root_url(req): + return loader.get_template('index.html').render() + urlpatterns = [ path('admin/', admin.site.urls), path('api/', include('pairent_app.urls')), + path('', root_url) ] diff --git a/pairent_backend/requirements.txt b/pairent_backend/requirements.txt index c8a891d..bb650f4 100644 --- a/pairent_backend/requirements.txt +++ b/pairent_backend/requirements.txt @@ -4,4 +4,5 @@ djangorestframework django-cors-headers Pillow requests -python-ipware \ No newline at end of file +python-ipware +python-dotenv \ No newline at end of file diff --git a/pairent_frontend_react/vite.config.js b/pairent_frontend_react/vite.config.js index 1982af0..dc49f83 100644 --- a/pairent_frontend_react/vite.config.js +++ b/pairent_frontend_react/vite.config.js @@ -5,5 +5,6 @@ export default { plugins: [ react() ], + publicDir: '/static/dist' } \ No newline at end of file diff --git a/static/assets/index-b130f2c5.css b/static/assets/index-b130f2c5.css new file mode 100644 index 0000000..6042b36 --- /dev/null +++ b/static/assets/index-b130f2c5.css @@ -0,0 +1,6 @@ +.viewedElem{width:24%;padding-bottom:1%;background:#fff;border:2px solid #ccc;border-radius:20px}.viewedElem img{width:100%;margin-bottom:3%}.viewedElem h3,.viewedElem p{margin-left:5%}.viewedElem h3{font-weight:600;font-size:24px;color:#222}.viewedElem p{font-weight:500;font-size:16px;color:#222}.viewedSection{margin-top:46px}.viewedTittle{display:flex;justify-content:space-between}.viewedTittle h2{font-weight:700;font-size:20px;color:#222;padding-left:0}.viewedTittle span{margin-left:30px;font-size:16px;color:#a9a9a9}.viewedBtnSection{display:flex}.btnViewed{width:208px;height:32px;margin-top:15px;margin-right:22px;background:#fff;border:1px solid #CCCCCC;border-radius:12px;font-size:14px;font-weight:500;color:#ccc}.viewedBtn{display:flex;align-items:center}.viewedBlock{display:flex;justify-content:space-between;margin-top:8px}h2{margin-top:14px;margin-bottom:21px;padding-left:2%;font-weight:600;font-size:24px;color:#222}.separationLine{margin-top:22px;margin-left:34%;border:1px solid #ccc}.awssld__box,.awssld__content,.awssld__container figure{display:block;position:absolute;width:100%;height:100%;top:0;left:0}.awssld__bullets button,.awssld__controls button{outline-color:0;outline-style:none;outline-width:0}.awssld__startUp>div{height:100%;width:100%;display:flex;align-items:center;justify-content:center}.awssld__content{background-color:var(--content-background-color);overflow:hidden;display:flex;align-items:center;justify-content:center}.awssld__content>img,.awssld__content>video{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.awssld__controls button{display:flex;align-items:center;justify-content:center;width:var(--control-button-width);height:var(--control-button-height);position:absolute;z-index:10;top:calc(50% - .5 * var(--control-button-height));border:none;background-color:var(--control-button-background);color:#fff;cursor:pointer}.awssld__controls--active .awssld__controls__arrow-left{opacity:var(--control-button-opacity-hover);transform:translate3d(-100%,0,0)}.awssld__controls--active .awssld__controls__arrow-right{opacity:var(--control-button-opacity-hover);transform:translate3d(100%,0,0)}.awssld__bar{display:block;width:100%;height:var(--loader-bar-height);background-color:var(--loader-bar-color);position:absolute;top:0;left:0;z-index:101;transition:transform 3s var(--transition-bezier);transform:translate3d(-100%,0,0)}.awssld__bar--active{transform:translate3d(-20%,0,0)}.awssld__bar--end{transition-duration:.3s;transform:translateZ(0)}.awssld--animated-mobile{will-change:transform;transition:transform 325ms cubic-bezier(.15,.65,.1,1)}.awssld--active{visibility:visible;z-index:2;transform:translateZ(0)}.awssld--moveRight,.awssld--moveLeft{backface-visibility:hidden}.awssld--moveRight{animation:slideFromRight var(--slider-transition-duration) both var(--transition-bezier)}.awssld--moveLeft{animation:slideFromLeft var(--slider-transition-duration) both var(--transition-bezier)}.awssld--exit.awssld--moveLeft{animation:slideToLeft var(--slider-transition-duration) both var(--transition-bezier)}.awssld--exit.awssld--moveRight{animation:slideToRight var(--slider-transition-duration) both var(--transition-bezier)}.awssld__bullets{position:absolute;bottom:-40px;width:100%;display:flex;align-items:center;justify-content:center}.awssld__bullets button{padding:0;display:block;width:16px;height:16px;margin:5px;border-radius:50%;background:var(--control-bullet-color);text-indent:-9999px;overflow:hidden;cursor:pointer;border:none;transition:transform .225s cubic-bezier(.8,1.35,.75,1.45),background-color .175s ease-out}.awssld__bullets button:hover,.awssld__bullets .awssld__bullets--loading{transform:scale(1.2)}.awssld__bullets .awssld__bullets--active{transform:scale(1.5);background:var(--control-bullet-active-color)}.awssld__bullets .awssld__bullets--active:hover{transform:scale(1.5)}.awssld__controls__arrow-left,.awssld__controls__arrow-right{width:100%;height:var(--organic-arrow-height);position:relative;display:block;transition:transform .2s ease-out .125s,opacity .2s ease-out}.awssld__controls__arrow-left:before,.awssld__controls__arrow-left:after,.awssld__controls__arrow-right:before,.awssld__controls__arrow-right:after{content:" ";position:absolute;right:calc(50% - (.7071 * (var(--organic-arrow-height) + var(--organic-arrow-thickness))) / 2);height:100%;border-radius:var(--organic-arrow-border-radius);width:var(--organic-arrow-thickness);background-color:var(--organic-arrow-color);transition:transform .15s ease-out,background-color .15s ease-out}.awssld__controls__arrow-left:before,.awssld__controls__arrow-right:before{transform-origin:100% 100% 0;top:-50%;transform:rotate(-45deg)}.awssld__controls__arrow-left:after,.awssld__controls__arrow-right:after{transform-origin:100% 0% 0;top:50%;transform:rotate(45deg)}.awssld__controls__arrow-right--active{transform:translate3d(100%,0,0)}.awssld__controls__arrow-right--active:after{transform:rotate(90deg) translate3d(50%,0,0)!important}.awssld__controls__arrow-right--active:before{transform:rotate(-90deg) translate3d(50%,0,0)!important}.awssld__controls__arrow-left:before{transform-origin:0 100% 0;top:-50%;transform:rotate(45deg)}.awssld__controls__arrow-left:after{transform-origin:0 0 0;top:50%;transform:rotate(-45deg)}.awssld__controls__arrow-left--active{transform:translate3d(-100%,0,0)}.awssld__controls__arrow-left--active:after{transform:rotate(-90deg) translate3d(-50%,0,0)!important}.awssld__controls__arrow-left--active:before{transform:rotate(90deg) translate3d(-50%,0,0)!important}.awssld__controls button:hover .awssld__controls__arrow-left:before{opacity:1;transform:rotate(30deg)}.awssld__controls button:hover .awssld__controls__arrow-left:after{opacity:1;transform:rotate(-30deg)}.awssld__controls button:hover .awssld__controls__arrow-right:before{opacity:1;transform:rotate(-30deg)}.awssld__controls button:hover .awssld__controls__arrow-right:after{opacity:1;transform:rotate(30deg)}.awssld__timer{--timer-delay: 2s;--timer-release: .2s;--timer-height: 4px;--timer-background-color: rgba(0, 0, 0, .15);width:100%;height:var(--timer-height);background-color:var(--timer-background-color);position:absolute;top:0;left:0;z-index:100;transform:translate(-100%)}.awssld__timer--animated{will-change:transform;transition:transform var(--timer-delay) linear}.awssld__timer--run{transform:translate(0)}.awssld__timer--fast{transition:transform calc(var(--timer-release) / 2) linear;transform:translate(-.00001px)}.awssld__timer--end{transform:translate(-.0001px);transition:transform var(--timer-release) linear}@keyframes slideFromLeft{0%{transform:translate3d(-100%,0,0)}to{transform:translateZ(0)}}@keyframes slideFromRight{0%{transform:translate3d(100%,0,0)}to{transform:translateZ(0)}}@keyframes slideToLeft{0%{transform:translateZ(0)}to{transform:translate3d(-100%,0,0)}}@keyframes slideToRight{0%{transform:translateZ(0)}to{transform:translate3d(100%,0,0)}}/*! +* Bootstrap Grid v5.2.3 (https://getbootstrap.com/) +* Copyright 2011-2022 The Bootstrap Authors +* Copyright 2011-2022 Twitter, Inc. +* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) +*/:root{--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-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--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-bg:#fff;--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-2xl:2rem;--bs-border-radius-pill:50rem;--bs-link-color:#0d6efd;--bs-link-hover-color:#0a58ca;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--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,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}.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>*{box-sizing:border-box;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.3333333333%}.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.6666666667%}.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.3333333333%}.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.6666666667%}.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.3333333333%}.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.6666666667%}.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.3333333333%}.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.6666666667%}.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.3333333333%}.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.6666666667%}.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.3333333333%}.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.6666666667%}.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}}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display: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}.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}@media (min-width:576px){.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-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}}@media (min-width:768px){.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-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}}@media (min-width:992px){.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-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}}@media (min-width:1200px){.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-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}}@media (min-width:1400px){.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-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}}@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-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}}.awssld__container figure,.awssld__content,.awssld__box{display:block;position:absolute;width:100%;height:100%;top:0;left:0}.awssld__controls button,.awssld__bullets button{outline-color:0;outline-style:none;outline-width:0}.awssld{--organic-arrow-thickness: 4px;--organic-arrow-height: 40px;--slider-height-percentage: 60%;--loader-bar-color: #851515;--loader-bar-height: 6px;--control-button-width: 10%;--control-button-height: 25%;--control-button-opacity: .5;--control-button-hover-opacity: .75;--control-button-background: transparent;--transition-bezier: cubic-bezier(.5, .075, .25, .95);--slider-transition-duration: 575ms;--organic-arrow-color: #6a6a6a;--organic-arrow-border-radius: 0;--control-bullet-color: #6a6a6a;--control-bullet-active-color: #6a6a6a;--content-background-color: #2f2f2f}.awssld{display:block;position:relative;width:100%;max-width:100%}.awssld__wrapper{display:block;overflow:hidden;position:relative;height:100%;width:100%}.awssld__container{display:block;width:100%;height:0;padding-bottom:var(--slider-height-percentage)}@media all and (max-width: 500px){.awssld__container{padding-bottom:calc(var(--slider-height-percentage) * 1.25)}}.awssld__startUp{background-color:red;height:100%;width:100%}.awssld__startUp>div{height:100%;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.awssld__startUp img{width:35%;height:auto}.awssld__content{background-color:var(--content-background-color);overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.awssld__content>img,.awssld__content>video{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.awssld__controls button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:var(--control-button-width);height:var(--control-button-height);position:absolute;z-index:10;top:calc(50% - (.5 * var(--control-button-height)));border:none;background-color:var(--control-button-background);color:#fff;cursor:pointer}.awssld__controls button .awssld__controls__arrow-left,.awssld__controls button .awssld__controls__arrow-right{opacity:var(--control-button-opacity)}.awssld__controls button:hover .awssld__controls__arrow-left,.awssld__controls button:hover .awssld__controls__arrow-right{opacity:var(--control-button-opacity-hover)}.awssld__controls--active .awssld__controls__arrow-left{opacity:var(--control-button-opacity-hover);-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.awssld__controls--active .awssld__controls__arrow-right{opacity:var(--control-button-opacity-hover);-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.awssld__controls--hidden{display:none}@media all and (max-width: 520px){.awssld__controls{visibility:hidden}}.awssld__bar{display:block;width:100%;height:var(--loader-bar-height);background-color:var(--loader-bar-color);position:absolute;top:0;left:0;z-index:101;-webkit-transition:-webkit-transform 3s var(--transition-bezier);transition:-webkit-transform 3s var(--transition-bezier);transition:transform 3s var(--transition-bezier);transition:transform 3s var(--transition-bezier),-webkit-transform 3s var(--transition-bezier);-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.awssld__bar--active{-webkit-transform:translate3d(-20%,0,0);transform:translate3d(-20%,0,0)}.awssld__bar--end{-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}.awssld__next{right:0}.awssld__prev{left:0}.awssld__box{z-index:1;visibility:hidden}.awssld--animated{will-change:transform;visibility:visible}.awssld--animated-mobile{will-change:transform;-webkit-transition:-webkit-transform 325ms cubic-bezier(.15,.65,.1,1);transition:-webkit-transform 325ms cubic-bezier(.15,.65,.1,1);transition:transform 325ms cubic-bezier(.15,.65,.1,1);transition:transform 325ms cubic-bezier(.15,.65,.1,1),-webkit-transform 325ms cubic-bezier(.15,.65,.1,1)}.awssld--active{visibility:visible;z-index:2;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}.awssld--moveRight,.awssld--moveLeft{-webkit-backface-visibility:hidden;backface-visibility:hidden}.awssld--moveRight{-webkit-animation:slideFromRight var(--slider-transition-duration) both var(--transition-bezier);animation:slideFromRight var(--slider-transition-duration) both var(--transition-bezier)}.awssld--moveLeft{-webkit-animation:slideFromLeft var(--slider-transition-duration) both var(--transition-bezier);animation:slideFromLeft var(--slider-transition-duration) both var(--transition-bezier)}.awssld--exit{z-index:0}.awssld--exit.awssld--moveLeft{-webkit-animation:slideToLeft var(--slider-transition-duration) both var(--transition-bezier);animation:slideToLeft var(--slider-transition-duration) both var(--transition-bezier)}.awssld--exit.awssld--moveRight{-webkit-animation:slideToRight var(--slider-transition-duration) both var(--transition-bezier);animation:slideToRight var(--slider-transition-duration) both var(--transition-bezier)}.awssld--first .awssld__prev,.awssld--last .awssld__next{visibility:hidden}.awssld--fill-parent{position:absolute!important;width:100%!important;height:100%!important;top:0;left:0}.awssld--fill-parent .awssld__container{height:100%;padding:0}.awssld__bullets{position:absolute;bottom:-40px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.awssld__bullets button{padding:0;display:block;width:16px;height:16px;margin:5px;border-radius:50%;background:var(--control-bullet-color);text-indent:-9999px;overflow:hidden;cursor:pointer;border:none;-webkit-transition:background-color .175s ease-out,-webkit-transform .225s cubic-bezier(.8,1.35,.75,1.45);transition:background-color .175s ease-out,-webkit-transform .225s cubic-bezier(.8,1.35,.75,1.45);transition:transform .225s cubic-bezier(.8,1.35,.75,1.45),background-color .175s ease-out;transition:transform .225s cubic-bezier(.8,1.35,.75,1.45),background-color .175s ease-out,-webkit-transform .225s cubic-bezier(.8,1.35,.75,1.45)}.awssld__bullets button:hover,.awssld__bullets .awssld__bullets--loading{-webkit-transform:scale(1.2);transform:scale(1.2)}.awssld__bullets .awssld__bullets--active{-webkit-transform:scale(1.5);transform:scale(1.5);background:var(--control-bullet-active-color)}.awssld__bullets .awssld__bullets--active:hover{-webkit-transform:scale(1.5);transform:scale(1.5)}.awssld__controls__arrow-left,.awssld__controls__arrow-right{width:100%;height:var(--organic-arrow-height);position:relative;display:block;-webkit-transition:opacity .2s ease-out,-webkit-transform .2s ease-out .125s;transition:opacity .2s ease-out,-webkit-transform .2s ease-out .125s;transition:transform .2s ease-out .125s,opacity .2s ease-out;transition:transform .2s ease-out .125s,opacity .2s ease-out,-webkit-transform .2s ease-out .125s}.awssld__controls__arrow-left:before,.awssld__controls__arrow-left:after,.awssld__controls__arrow-right:before,.awssld__controls__arrow-right:after{content:" ";position:absolute;right:calc(50% - (.7071 * (var(--organic-arrow-height) + var(--organic-arrow-thickness))) / 2);height:100%;border-radius:var(--organic-arrow-border-radius);width:var(--organic-arrow-thickness);background-color:var(--organic-arrow-color);-webkit-transition:background-color .15s ease-out,-webkit-transform .15s ease-out;transition:background-color .15s ease-out,-webkit-transform .15s ease-out;transition:transform .15s ease-out,background-color .15s ease-out;transition:transform .15s ease-out,background-color .15s ease-out,-webkit-transform .15s ease-out}.awssld__controls__arrow-left:before,.awssld__controls__arrow-right:before{-webkit-transform-origin:100% 100% 0;transform-origin:100% 100% 0;top:-50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.awssld__controls__arrow-left:after,.awssld__controls__arrow-right:after{-webkit-transform-origin:100% 0% 0;transform-origin:100% 0% 0;top:50%;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.awssld__controls__arrow-right--active{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.awssld__controls__arrow-right--active:after{-webkit-transform:rotate(90deg) translate3d(50%,0,0)!important;transform:rotate(90deg) translate3d(50%,0,0)!important}.awssld__controls__arrow-right--active:before{-webkit-transform:rotate(-90deg) translate3d(50%,0,0)!important;transform:rotate(-90deg) translate3d(50%,0,0)!important}.awssld__controls__arrow-left:before,.awssld__controls__arrow-left:after{right:auto;left:calc(50% - (.7071 * (var(--organic-arrow-height) + var(--organic-arrow-thickness))) / 2)}.awssld__controls__arrow-left:before{-webkit-transform-origin:0 100% 0;transform-origin:0 100% 0;top:-50%;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.awssld__controls__arrow-left:after{-webkit-transform-origin:0 0 0;transform-origin:0 0 0;top:50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.awssld__controls__arrow-left--active{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.awssld__controls__arrow-left--active:after{-webkit-transform:rotate(-90deg) translate3d(-50%,0,0)!important;transform:rotate(-90deg) translate3d(-50%,0,0)!important}.awssld__controls__arrow-left--active:before{-webkit-transform:rotate(90deg) translate3d(-50%,0,0)!important;transform:rotate(90deg) translate3d(-50%,0,0)!important}.awssld__controls button:hover .awssld__controls__arrow-left:before{opacity:1;-webkit-transform:rotate(30deg);transform:rotate(30deg)}.awssld__controls button:hover .awssld__controls__arrow-left:after{opacity:1;-webkit-transform:rotate(-30deg);transform:rotate(-30deg)}.awssld__controls button:hover .awssld__controls__arrow-right:before{opacity:1;-webkit-transform:rotate(-30deg);transform:rotate(-30deg)}.awssld__controls button:hover .awssld__controls__arrow-right:after{opacity:1;-webkit-transform:rotate(30deg);transform:rotate(30deg)}.awssld__timer{--timer-delay: 2s;--timer-release: .2s;--timer-height: 4px;--timer-background-color: rgba(0, 0, 0, .15);width:100%;height:var(--timer-height);background-color:var(--timer-background-color);position:absolute;top:0;left:0;z-index:100;-webkit-transform:translateX(-100%);transform:translate(-100%)}.awssld__timer--animated{will-change:transform;-webkit-transition:-webkit-transform var(--timer-delay) linear;transition:-webkit-transform var(--timer-delay) linear;transition:transform var(--timer-delay) linear;transition:transform var(--timer-delay) linear,-webkit-transform var(--timer-delay) linear}.awssld__timer--run{-webkit-transform:translateX(0);transform:translate(0)}.awssld__timer--fast{-webkit-transition:-webkit-transform calc(var(--timer-release) / 2) linear;transition:-webkit-transform calc(var(--timer-release) / 2) linear;transition:transform calc(var(--timer-release) / 2) linear;transition:transform calc(var(--timer-release) / 2) linear,-webkit-transform calc(var(--timer-release) / 2) linear;-webkit-transform:translateX(-.00001px);transform:translate(-.00001px)}.awssld__timer--end{-webkit-transform:translateX(-.0001px);transform:translate(-.0001px);-webkit-transition:-webkit-transform var(--timer-release) linear;transition:-webkit-transform var(--timer-release) linear;transition:transform var(--timer-release) linear;transition:transform var(--timer-release) linear,-webkit-transform var(--timer-release) linear}.awssld__timer--hidden{display:none}@-webkit-keyframes slideFromLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideFromLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@-webkit-keyframes slideFromRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideFromRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@-webkit-keyframes slideToLeft{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes slideToLeft{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes slideToRight{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes slideToRight{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.awssld{--loader-bar-color: #0077aa !important}.question{padding-top:4px;position:relative;display:flex;flex-direction:column;align-items:center;margin:0 auto 34.5px;width:799px;min-height:151px;border-bottom:1px solid #cccccc}.question__account{color:#ccc;position:absolute;top:0px;left:0;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:2px solid #cccccc;border-radius:100px}.question__answers input{width:16px;height:16px}.question__title{margin-bottom:80px;text-align:center;width:638px;font-size:16px;margin-right:0}.question__answers{display:flex;margin-bottom:29.5px}.question__answers p,span{font-size:14px}.question__answer{position:relative}.question__answer span{position:absolute;top:-17px;left:3.5px}.question__answers input,p{margin-right:32px}.question__answers *:last-child{margin-right:0}.form{position:relative}.btn-box{display:flex;flex-direction:column;align-items:center}.btn-box__form-btn{background-color:#007eff;width:192px;height:33px;border-radius:12px;font-size:14px;color:#fff;font-weight:500;margin-bottom:10px}.btn-box__text{color:red;padding-left:37.5px}.header{display:flex;padding-left:40px;padding-top:14px;align-items:center;margin-bottom:55px}.header__title{font-size:20px}.header__btn{color:#bababa;font-size:15px;width:180px;height:36px;background-color:#fff;border:1px solid #cccccc;border-radius:12px;margin-right:13px}.footerHouses{margin:5% 0 0 5%}.footerBlock{width:100%;height:250px;margin-top:-.5%;background-color:#d9d9d9}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,sans-serif;color:#000}button{cursor:pointer;border:0}table{border-collapse:collapse}a{text-decoration:none}main{margin:0 5%}.horizontalLine{width:100%;height:1px;background-color:#ccc}.btnSection{display:flex;margin-top:24px}.allBtn{width:208px;height:32px;background-color:#fff;border:1px solid #ccc;border-radius:12px;font-weight:500;font-size:14px}.choiceBtn{display:flex;margin-left:auto;margin-right:auto}.btnPrevious,.btnNext{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:20px;background:#fff;box-shadow:0 0 12px #00000040}.btnNext{margin-left:10px}.pageBtn{width:36px;height:36px;margin-left:10px;background:#D9D9D9;border-radius:12px;font-weight:700;font-size:16px}.activePage{border:2px solid #175FA9;background-color:#fff;color:#175fa9} diff --git a/static/assets/index-dc786e36.js b/static/assets/index-dc786e36.js new file mode 100644 index 0000000..fcc875b --- /dev/null +++ b/static/assets/index-dc786e36.js @@ -0,0 +1,1150 @@ +var Vm=Object.defineProperty;var Km=(e,t,n)=>t in e?Vm(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Ie=(e,t,n)=>(Km(e,typeof t!="symbol"?t+"":t,n),n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const s of o.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(i){if(i.ep)return;i.ep=!0;const o=n(i);fetch(i.href,o)}})();var Jt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Pn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Qm(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){if(this instanceof r){var i=[null];i.push.apply(i,arguments);var o=Function.bind.apply(t,i);return new o}return t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}),n}var eh={exports:{}},Ns={},th={exports:{}},ee={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Gi=Symbol.for("react.element"),Jm=Symbol.for("react.portal"),Gm=Symbol.for("react.fragment"),Ym=Symbol.for("react.strict_mode"),Xm=Symbol.for("react.profiler"),Zm=Symbol.for("react.provider"),e0=Symbol.for("react.context"),t0=Symbol.for("react.forward_ref"),n0=Symbol.for("react.suspense"),r0=Symbol.for("react.memo"),i0=Symbol.for("react.lazy"),Wu=Symbol.iterator;function o0(e){return e===null||typeof e!="object"?null:(e=Wu&&e[Wu]||e["@@iterator"],typeof e=="function"?e:null)}var nh={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},rh=Object.assign,ih={};function Wr(e,t,n){this.props=e,this.context=t,this.refs=ih,this.updater=n||nh}Wr.prototype.isReactComponent={};Wr.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Wr.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function oh(){}oh.prototype=Wr.prototype;function kc(e,t,n){this.props=e,this.context=t,this.refs=ih,this.updater=n||nh}var Ec=kc.prototype=new oh;Ec.constructor=kc;rh(Ec,Wr.prototype);Ec.isPureReactComponent=!0;var qu=Array.isArray,sh=Object.prototype.hasOwnProperty,Cc={current:null},ah={key:!0,ref:!0,__self:!0,__source:!0};function lh(e,t,n){var r,i={},o=null,s=null;if(t!=null)for(r in t.ref!==void 0&&(s=t.ref),t.key!==void 0&&(o=""+t.key),t)sh.call(t,r)&&!ah.hasOwnProperty(r)&&(i[r]=t[r]);var a=arguments.length-2;if(a===1)i.children=n;else if(1>>1,oe=B[ie];if(0>>1;iei(Ee,W))qei(ot,Ee)?(B[ie]=ot,B[qe]=W,ie=qe):(B[ie]=Ee,B[ue]=W,ie=ue);else if(qei(ot,W))B[ie]=ot,B[qe]=W,ie=qe;else break e}}return V}function i(B,V){var W=B.sortIndex-V.sortIndex;return W!==0?W:B.id-V.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var s=Date,a=s.now();e.unstable_now=function(){return s.now()-a}}var c=[],u=[],d=1,f=null,g=3,h=!1,y=!1,_=!1,C=typeof setTimeout=="function"?setTimeout:null,w=typeof clearTimeout=="function"?clearTimeout:null,m=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function p(B){for(var V=n(u);V!==null;){if(V.callback===null)r(u);else if(V.startTime<=B)r(u),V.sortIndex=V.expirationTime,t(c,V);else break;V=n(u)}}function x(B){if(_=!1,p(B),!y)if(n(c)!==null)y=!0,J(j);else{var V=n(u);V!==null&&fe(x,V.startTime-B)}}function j(B,V){y=!1,_&&(_=!1,w(O),O=-1),h=!0;var W=g;try{for(p(V),f=n(c);f!==null&&(!(f.expirationTime>V)||B&&!H());){var ie=f.callback;if(typeof ie=="function"){f.callback=null,g=f.priorityLevel;var oe=ie(f.expirationTime<=V);V=e.unstable_now(),typeof oe=="function"?f.callback=oe:f===n(c)&&r(c),p(V)}else r(c);f=n(c)}if(f!==null)var ke=!0;else{var ue=n(u);ue!==null&&fe(x,ue.startTime-V),ke=!1}return ke}finally{f=null,g=W,h=!1}}var b=!1,k=null,O=-1,M=5,z=-1;function H(){return!(e.unstable_now()-zB||125ie?(B.sortIndex=W,t(u,B),n(c)===null&&B===n(u)&&(_?(w(O),O=-1):_=!0,fe(x,W-ie))):(B.sortIndex=oe,t(c,B),y||h||(y=!0,J(j))),B},e.unstable_shouldYield=H,e.unstable_wrapCallback=function(B){var V=g;return function(){var W=g;g=V;try{return B.apply(this,arguments)}finally{g=W}}}})(fh);dh.exports=fh;var m0=dh.exports;/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var hh=N,ut=m0;function F(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),fl=Object.prototype.hasOwnProperty,v0=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Ku={},Qu={};function y0(e){return fl.call(Qu,e)?!0:fl.call(Ku,e)?!1:v0.test(e)?Qu[e]=!0:(Ku[e]=!0,!1)}function x0(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function w0(e,t,n,r){if(t===null||typeof t>"u"||x0(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Ge(e,t,n,r,i,o,s){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=s}var Ue={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ue[e]=new Ge(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ue[t]=new Ge(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ue[e]=new Ge(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Ue[e]=new Ge(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Ue[e]=new Ge(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Ue[e]=new Ge(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Ue[e]=new Ge(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Ue[e]=new Ge(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Ue[e]=new Ge(e,5,!1,e.toLowerCase(),null,!1,!1)});var Pc=/[\-:]([a-z])/g;function Tc(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Pc,Tc);Ue[t]=new Ge(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Pc,Tc);Ue[t]=new Ge(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Pc,Tc);Ue[t]=new Ge(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Ue[e]=new Ge(e,1,!1,e.toLowerCase(),null,!1,!1)});Ue.xlinkHref=new Ge("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Ue[e]=new Ge(e,1,!1,e.toLowerCase(),null,!0,!0)});function Rc(e,t,n,r){var i=Ue.hasOwnProperty(t)?Ue[t]:null;(i!==null?i.type!==0:r||!(2a||i[s]!==o[a]){var c=` +`+i[s].replace(" at new "," at ");return e.displayName&&c.includes("")&&(c=c.replace("",e.displayName)),c}while(1<=s&&0<=a);break}}}finally{fa=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?fi(e):""}function _0(e){switch(e.tag){case 5:return fi(e.type);case 16:return fi("Lazy");case 13:return fi("Suspense");case 19:return fi("SuspenseList");case 0:case 2:case 15:return e=ha(e.type,!1),e;case 11:return e=ha(e.type.render,!1),e;case 1:return e=ha(e.type,!0),e;default:return""}}function ml(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case dr:return"Fragment";case ur:return"Portal";case hl:return"Profiler";case Nc:return"StrictMode";case pl:return"Suspense";case gl:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case mh:return(e.displayName||"Context")+".Consumer";case gh:return(e._context.displayName||"Context")+".Provider";case Ac:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Ic:return t=e.displayName||null,t!==null?t:ml(e.type)||"Memo";case un:t=e._payload,e=e._init;try{return ml(e(t))}catch{}}return null}function S0(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ml(t);case 8:return t===Nc?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Cn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function yh(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function j0(e){var t=yh(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(s){r=""+s,o.call(this,s)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(s){r=""+s},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function uo(e){e._valueTracker||(e._valueTracker=j0(e))}function xh(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=yh(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function es(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function vl(e,t){var n=t.checked;return _e({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Gu(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Cn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function wh(e,t){t=t.checked,t!=null&&Rc(e,"checked",t,!1)}function yl(e,t){wh(e,t);var n=Cn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?xl(e,t.type,n):t.hasOwnProperty("defaultValue")&&xl(e,t.type,Cn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Yu(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function xl(e,t,n){(t!=="number"||es(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var hi=Array.isArray;function jr(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=fo.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Pi(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var vi={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},b0=["Webkit","ms","Moz","O"];Object.keys(vi).forEach(function(e){b0.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),vi[t]=vi[e]})});function bh(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||vi.hasOwnProperty(e)&&vi[e]?(""+t).trim():t+"px"}function kh(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=bh(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var k0=_e({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Sl(e,t){if(t){if(k0[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(F(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(F(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(F(61))}if(t.style!=null&&typeof t.style!="object")throw Error(F(62))}}function jl(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var bl=null;function Lc(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var kl=null,br=null,kr=null;function ed(e){if(e=Zi(e)){if(typeof kl!="function")throw Error(F(280));var t=e.stateNode;t&&(t=Ms(t),kl(e.stateNode,e.type,t))}}function Eh(e){br?kr?kr.push(e):kr=[e]:br=e}function Ch(){if(br){var e=br,t=kr;if(kr=br=null,ed(e),t)for(e=0;e>>=0,e===0?32:31-(F0(e)/M0|0)|0}var ho=64,po=4194304;function pi(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function is(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,o=e.pingedLanes,s=n&268435455;if(s!==0){var a=s&~i;a!==0?r=pi(a):(o&=s,o!==0&&(r=pi(o)))}else s=n&~i,s!==0?r=pi(s):o!==0&&(r=pi(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,o=t&-t,i>=o||i===16&&(o&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Yi(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Tt(t),e[t]=n}function $0(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=xi),cd=String.fromCharCode(32),ud=!1;function Kh(e,t){switch(e){case"keyup":return gv.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Qh(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var fr=!1;function vv(e,t){switch(e){case"compositionend":return Qh(t);case"keypress":return t.which!==32?null:(ud=!0,cd);case"textInput":return e=t.data,e===cd&&ud?null:e;default:return null}}function yv(e,t){if(fr)return e==="compositionend"||!Hc&&Kh(e,t)?(e=qh(),Ao=Uc=gn=null,fr=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=pd(n)}}function Xh(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Xh(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Zh(){for(var e=window,t=es();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=es(e.document)}return t}function Wc(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function Cv(e){var t=Zh(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Xh(n.ownerDocument.documentElement,n)){if(r!==null&&Wc(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,o=Math.min(r.start,i);r=r.end===void 0?o:Math.min(r.end,i),!e.extend&&o>r&&(i=r,r=o,o=i),i=gd(n,o);var s=gd(n,r);i&&s&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==s.node||e.focusOffset!==s.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(s.node,s.offset)):(t.setEnd(s.node,s.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,hr=null,Rl=null,_i=null,Nl=!1;function md(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Nl||hr==null||hr!==es(r)||(r=hr,"selectionStart"in r&&Wc(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),_i&&Li(_i,r)||(_i=r,r=as(Rl,"onSelect"),0mr||(e.current=zl[mr],zl[mr]=null,mr--)}function de(e,t){mr++,zl[mr]=e.current,e.current=t}var On={},We=Rn(On),nt=Rn(!1),Jn=On;function Nr(e,t){var n=e.type.contextTypes;if(!n)return On;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},o;for(o in n)i[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function rt(e){return e=e.childContextTypes,e!=null}function cs(){ge(nt),ge(We)}function jd(e,t,n){if(We.current!==On)throw Error(F(168));de(We,t),de(nt,n)}function lp(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(F(108,S0(e)||"Unknown",i));return _e({},n,r)}function us(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||On,Jn=We.current,de(We,e),de(nt,nt.current),!0}function bd(e,t,n){var r=e.stateNode;if(!r)throw Error(F(169));n?(e=lp(e,t,Jn),r.__reactInternalMemoizedMergedChildContext=e,ge(nt),ge(We),de(We,e)):ge(nt),de(nt,n)}var Kt=null,zs=!1,Ca=!1;function cp(e){Kt===null?Kt=[e]:Kt.push(e)}function Bv(e){zs=!0,cp(e)}function Nn(){if(!Ca&&Kt!==null){Ca=!0;var e=0,t=ce;try{var n=Kt;for(ce=1;e>=s,i-=s,Gt=1<<32-Tt(t)+i|n<O?(M=k,k=null):M=k.sibling;var z=g(w,k,p[O],x);if(z===null){k===null&&(k=M);break}e&&k&&z.alternate===null&&t(w,k),m=o(z,m,O),b===null?j=z:b.sibling=z,b=z,k=M}if(O===p.length)return n(w,k),ve&&Ln(w,O),j;if(k===null){for(;OO?(M=k,k=null):M=k.sibling;var H=g(w,k,z.value,x);if(H===null){k===null&&(k=M);break}e&&k&&H.alternate===null&&t(w,k),m=o(H,m,O),b===null?j=H:b.sibling=H,b=H,k=M}if(z.done)return n(w,k),ve&&Ln(w,O),j;if(k===null){for(;!z.done;O++,z=p.next())z=f(w,z.value,x),z!==null&&(m=o(z,m,O),b===null?j=z:b.sibling=z,b=z);return ve&&Ln(w,O),j}for(k=r(w,k);!z.done;O++,z=p.next())z=h(k,w,O,z.value,x),z!==null&&(e&&z.alternate!==null&&k.delete(z.key===null?O:z.key),m=o(z,m,O),b===null?j=z:b.sibling=z,b=z);return e&&k.forEach(function(te){return t(w,te)}),ve&&Ln(w,O),j}function C(w,m,p,x){if(typeof p=="object"&&p!==null&&p.type===dr&&p.key===null&&(p=p.props.children),typeof p=="object"&&p!==null){switch(p.$$typeof){case co:e:{for(var j=p.key,b=m;b!==null;){if(b.key===j){if(j=p.type,j===dr){if(b.tag===7){n(w,b.sibling),m=i(b,p.props.children),m.return=w,w=m;break e}}else if(b.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===un&&Rd(j)===b.type){n(w,b.sibling),m=i(b,p.props),m.ref=ii(w,b,p),m.return=w,w=m;break e}n(w,b);break}else t(w,b);b=b.sibling}p.type===dr?(m=qn(p.props.children,w.mode,x,p.key),m.return=w,w=m):(x=$o(p.type,p.key,p.props,null,w.mode,x),x.ref=ii(w,m,p),x.return=w,w=x)}return s(w);case ur:e:{for(b=p.key;m!==null;){if(m.key===b)if(m.tag===4&&m.stateNode.containerInfo===p.containerInfo&&m.stateNode.implementation===p.implementation){n(w,m.sibling),m=i(m,p.children||[]),m.return=w,w=m;break e}else{n(w,m);break}else t(w,m);m=m.sibling}m=La(p,w.mode,x),m.return=w,w=m}return s(w);case un:return b=p._init,C(w,m,b(p._payload),x)}if(hi(p))return y(w,m,p,x);if(Zr(p))return _(w,m,p,x);_o(w,p)}return typeof p=="string"&&p!==""||typeof p=="number"?(p=""+p,m!==null&&m.tag===6?(n(w,m.sibling),m=i(m,p),m.return=w,w=m):(n(w,m),m=Ia(p,w.mode,x),m.return=w,w=m),s(w)):n(w,m)}return C}var Ir=vp(!0),yp=vp(!1),eo={},Ht=Rn(eo),Bi=Rn(eo),Ui=Rn(eo);function Un(e){if(e===eo)throw Error(F(174));return e}function Zc(e,t){switch(de(Ui,t),de(Bi,e),de(Ht,eo),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:_l(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=_l(t,e)}ge(Ht),de(Ht,t)}function Lr(){ge(Ht),ge(Bi),ge(Ui)}function xp(e){Un(Ui.current);var t=Un(Ht.current),n=_l(t,e.type);t!==n&&(de(Bi,e),de(Ht,n))}function eu(e){Bi.current===e&&(ge(Ht),ge(Bi))}var xe=Rn(0);function ms(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Oa=[];function tu(){for(var e=0;en?n:4,e(!0);var r=Pa.transition;Pa.transition={};try{e(!1),t()}finally{ce=n,Pa.transition=r}}function Lp(){return St().memoizedState}function Hv(e,t,n){var r=bn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Fp(e))Mp(t,n);else if(n=hp(e,t,n,r),n!==null){var i=Qe();Rt(n,e,r,i),zp(n,t,r)}}function Wv(e,t,n){var r=bn(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Fp(e))Mp(t,i);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var s=t.lastRenderedState,a=o(s,n);if(i.hasEagerState=!0,i.eagerState=a,At(a,s)){var c=t.interleaved;c===null?(i.next=i,Yc(t)):(i.next=c.next,c.next=i),t.interleaved=i;return}}catch{}finally{}n=hp(e,t,i,r),n!==null&&(i=Qe(),Rt(n,e,r,i),zp(n,t,r))}}function Fp(e){var t=e.alternate;return e===we||t!==null&&t===we}function Mp(e,t){Si=vs=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function zp(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Mc(e,n)}}var ys={readContext:_t,useCallback:$e,useContext:$e,useEffect:$e,useImperativeHandle:$e,useInsertionEffect:$e,useLayoutEffect:$e,useMemo:$e,useReducer:$e,useRef:$e,useState:$e,useDebugValue:$e,useDeferredValue:$e,useTransition:$e,useMutableSource:$e,useSyncExternalStore:$e,useId:$e,unstable_isNewReconciler:!1},qv={readContext:_t,useCallback:function(e,t){return Lt().memoizedState=[e,t===void 0?null:t],e},useContext:_t,useEffect:Ad,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Mo(4194308,4,Tp.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Mo(4194308,4,e,t)},useInsertionEffect:function(e,t){return Mo(4,2,e,t)},useMemo:function(e,t){var n=Lt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Lt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Hv.bind(null,we,e),[r.memoizedState,e]},useRef:function(e){var t=Lt();return e={current:e},t.memoizedState=e},useState:Nd,useDebugValue:su,useDeferredValue:function(e){return Lt().memoizedState=e},useTransition:function(){var e=Nd(!1),t=e[0];return e=Dv.bind(null,e[1]),Lt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=we,i=Lt();if(ve){if(n===void 0)throw Error(F(407));n=n()}else{if(n=t(),Me===null)throw Error(F(349));Yn&30||Sp(r,t,n)}i.memoizedState=n;var o={value:n,getSnapshot:t};return i.queue=o,Ad(bp.bind(null,r,o,e),[e]),r.flags|=2048,Hi(9,jp.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Lt(),t=Me.identifierPrefix;if(ve){var n=Yt,r=Gt;n=(r&~(1<<32-Tt(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=$i++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),n==="select"&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[Bt]=t,e[zi]=r,Kp(e,t,!1,!1),t.stateNode=e;e:{switch(s=jl(n,r),n){case"dialog":he("cancel",e),he("close",e),i=r;break;case"iframe":case"object":case"embed":he("load",e),i=r;break;case"video":case"audio":for(i=0;iMr&&(t.flags|=128,r=!0,oi(o,!1),t.lanes=4194304)}else{if(!r)if(e=ms(s),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),oi(o,!0),o.tail===null&&o.tailMode==="hidden"&&!s.alternate&&!ve)return De(t),null}else 2*be()-o.renderingStartTime>Mr&&n!==1073741824&&(t.flags|=128,r=!0,oi(o,!1),t.lanes=4194304);o.isBackwards?(s.sibling=t.child,t.child=s):(n=o.last,n!==null?n.sibling=s:t.child=s,o.last=s)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=be(),t.sibling=null,n=xe.current,de(xe,r?n&1|2:n&1),t):(De(t),null);case 22:case 23:return fu(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?st&1073741824&&(De(t),t.subtreeFlags&6&&(t.flags|=8192)):De(t),null;case 24:return null;case 25:return null}throw Error(F(156,t.tag))}function Zv(e,t){switch(Vc(t),t.tag){case 1:return rt(t.type)&&cs(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Lr(),ge(nt),ge(We),tu(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return eu(t),null;case 13:if(ge(xe),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(F(340));Ar()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ge(xe),null;case 4:return Lr(),null;case 10:return Gc(t.type._context),null;case 22:case 23:return fu(),null;case 24:return null;default:return null}}var jo=!1,He=!1,ey=typeof WeakSet=="function"?WeakSet:Set,D=null;function wr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){je(e,t,r)}else n.current=null}function Gl(e,t,n){try{n()}catch(r){je(e,t,r)}}var Dd=!1;function ty(e,t){if(Al=os,e=Zh(),Wc(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var s=0,a=-1,c=-1,u=0,d=0,f=e,g=null;t:for(;;){for(var h;f!==n||i!==0&&f.nodeType!==3||(a=s+i),f!==o||r!==0&&f.nodeType!==3||(c=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(h=f.firstChild)!==null;)g=f,f=h;for(;;){if(f===e)break t;if(g===n&&++u===i&&(a=s),g===o&&++d===r&&(c=s),(h=f.nextSibling)!==null)break;f=g,g=f.parentNode}f=h}n=a===-1||c===-1?null:{start:a,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Il={focusedElem:e,selectionRange:n},os=!1,D=t;D!==null;)if(t=D,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,D=e;else for(;D!==null;){t=D;try{var y=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(y!==null){var _=y.memoizedProps,C=y.memoizedState,w=t.stateNode,m=w.getSnapshotBeforeUpdate(t.elementType===t.type?_:Ct(t.type,_),C);w.__reactInternalSnapshotBeforeUpdate=m}break;case 3:var p=t.stateNode.containerInfo;p.nodeType===1?p.textContent="":p.nodeType===9&&p.documentElement&&p.removeChild(p.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(F(163))}}catch(x){je(t,t.return,x)}if(e=t.sibling,e!==null){e.return=t.return,D=e;break}D=t.return}return y=Dd,Dd=!1,y}function ji(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,o!==void 0&&Gl(t,n,o)}i=i.next}while(i!==r)}}function $s(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Yl(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Gp(e){var t=e.alternate;t!==null&&(e.alternate=null,Gp(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Bt],delete t[zi],delete t[Ml],delete t[Mv],delete t[zv])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Yp(e){return e.tag===5||e.tag===3||e.tag===4}function Hd(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Yp(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Xl(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=ls));else if(r!==4&&(e=e.child,e!==null))for(Xl(e,t,n),e=e.sibling;e!==null;)Xl(e,t,n),e=e.sibling}function Zl(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Zl(e,t,n),e=e.sibling;e!==null;)Zl(e,t,n),e=e.sibling}var ze=null,Ot=!1;function an(e,t,n){for(n=n.child;n!==null;)Xp(e,t,n),n=n.sibling}function Xp(e,t,n){if(Dt&&typeof Dt.onCommitFiberUnmount=="function")try{Dt.onCommitFiberUnmount(As,n)}catch{}switch(n.tag){case 5:He||wr(n,t);case 6:var r=ze,i=Ot;ze=null,an(e,t,n),ze=r,Ot=i,ze!==null&&(Ot?(e=ze,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):ze.removeChild(n.stateNode));break;case 18:ze!==null&&(Ot?(e=ze,n=n.stateNode,e.nodeType===8?Ea(e.parentNode,n):e.nodeType===1&&Ea(e,n),Ai(e)):Ea(ze,n.stateNode));break;case 4:r=ze,i=Ot,ze=n.stateNode.containerInfo,Ot=!0,an(e,t,n),ze=r,Ot=i;break;case 0:case 11:case 14:case 15:if(!He&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var o=i,s=o.destroy;o=o.tag,s!==void 0&&(o&2||o&4)&&Gl(n,t,s),i=i.next}while(i!==r)}an(e,t,n);break;case 1:if(!He&&(wr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){je(n,t,a)}an(e,t,n);break;case 21:an(e,t,n);break;case 22:n.mode&1?(He=(r=He)||n.memoizedState!==null,an(e,t,n),He=r):an(e,t,n);break;default:an(e,t,n)}}function Wd(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new ey),t.forEach(function(r){var i=uy.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function Et(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=s),r&=~o}if(r=i,r=be()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*ry(r/1960))-r,10e?16:e,mn===null)var r=!1;else{if(e=mn,mn=null,_s=0,re&6)throw Error(F(331));var i=re;for(re|=4,D=e.current;D!==null;){var o=D,s=o.child;if(D.flags&16){var a=o.deletions;if(a!==null){for(var c=0;cbe()-uu?Wn(e,0):cu|=n),it(e,t)}function sg(e,t){t===0&&(e.mode&1?(t=po,po<<=1,!(po&130023424)&&(po=4194304)):t=1);var n=Qe();e=nn(e,t),e!==null&&(Yi(e,t,n),it(e,n))}function cy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),sg(e,n)}function uy(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(F(314))}r!==null&&r.delete(t),sg(e,n)}var ag;ag=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||nt.current)et=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return et=!1,Yv(e,t,n);et=!!(e.flags&131072)}else et=!1,ve&&t.flags&1048576&&up(t,fs,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;zo(e,t),e=t.pendingProps;var i=Nr(t,We.current);Cr(t,n),i=ru(null,t,r,e,i,n);var o=iu();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,rt(r)?(o=!0,us(t)):o=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,Xc(t),i.updater=Bs,t.stateNode=i,i._reactInternals=t,Hl(t,r,e,n),t=Vl(null,t,r,!0,o,n)):(t.tag=0,ve&&o&&qc(t),Ke(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(zo(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=fy(r),e=Ct(r,e),i){case 0:t=ql(null,t,r,e,n);break e;case 1:t=Bd(null,t,r,e,n);break e;case 11:t=Md(null,t,r,e,n);break e;case 14:t=zd(null,t,r,Ct(r.type,e),n);break e}throw Error(F(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Ct(r,i),ql(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Ct(r,i),Bd(e,t,r,i,n);case 3:e:{if(Wp(t),e===null)throw Error(F(387));r=t.pendingProps,o=t.memoizedState,i=o.element,pp(e,t),gs(t,r,null,n);var s=t.memoizedState;if(r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){i=Fr(Error(F(423)),t),t=Ud(e,t,r,n,i);break e}else if(r!==i){i=Fr(Error(F(424)),t),t=Ud(e,t,r,n,i);break e}else for(lt=_n(t.stateNode.containerInfo.firstChild),ct=t,ve=!0,Pt=null,n=yp(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Ar(),r===i){t=rn(e,t,n);break e}Ke(e,t,r,n)}t=t.child}return t;case 5:return xp(t),e===null&&Ul(t),r=t.type,i=t.pendingProps,o=e!==null?e.memoizedProps:null,s=i.children,Ll(r,i)?s=null:o!==null&&Ll(r,o)&&(t.flags|=32),Hp(e,t),Ke(e,t,s,n),t.child;case 6:return e===null&&Ul(t),null;case 13:return qp(e,t,n);case 4:return Zc(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ir(t,null,r,n):Ke(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Ct(r,i),Md(e,t,r,i,n);case 7:return Ke(e,t,t.pendingProps,n),t.child;case 8:return Ke(e,t,t.pendingProps.children,n),t.child;case 12:return Ke(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,o=t.memoizedProps,s=i.value,de(hs,r._currentValue),r._currentValue=s,o!==null)if(At(o.value,s)){if(o.children===i.children&&!nt.current){t=rn(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var a=o.dependencies;if(a!==null){s=o.child;for(var c=a.firstContext;c!==null;){if(c.context===r){if(o.tag===1){c=Xt(-1,n&-n),c.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?c.next=c:(c.next=d.next,d.next=c),u.pending=c}}o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),$l(o.return,n,t),a.lanes|=n;break}c=c.next}}else if(o.tag===10)s=o.type===t.type?null:o.child;else if(o.tag===18){if(s=o.return,s===null)throw Error(F(341));s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),$l(s,n,t),s=o.sibling}else s=o.child;if(s!==null)s.return=o;else for(s=o;s!==null;){if(s===t){s=null;break}if(o=s.sibling,o!==null){o.return=s.return,s=o;break}s=s.return}o=s}Ke(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,Cr(t,n),i=_t(i),r=r(i),t.flags|=1,Ke(e,t,r,n),t.child;case 14:return r=t.type,i=Ct(r,t.pendingProps),i=Ct(r.type,i),zd(e,t,r,i,n);case 15:return $p(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Ct(r,i),zo(e,t),t.tag=1,rt(r)?(e=!0,us(t)):e=!1,Cr(t,n),mp(t,r,i),Hl(t,r,i,n),Vl(null,t,r,!0,e,n);case 19:return Vp(e,t,n);case 22:return Dp(e,t,n)}throw Error(F(156,t.tag))};function lg(e,t){return Ih(e,t)}function dy(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function vt(e,t,n,r){return new dy(e,t,n,r)}function pu(e){return e=e.prototype,!(!e||!e.isReactComponent)}function fy(e){if(typeof e=="function")return pu(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ac)return 11;if(e===Ic)return 14}return 2}function kn(e,t){var n=e.alternate;return n===null?(n=vt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function $o(e,t,n,r,i,o){var s=2;if(r=e,typeof e=="function")pu(e)&&(s=1);else if(typeof e=="string")s=5;else e:switch(e){case dr:return qn(n.children,i,o,t);case Nc:s=8,i|=8;break;case hl:return e=vt(12,n,t,i|2),e.elementType=hl,e.lanes=o,e;case pl:return e=vt(13,n,t,i),e.elementType=pl,e.lanes=o,e;case gl:return e=vt(19,n,t,i),e.elementType=gl,e.lanes=o,e;case vh:return Hs(n,i,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case gh:s=10;break e;case mh:s=9;break e;case Ac:s=11;break e;case Ic:s=14;break e;case un:s=16,r=null;break e}throw Error(F(130,e==null?e:typeof e,""))}return t=vt(s,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function qn(e,t,n,r){return e=vt(7,e,r,t),e.lanes=n,e}function Hs(e,t,n,r){return e=vt(22,e,r,t),e.elementType=vh,e.lanes=n,e.stateNode={isHidden:!1},e}function Ia(e,t,n){return e=vt(6,e,null,t),e.lanes=n,e}function La(e,t,n){return t=vt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function hy(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ga(0),this.expirationTimes=ga(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ga(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function gu(e,t,n,r,i,o,s,a,c){return e=new hy(e,t,n,a,c),t===1?(t=1,o===!0&&(t|=8)):t=0,o=vt(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Xc(o),e}function py(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(fg)}catch(e){console.error(e)}}fg(),uh.exports=dt;var xy=uh.exports,Xd=xy;dl.createRoot=Xd.createRoot,dl.hydrateRoot=Xd.hydrateRoot;/** + * @remix-run/router v1.6.1 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function qi(){return qi=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function xu(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function _y(){return Math.random().toString(36).substr(2,8)}function ef(e,t){return{usr:e.state,key:e.key,idx:t}}function ic(e,t,n,r){return n===void 0&&(n=null),qi({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?Kr(t):t,{state:n,key:t&&t.key||r||_y()})}function bs(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function Kr(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function Sy(e,t,n,r){r===void 0&&(r={});let{window:i=document.defaultView,v5Compat:o=!1}=r,s=i.history,a=vn.Pop,c=null,u=d();u==null&&(u=0,s.replaceState(qi({},s.state,{idx:u}),""));function d(){return(s.state||{idx:null}).idx}function f(){a=vn.Pop;let C=d(),w=C==null?null:C-u;u=C,c&&c({action:a,location:_.location,delta:w})}function g(C,w){a=vn.Push;let m=ic(_.location,C,w);n&&n(m,C),u=d()+1;let p=ef(m,u),x=_.createHref(m);try{s.pushState(p,"",x)}catch{i.location.assign(x)}o&&c&&c({action:a,location:_.location,delta:1})}function h(C,w){a=vn.Replace;let m=ic(_.location,C,w);n&&n(m,C),u=d();let p=ef(m,u),x=_.createHref(m);s.replaceState(p,"",x),o&&c&&c({action:a,location:_.location,delta:0})}function y(C){let w=i.location.origin!=="null"?i.location.origin:i.location.href,m=typeof C=="string"?C:bs(C);return Pe(w,"No window.location.(origin|href) available to create URL for href: "+m),new URL(m,w)}let _={get action(){return a},get location(){return e(i,s)},listen(C){if(c)throw new Error("A history only accepts one active listener");return i.addEventListener(Zd,f),c=C,()=>{i.removeEventListener(Zd,f),c=null}},createHref(C){return t(i,C)},createURL:y,encodeLocation(C){let w=y(C);return{pathname:w.pathname,search:w.search,hash:w.hash}},push:g,replace:h,go(C){return s.go(C)}};return _}var tf;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(tf||(tf={}));function jy(e,t,n){n===void 0&&(n="/");let r=typeof t=="string"?Kr(t):t,i=wu(r.pathname||"/",n);if(i==null)return null;let o=hg(e);by(o);let s=null;for(let a=0;s==null&&a{let c={relativePath:a===void 0?o.path||"":a,caseSensitive:o.caseSensitive===!0,childrenIndex:s,route:o};c.relativePath.startsWith("/")&&(Pe(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let u=En([r,c.relativePath]),d=n.concat(c);o.children&&o.children.length>0&&(Pe(o.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),hg(o.children,t,d,u)),!(o.path==null&&!o.index)&&t.push({path:u,score:Ry(u,o.index),routesMeta:d})};return e.forEach((o,s)=>{var a;if(o.path===""||!((a=o.path)!=null&&a.includes("?")))i(o,s);else for(let c of pg(o.path))i(o,s,c)}),t}function pg(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,i=n.endsWith("?"),o=n.replace(/\?$/,"");if(r.length===0)return i?[o,""]:[o];let s=pg(r.join("/")),a=[];return a.push(...s.map(c=>c===""?o:[o,c].join("/"))),i&&a.push(...s),a.map(c=>e.startsWith("/")&&c===""?"/":c)}function by(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Ny(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const ky=/^:\w+$/,Ey=3,Cy=2,Oy=1,Py=10,Ty=-2,nf=e=>e==="*";function Ry(e,t){let n=e.split("/"),r=n.length;return n.some(nf)&&(r+=Ty),t&&(r+=Cy),n.filter(i=>!nf(i)).reduce((i,o)=>i+(ky.test(o)?Ey:o===""?Oy:Py),r)}function Ny(e,t){return e.length===t.length&&e.slice(0,-1).every((r,i)=>r===t[i])?e[e.length-1]-t[t.length-1]:0}function Ay(e,t){let{routesMeta:n}=e,r={},i="/",o=[];for(let s=0;s{if(d==="*"){let g=a[f]||"";s=o.slice(0,o.length-g.length).replace(/(.)\/+$/,"$1")}return u[d]=My(a[f]||"",d),u},{}),pathname:o,pathnameBase:s,pattern:e}}function Ly(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),xu(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^$?{}|()[\]]/g,"\\$&").replace(/\/:(\w+)/g,(s,a)=>(r.push(a),"/([^\\/]+)"));return e.endsWith("*")?(r.push("*"),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),r]}function Fy(e){try{return decodeURI(e)}catch(t){return xu(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function My(e,t){try{return decodeURIComponent(e)}catch(n){return xu(!1,'The value for the URL param "'+t+'" will not be decoded because'+(' the string "'+e+'" is a malformed URL segment. This is probably')+(" due to a bad percent encoding ("+n+").")),e}}function wu(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function zy(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:i=""}=typeof e=="string"?Kr(e):e;return{pathname:n?n.startsWith("/")?n:By(n,t):t,search:$y(r),hash:Dy(i)}}function By(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?n.length>1&&n.pop():i!=="."&&n.push(i)}),n.length>1?n.join("/"):"/"}function Fa(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function gg(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function mg(e,t,n,r){r===void 0&&(r=!1);let i;typeof e=="string"?i=Kr(e):(i=qi({},e),Pe(!i.pathname||!i.pathname.includes("?"),Fa("?","pathname","search",i)),Pe(!i.pathname||!i.pathname.includes("#"),Fa("#","pathname","hash",i)),Pe(!i.search||!i.search.includes("#"),Fa("#","search","hash",i)));let o=e===""||i.pathname==="",s=o?"/":i.pathname,a;if(r||s==null)a=n;else{let f=t.length-1;if(s.startsWith("..")){let g=s.split("/");for(;g[0]==="..";)g.shift(),f-=1;i.pathname=g.join("/")}a=f>=0?t[f]:"/"}let c=zy(i,a),u=s&&s!=="/"&&s.endsWith("/"),d=(o||s===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(u||d)&&(c.pathname+="/"),c}const En=e=>e.join("/").replace(/\/\/+/g,"/"),Uy=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),$y=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Dy=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Hy(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const vg=["post","put","patch","delete"];new Set(vg);const Wy=["get",...vg];new Set(Wy);/** + * React Router v6.11.1 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function ks(){return ks=Object.assign?Object.assign.bind():function(e){for(var t=1;ta.pathnameBase)),o=N.useRef(!1);return wg(()=>{o.current=!0}),N.useCallback(function(a,c){if(c===void 0&&(c={}),!o.current)return;if(typeof a=="number"){t.go(a);return}let u=mg(a,JSON.parse(i),r,c.relative==="path");e!=="/"&&(u.pathname=u.pathname==="/"?e:En([e,u.pathname])),(c.replace?t.replace:t.push)(u,c.state,c)},[e,t,i,r])}function Qy(){let{matches:e}=N.useContext(An),t=e[e.length-1];return t?t.params:{}}function Sg(e,t){let{relative:n}=t===void 0?{}:t,{matches:r}=N.useContext(An),{pathname:i}=Js(),o=JSON.stringify(gg(r).map(s=>s.pathnameBase));return N.useMemo(()=>mg(e,JSON.parse(o),i,n==="path"),[e,o,i,n])}function Jy(e,t){return Gy(e,t)}function Gy(e,t,n){to()||Pe(!1);let{navigator:r}=N.useContext(Qr),{matches:i}=N.useContext(An),o=i[i.length-1],s=o?o.params:{};o&&o.pathname;let a=o?o.pathnameBase:"/";o&&o.route;let c=Js(),u;if(t){var d;let _=typeof t=="string"?Kr(t):t;a==="/"||(d=_.pathname)!=null&&d.startsWith(a)||Pe(!1),u=_}else u=c;let f=u.pathname||"/",g=a==="/"?f:f.slice(a.length)||"/",h=jy(e,{pathname:g}),y=tx(h&&h.map(_=>Object.assign({},_,{params:Object.assign({},s,_.params),pathname:En([a,r.encodeLocation?r.encodeLocation(_.pathname).pathname:_.pathname]),pathnameBase:_.pathnameBase==="/"?a:En([a,r.encodeLocation?r.encodeLocation(_.pathnameBase).pathname:_.pathnameBase])})),i,n);return t&&y?N.createElement(Qs.Provider,{value:{location:ks({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:vn.Pop}},y):y}function Yy(){let e=ox(),t=Hy(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,i={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"},o=null;return N.createElement(N.Fragment,null,N.createElement("h2",null,"Unexpected Application Error!"),N.createElement("h3",{style:{fontStyle:"italic"}},t),n?N.createElement("pre",{style:i},n):null,o)}const Xy=N.createElement(Yy,null);class Zy extends N.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error||n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error?N.createElement(An.Provider,{value:this.props.routeContext},N.createElement(xg.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function ex(e){let{routeContext:t,match:n,children:r}=e,i=N.useContext(yg);return i&&i.static&&i.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=n.route.id),N.createElement(An.Provider,{value:t},r)}function tx(e,t,n){var r;if(t===void 0&&(t=[]),n===void 0&&(n=null),e==null){var i;if((i=n)!=null&&i.errors)e=n.matches;else return null}let o=e,s=(r=n)==null?void 0:r.errors;if(s!=null){let a=o.findIndex(c=>c.route.id&&(s==null?void 0:s[c.route.id]));a>=0||Pe(!1),o=o.slice(0,Math.min(o.length,a+1))}return o.reduceRight((a,c,u)=>{let d=c.route.id?s==null?void 0:s[c.route.id]:null,f=null;n&&(f=c.route.errorElement||Xy);let g=t.concat(o.slice(0,u+1)),h=()=>{let y;return d?y=f:c.route.Component?y=N.createElement(c.route.Component,null):c.route.element?y=c.route.element:y=a,N.createElement(ex,{match:c,routeContext:{outlet:a,matches:g,isDataRoute:n!=null},children:y})};return n&&(c.route.ErrorBoundary||c.route.errorElement||u===0)?N.createElement(Zy,{location:n.location,revalidation:n.revalidation,component:f,error:d,children:h(),routeContext:{outlet:null,matches:g,isDataRoute:!0}}):h()},null)}var oc;(function(e){e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate"})(oc||(oc={}));var Vi;(function(e){e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId"})(Vi||(Vi={}));function nx(e){let t=N.useContext(yg);return t||Pe(!1),t}function rx(e){let t=N.useContext(qy);return t||Pe(!1),t}function ix(e){let t=N.useContext(An);return t||Pe(!1),t}function jg(e){let t=ix(),n=t.matches[t.matches.length-1];return n.route.id||Pe(!1),n.route.id}function ox(){var e;let t=N.useContext(xg),n=rx(Vi.UseRouteError),r=jg(Vi.UseRouteError);return t||((e=n.errors)==null?void 0:e[r])}function sx(){let{router:e}=nx(oc.UseNavigateStable),t=jg(Vi.UseNavigateStable),n=N.useRef(!1);return wg(()=>{n.current=!0}),N.useCallback(function(i,o){o===void 0&&(o={}),n.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,ks({fromRouteId:t},o)))},[e,t])}function bg(e){Pe(!1)}function ax(e){let{basename:t="/",children:n=null,location:r,navigationType:i=vn.Pop,navigator:o,static:s=!1}=e;to()&&Pe(!1);let a=t.replace(/^\/*/,"/"),c=N.useMemo(()=>({basename:a,navigator:o,static:s}),[a,o,s]);typeof r=="string"&&(r=Kr(r));let{pathname:u="/",search:d="",hash:f="",state:g=null,key:h="default"}=r,y=N.useMemo(()=>{let _=wu(u,a);return _==null?null:{location:{pathname:_,search:d,hash:f,state:g,key:h},navigationType:i}},[a,u,d,f,g,h,i]);return y==null?null:N.createElement(Qr.Provider,{value:c},N.createElement(Qs.Provider,{children:n,value:y}))}function lx(e){let{children:t,location:n}=e;return Jy(sc(t),n)}var rf;(function(e){e[e.pending=0]="pending",e[e.success=1]="success",e[e.error=2]="error"})(rf||(rf={}));new Promise(()=>{});function sc(e,t){t===void 0&&(t=[]);let n=[];return N.Children.forEach(e,(r,i)=>{if(!N.isValidElement(r))return;let o=[...t,i];if(r.type===N.Fragment){n.push.apply(n,sc(r.props.children,o));return}r.type!==bg&&Pe(!1),!r.props.index||!r.props.children||Pe(!1);let s={id:r.props.id||o.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(s.children=sc(r.props.children,o)),n.push(s)}),n}/** + * React Router DOM v6.11.1 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function ac(){return ac=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(n[i]=e[i]);return n}function ux(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function dx(e,t){return e.button===0&&(!t||t==="_self")&&!ux(e)}const fx=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset"];function hx(e){let{basename:t,children:n,window:r}=e,i=N.useRef();i.current==null&&(i.current=wy({window:r,v5Compat:!0}));let o=i.current,[s,a]=N.useState({action:o.action,location:o.location});return N.useLayoutEffect(()=>o.listen(a),[o]),N.createElement(ax,{basename:t,children:n,location:s.location,navigationType:s.action,navigator:o})}const px=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",gx=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Mn=N.forwardRef(function(t,n){let{onClick:r,relative:i,reloadDocument:o,replace:s,state:a,target:c,to:u,preventScrollReset:d}=t,f=cx(t,fx),{basename:g}=N.useContext(Qr),h,y=!1;if(typeof u=="string"&&gx.test(u)&&(h=u,px))try{let m=new URL(window.location.href),p=u.startsWith("//")?new URL(m.protocol+u):new URL(u),x=wu(p.pathname,g);p.origin===m.origin&&x!=null?u=x+p.search+p.hash:y=!0}catch{}let _=Vy(u,{relative:i}),C=mx(u,{replace:s,state:a,target:c,preventScrollReset:d,relative:i});function w(m){r&&r(m),m.defaultPrevented||C(m)}return N.createElement("a",ac({},f,{href:h||_,onClick:y||o?r:w,ref:n,target:c}))});var of;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmitImpl="useSubmitImpl",e.UseFetcher="useFetcher"})(of||(of={}));var sf;(function(e){e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(sf||(sf={}));function mx(e,t){let{target:n,replace:r,state:i,preventScrollReset:o,relative:s}=t===void 0?{}:t,a=_g(),c=Js(),u=Sg(e,{relative:s});return N.useCallback(d=>{if(dx(d,n)){d.preventDefault();let f=r!==void 0?r:bs(c)===bs(u);a(e,{replace:f,state:i,preventScrollReset:o,relative:s})}},[c,a,u,r,i,n,e,o,s])}var tt=function(){return tt=Object.assign||function(t){for(var n,r=1,i=arguments.length;r0?Fe(Jr,--jt):0,Br--,Ce===10&&(Br=1,Ys--),Ce}function Nt(){return Ce=jt2||lc(Ce)>3?"":" "}function Ox(e,t){for(;--t&&Nt()&&!(Ce<48||Ce>102||Ce>57&&Ce<65||Ce>70&&Ce<97););return Zs(e,Ho()+(t<6&&Vn()==32&&Nt()==32))}function cc(e){for(;Nt();)switch(Ce){case e:return jt;case 34:case 39:e!==34&&e!==39&&cc(Ce);break;case 40:e===41&&cc(e);break;case 92:Nt();break}return jt}function Px(e,t){for(;Nt()&&e+Ce!==47+10;)if(e+Ce===42+42&&Vn()===47)break;return"/*"+Zs(t,jt-1)+"*"+Su(e===47?e:Nt())}function Tx(e){for(;!lc(Vn());)Nt();return Zs(e,jt)}function Rx(e){return Ex(Wo("",null,null,null,[""],e=kx(e),0,[0],e))}function Wo(e,t,n,r,i,o,s,a,c){for(var u=0,d=0,f=s,g=0,h=0,y=0,_=1,C=1,w=1,m=0,p="",x=i,j=o,b=r,k=p;C;)switch(y=m,m=Nt()){case 40:if(y!=108&&Fe(k,f-1)==58){Do(k+=Z(Ma(m),"&","&\f"),"&\f")!=-1&&(w=-1);break}case 34:case 39:case 91:k+=Ma(m);break;case 9:case 10:case 13:case 32:k+=Cx(y);break;case 92:k+=Ox(Ho()-1,7);continue;case 47:switch(Vn()){case 42:case 47:Eo(Nx(Px(Nt(),Ho()),t,n),c);break;default:k+="/"}break;case 123*_:a[u++]=Qt(k)*w;case 125*_:case 59:case 0:switch(m){case 0:case 125:C=0;case 59+d:w==-1&&(k=Z(k,/\f/g,"")),h>0&&Qt(k)-f&&Eo(h>32?lf(k+";",r,n,f-1):lf(Z(k," ","")+";",r,n,f-2),c);break;case 59:k+=";";default:if(Eo(b=af(k,t,n,u,d,i,a,p,x=[],j=[],f),o),m===123)if(d===0)Wo(k,t,b,b,x,o,f,a,j);else switch(g===99&&Fe(k,3)===110?100:g){case 100:case 108:case 109:case 115:Wo(e,b,b,r&&Eo(af(e,b,b,0,0,i,a,p,i,x=[],f),j),i,j,f,a,r?x:j);break;default:Wo(k,b,b,b,[""],j,0,a,j)}}u=d=h=0,_=w=1,p=k="",f=s;break;case 58:f=1+Qt(k),h=y;default:if(_<1){if(m==123)--_;else if(m==125&&_++==0&&bx()==125)continue}switch(k+=Su(m),m*_){case 38:w=d>0?1:(k+="\f",-1);break;case 44:a[u++]=(Qt(k)-1)*w,w=1;break;case 64:Vn()===45&&(k+=Ma(Nt())),g=Vn(),d=f=Qt(p=k+=Tx(Ho())),m++;break;case 45:y===45&&Qt(k)==2&&(_=0)}}return o}function af(e,t,n,r,i,o,s,a,c,u,d){for(var f=i-1,g=i===0?o:[""],h=ju(g),y=0,_=0,C=0;y0?g[w]+" "+m:Z(m,/&\f/g,g[w])))&&(c[C++]=p);return Xs(e,t,n,i===0?Gs:a,c,u,d)}function Nx(e,t,n){return Xs(e,t,n,kg,Su(jx()),zr(e,2,-2),0)}function lf(e,t,n,r){return Xs(e,t,n,_u,zr(e,0,r),zr(e,r+1,-1),r)}function Pg(e,t,n){switch(_x(e,t)){case 5103:return ae+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return ae+e+e;case 4789:return Ei+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return ae+e+Ei+e+pe+e+e;case 5936:switch(Fe(e,t+11)){case 114:return ae+e+pe+Z(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return ae+e+pe+Z(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return ae+e+pe+Z(e,/[svh]\w+-[tblr]{2}/,"lr")+e}case 6828:case 4268:case 2903:return ae+e+pe+e+e;case 6165:return ae+e+pe+"flex-"+e+e;case 5187:return ae+e+Z(e,/(\w+).+(:[^]+)/,ae+"box-$1$2"+pe+"flex-$1$2")+e;case 5443:return ae+e+pe+"flex-item-"+Z(e,/flex-|-self/g,"")+(cn(e,/flex-|baseline/)?"":pe+"grid-row-"+Z(e,/flex-|-self/g,""))+e;case 4675:return ae+e+pe+"flex-line-pack"+Z(e,/align-content|flex-|-self/g,"")+e;case 5548:return ae+e+pe+Z(e,"shrink","negative")+e;case 5292:return ae+e+pe+Z(e,"basis","preferred-size")+e;case 6060:return ae+"box-"+Z(e,"-grow","")+ae+e+pe+Z(e,"grow","positive")+e;case 4554:return ae+Z(e,/([^-])(transform)/g,"$1"+ae+"$2")+e;case 6187:return Z(Z(Z(e,/(zoom-|grab)/,ae+"$1"),/(image-set)/,ae+"$1"),e,"")+e;case 5495:case 3959:return Z(e,/(image-set\([^]*)/,ae+"$1$`$1");case 4968:return Z(Z(e,/(.+:)(flex-)?(.*)/,ae+"box-pack:$3"+pe+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+ae+e+e;case 4200:if(!cn(e,/flex-|baseline/))return pe+"grid-column-align"+zr(e,t)+e;break;case 2592:case 3360:return pe+Z(e,"template-","")+e;case 4384:case 3616:return n&&n.some(function(r,i){return t=i,cn(r.props,/grid-\w+-end/)})?~Do(e+(n=n[t].value),"span")?e:pe+Z(e,"-start","")+e+pe+"grid-row-span:"+(~Do(n,"span")?cn(n,/\d+/):+cn(n,/\d+/)-+cn(e,/\d+/))+";":pe+Z(e,"-start","")+e;case 4896:case 4128:return n&&n.some(function(r){return cn(r.props,/grid-\w+-start/)})?e:pe+Z(Z(e,"-end","-span"),"span ","")+e;case 4095:case 3583:case 4068:case 2532:return Z(e,/(.+)-inline(.+)/,ae+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(Qt(e)-1-t>6)switch(Fe(e,t+1)){case 109:if(Fe(e,t+4)!==45)break;case 102:return Z(e,/(.+:)(.+)-([^]+)/,"$1"+ae+"$2-$3$1"+Ei+(Fe(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~Do(e,"stretch")?Pg(Z(e,"stretch","fill-available"),t,n)+e:e}break;case 5152:case 5920:return Z(e,/(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/,function(r,i,o,s,a,c,u){return pe+i+":"+o+u+(s?pe+i+"-span:"+(a?c:+c-+o)+u:"")+e});case 4949:if(Fe(e,t+6)===121)return Z(e,":",":"+ae)+e;break;case 6444:switch(Fe(e,Fe(e,14)===45?18:11)){case 120:return Z(e,/(.+:)([^;\s!]+)(;|(\s+)?!.+)?/,"$1"+ae+(Fe(e,14)===45?"inline-":"")+"box$3$1"+ae+"$2$3$1"+pe+"$2box$3")+e;case 100:return Z(e,":",":"+pe)+e}break;case 5719:case 2647:case 2135:case 3927:case 2391:return Z(e,"scroll-","scroll-snap-")+e}return e}function Ci(e,t){for(var n="",r=ju(e),i=0;i-1&&!e.return)switch(e.type){case _u:e.return=Pg(e.value,e.length,n);return;case Eg:return Ci([ai(e,{value:Z(e.value,"@","@"+ae)})],r);case Gs:if(e.length)return Sx(e.props,function(i){switch(cn(i,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return Ci([ai(e,{props:[Z(i,/:(read-\w+)/,":"+Ei+"$1")]})],r);case"::placeholder":return Ci([ai(e,{props:[Z(i,/:(plac\w+)/,":"+ae+"input-$1")]}),ai(e,{props:[Z(i,/:(plac\w+)/,":"+Ei+"$1")]}),ai(e,{props:[Z(i,/:(plac\w+)/,pe+"input-$1")]})],r)}return""})}}var Fx={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Ur=typeof process<"u"&&process.env!==void 0&&({}.REACT_APP_SC_ATTR||{}.SC_ATTR)||"data-styled",bu=typeof window<"u"&&"HTMLElement"in window,Mx=!!(typeof SC_DISABLE_SPEEDY=="boolean"?SC_DISABLE_SPEEDY:typeof process<"u"&&process.env!==void 0&&{}.REACT_APP_SC_DISABLE_SPEEDY!==void 0&&{}.REACT_APP_SC_DISABLE_SPEEDY!==""?{}.REACT_APP_SC_DISABLE_SPEEDY!=="false"&&{}.REACT_APP_SC_DISABLE_SPEEDY:typeof process<"u"&&process.env!==void 0&&{}.SC_DISABLE_SPEEDY!==void 0&&{}.SC_DISABLE_SPEEDY!==""&&{}.SC_DISABLE_SPEEDY!=="false"&&{}.SC_DISABLE_SPEEDY),ku=Object.freeze([]),er=Object.freeze({});function zx(e,t,n){return n===void 0&&(n=er),e.theme!==n.theme&&e.theme||t||n.theme}var Tg=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","use","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"]),Bx=/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g,Ux=/(^-|-$)/g;function cf(e){return e.replace(Bx,"-").replace(Ux,"")}var $x=/(a)(d)/gi,uf=function(e){return String.fromCharCode(e+(e>25?39:97))};function uc(e){var t,n="";for(t=Math.abs(e);t>52;t=t/52|0)n=uf(t%52)+n;return(uf(t%52)+n).replace($x,"$1-$2")}var za,Sr=function(e,t){for(var n=t.length;n;)e=33*e^t.charCodeAt(--n);return e},Rg=function(e){return Sr(5381,e)};function Ng(e){return uc(Rg(e)>>>0)}function Dx(e){return e.displayName||e.name||"Component"}function Ba(e){return typeof e=="string"&&!0}var Ag=typeof Symbol=="function"&&Symbol.for,Ig=Ag?Symbol.for("react.memo"):60115,Hx=Ag?Symbol.for("react.forward_ref"):60112,Wx={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},qx={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},Lg={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},Vx=((za={})[Hx]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},za[Ig]=Lg,za);function df(e){return("type"in(t=e)&&t.type.$$typeof)===Ig?Lg:"$$typeof"in e?Vx[e.$$typeof]:Wx;var t}var Kx=Object.defineProperty,Qx=Object.getOwnPropertyNames,ff=Object.getOwnPropertySymbols,Jx=Object.getOwnPropertyDescriptor,Gx=Object.getPrototypeOf,hf=Object.prototype;function Fg(e,t,n){if(typeof t!="string"){if(hf){var r=Gx(t);r&&r!==hf&&Fg(e,r,n)}var i=Qx(t);ff&&(i=i.concat(ff(t)));for(var o=df(e),s=df(t),a=0;a0?" Args: ".concat(t.join(", ")):""))}var Yx=function(){function e(t){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=t}return e.prototype.indexOfGroup=function(t){for(var n=0,r=0;r=this.groupSizes.length){for(var r=this.groupSizes,i=r.length,o=i;t>=o;)if((o<<=1)<0)throw no(16,"".concat(t));this.groupSizes=new Uint32Array(o),this.groupSizes.set(r),this.length=o;for(var s=i;s=this.length||this.groupSizes[t]===0)return n;for(var r=this.groupSizes[t],i=this.indexOfGroup(t),o=i+r,s=i;s=0;u--){var d=c[u];if(d&&d.nodeType===1&&d.hasAttribute(Ur))return d}}(n),o=i!==void 0?i.nextSibling:null;r.setAttribute(Ur,"active"),r.setAttribute("data-styled-version","6.0.0-rc.1");var s=r1();return s&&r.setAttribute("nonce",s),n.insertBefore(r,o),r},i1=function(){function e(t){this.element=Mg(t),this.element.appendChild(document.createTextNode("")),this.sheet=function(n){if(n.sheet)return n.sheet;for(var r=document.styleSheets,i=0,o=r.length;i=0){var r=document.createTextNode(n);return this.element.insertBefore(r,this.nodes[t]||null),this.length++,!0}return!1},e.prototype.deleteRule=function(t){this.element.removeChild(this.nodes[t]),this.length--},e.prototype.getRule=function(t){return t0&&(g+="".concat(h,","))}),i+="".concat(d).concat(f,'{content:"').concat(g,'"}').concat(`/*!sc*/ +`)},s=0;s0?".".concat(t):g},d=c.slice();s.prefix&&d.unshift(Lx),d.push(function(g){g.type===Gs&&g.value.includes("&")&&(g.props[0]=g.props[0].replace(l1,n).replace(r,u))},Ax);var f=function(g,h,y,_){h===void 0&&(h=""),y===void 0&&(y=""),_===void 0&&(_="&"),t=_,n=h,r=new RegExp("\\".concat(n,"\\b"),"g");var C=g.replace(c1,""),w=Rx(y||h?"".concat(y," ").concat(h," { ").concat(C," }"):C);return s.namespace&&(w=Bg(w,s.namespace)),function(m,p){for(var x=[],j=0,b=void 0;j="A"&&e<="Z"};function mf(e){for(var t="",n=0;n>>0);if(!n.hasNameForId(this.componentId,s)){var a=r(o,".".concat(s),void 0,this.componentId);n.insertRules(this.componentId,s,a)}i=$n(i,s),this.staticRulesId=s}else{for(var c=Sr(this.baseHash,r.hash),u="",d=0;d>>0);n.hasNameForId(this.componentId,h)||n.insertRules(this.componentId,h,r(u,".".concat(h),void 0,this.componentId)),i=$n(i,h)}}return i},e}(),Wg=bt.createContext(void 0);Wg.Consumer;function m1(){return N.useContext(Wg)}var $a={};function v1(e,t,n){var r=Eu(e),i=e,o=!Ba(e),s=t.attrs,a=s===void 0?ku:s,c=t.componentId,u=c===void 0?function(j,b){var k=typeof j!="string"?"sc":cf(j);$a[k]=($a[k]||0)+1;var O="".concat(k,"-").concat(Ng("6.0.0-rc.1"+k+$a[k]));return b?"".concat(b,"-").concat(O):O}(t.displayName,t.parentComponentId):c,d=t.displayName,f=d===void 0?function(j){return Ba(j)?"styled.".concat(j):"Styled(".concat(Dx(j),")")}(e):d,g=t.displayName&&t.componentId?"".concat(cf(t.displayName),"-").concat(t.componentId):t.componentId||u,h=r&&i.attrs?i.attrs.concat(a).filter(Boolean):a,y=t.shouldForwardProp;if(r&&i.shouldForwardProp){var _=i.shouldForwardProp;if(t.shouldForwardProp){var C=t.shouldForwardProp;y=function(j,b){return _(j,b)&&C(j,b)}}else y=_}var w=new g1(n,g,r?i.componentStyle:void 0),m=w.isStatic&&a.length===0;function p(j,b){return function(k,O,M,z){var H=k.attrs,te=k.componentStyle,Q=k.defaultProps,$=k.foldedComponentIds,U=k.styledComponentId,J=k.target,fe=m1(),B=gf(),V=k.shouldForwardProp||B.shouldForwardProp,W=function(qe,ot,kt){for(var qt,ye=tt(tt({},ot),{className:void 0,theme:kt}),ir=0;ire.width?e.width:24}px; + height: ${e=>e.height?e.height:24}px; + background: url(${e=>e.src}); + background-repeat: no-repeat; + background-position: center; + background-size: contain; + margin: 0 8px; + display: inline-block +`,x1=P.header` + min-width: 950px; + display: flex; + justify-content: space-between; + align-items: center; + margin: 18px 8%; +`,w1=P.section` + display: flex; + align-items: center; +`,_1=P.div` + width: 1px; + height: 37px; + margin: 0px 17px; + background-color: #a9a9a9; +`,S1=P.button` + width: 150px; + height: 28px; + margin-left: 20px; + border-radius: 40px; + background-color: #CCC; + font-size: 15px; + & ${Y} { + margin-left: 0; + } +`,j1=P.h1` + user-select: none; +`,Vo=P.div` + & a:hover { + color: #0050A1; + transition: 0.3s ease; + } +`,b1=P.nav` + display: flex; + align-items: center; + & ${Vo} { + margin-right: 55px + } +`,k1=function(){return l.jsxs(x1,{children:[l.jsxs(w1,{children:[l.jsx("a",{href:"https://vvsu.ru",children:l.jsx("img",{width:"100",height:"32",src:"/images/vvsu_logo.png"})}),l.jsx(_1,{}),l.jsx(Mn,{to:"/",children:l.jsx(j1,{children:"Pairent"})}),l.jsx(Mn,{to:"/",children:l.jsxs(S1,{children:[l.jsx(Y,{src:"/images/icons/pin.svg",width:"8",height:"14"}),"Владивосток"]})})]}),l.jsxs(b1,{children:[l.jsx(Vo,{children:l.jsxs(Mn,{to:"/favorites",children:[l.jsx(Y,{src:"/images/icons/heart.svg",width:"16",height:"14"}),"Избранное"]})}),l.jsx(Vo,{children:l.jsxs(Mn,{to:"/comparisons",children:[l.jsx(Y,{src:"/images/icons/stats.svg",width:"16",height:"14"}),"Сравнения"]})}),l.jsx(Vo,{children:l.jsxs(Mn,{to:"/",children:[l.jsx(Y,{src:"/images/icons/chat-bubble.svg",width:"16",height:"14"}),"Чаты"]})}),l.jsx(Mn,{to:"/",children:l.jsx(Y,{src:"/images/icons/user.svg",width:"32",height:"32"})})]})]})};function Kg(e,t){return function(){return e.apply(t,arguments)}}const{toString:E1}=Object.prototype,{getPrototypeOf:Cu}=Object,ea=(e=>t=>{const n=E1.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Wt=e=>(e=e.toLowerCase(),t=>ea(t)===e),ta=e=>t=>typeof t===e,{isArray:Gr}=Array,Ji=ta("undefined");function C1(e){return e!==null&&!Ji(e)&&e.constructor!==null&&!Ji(e.constructor)&&xt(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Qg=Wt("ArrayBuffer");function O1(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Qg(e.buffer),t}const P1=ta("string"),xt=ta("function"),Jg=ta("number"),na=e=>e!==null&&typeof e=="object",T1=e=>e===!0||e===!1,Ko=e=>{if(ea(e)!=="object")return!1;const t=Cu(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},R1=Wt("Date"),N1=Wt("File"),A1=Wt("Blob"),I1=Wt("FileList"),L1=e=>na(e)&&xt(e.pipe),F1=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||xt(e.append)&&((t=ea(e))==="formdata"||t==="object"&&xt(e.toString)&&e.toString()==="[object FormData]"))},M1=Wt("URLSearchParams"),z1=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ro(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,i;if(typeof e!="object"&&(e=[e]),Gr(e))for(r=0,i=e.length;r0;)if(i=n[r],t===i.toLowerCase())return i;return null}const Yg=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),Xg=e=>!Ji(e)&&e!==Yg;function gc(){const{caseless:e}=Xg(this)&&this||{},t={},n=(r,i)=>{const o=e&&Gg(t,i)||i;Ko(t[o])&&Ko(r)?t[o]=gc(t[o],r):Ko(r)?t[o]=gc({},r):Gr(r)?t[o]=r.slice():t[o]=r};for(let r=0,i=arguments.length;r(ro(t,(i,o)=>{n&&xt(i)?e[o]=Kg(i,n):e[o]=i},{allOwnKeys:r}),e),U1=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),$1=(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)},D1=(e,t,n,r)=>{let i,o,s;const a={};if(t=t||{},e==null)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)s=i[o],(!r||r(s,e,t))&&!a[s]&&(t[s]=e[s],a[s]=!0);e=n!==!1&&Cu(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},H1=(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},W1=e=>{if(!e)return null;if(Gr(e))return e;let t=e.length;if(!Jg(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},q1=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Cu(Uint8Array)),V1=(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let i;for(;(i=r.next())&&!i.done;){const o=i.value;t.call(e,o[0],o[1])}},K1=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},Q1=Wt("HTMLFormElement"),J1=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,i){return r.toUpperCase()+i}),xf=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),G1=Wt("RegExp"),Zg=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};ro(n,(i,o)=>{t(i,o,e)!==!1&&(r[o]=i)}),Object.defineProperties(e,r)},Y1=e=>{Zg(e,(t,n)=>{if(xt(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(xt(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+"'")})}})},X1=(e,t)=>{const n={},r=i=>{i.forEach(o=>{n[o]=!0})};return Gr(e)?r(e):r(String(e).split(t)),n},Z1=()=>{},ew=(e,t)=>(e=+e,Number.isFinite(e)?e:t),Da="abcdefghijklmnopqrstuvwxyz",wf="0123456789",em={DIGIT:wf,ALPHA:Da,ALPHA_DIGIT:Da+Da.toUpperCase()+wf},tw=(e=16,t=em.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function nw(e){return!!(e&&xt(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const rw=e=>{const t=new Array(10),n=(r,i)=>{if(na(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[i]=r;const o=Gr(r)?[]:{};return ro(r,(s,a)=>{const c=n(s,i+1);!Ji(c)&&(o[a]=c)}),t[i]=void 0,o}}return r};return n(e,0)},iw=Wt("AsyncFunction"),ow=e=>e&&(na(e)||xt(e))&&xt(e.then)&&xt(e.catch),R={isArray:Gr,isArrayBuffer:Qg,isBuffer:C1,isFormData:F1,isArrayBufferView:O1,isString:P1,isNumber:Jg,isBoolean:T1,isObject:na,isPlainObject:Ko,isUndefined:Ji,isDate:R1,isFile:N1,isBlob:A1,isRegExp:G1,isFunction:xt,isStream:L1,isURLSearchParams:M1,isTypedArray:q1,isFileList:I1,forEach:ro,merge:gc,extend:B1,trim:z1,stripBOM:U1,inherits:$1,toFlatObject:D1,kindOf:ea,kindOfTest:Wt,endsWith:H1,toArray:W1,forEachEntry:V1,matchAll:K1,isHTMLForm:Q1,hasOwnProperty:xf,hasOwnProp:xf,reduceDescriptors:Zg,freezeMethods:Y1,toObjectSet:X1,toCamelCase:J1,noop:Z1,toFiniteNumber:ew,findKey:Gg,global:Yg,isContextDefined:Xg,ALPHABET:em,generateString:tw,isSpecCompliantForm:nw,toJSONObject:rw,isAsyncFn:iw,isThenable:ow};function ne(e,t,n,r,i){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),i&&(this.response=i)}R.inherits(ne,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:R.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const tm=ne.prototype,nm={};["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=>{nm[e]={value:e}});Object.defineProperties(ne,nm);Object.defineProperty(tm,"isAxiosError",{value:!0});ne.from=(e,t,n,r,i,o)=>{const s=Object.create(tm);return R.toFlatObject(e,s,function(c){return c!==Error.prototype},a=>a!=="isAxiosError"),ne.call(s,e.message,t,n,r,i),s.cause=e,s.name=e.name,o&&Object.assign(s,o),s};const sw=null;function mc(e){return R.isPlainObject(e)||R.isArray(e)}function rm(e){return R.endsWith(e,"[]")?e.slice(0,-2):e}function _f(e,t,n){return e?e.concat(t).map(function(i,o){return i=rm(i),!n&&o?"["+i+"]":i}).join(n?".":""):t}function aw(e){return R.isArray(e)&&!e.some(mc)}const lw=R.toFlatObject(R,{},null,function(t){return/^is[A-Z]/.test(t)});function ra(e,t,n){if(!R.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=R.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,C){return!R.isUndefined(C[_])});const r=n.metaTokens,i=n.visitor||d,o=n.dots,s=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&R.isSpecCompliantForm(t);if(!R.isFunction(i))throw new TypeError("visitor must be a function");function u(y){if(y===null)return"";if(R.isDate(y))return y.toISOString();if(!c&&R.isBlob(y))throw new ne("Blob is not supported. Use a Buffer instead.");return R.isArrayBuffer(y)||R.isTypedArray(y)?c&&typeof Blob=="function"?new Blob([y]):Buffer.from(y):y}function d(y,_,C){let w=y;if(y&&!C&&typeof y=="object"){if(R.endsWith(_,"{}"))_=r?_:_.slice(0,-2),y=JSON.stringify(y);else if(R.isArray(y)&&aw(y)||(R.isFileList(y)||R.endsWith(_,"[]"))&&(w=R.toArray(y)))return _=rm(_),w.forEach(function(p,x){!(R.isUndefined(p)||p===null)&&t.append(s===!0?_f([_],x,o):s===null?_:_+"[]",u(p))}),!1}return mc(y)?!0:(t.append(_f(C,_,o),u(y)),!1)}const f=[],g=Object.assign(lw,{defaultVisitor:d,convertValue:u,isVisitable:mc});function h(y,_){if(!R.isUndefined(y)){if(f.indexOf(y)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(y),R.forEach(y,function(w,m){(!(R.isUndefined(w)||w===null)&&i.call(t,w,R.isString(m)?m.trim():m,_,g))===!0&&h(w,_?_.concat(m):[m])}),f.pop()}}if(!R.isObject(e))throw new TypeError("data must be an object");return h(e),t}function Sf(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function Ou(e,t){this._pairs=[],e&&ra(e,this,t)}const im=Ou.prototype;im.append=function(t,n){this._pairs.push([t,n])};im.toString=function(t){const n=t?function(r){return t.call(this,r,Sf)}:Sf;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};function cw(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function om(e,t,n){if(!t)return e;const r=n&&n.encode||cw,i=n&&n.serialize;let o;if(i?o=i(t,n):o=R.isURLSearchParams(t)?t.toString():new Ou(t,n).toString(r),o){const s=e.indexOf("#");s!==-1&&(e=e.slice(0,s)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class uw{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){R.forEach(this.handlers,function(r){r!==null&&t(r)})}}const jf=uw,sm={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},dw=typeof URLSearchParams<"u"?URLSearchParams:Ou,fw=typeof FormData<"u"?FormData:null,hw=typeof Blob<"u"?Blob:null,pw=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),gw=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),Ut={isBrowser:!0,classes:{URLSearchParams:dw,FormData:fw,Blob:hw},isStandardBrowserEnv:pw,isStandardBrowserWebWorkerEnv:gw,protocols:["http","https","file","blob","url","data"]};function mw(e,t){return ra(e,new Ut.classes.URLSearchParams,Object.assign({visitor:function(n,r,i,o){return Ut.isNode&&R.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function vw(e){return R.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function yw(e){const t={},n=Object.keys(e);let r;const i=n.length;let o;for(r=0;r=n.length;return s=!s&&R.isArray(i)?i.length:s,c?(R.hasOwnProp(i,s)?i[s]=[i[s],r]:i[s]=r,!a):((!i[s]||!R.isObject(i[s]))&&(i[s]=[]),t(n,r,i[s],o)&&R.isArray(i[s])&&(i[s]=yw(i[s])),!a)}if(R.isFormData(e)&&R.isFunction(e.entries)){const n={};return R.forEachEntry(e,(r,i)=>{t(vw(r),i,n,0)}),n}return null}const xw={"Content-Type":void 0};function ww(e,t,n){if(R.isString(e))try{return(t||JSON.parse)(e),R.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const ia={transitional:sm,adapter:["xhr","http"],transformRequest:[function(t,n){const r=n.getContentType()||"",i=r.indexOf("application/json")>-1,o=R.isObject(t);if(o&&R.isHTMLForm(t)&&(t=new FormData(t)),R.isFormData(t))return i&&i?JSON.stringify(am(t)):t;if(R.isArrayBuffer(t)||R.isBuffer(t)||R.isStream(t)||R.isFile(t)||R.isBlob(t))return t;if(R.isArrayBufferView(t))return t.buffer;if(R.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return mw(t,this.formSerializer).toString();if((a=R.isFileList(t))||r.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return ra(a?{"files[]":t}:t,c&&new c,this.formSerializer)}}return o||i?(n.setContentType("application/json",!1),ww(t)):t}],transformResponse:[function(t){const n=this.transitional||ia.transitional,r=n&&n.forcedJSONParsing,i=this.responseType==="json";if(t&&R.isString(t)&&(r&&!this.responseType||i)){const s=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(t)}catch(a){if(s)throw a.name==="SyntaxError"?ne.from(a,ne.ERR_BAD_RESPONSE,this,null,this.response):a}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Ut.classes.FormData,Blob:Ut.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};R.forEach(["delete","get","head"],function(t){ia.headers[t]={}});R.forEach(["post","put","patch"],function(t){ia.headers[t]=R.merge(xw)});const Pu=ia,_w=R.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"]),Sw=e=>{const t={};let n,r,i;return e&&e.split(` +`).forEach(function(s){i=s.indexOf(":"),n=s.substring(0,i).trim().toLowerCase(),r=s.substring(i+1).trim(),!(!n||t[n]&&_w[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},bf=Symbol("internals");function li(e){return e&&String(e).trim().toLowerCase()}function Qo(e){return e===!1||e==null?e:R.isArray(e)?e.map(Qo):String(e)}function jw(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 bw=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Ha(e,t,n,r,i){if(R.isFunction(r))return r.call(this,t,n);if(i&&(t=n),!!R.isString(t)){if(R.isString(r))return t.indexOf(r)!==-1;if(R.isRegExp(r))return r.test(t)}}function kw(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function Ew(e,t){const n=R.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(i,o,s){return this[r].call(this,t,i,o,s)},configurable:!0})})}class oa{constructor(t){t&&this.set(t)}set(t,n,r){const i=this;function o(a,c,u){const d=li(c);if(!d)throw new Error("header name must be a non-empty string");const f=R.findKey(i,d);(!f||i[f]===void 0||u===!0||u===void 0&&i[f]!==!1)&&(i[f||c]=Qo(a))}const s=(a,c)=>R.forEach(a,(u,d)=>o(u,d,c));return R.isPlainObject(t)||t instanceof this.constructor?s(t,n):R.isString(t)&&(t=t.trim())&&!bw(t)?s(Sw(t),n):t!=null&&o(n,t,r),this}get(t,n){if(t=li(t),t){const r=R.findKey(this,t);if(r){const i=this[r];if(!n)return i;if(n===!0)return jw(i);if(R.isFunction(n))return n.call(this,i,r);if(R.isRegExp(n))return n.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=li(t),t){const r=R.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||Ha(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let i=!1;function o(s){if(s=li(s),s){const a=R.findKey(r,s);a&&(!n||Ha(r,r[a],a,n))&&(delete r[a],i=!0)}}return R.isArray(t)?t.forEach(o):o(t),i}clear(t){const n=Object.keys(this);let r=n.length,i=!1;for(;r--;){const o=n[r];(!t||Ha(this,this[o],o,t,!0))&&(delete this[o],i=!0)}return i}normalize(t){const n=this,r={};return R.forEach(this,(i,o)=>{const s=R.findKey(r,o);if(s){n[s]=Qo(i),delete n[o];return}const a=t?kw(o):String(o).trim();a!==o&&delete n[o],n[a]=Qo(i),r[a]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return R.forEach(this,(r,i)=>{r!=null&&r!==!1&&(n[i]=t&&R.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(i=>r.set(i)),r}static accessor(t){const r=(this[bf]=this[bf]={accessors:{}}).accessors,i=this.prototype;function o(s){const a=li(s);r[a]||(Ew(i,s),r[a]=!0)}return R.isArray(t)?t.forEach(o):o(t),this}}oa.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);R.freezeMethods(oa.prototype);R.freezeMethods(oa);const Zt=oa;function Wa(e,t){const n=this||Pu,r=t||n,i=Zt.from(r.headers);let o=r.data;return R.forEach(e,function(a){o=a.call(n,o,i.normalize(),t?t.status:void 0)}),i.normalize(),o}function lm(e){return!!(e&&e.__CANCEL__)}function io(e,t,n){ne.call(this,e??"canceled",ne.ERR_CANCELED,t,n),this.name="CanceledError"}R.inherits(io,ne,{__CANCEL__:!0});function Cw(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new ne("Request failed with status code "+n.status,[ne.ERR_BAD_REQUEST,ne.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}const Ow=Ut.isStandardBrowserEnv?function(){return{write:function(n,r,i,o,s,a){const c=[];c.push(n+"="+encodeURIComponent(r)),R.isNumber(i)&&c.push("expires="+new Date(i).toGMTString()),R.isString(o)&&c.push("path="+o),R.isString(s)&&c.push("domain="+s),a===!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 Pw(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Tw(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function cm(e,t){return e&&!Pw(t)?Tw(e,t):t}const Rw=Ut.isStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");let r;function i(o){let s=o;return t&&(n.setAttribute("href",s),s=n.href),n.setAttribute("href",s),{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=i(window.location.href),function(s){const a=R.isString(s)?i(s):s;return a.protocol===r.protocol&&a.host===r.host}}():function(){return function(){return!0}}();function Nw(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Aw(e,t){e=e||10;const n=new Array(e),r=new Array(e);let i=0,o=0,s;return t=t!==void 0?t:1e3,function(c){const u=Date.now(),d=r[o];s||(s=u),n[i]=c,r[i]=u;let f=o,g=0;for(;f!==i;)g+=n[f++],f=f%e;if(i=(i+1)%e,i===o&&(o=(o+1)%e),u-s{const o=i.loaded,s=i.lengthComputable?i.total:void 0,a=o-n,c=r(a),u=o<=s;n=o;const d={loaded:o,total:s,progress:s?o/s:void 0,bytes:a,rate:c||void 0,estimated:c&&s&&u?(s-o)/c:void 0,event:i};d[t?"download":"upload"]=!0,e(d)}}const Iw=typeof XMLHttpRequest<"u",Lw=Iw&&function(e){return new Promise(function(n,r){let i=e.data;const o=Zt.from(e.headers).normalize(),s=e.responseType;let a;function c(){e.cancelToken&&e.cancelToken.unsubscribe(a),e.signal&&e.signal.removeEventListener("abort",a)}R.isFormData(i)&&(Ut.isStandardBrowserEnv||Ut.isStandardBrowserWebWorkerEnv?o.setContentType(!1):o.setContentType("multipart/form-data;",!1));let u=new XMLHttpRequest;if(e.auth){const h=e.auth.username||"",y=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";o.set("Authorization","Basic "+btoa(h+":"+y))}const d=cm(e.baseURL,e.url);u.open(e.method.toUpperCase(),om(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout;function f(){if(!u)return;const h=Zt.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders()),_={data:!s||s==="text"||s==="json"?u.responseText:u.response,status:u.status,statusText:u.statusText,headers:h,config:e,request:u};Cw(function(w){n(w),c()},function(w){r(w),c()},_),u=null}if("onloadend"in u?u.onloadend=f:u.onreadystatechange=function(){!u||u.readyState!==4||u.status===0&&!(u.responseURL&&u.responseURL.indexOf("file:")===0)||setTimeout(f)},u.onabort=function(){u&&(r(new ne("Request aborted",ne.ECONNABORTED,e,u)),u=null)},u.onerror=function(){r(new ne("Network Error",ne.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let y=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const _=e.transitional||sm;e.timeoutErrorMessage&&(y=e.timeoutErrorMessage),r(new ne(y,_.clarifyTimeoutError?ne.ETIMEDOUT:ne.ECONNABORTED,e,u)),u=null},Ut.isStandardBrowserEnv){const h=(e.withCredentials||Rw(d))&&e.xsrfCookieName&&Ow.read(e.xsrfCookieName);h&&o.set(e.xsrfHeaderName,h)}i===void 0&&o.setContentType(null),"setRequestHeader"in u&&R.forEach(o.toJSON(),function(y,_){u.setRequestHeader(_,y)}),R.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&s!=="json"&&(u.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&u.addEventListener("progress",kf(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&u.upload&&u.upload.addEventListener("progress",kf(e.onUploadProgress)),(e.cancelToken||e.signal)&&(a=h=>{u&&(r(!h||h.type?new io(null,e,u):h),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(a),e.signal&&(e.signal.aborted?a():e.signal.addEventListener("abort",a)));const g=Nw(d);if(g&&Ut.protocols.indexOf(g)===-1){r(new ne("Unsupported protocol "+g+":",ne.ERR_BAD_REQUEST,e));return}u.send(i||null)})},Jo={http:sw,xhr:Lw};R.forEach(Jo,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Fw={getAdapter:e=>{e=R.isArray(e)?e:[e];const{length:t}=e;let n,r;for(let i=0;ie instanceof Zt?e.toJSON():e;function Dr(e,t){t=t||{};const n={};function r(u,d,f){return R.isPlainObject(u)&&R.isPlainObject(d)?R.merge.call({caseless:f},u,d):R.isPlainObject(d)?R.merge({},d):R.isArray(d)?d.slice():d}function i(u,d,f){if(R.isUndefined(d)){if(!R.isUndefined(u))return r(void 0,u,f)}else return r(u,d,f)}function o(u,d){if(!R.isUndefined(d))return r(void 0,d)}function s(u,d){if(R.isUndefined(d)){if(!R.isUndefined(u))return r(void 0,u)}else return r(void 0,d)}function a(u,d,f){if(f in t)return r(u,d);if(f in e)return r(void 0,u)}const c={url:o,method:o,data:o,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(u,d)=>i(Cf(u),Cf(d),!0)};return R.forEach(Object.keys(Object.assign({},e,t)),function(d){const f=c[d]||i,g=f(e[d],t[d],d);R.isUndefined(g)&&f!==a||(n[d]=g)}),n}const um="1.4.0",Tu={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Tu[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const Of={};Tu.transitional=function(t,n,r){function i(o,s){return"[Axios v"+um+"] Transitional option '"+o+"'"+s+(r?". "+r:"")}return(o,s,a)=>{if(t===!1)throw new ne(i(s," has been removed"+(n?" in "+n:"")),ne.ERR_DEPRECATED);return n&&!Of[s]&&(Of[s]=!0,console.warn(i(s," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,s,a):!0}};function Mw(e,t,n){if(typeof e!="object")throw new ne("options must be an object",ne.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let i=r.length;for(;i-- >0;){const o=r[i],s=t[o];if(s){const a=e[o],c=a===void 0||s(a,o,e);if(c!==!0)throw new ne("option "+o+" must be "+c,ne.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new ne("Unknown option "+o,ne.ERR_BAD_OPTION)}}const vc={assertOptions:Mw,validators:Tu},ln=vc.validators;class Cs{constructor(t){this.defaults=t,this.interceptors={request:new jf,response:new jf}}request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Dr(this.defaults,n);const{transitional:r,paramsSerializer:i,headers:o}=n;r!==void 0&&vc.assertOptions(r,{silentJSONParsing:ln.transitional(ln.boolean),forcedJSONParsing:ln.transitional(ln.boolean),clarifyTimeoutError:ln.transitional(ln.boolean)},!1),i!=null&&(R.isFunction(i)?n.paramsSerializer={serialize:i}:vc.assertOptions(i,{encode:ln.function,serialize:ln.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s;s=o&&R.merge(o.common,o[n.method]),s&&R.forEach(["delete","get","head","post","put","patch","common"],y=>{delete o[y]}),n.headers=Zt.concat(s,o);const a=[];let c=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(c=c&&_.synchronous,a.unshift(_.fulfilled,_.rejected))});const u=[];this.interceptors.response.forEach(function(_){u.push(_.fulfilled,_.rejected)});let d,f=0,g;if(!c){const y=[Ef.bind(this),void 0];for(y.unshift.apply(y,a),y.push.apply(y,u),g=y.length,d=Promise.resolve(n);f{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](i);r._listeners=null}),this.promise.then=i=>{let o;const s=new Promise(a=>{r.subscribe(a),o=a}).then(i);return s.cancel=function(){r.unsubscribe(o)},s},t(function(o,s,a){r.reason||(r.reason=new io(o,s,a),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 Ru(function(i){t=i}),cancel:t}}}const zw=Ru;function Bw(e){return function(n){return e.apply(null,n)}}function Uw(e){return R.isObject(e)&&e.isAxiosError===!0}const yc={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(yc).forEach(([e,t])=>{yc[t]=e});const $w=yc;function dm(e){const t=new Go(e),n=Kg(Go.prototype.request,t);return R.extend(n,Go.prototype,t,{allOwnKeys:!0}),R.extend(n,t,null,{allOwnKeys:!0}),n.create=function(i){return dm(Dr(e,i))},n}const Ne=dm(Pu);Ne.Axios=Go;Ne.CanceledError=io;Ne.CancelToken=zw;Ne.isCancel=lm;Ne.VERSION=um;Ne.toFormData=ra;Ne.AxiosError=ne;Ne.Cancel=Ne.CanceledError;Ne.all=function(t){return Promise.all(t)};Ne.spread=Bw;Ne.isAxiosError=Uw;Ne.mergeConfig=Dr;Ne.AxiosHeaders=Zt;Ne.formToJSON=e=>am(R.isHTMLForm(e)?new FormData(e):e);Ne.HttpStatusCode=$w;Ne.default=Ne;const Pr=Ne,fm=e=>hm+e,hm=window.location.protocol+"//127.0.0.1:8000",Dw={authority:fm("/api/auth/vvsu/"),client_id:"it-hub-client",redirect_uri:"https://pairent.vvsu.ru/sign-in/",scope:"openid vvsu_IdUser vvsu_IdEmpl vvsu_IdStud vvsu_login given_name family_name"},oo=Object.freeze({API_ROOT:hm,OIDCConfig:Dw,api_path:fm}),{API_ROOT:Va}=oo;class Yr{static async getAll(t,n){return await Pr.get(Va+"/api/apartaments/",{params:{limit:t,...n!==0?{offset:n}:{}}})}static async getById(t){return await Pr.get(Va+"/api/apartament/"+t+"/")}static async getComparisons(){return await Pr.get(Va+"/api/comparison/")}}const Hw=P.section` + display: flex; + justify-content: space-between; + margin-top: 22px; +`,Ww=P.div` + display: flex; + & img { + } +`,qw=P.img` + width: 350px; + height: 250px; +`,Vw=P.div` + padding-left: 34px; + & h3 { + font-weight: 600; + font-size: 24px; + color: #222; + } +`,Kw=P.p` + margin-top: 4px; + font-size: 16px; + color: #222; +`,Pf=P.div` + display: flex; + justify-content: space-around; + align-items: center; + width: fit-content; + height: 38px; + border: 1px solid #A9A9A9; + border-radius: 16px; + margin-right: 8px; + padding-right: 8px; +`,Qw=P.div` + display: flex; + margin-top: 10px; + & p { + font-weight: 500; + font-size: 15px; + color: #A9A9A9; + } +`,ar=P.td` + width: fit-content; + padding: 0 5px; + border-right: 1px solid #e1e3e1; + & ${Y} { + display:inline-block; + } +`,Jw=P.div` + width: 500px; + padding-top: 10px; + display: flex +`,Yo=P.div` + width: 32px; + height: 32px; + margin-right: 10px; + + user-select: none; + font-weight: 600; + font-size: 16px; + + display: flex; + align-items: center; + + border: 1px solid black; + border-color: #e2e0e2 #e2e0e2 #d1cfd1; + border-radius: 32px; + + box-shadow: 0 1px 1px #00000020; +`,Gw=P.div``,Yw=P(Yo)` + width: fit-content; + background: #E3F0FF; + color: #007EFF; + padding-right: 10px; +`,pm=P.div``,Xw=P.div` + text-align: right; + & ${pm} { + display: flex; + justify-content: end; + align-items: center; + } +`,Nu=P.p` + color: gray; +`,Zw=P(Nu)` + font-size: 16px; + margin-right: 18px +`,e_=P(Nu)` + margin-top: 48px; + font-size: 15px; + line-height: 18px; + word-wrap: break-word; +`,t_=P(Nu)` + margin-top: 48px; + font-size: 15px; +`,n_=e=>l.jsx("svg",{width:"14",height:"12",viewBox:"0 0 14 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{transform:`rotate(${e.up?180:0}deg)`,marginRight:4},children:l.jsx("path",{d:"M7 12L13.9282 0H0.0717969L7 12Z",fill:e.up?"tomato":"limegreen"})}),r_=function(e){return l.jsxs(Hw,{children:[l.jsxs(Ww,{children:[l.jsx(qw,{src:"/images/apartment.png"}),l.jsxs(Vw,{children:[l.jsxs("h3",{children:[e.results.perimetrs," м², ",e.results.rooms==0?"":e.results.rooms,e.results.rooms==0?"Гостинка":e.results.rooms>1?"-х комнатная":" комнатная"]}),l.jsxs(Kw,{children:[e.results.address,", ",e.results.floor," этаж из ",e.results.floorHouse]}),l.jsxs(Qw,{children:[l.jsxs(Pf,{children:[l.jsx(Y,{src:"/images/icons/bus.svg",width:20,height:21}),l.jsxs("p",{children:[e.results.timeToBus," мин"]})]}),l.jsxs(Pf,{children:[l.jsx(Y,{src:"/images/icons/train.svg",width:18,height:20}),l.jsxs("p",{children:[e.results.timeToTrain," мин"]})]})]}),l.jsx("div",{style:{height:24}}),l.jsx("table",{children:l.jsxs("tbody",{children:[l.jsxs("tr",{children:[l.jsxs(ar,{children:[l.jsx(Y,{src:"/images/icons/chair.svg"}),l.jsx(Y,{src:"/images/icons/paw.svg"})]}),l.jsxs(ar,{children:[l.jsx(Y,{src:"/images/icons/parking.svg"}),l.jsx(Y,{src:"/images/icons/dish.svg"})]}),l.jsxs(ar,{style:{borderRight:0},children:[l.jsx(Y,{src:"/images/icons/burger.svg"}),l.jsx(Y,{src:"/images/icons/game.svg"})]})]}),l.jsxs("tr",{children:[l.jsxs(ar,{children:[l.jsx(Y,{src:"/images/icons/wifi.svg"}),l.jsx(Y,{src:"/images/icons/paint.svg"})]}),l.jsxs(ar,{children:[l.jsx(Y,{src:"/images/icons/recycle.svg"}),l.jsx(Y,{src:"/images/icons/up-down-arrows.svg"})]}),l.jsxs(ar,{style:{borderRight:0},children:[l.jsx(Y,{src:"/images/icons/store.svg"}),l.jsx(Y,{src:"/images/icons/drugs.svg"})]})]})]})}),l.jsx("div",{style:{height:12}}),l.jsxs(Jw,{children:[l.jsxs(Yw,{children:[l.jsx(Y,{src:"/images/icons/phone.svg",width:16,height:17}),l.jsx(Gw,{children:"Показать телефон"})]}),l.jsx(Yo,{children:l.jsx(Y,{src:"/images/icons/heart.svg",width:18,height:17})}),l.jsx(Yo,{children:l.jsx(Y,{src:"/images/icons/stack.svg",width:18,height:19})}),l.jsx(Yo,{children:l.jsx(Y,{src:"/images/icons/pencil.svg",width:16,height:17})})]})]})]}),l.jsxs(Xw,{children:[l.jsxs(pm,{children:[l.jsx(n_,{up:e.results.lastPrice>e.results.price}),l.jsxs("h3",{children:[e.results.price," ₽"]})]}),l.jsx(Zw,{children:"в месяц"}),l.jsx(e_,{children:e.results.description}),l.jsx(t_,{children:e.results.dateCreate})]})]})},i_=P.li` + border-bottom: 1px solid; + border-image: linear-gradient(to right, transparent 33.5%, #c2c4c2 33.5%) 100% 1; + box-sizing: border-box; + list-style-type: none; + padding: 20px 0; + + & section { + margin-top: 0; + } +`;function gm(e){const t=e.list;return t.length==0?null:l.jsx("ul",{children:t.map((n,r)=>l.jsx(i_,{children:l.jsx(r_,{results:n})},r))})}const Xr=e=>{const[t,n]=N.useState(!1),[r,i]=N.useState("");return[async(...s)=>{try{n(!0),await e(...s)}catch(a){i(a.message)}finally{n(!1)}},t,r]},sa=(e,t)=>Math.ceil(e/t),Au=e=>{let t=[];for(let n=0;n{let n=Au(e),r=t!==1?t-1:t,i=te.is_active?` + color: royalblue; + font-weight: 600; + border: 1px solid royalblue; + `:""} + + &:hover { + background: #f2f2f2; + } + + &:active { + background: #eeefee; + } +`,a_=P(mi)` + background: url(/images/icons/dots.svg) no-repeat; + background-position: center; + background-size: 20px; + user-select: none; + + &:hover, &:active { + background: url(/images/icons/caret-double-blue.svg) no-repeat; + background-position: center; + background-size: 14px; + } +`,l_=(e,t)=>{if(tthis.props.pages&&(n=this.props.pages)),this.props.onChange(n),!this.value_controlled&&this.setState({value:n})}render(){const{pages:n}=this.props;let r=this.state.value;return this.value_controlled&&(r=this.props.value),l.jsxs(s_,{children:[this.props.viewAllButton?l.jsx(mi,{style:{float:"left",padding:"0 16px"},children:"Показать все"}):null,this.props.sideButtons?l.jsx(mi,{onClick:()=>this.updateValue(r-1),children:l.jsx(Tf,{width:"16",height:"16",style:{transform:"rotate(180deg) translateY(-2px)"},src:"/images/icons/caret-right.svg"})}):null,l_(0,n).map((i,o)=>!(o==0|o==n-1)&&or+2?o==r-3|o==r+3?l.jsx(a_,{style:{transform:o==r-3?"rotate(180deg)":""},onClick:()=>{o==r-3?this.updateValue(r-3):this.updateValue(r+3)},children:" "}):null:l.jsx(mi,{is_active:r==o,onClick:()=>this.updateValue(o),children:o+1},o)),this.props.sideButtons?l.jsx(mi,{onClick:()=>this.updateValue(r+1),children:l.jsx(Tf,{width:"16",height:"16",src:"/images/icons/caret-right.svg"})}):null]})}}Ie(aa,"defaultProps",{onChange:()=>{},disabled:!1,sideButtons:!0,value:0,styles:{},viewAllButton:!1,onViewAll:()=>{}});const c_=()=>{const[e,t]=N.useState([]),[n,r]=N.useState(0),[i,o]=N.useState(1),[s,a]=N.useState(5),[c,u,d]=Xr(async h=>{let y=(i-1)*h;const _=await Yr.getAll(h,y);t(_.data.results);let C=_.data.count;r(sa(C,h))});N.useEffect(()=>{c(s)},[i,s]);const f=h=>{o(h)},g=()=>{a(n*s),o(1)};return!e.length&&!u&&!d?l.jsx("h1",{style:{textAlign:"center"},children:"В избранном ничего нет :/"}):d?l.jsxs("h1",{style:{textAlign:"center"},children:["Произошла ошибка (",d,")"]}):l.jsxs(l.Fragment,{children:[u&&l.jsx("h1",{style:{textAlign:"center"},children:"Идет загрузка..."}),l.jsx(gm,{list:e}),l.jsx(aa,{value:i,onChange:f,onViewAll:g,viewAllButton:!0,pages:n})]})};const mm=function(e){return l.jsxs("div",{className:"viewedElem",children:[l.jsx("img",{src:"/images/apartment.png",alt:""}),l.jsxs("p",{children:[e.results.perimetrs," м², ",e.results.rooms==0?"":e.results.rooms,e.results.rooms==0?"Гостинка":e.results.rooms>1?"-х комнатная":" комнатная"]}),l.jsxs("h3",{children:[e.results.price,"₽ / мес."]}),l.jsx("p",{children:e.results.address})]})};const Iu=function(){const[e,t]=N.useState([]),[n,r]=N.useState(0),[i,o]=N.useState(1),s=4,[a,c]=N.useState(0),[u,d,f]=Xr(async h=>{let y=(i-1)*h;const _=await Yr.getAll(h,y);t(_.data.results),c(_.data.count),r(sa(a,h))});N.useEffect(()=>{u(s)},[i]);const g=h=>{o(h)};return l.jsx(l.Fragment,{children:l.jsxs("section",{className:"viewedSection",children:[l.jsxs("div",{className:"viewedTittle",children:[l.jsxs("h2",{children:["Недавно просмотренные ",l.jsx("span",{children:a})]}),l.jsxs("div",{className:"viewedBtnSection",children:[l.jsx("button",{className:"btnViewed",children:"Посмотреть все Недавние"}),l.jsxs("div",{className:"viewedBtn",children:[l.jsx("button",{className:"btnPrevious",onClick:()=>g(i!==1?i-1:i),children:l.jsx("svg",{width:"9",height:"16",viewBox:"0 0 9 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:l.jsx("path",{d:"M0.238707 8.62179L6.83881 15.7424C7.15713 16.0859 7.6732 16.0859 7.99148 15.7424L8.76127 14.9119C9.07904 14.5691 9.07965 14.0134 8.76263 13.6698L3.53193 7.99998L8.76263 2.33019C9.07965 1.98655 9.07904 1.43091 8.76127 1.08808L7.99148 0.257567C7.67316 -0.0858556 7.15709 -0.0858556 6.83881 0.257567L0.238741 7.37821C-0.0795746 7.72159 -0.0795746 8.27837 0.238707 8.62179Z",fill:"black"})})}),l.jsx("button",{className:"btnNext",onClick:()=>g(il.jsx(l.Fragment,{children:l.jsx(mm,{results:h},y)}))})})]})})};const Rf=function(){return l.jsxs(l.Fragment,{children:[l.jsx("h2",{children:"Избранное"}),l.jsx(c_,{}),l.jsx(Iu,{})]})},u_=P.section` + display: flex; + justify-content: space-between; + margin-top: 24px; + padding: 0 3% 0 3%; +`,Nf=P.div` + display: flex; + align-items: center; + & h2 { + margin: 0px; + padding: 0px; + margin-left: 31px; + font-size: 24px; + color: #222; + } +`,d_=P.button` + display: flex; + justify-content: space-evenly; + align-items: center; + width: 180px; + height: 36px; + color: #BABABA; + background: #fff; + border: 1px solid #ccc; + border-radius: 12px; + font-size: 15px; +`,Af=P.button` + display: flex; + align-items: center; + justify-content: center; + width: 32px; + height: 32px; + border-radius: 20px; + background: #fff; + box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25); + margin-right: 10px; +`,f_=function({title:e,totalPages:t,page:n,changePage:r,displayPages:i}){let[o,s]=o_(t,n);return l.jsxs(u_,{children:[l.jsxs(Nf,{children:[l.jsx(Mn,{to:"/",children:l.jsxs(d_,{children:[l.jsx(Y,{src:"/images/icons/left-arrow-light.svg",width:10,height:16}),"Вернуться назад"]})}),l.jsx("h2",{children:e})]}),l.jsx(Nf,{children:i?l.jsxs(l.Fragment,{children:[l.jsx(Af,{onClick:()=>r(o),children:l.jsx(Y,{src:"/images/icons/left-arrow.svg",width:9,height:16})}),l.jsx(Af,{onClick:()=>r(s),children:l.jsx(Y,{src:"/images/icons/right-arrow.svg",width:9,height:16})})]}):null})]})},h_=P.div` + width: 20%; + margin-top: 26px; + position:relative; +`,p_=P.img` + width: 100%; +`,g_=P.h3` + margin-top: 16px; + font-weight: 600; + font-size: 20px; + color: #222; +`,m_=P.p` + margin-top: 16px; + font-size: 16px; + color: #0050A1; +`,v_=P.div` + display: flex; + margin-top: 9px; + & p { + font-weight: 500; + font-size: 15px; + color: #A9A9A9; + } +`,If=P.div` + display: flex; + justify-content: space-around; + align-items: center; + width: fit-content; + height: 38px; + border: 1px solid #A9A9A9; + border-radius: 16px; + margin-right: 8px; + padding-right: 8px; +`,y_=P.button` + width: 180px; + height: 36px; + background: #175FA9; + border-radius: 12px; + font-weight: 500; + font-size: 16px; + color: #fff; + position: absolute; + bottom:-62px; +`,x_=function(e){return l.jsxs(h_,{children:[l.jsx(p_,{src:"/images/apartment.png"}),l.jsxs(g_,{children:[e.results.price," ₽ / мес."]}),l.jsx(m_,{children:e.results.address}),l.jsxs(v_,{children:[l.jsxs(If,{children:[l.jsx(Y,{src:"/images/icons/bus.svg",width:20,height:21}),l.jsxs("p",{children:[e.results.timeToBus," мин"]})]}),l.jsxs(If,{children:[l.jsx(Y,{src:"/images/icons/train.svg",width:18,height:20}),l.jsxs("p",{children:[e.results.timeToTrain," мин"]})]})]}),l.jsx(y_,{children:"Показать контакты"})]})},w_=P.section` + display: flex; + justify-content: space-between; + padding-left: 3%; +`,__=P.div` + width: 19%; +`,Ka=P.h3` + font-weight: 600; + font-size: 16px; + display: flex; + align-items: center; +`,Qa=P.div` + margin-top: 86px; +`,Ja=P.p` + margin-left: 3%; + font-weight: 500; + font-size: 16px; + color: rgba(0, 0, 0, 0.5); +`,Ga=P.div` + height: 2px; + margin-top: 8px; + width: 100%; + background-color: #CCC; +`,Ya=P.section` + display: flex; + justify-content: space-between; + margin-left: 3%; +`,me=P.h3` + margin-top: 33px; + font-weight: 600; + font-size: 16px; +`,Xe=P.p` + color: rgba(0, 0, 0, 0.5); + margin-top: 33px; + font-weight: 600; + font-size: 16px; +`,Xa=P.div` + width: 20%; + text-align: center; +`,S_=()=>{const[e,t]=N.useState([]),[n,r]=N.useState(0),[i,o]=N.useState(1),s=4,[a,c,u]=Xr(async f=>{let g=(i-1)*f;const h=await Yr.getAll(f,g);t(h.data.results);let y=h.data.count;r(sa(y,f))});N.useEffect(()=>{a(s)},[i]);const d=f=>{o(f)};return l.jsxs(l.Fragment,{children:[l.jsx(f_,{title:"Сравнения квартир",totalPages:n,page:i,changePage:d,displayPages:!0}),l.jsxs(w_,{children:[l.jsxs(__,{children:[l.jsx(Ka,{style:{height:300},children:"Фото"}),l.jsx(Ka,{style:{height:1},children:"Cтоимость"}),l.jsx(Ka,{style:{height:65},children:"Адрес"})]}),e.map((f,g)=>l.jsx(l.Fragment,{children:l.jsx(x_,{results:f})}))]}),l.jsxs(Qa,{children:[l.jsx(Ja,{children:"Характеристики"}),l.jsx(Ga,{})]}),l.jsxs(Ya,{children:[l.jsxs("div",{children:[l.jsx(me,{children:"Количество комнат"}),l.jsx(me,{children:"Этаж"}),l.jsx(me,{children:"Общая площадь"}),l.jsx(me,{children:"Санузел"})]}),e.map((f,g)=>l.jsxs(Xa,{children:[l.jsx(me,{children:f.rooms===0?"Гостинка":f.rooms}),l.jsxs(me,{children:[f.floor," из ",f.floorHouse]}),l.jsxs(me,{children:[f.perimetrs," м²"]}),l.jsx(Xe,{children:f.isBathroom?"✓":"—"})]}))]}),l.jsxs(Qa,{children:[l.jsx(Ja,{children:"Удобства"}),l.jsx(Ga,{})]}),l.jsxs(Ya,{children:[l.jsxs("div",{children:[l.jsx(me,{children:"Мебель"}),l.jsx(me,{children:"Интернет"}),l.jsx(me,{children:"Телевизор"}),l.jsx(me,{children:"Стиральная машинка"}),l.jsx(me,{children:"Холодильник"}),l.jsx(me,{children:"Кондиционер"}),l.jsx(me,{children:"Можно с детьми"}),l.jsx(me,{children:"Можно с животными"}),l.jsx(me,{children:"Свежий ремонт"})]}),e.map((f,g)=>l.jsxs(Xa,{children:[l.jsx(Xe,{children:f.isFurniture?"✓":"—"}),l.jsx(Xe,{children:f.isInternet?"✓":"—"}),l.jsx(Xe,{children:f.isTelevision?"✓":"—"}),l.jsx(Xe,{children:f.isWasher?"✓":"—"}),l.jsx(Xe,{children:f.isRefrigerator?"✓":"—"}),l.jsx(Xe,{children:f.isAirConditioning?"✓":"—"}),l.jsx(Xe,{children:f.isChild?"✓":"—"}),l.jsx(Xe,{children:f.isAnimal?"✓":"—"}),l.jsx(Xe,{children:f.isFreshRepair?"✓":"—"})]}))]}),l.jsxs(Qa,{children:[l.jsx(Ja,{children:"О здании"}),l.jsx(Ga,{})]}),l.jsxs(Ya,{children:[l.jsxs("div",{children:[l.jsx(me,{children:"Высота потолков"}),l.jsx(me,{children:"Количество этажей"}),l.jsx(me,{children:"Лифт"}),l.jsx(me,{children:"Мусоропровод"}),l.jsx(me,{children:"Закрытая парковка"}),l.jsx(me,{children:"Охрана или консьерж"})]}),e.map((f,g)=>l.jsxs(Xa,{children:[l.jsxs(me,{children:[f.ceilingHeight," м"]}),l.jsx(me,{children:f.floorHouse}),l.jsx(Xe,{children:f.isElevator?"✓":"—"}),l.jsx(Xe,{children:f.isGarbageChute?"✓":"—"}),l.jsx(Xe,{children:f.isParking?"✓":"—"}),l.jsx(Xe,{children:f.isConcierge?"✓":"—"})]}))]})]})},Lf=function(){return l.jsxs(l.Fragment,{children:[l.jsx(S_,{}),l.jsx(Iu,{})]})},j_=function(){const[e,t]=N.useState([]),[n,r]=N.useState(0),[i,o]=N.useState(1),s=4,[a,c]=N.useState(0),[u,d,f]=Xr(async h=>{let y=(i-1)*h;const _=await Yr.getAll(h,y);t(_.data.results),c(_.data.count),r(sa(a,h))});N.useEffect(()=>{u(s)},[i]);const g=h=>{o(h)};return l.jsx(l.Fragment,{children:l.jsxs("section",{className:"viewedSection",children:[l.jsxs("div",{className:"viewedTittle",children:[l.jsxs("h2",{children:["Похожие объявления ",l.jsx("span",{children:a})]}),l.jsxs("div",{className:"viewedBtnSection",children:[l.jsx("button",{className:"btnViewed",children:"Посмотреть все Похожие"}),l.jsxs("div",{className:"viewedBtn",children:[l.jsx("button",{className:"btnPrevious",onClick:()=>g(i!==1?i-1:i),children:l.jsx("svg",{width:"9",height:"16",viewBox:"0 0 9 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:l.jsx("path",{d:"M0.238707 8.62179L6.83881 15.7424C7.15713 16.0859 7.6732 16.0859 7.99148 15.7424L8.76127 14.9119C9.07904 14.5691 9.07965 14.0134 8.76263 13.6698L3.53193 7.99998L8.76263 2.33019C9.07965 1.98655 9.07904 1.43091 8.76127 1.08808L7.99148 0.257567C7.67316 -0.0858556 7.15709 -0.0858556 6.83881 0.257567L0.238741 7.37821C-0.0795746 7.72159 -0.0795746 8.27837 0.238707 8.62179Z",fill:"black"})})}),l.jsx("button",{className:"btnNext",onClick:()=>g(il.jsx(l.Fragment,{children:l.jsx(mm,{results:h},y)}))})})]})})};var vm={exports:{}};/*! + Copyright (c) 2018 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/(function(e){(function(){var t={}.hasOwnProperty;function n(){for(var r=[],i=0;i{const u=r[c];delete r[c];let d,f,g;typeof u=="object"&&u!=null?{span:d,offset:f,order:g}=u:d=u;const h=c!==o?`-${c}`:"";d&&s.push(d===!0?`${t}${h}`:`${t}${h}-${d}`),g!=null&&a.push(`order${h}-${g}`),f!=null&&a.push(`offset${h}-${f}`)}),[{...r,className:so(n,...s,...a)},{as:e,bsPrefix:t,spans:s}]}const wm=N.forwardRef((e,t)=>{const[{className:n,...r},{as:i="div",bsPrefix:o,spans:s}]=C_(e);return l.jsx(i,{...r,ref:t,className:so(n,!s.length&&o)})});wm.displayName="Col";const le=wm,_m=N.forwardRef(({bsPrefix:e,fluid:t=!1,as:n="div",className:r,...i},o)=>{const s=la(e,"container"),a=typeof t=="string"?`-${t}`:"-fluid";return l.jsx(n,{ref:o,...i,className:so(r,t?`${s}${a}`:s)})});_m.displayName="Container";const O_=_m,Sm=N.forwardRef(({bsPrefix:e,className:t,as:n="div",...r},i)=>{const o=la(e,"row"),s=Fu(),a=Mu(),c=`${o}-cols`,u=[];return s.forEach(d=>{const f=r[d];delete r[d];let g;f!=null&&typeof f=="object"?{cols:g}=f:g=f;const h=d!==a?`-${d}`:"";g!=null&&u.push(`${c}${h}-${g}`)}),l.jsx(n,{ref:i,...r,className:so(t,o,...u)})});Sm.displayName="Row";const at=Sm;function P_(e,t=ym,n=xm){const r=[];return Object.entries(e).forEach(([i,o])=>{o!=null&&(typeof o=="object"?t.forEach(s=>{const a=o[s];if(a!=null){const c=s!==n?`-${s}`:"";r.push(`${i}${c}-${a}`)}}):r.push(`${i}-${o}`))}),r}const jm=N.forwardRef(({as:e="div",bsPrefix:t,className:n,direction:r,gap:i,...o},s)=>{t=la(t,r==="horizontal"?"hstack":"vstack");const a=Fu(),c=Mu();return l.jsx(e,{...o,ref:s,className:so(n,t,...P_({gap:i},a,c))})});jm.displayName="Stack";const Dn=jm;var bm={exports:{}};(function(e,t){(function(r,i){e.exports=i(zu(),N)})(Jt,function(n,r){return function(i){var o={};function s(a){if(o[a])return o[a].exports;var c=o[a]={i:a,l:!1,exports:{}};return i[a].call(c.exports,c,c.exports,s),c.l=!0,c.exports}return s.m=i,s.c=o,s.d=function(a,c,u){s.o(a,c)||Object.defineProperty(a,c,{enumerable:!0,get:u})},s.r=function(a){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})},s.t=function(a,c){if(1&c&&(a=s(a)),8&c||4&c&&typeof a=="object"&&a&&a.__esModule)return a;var u=Object.create(null);if(s.r(u),Object.defineProperty(u,"default",{enumerable:!0,value:a}),2&c&&typeof a!="string")for(var d in a)s.d(u,d,function(f){return a[f]}.bind(null,d));return u},s.n=function(a){var c=a&&a.__esModule?function(){return a.default}:function(){return a};return s.d(c,"a",c),c},s.o=function(a,c){return Object.prototype.hasOwnProperty.call(a,c)},s.p="",s(s.s=5)}([function(i,o,s){function a(f,g){for(var h=0;h0||y.image.height>0)&&_(!0))})}},{key:"loadImage",value:function(h){var y=this,_=new Image,C=!1;_.onload=function(){C||y.pumpLoaded()},_.onerror=function(){C||y.pumpLoaded()},_.src=h,C===!1&&(_.width>0||_.height>0)&&(C=!0,this.pumpLoaded())}},{key:"loadVideo",value:function(h){var y=this,_=document.createElement("video");_.addEventListener("loadeddata",function(){y.pumpLoaded()}),_.addEventListener("error",function(){y.pumpLoaded()}),_.setAttribute("src",h)}},{key:"pumpLoaded",value:function(){this.loaded+=1,this.loaded===this.toLoad&&this.resolver(!0)}},{key:"startLoad",value:function(h){h.match(/\.(mp4|webm)/i)&&this.loadVideo(h),h.match(/\.(png|jp(e)?g|gif|webp)/i)&&this.loadImage(h)}},{key:"loadMultiple",value:function(h){var y=this;return this.loaded=0,this.toLoad=h.length,new Promise(function(_){y.resolver=_,h.forEach(function(C){y.startLoad(C)})})}}]),f}();function u(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],g=arguments.length>1?arguments[1]:void 0;if(!g)return f.join(" ").trim();for(var h=[],y=f.length;y--;)g[f[y]]&&h.push(g[f[y]]);return h}function d(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",g=arguments.length>1?arguments[1]:void 0;return g&&g[f]||f}},function(i,o,s){s.d(o,"a",function(){return g}),s.d(o,"b",function(){return h}),s.d(o,"c",function(){return y}),s.d(o,"e",function(){return _}),s.d(o,"d",function(){return C}),s.d(o,"g",function(){return w}),s.d(o,"f",function(){return m});var a=s(0);function c(p){return function(j){if(Array.isArray(j)){for(var b=0,k=new Array(j.length);b2&&arguments[2]!==void 0?arguments[2]:{},_=y.tolerance,C=_===void 0?0:_,w=y.propertyName;return new Promise(function(m){if(g){var p=null,x=h.charAt(0).toUpperCase()+h.slice(1),j=0;g.style["Webkit"+x]!==void 0&&(p="webkit"+x+"End"),g.style.OTransition!==void 0&&(p="o"+h+"End"),g.style[h]!==void 0&&(p=h+"end"),g.clearCssEndEvent&&g.clearCssEndEvent(),g.clearCssEndEvent=function(){g.removeEventListener(p,b)},g.addEventListener(p,b)}else m(!1);function b(k){if((k.srcElement||k.target)===g){if(j>=C){if(w&&w!==k.propertyName)return;g.removeEventListener(p,b),m(k)}j+=1}}})}function f(g){window&&window.requestAnimationFrame(function(){window.requestAnimationFrame(g)})}Object.defineProperty(c,"__esModule",{value:!0}),c.setCssEndEvent=d,c.beforeCssLayout=function(g){window&&window.requestAnimationFrame(g)},c.beforeNextCssLayout=f,c.beforeFutureCssLayout=function(g,h){(function y(_,C){window&&_&&Number.isInteger(_)&&_>0?window.requestAnimationFrame(function(){y(_-1,C)}):C()})(g+1,h)},c.onceNextCssLayout=function(){return new Promise(function(g){f(g)})},c.onceTransitionEnd=function(g){var h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return new Promise(function(y){d(g,"transition",h).then(y)})},c.onceAnimationEnd=function(g){var h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return new Promise(function(y){d(g,"animation",h).then(y)})}}])},function(i,o,s){i.exports=s(13)},,,,,,,,function(i,o,s){s.r(o);var a=s(3),c=s.n(a),u=s(2),d=s.n(u),f=s(4),g=s(0),h=s(1);function y(L){return(y=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(E){return typeof E}:function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E})(L)}function _(L,I){for(var E=0;EA);v.props.onClick({index:A,direction:q})}),v.rootElement=E.rootElement,v}return function(v,S){if(typeof S!="function"&&S!==null)throw new TypeError("Super expression must either be null or a function");v.prototype=Object.create(S&&S.prototype,{constructor:{value:v,writable:!0,configurable:!0}}),S&&m(v,S)}(I,L),function(v,S,T){return S&&_(v.prototype,S),T&&_(v,T),v}(I,[{key:"renderBullets",value:function(){var v=this,S=this.props,T=S.cssModule,A=S.selected,q=S.media;return(q===void 0?[]:q).map(function(X,K){var se=K===A?Object(g.c)("".concat(v.rootElement,"__bullets--active"),T):null;return c.a.createElement("button",{key:"bullet-".concat(K),"data-index":K,onClick:v.bulletClick,className:se},K)})}},{key:"render",value:function(){var v=this.props,S=v.cssModule,T=v.rootElement;return c.a.createElement("nav",{className:Object(g.c)("".concat(T,"__bullets"),S)},this.renderBullets())}}]),I}(c.a.Component);function j(L){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(E){return typeof E}:function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E})(L)}function b(L,I){for(var E=0;E=0||(Se[K]=q[K]);return Se}(L,I);if(Object.getOwnPropertySymbols){var T=Object.getOwnPropertySymbols(L);for(v=0;v=0||Object.prototype.propertyIsEnumerable.call(L,E)&&(S[E]=L[E])}return S}function U(L,I){for(var E=0;E0),se=Math.abs(A);v.touchEnabled!==!1?se>=10&&(v.loading===!1?v.goTo({index:K?v.index+1:v.index-1,direction:K,touch:!0}):v.direction===!0?(A+=10,Math.abs(A)>q.offsetWidth?A=-q.offsetWidth:A>0&&(A=0),q.style.transform="translate3d(".concat(A,"px, 0, 0)"),X.style.transform="translate3d(calc(100% + ".concat(A,"px), 0, 0)")):(A-=10,Math.abs(A)>q.offsetWidth?A=q.offsetWidth:A<0&&(A=0),q.style.transform="translate3d(".concat(A,"px, 0, 0)"),X.style.transform="translate3d(calc(-100% + ".concat(A,"px), 0, 0)"))):se>20&&(v.touchEnabled=!0,v.touchStartPoint=T.touches[0].clientX)}}),ye(kt(v),"touchEnd",function(){!v.animating&&v.touchStartPoint&&v.loading&&(v.touchStartPoint=null,v.animating=!0,v.touchEnabled=!1,v.animateMobileEnd(function(){v.index=v.nextIndex,v.setState({index:v.index}),v.onTransitionEnd(),v.animating=!1,v.loading=!1,v.unchargeIndex()}))}),ye(kt(v),"bulletClick",function(S){var T=S.currentTarget,A=parseInt(T.getAttribute("data-index"),10);v.goTo({index:A,direction:!(v.index>A)},function(){Object(f.onceNextCssLayout)().then(function(){Object(h.a)(T,v.classNames.bulletsLoading)})})}),v.rootElement=E.rootElement||ir,v.boxA=null,v.boxB=null,v.loaded=[],v.active="boxA",v.loader="boxB",v.nextIndex=null,v.loading=!1,v.media=null,v.started=!1,v.touchEnabled=!1,v.setupStartup(E),v}return function(v,S){if(typeof S!="function"&&S!==null)throw new TypeError("Super expression must either be null or a function");v.prototype=Object.create(S&&S.prototype,{constructor:{value:v,writable:!0,configurable:!0}}),S&&qt(v,S)}(I,L),function(v,S,T){return S&&qe(v.prototype,S),T&&qe(v,T),v}(I,[{key:"componentDidMount",value:function(){var v=this;Object(h.a)(this.boxA,this.classNames.active),this.props.startupScreen&&(this.buttons&&(Object(h.a)(this.buttons.element,this.classNames.controlsHidden),Object(h.a)(this.buttons.element,this.classNames.controlsActive)),this.props.startup===!0&&this.media.length>0&&this.startup()),this.props.onFirstMount&&this.props.onFirstMount(Ee({},this.getInfo())),this.buttons&&Object(f.onceNextCssLayout)().then(function(){v.buttons&&v.buttons.element&&Object(h.b)(v.buttons.element,v.classNames.controlsHidden)})}},{key:"UNSAFE_componentWillReceiveProps",value:function(v){if(this.checkChildren(v),this.setupClassNames(Object(h.e)(v.cssModule)),v.name===this.props.name)if(v.startup!==!0||this.started!==!1)if(v.selected===this.props.selected)this.refreshSlider();else{var S=this.getIndex(v.selected),T=v.infinite===!0&&S===0&&this.index===this.media.length-1||!(this.index>S);this.goTo({index:S,direction:T})}else this.startup();else this.resetSlider(v.selected)}},{key:"onTransitionStart",value:function(){var v=this.media[this.index],S=this.media[this.nextIndex],T=Ee({},this.getInfo(),{nextSlide:this[this.loader],nextIndex:this.nextIndex,nextMedia:S});this.props.onTransitionStart&&this.props.onTransitionStart(T),v&&v.onTransitionStartOut&&v.onTransitionStartOut(T),S&&S.onTransitionStartIn&&S.onTransitionStartIn(T)}},{key:"onTransitionRequest",value:function(v,S){var T=this.media[this.index],A=this.checkIndex(S),q=this.media[A],X=Ee({eventName:v},this.getInfo(),{nextSlide:null,nextIndex:A,nextMedia:q});this.props.onTransitionRequest&&this.props.onTransitionRequest(X),T&&T.onTransitionRequestOut&&T.onTransitionRequestOut(X),q&&q.onTransitionRequestIn&&q.onTransitionRequestIn(X)}},{key:"onTransitionEnd",value:function(){var v=this.media[this.index],S=Ee({},this.getInfo());this.props.onTransitionEnd&&this.props.onTransitionEnd(S),v&&v.onTransitionEnd&&v.onTransitionEnd(S)}},{key:"getRootClassName",value:function(){var v=this.props,S=v.animation,T=v.className,A=v.cssModule,q=v.disabled,X=v.fillParent,K=v.infinite,se=v.organicArrows;return Object(h.d)({animation:S,className:T,cssModule:Object(h.e)(A),current:this.state.index,disabled:q,fillParent:X,infinite:K,organicArrows:se,rootElement:this.rootElement,total:this.media.length})}},{key:"setupStartup",value:function(v){if(this.checkChildren(v),this.setupClassNames(Object(h.e)(v.cssModule)),v.startupScreen){var S=this.getIndex(this.props.selected);this.index=null,this.state={index:this.index,boxA:{className:this.classNames.startUp,children:v.startupScreen},boxB:this.media[S]||null}}else this.started=!0,this.index=this.getIndex(this.props.selected),this.state={index:this.index,boxA:this.media[this.index]||null,boxB:null}}},{key:"getInfo",value:function(){return{slides:this.media.length,currentIndex:this.index,currentSlide:this[this.active],currentMedia:this.media[this.index],element:this.slider}}},{key:"getProgressBar",value:function(){if(!document)return{};var v=document.createElement("div");return v.className=this.classNames.bar,v}},{key:"setupClassNames",value:function(v){this.classNames=Object(h.f)(this.rootElement,v)}},{key:"getIndex",value:function(v){var S=0;return typeof v=="number"?v:(typeof v=="string"&&this.media.forEach(function(T,A){T.slug===v&&(S=A)}),S)}},{key:"refreshSlider",value:function(){var v;if(this.loading!==!0&&this.props.startup!==!1&&this.index!==null){var S=this.index;this.setState((ye(v={index:S},this.active,this.media[this.getIndex(S)]),ye(v,this.loader,null),v))}}},{key:"startup",value:function(){var v=this;this.started=!0,setTimeout(function(){v.goTo({index:v.props.selected,direction:!0,touch:!1})},this.props.startupDelay||75)}},{key:"resetSlider",value:function(){var v,S=this,T=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;this.index=T,this.setState((ye(v={index:T},this.active,this.media[this.getIndex(T)]),ye(v,this.loader,null),v),function(){S.props.onResetSlider&&S.props.onResetSlider(Ee({},S.getInfo()))})}},{key:"checkChildren",value:function(v){v.children&&(v.children!==this.props.children||this.props.children&&!this.media)?this.media=Object(h.g)(v.children):v.media&&v.media.length?this.media=v.media:this.media||(this.media=[])}},{key:"startBarAnimation",value:function(v){var S=this,T=v.active;return new Promise(function(A){S.bar=S.getProgressBar(),T.appendChild(S.bar),Object(f.onceNextCssLayout)().then(function(){Object(f.onceNextCssLayout)().then(function(){Object(h.a)(S.bar,S.classNames.barActive),A()})})})}},{key:"endBarAnimation",value:function(v){var S=this;this.bar&&Object(f.onceNextCssLayout)().then(function(){Object(f.onceTransitionEnd)(S.bar).then(function(){v()}),Object(h.a)(S.bar,S.classNames.barEnd)})}},{key:"loadContent",value:function(v,S){var T=this;return new Promise(function(A,q){if(T.props.onLoadStart||S&&S.onLoadStart){var X=T.props.onLoadStart||S&&S.onLoadStart;return T.startBarAnimation({active:v}),void X(Ee({next:function(){T.endBarAnimation(function(){A(T.bar)})},error:q},T.getInfo()))}if(S&&(S.source||S.preload)){var K=S.preload?S.preload:S.source&&[S.source]||[];return T.checkLoadedUrls(K)===!0?void A(null):(T.startBarAnimation({active:v}),void or.loadMultiple(K).then(function(){T.pushLoaded(K),T.endBarAnimation(function(){A(T.bar)})}))}A(null)})}},{key:"pushLoaded",value:function(v){this.loaded=[].concat(ke(this.loaded),ke(v))}},{key:"checkLoadedUrls",value:function(v){var S=this,T=!0;return v.forEach(function(A){S.loaded.includes(A)||(T=!1)}),T}},{key:"startAnimationMobile",value:function(){var v=this.direction,S=this[this.active],T=this[this.loader],A=v?this.classNames.contentMoveRight:this.classNames.contentMoveLeft,q=v?this.classNames.contentMoveLeft:this.classNames.contentMoveRight;this.props.onTransitionStart&&this.props.onTransitionStart(Ee({},this.getInfo(),{nextSlide:this[this.loader],nextIndex:this.nextIndex,nextMedia:this.media[this.nextIndex]}));var X=S.querySelector(".".concat(Object(h.c)(this.classNames.content)));Object(h.a)(X,q),Object(h.a)(X,this.classNames.contentExit);var K=T.querySelector(".".concat(Object(h.c)(this.classNames.content)));Object(h.a)(K,A),Object(h.a)(K,this.classNames.contentStatic),Object(h.a)(S,this.classNames.animated),Object(h.a)(T,this.classNames.animated)}},{key:"animateMobileEnd",value:function(v){var S=this,T=this.direction,A=this[this.active],q=this[this.loader],X=T?this.classNames.moveLeft:this.classNames.moveRight,K=T?this.classNames.contentMoveRight:this.classNames.contentMoveLeft,se=T?this.classNames.contentMoveLeft:this.classNames.contentMoveRight,Se=q.querySelector(".".concat(Object(h.c)(this.classNames.content))),Ae=A.querySelector(".".concat(Object(h.c)(this.classNames.content)));Object(h.b)(Se,this.classNames.contentStatic),Object(h.a)(q,this.classNames.animatedMobile),Object(h.a)(A,this.classNames.animatedMobile),Object(f.onceNextCssLayout)().then(function(){q.style.transform="translate3d(0, 0, 0)",A.style.transform="translate3d(".concat(S.direction?"-":"","100%, 0, 0)"),Object(f.onceTransitionEnd)(A).then(function(){S.loading&&(Object(h.b)(A,S.classNames.animated),Object(h.b)(q,S.classNames.animated),Object(h.a)(q,S.classNames.active),Object(h.b)(A,S.classNames.active),Object(h.b)(A,X),Object(h.b)(q,S.classNames.animatedMobile),Object(h.b)(A,S.classNames.animatedMobile),Object(h.b)(Ae,se),Object(h.b)(Ae,S.classNames.contentExit),Object(h.b)(Se,K),S.buttons&&setTimeout(function(){S.buttons&&Object(h.b)(S.buttons.element,S.classNames.controlsActive)},S.props.controlsReturnDelay),S.activeArrow&&(Object(h.b)(S.activeArrow,S.activeArrowClass),S.activeArrow=null,S.activeArrowClass=null),S.active=S.active==="boxA"?"boxB":"boxA",S.loader=S.active==="boxA"?"boxB":"boxA",v&&v())})})}},{key:"runAnimation",value:function(v){var S=this,T=v.active,A=v.media,q=v.contentExitMoveClass,X=v.contentEnterMoveClass,K=v.activeContentElement,se=v.loaderContentElement,Se=v.loader,Ae=v.loaderPosition,Ve=v.exitPosition,sn=v.callback,Ye=v.transitionDelay;this.loadContent(T,A).then(function(Hu){Object(h.a)(K,q),Object(h.a)(K,S.classNames.contentExit),Object(h.a)(se,X),Object(h.a)(se,S.classNames.contentStatic),setTimeout(function(){Object(f.onceNextCssLayout)().then(function(){Object(h.a)(T,S.classNames.animated),Object(h.a)(Se,S.classNames.animated),Object(h.b)(se,S.classNames.contentStatic),Object(h.a)(T,S.classNames.exit),Object(h.a)(Se,Ae),Object(h.a)(T,Ve),Object(f.onceAnimationEnd)(T).then(function(){Object(h.a)(Se,S.classNames.active),Object(h.b)(Se,Ae),Object(h.b)(Se,S.classNames.animated),Object(h.b)(T,S.classNames.animated),Object(h.b)(T,S.classNames.active),Object(h.b)(T,Ve),Object(h.b)(T,S.classNames.exit),Object(h.b)(K,q),Object(h.b)(K,S.classNames.contentExit),Object(h.b)(se,X),Hu&&T.removeChild(Hu),S.buttons&&setTimeout(function(){S.buttons&&Object(h.b)(S.buttons.element,S.classNames.controlsActive)},S.props.controlsReturnDelay),S.active=S.active==="boxA"?"boxB":"boxA",S.loader=S.active==="boxA"?"boxB":"boxA";var qm=!S.activeArrow;S.activeArrow&&(Object(f.onceTransitionEnd)(S.activeArrow,{tolerance:S.index===null?0:2}).then(function(){S.releaseTransition()}),Object(h.b)(S.activeArrow,S.activeArrowClass),S.activeArrow=null,S.activeArrowClass=null),sn({release:qm})})})},Ye)})}},{key:"releaseTransition",value:function(){this.loading=!1}},{key:"startAnimation",value:function(v,S,T){var A=this.props.transitionDelay,q=this[this.active],X=this[this.loader],K=v?this.classNames.moveRight:this.classNames.moveLeft,se=v?this.classNames.moveLeft:this.classNames.moveRight,Se=v?this.classNames.contentMoveRight:this.classNames.contentMoveLeft,Ae=v?this.classNames.contentMoveLeft:this.classNames.contentMoveRight,Ve=q.querySelector(".".concat(Object(h.c)(this.classNames.content))),sn=X.querySelector(".".concat(Object(h.c)(this.classNames.content)));q.style.removeProperty("transform"),X.style.removeProperty("transform"),this.onTransitionStart();var Ye={active:q,media:S,contentExitMoveClass:Ae,contentEnterMoveClass:Se,activeContentElement:Ve,loaderContentElement:sn,loader:X,loaderPosition:K,exitPosition:se,callback:T,transitionDelay:A};this.runAnimation(Ye)}},{key:"goTo",value:function(v){var S=this,T=v.index,A=v.direction,q=v.touch,X=q!==void 0&&q,K=this.getIndex(T);this.loading!==!0&&T!==this.index?(this.loading=!0,this.direction=A,X!==!0?this.activateArrows(A,function(){S.chargeIndex(K,function(se){S.renderedLoader=!0,S.startAnimation(A,se,function(Se){var Ae=Se.release,Ve=Ae===void 0||Ae;S.index=S.nextIndex,S.setState({index:S.index},function(){S.onTransitionEnd(),Ve===!0&&S.releaseTransition()})})})}):this.chargeIndex(K,function(){S.activateArrows(A),S.startAnimationMobile()})):this.props.onTransitionReject&&this.props.onTransitionReject(Ee({},this.getInfo(),{forceTransition:function(){S.goTo({index:T,direction:A,touch:X})}}))}},{key:"checkIndex",value:function(v){return v>this.media.length-1?0:v<0?this.media.length-1:v}},{key:"chargeIndex",value:function(v,S){this.nextIndex=this.checkIndex(v);var T={},A=this.media[this.nextIndex];T[this.loader]=Ee({loader:!0},A),this.setState(T,function(){S(A)})}},{key:"unchargeIndex",value:function(){var v={};v[this.loader]=null,this.setState(v,function(){})}},{key:"activateArrows",value:function(v,S){var T=v?"right":"left",A=Object(h.e)(this.props.cssModule),q=Object(h.c)(Object(g.c)("".concat(this.rootElement,"__controls__arrow-").concat(T),A));if(this.buttons){var X=v?this.buttons.next:this.buttons.prev;this.activeArrow=X.querySelector(".".concat(q))}!this.activeArrow||this.buttons&&this.buttons.element&&this.buttons.element.classList.contains(this.classNames.controlsActive)?S&&S():(this.activeArrowClass=Object(g.c)("".concat(this.rootElement,"__controls__arrow-").concat(T,"--active"),A),Object(f.onceTransitionEnd)(this.activeArrow,{tolerance:this.index===null?0:2}).then(function(){S&&S()}),this.buttons&&this.buttons.element&&(Object(h.a)(this.buttons.element,this.classNames.controlsActive),Object(h.a)(this.activeArrow,this.activeArrowClass)))}},{key:"renderBox",value:function(v){var S=this,T={};return this.props.mobileTouch&&(T.onTouchStart=this.touchStart,T.onTouchMove=this.touchMove,T.onTouchEnd=this.touchEnd),c.a.createElement("div",oe({ref:function(q){S["box".concat(v)]=q},className:this.classNames.box},T),this.state["box".concat(v)]&&c.a.createElement(W,{media:this.state["box".concat(v)],className:this.classNames.content}))}},{key:"render",value:function(){var v=this,S=this.props,T=S.cssModule,A=S.organicArrows,q=S.bullets,X=S.style,K=S.customContent,se=S.buttons,Se=S.buttonContentLeft,Ae=S.buttonContentRight,Ve=this.rootElement;return c.a.createElement("div",{ref:function(Ye){v.slider=Ye},className:this.getRootClassName(),style:X},c.a.createElement("div",{ref:function(Ye){v.wrapper=Ye},className:this.classNames.wrapper},c.a.createElement("div",{ref:function(Ye){v.container=Ye},className:this.classNames.container},this.renderBox("A"),this.renderBox("B")),se&&c.a.createElement(H,{rootElement:Ve,cssModule:Object(h.e)(T),onMount:function(Ye){v.buttons=Ye},onNext:this.clickNext,onPrev:this.clickPrev,organicArrows:A,buttonContentLeft:Se,buttonContentRight:Ae}),K),q&&c.a.createElement(x,{cssModule:Object(h.e)(T),rootElement:Ve,media:this.media,selected:this.state.index,onClick:function(Ye){v.onTransitionRequest("bullet",Ye.index),v.goTo(Ye)}}))}}]),I}(c.a.Component);ye(ht,"propTypes",{animation:d.a.string,bullets:d.a.bool,buttonContentLeft:d.a.node,buttonContentRight:d.a.node,buttons:d.a.bool,children:d.a.node,className:d.a.string,controlsReturnDelay:d.a.number,cssModule:d.a.any,customContent:d.a.node,onLoadStart:d.a.func,disabled:d.a.bool,fillParent:d.a.bool,infinite:d.a.bool,media:d.a.array,name:d.a.string,onFirstMount:d.a.func,onResetSlider:d.a.func,onStartupRelease:d.a.func,onTransitionEnd:d.a.func,onTransitionRequest:d.a.func,onTransitionStart:d.a.func,organicArrows:d.a.bool,rootElement:d.a.string,selected:d.a.any,startup:d.a.bool,startupDelay:d.a.number,startupScreen:d.a.object,style:d.a.object,transitionDelay:d.a.number,mobileTouch:d.a.bool}),ye(ht,"defaultProps",{animation:null,bullets:!0,buttonContentLeft:null,buttonContentRight:null,buttons:!0,children:null,className:null,controlsReturnDelay:0,cssModule:null,customContent:null,onLoadStart:null,disabled:!1,fillParent:!1,infinite:!0,media:[],name:"awesome-slider",onFirstMount:null,onResetSlider:null,onStartupRelease:null,onTransitionEnd:null,onTransitionRequest:null,onTransitionStart:null,organicArrows:!0,rootElement:ir,selected:0,startup:!0,startupDelay:0,startupScreen:null,style:{},transitionDelay:0,mobileTouch:!0}),o.default=ht}])})})(bm);var T_=bm.exports;const km=Pn(T_),R_="";const zt=P(Y)` + margin-left: 0px; + margin-right: 0px; +`,N_=P.div` + max-width: 800px; +`,A_=P.div` + max-width: 800px; + max-height: 500px; + + clip-path: inset(0% 0% 5% 0% round 20px); +`,I_=P.div` + font-size: 15px; + line-height: 18px; + font-weight: 300; + color: #C0C0C0; + margin-bottom: 8px; + display: flex; + align-items: center; + + & span { + margin-left: 15px; + font-size: 15px; + line-height: 18px; + font-weight: 300; + color: #C0C0C0; + } +`,L_=P.h3` + font-size: 20px; + line-height: 24px; + font-weight: 500; + margin-bottom: 10px; +`,F_=P.button` + display: flex; + align-items: center; + justify-content: center; + width: 32px; + height: 32px; + border-radius: 20px; + background: #FFFFFF; + box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25); + margin-right: 10px; +`,M_=P.button` + display: flex; + align-items: center; + justify-content: center; + background: #FFFFFF; + width: 201px; + height: 28px; + box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25); + border-radius: 8px; + font-style: normal; + font-weight: 500; + font-size: 14px; + margin-bottom: 12px; +`,Bf=P.div` + background: #E3F0FF; + border-radius: 20px; + padding: 13px 16px 11px 17px; +`,z_=P.p` + font-style: normal; + font-weight: 600; + font-size: 16px; + line-height: 18px; + margin-bottom: 15px; +`,B_=P.h3` + font-size: 15px; + line-height: 18px; + text-align: end; +`,ci=P.div` + height: 1px; + margin-top: 9px; + margin-bottom: 9px; + width: 100%; + background-color: #CCC; +`,nl=P.div` + max-width: 256px; + max-height: 160px; + background: #FFFFFF; + border: 1px solid #C0C0C0; + border-radius: 20px; + padding: 8px; + + + &:hover { + box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25); + cursor: pointer; + } +`,rl=P.img` + width:100%; + max-height: 120px; + margin-bottom: 4px; + border-radius: 12px; +`,il=P.p` + font-weight: 500; + font-size: 16px; + line-height: 15px; +`,ol=P.span` + font-weight: 500; + font-size: 14px; + line-height: 17px; + color: #BABABA; +`,U_=P.h3` + font-weight: 600; + font-size: 20px; + line-height: 24px; + padding-left: 0px; + margin-top: 35px; + margin-bottom: 10px; +`,$_=P.p` + font-weight: 500; + font-size: 15px; + line-height: 18px; +`,Uf=P.button` + background: #007EFF; + border-radius: 12px; + height: 36px; + width: 100%; + + display: flex; + align-items: center; + justify-content: center; + text-align: center; + + font-weight: 500; + font-size: 16px; + line-height: 19px; + + color: #FFFFFF; + + &:hover { + box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25); + cursor: pointer; + } +`,D_=P.button` + border-radius: 12px; + background: #2348CC; + height: 36px; + width: 100%; + + display: flex; + align-items: center; + justify-content: center; + text-align: center; + + font-weight: 500; + font-size: 16px; + line-height: 19px; + color: #FFFFFF; + + &:hover { + box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25); + cursor: pointer; + } +`,H_=P.input` + border: 1px solid #CCCCCC; + border-radius: 12px; + height: 36px; + width: 100%; + + font-weight: 500; + font-size: 15px; + line-height: 18px; + + padding-left: 46px; + + &::placeholder { + font-weight: 500; + font-size: 15px; + line-height: 18px; + color: #CCCCCC; + } +`,W_=P.div` + align-items: center; + justify-content: center; + text-align: center; +`,Em=P.p` + font-weight: 500; + font-size: 20px; + line-height: 24px; + color: #000000; +`,xc=P(Em)` + font-size: 15px; + line-height: 18px; +`,q_=P.p` + font-weight: 300; + font-size: 16px; + line-height: 24px; + color: #C0C0C0; +`,V_=P.div` + position: relative; + + & input { + padding-left: 30px; + background-image: url("/images/icons/pencil-gray.svg"); + background-size: 16px 16px; + background-repeat: no-repeat; + background-position: 8px 0.6rem; + } +`,$f=P.table` + margin-left: 15px; + width: 100%; + + & td { + padding-top: 19px; + } +`,lr=e=>l.jsxs(at,{children:[l.jsx(le,{xs:e.columnsize,children:l.jsx(z_,{children:e.title})}),l.jsx(le,{className:"end",children:l.jsx(B_,{children:e.price})})]}),sl=e=>l.jsx(le,{children:l.jsxs(W_,{children:[l.jsx(Em,{children:e.params}),l.jsx(q_,{children:e.title})]})}),al=e=>l.jsxs(at,{style:{marginBottom:16},children:[l.jsx(le,{xs:2,className:"d-flex justify-content-center",children:l.jsx(zt,{src:e.icon,width:e.width,height:e.height})}),l.jsx(le,{children:l.jsx(xc,{children:e.text})})]}),In=e=>l.jsxs(at,{children:[l.jsx(le,{xs:1,children:l.jsx(zt,{src:e.iconFirst,width:20,height:20})}),l.jsx(le,{xs:5,children:l.jsx(xc,{children:e.textFirst})}),l.jsx(le,{xs:1,children:l.jsx(zt,{src:e.iconSecond,width:20,height:20})}),l.jsx(le,{xs:5,children:l.jsx(xc,{children:e.textSecond})})]}),K_=function(){const t=Qy().id,[n,r]=N.useState([]),[i,o,s]=Xr(async a=>{const c=await Yr.getById(a);r(c.data)});return N.useEffect(()=>{i(t)},[]),l.jsx(O_,{fluid:"xl",style:{marginBottom:50,marginTop:50},children:l.jsxs(at,{children:[l.jsx(le,{xs:8,children:l.jsx(Dn,{children:l.jsxs(N_,{children:[l.jsx(A_,{children:l.jsxs(km,{cssModule:R_,bullets:!1,children:[l.jsx("div",{"data-src":"/images/house-s.jpg"}),l.jsx("div",{"data-src":"/images/house-s-2.jpg"})]})}),l.jsxs(at,{children:[l.jsx(le,{xs:4,children:l.jsxs(nl,{children:[l.jsx(rl,{src:"/images/plan.png"}),l.jsx(il,{children:"Планировка"}),l.jsx(ol,{children:"Схема помещений"})]})}),l.jsx(le,{xs:4,children:l.jsxs(nl,{children:[l.jsx(rl,{src:"/images/location.png"}),l.jsx(il,{children:"Расположение"}),l.jsx(ol,{children:"Показать на карте"})]})}),l.jsx(le,{xs:4,children:l.jsxs(nl,{children:[l.jsx(rl,{src:"/images/panorama.png"}),l.jsx(il,{children:"Панорама"}),l.jsx(ol,{children:"Обзор вокруг"})]})})]}),l.jsxs("div",{children:[l.jsx(U_,{children:"Описание"}),l.jsx($_,{children:n.description})]}),l.jsx(j_,{}),l.jsx(Iu,{})]})})}),l.jsx(le,{xs:4,children:l.jsxs(Dn,{children:[l.jsx("div",{style:{marginBottom:12},children:l.jsxs(I_,{children:[n.dateCreate," ",l.jsx("span",{children:"78"})," ",l.jsx(zt,{style:{marginLeft:5},src:"/images/icons/eye.svg",width:16,height:10})]})}),l.jsxs(L_,{children:[n.perimetrs," м², ",n.rooms==0?"":n.rooms,n.rooms==0?"Гостинка":n.rooms>1?"-х комнатная":" комнатная"]}),l.jsx("div",{children:l.jsxs(at,{children:[l.jsx(le,{xs:10,children:l.jsxs("h1",{style:{marginBottom:12},children:[n.price," ₽ / мес."]})}),l.jsx(le,{xs:2,children:l.jsx(F_,{children:l.jsx(zt,{src:"/images/icons/heart.svg",width:18,height:16})})})]})}),l.jsxs(M_,{children:[l.jsx(zt,{style:{marginRight:5},src:"/images/icons/stats.svg",width:16,height:12}),"Добавить к сравнению"]}),l.jsxs(Bf,{children:[l.jsxs(Dn,{children:[l.jsx(lr,{columnsize:9,title:"Оплата в первый месяц",price:`${n.price} ₽`}),l.jsx(lr,{columnsize:9,title:"Залог",price:`${n.bail} ₽`}),l.jsx(lr,{columnsize:9,title:"Комиссия агенству",price:`${n.agencyCommission} ₽`}),l.jsx(lr,{columnsize:9,title:"Коммун. услуги",price:`${n.utilitiesPrice}`})]}),l.jsx(ci,{}),l.jsxs(Dn,{children:[l.jsx(lr,{columnsize:8,title:"Итого",price:`${n.price+n.bail+n.agencyCommission} ₽ + КУ`}),l.jsx(lr,{columnsize:9,title:"Мин. срок аренды",price:`${n.minimumLeasePeriod} мес.`})]})]}),l.jsxs(at,{style:{marginTop:14},children:[l.jsx(le,{xs:7,children:l.jsxs(Uf,{children:[l.jsx(zt,{style:{marginRight:5},src:"/images/icons/two-people.svg",width:20,height:16}),"Снимать вдвоём"]})}),l.jsx(le,{children:l.jsxs(Uf,{children:[l.jsx(zt,{style:{marginRight:5},src:"/images/icons/people.svg",width:14,height:16}),"Снять"]})})]}),l.jsxs(D_,{style:{marginTop:12},children:[l.jsx(zt,{style:{marginRight:5},src:"/images/icons/phone-white.svg",width:16,height:16}),"Показать телефон +7 (xxx) xxx-xx-xx"]}),l.jsx(V_,{children:l.jsx(H_,{style:{marginTop:12},placeholder:"Добавить заметку"})}),l.jsx(ci,{style:{marginTop:17}}),l.jsxs(at,{children:[l.jsx(sl,{params:`${n.perimetrs} м²`,title:"общая"}),l.jsx(sl,{params:`${n.ceilingHeight} м`,title:"потолки"}),l.jsx(sl,{params:`${n.floor} этаж`,title:`из ${n.floorHouse}`})]}),l.jsx(ci,{}),l.jsxs($f,{children:[l.jsx("tr",{children:l.jsx("td",{children:l.jsx(In,{iconFirst:"/images/icons/chair-dark.svg",textFirst:"Мебель",iconSecond:"/images/icons/paw-dark.svg",textSecond:"Можно с питомцем"})})}),l.jsx("tr",{children:l.jsx("td",{children:l.jsx(In,{iconFirst:"/images/icons/tv-dark.svg",textFirst:"Телевизор",iconSecond:"/images/icons/child-dark.svg",textSecond:"Можно с детьми"})})}),l.jsx("tr",{children:l.jsx("td",{children:l.jsx(In,{iconFirst:"/images/icons/wifi-dark.svg",textFirst:"Интернет",iconSecond:"/images/icons/toilet-dark.svg",textSecond:"Санузел"})})}),l.jsx("tr",{children:l.jsx("td",{children:l.jsx(In,{iconFirst:"/images/icons/snowflake-dark.svg",textFirst:"Холодильник",iconSecond:"/images/icons/socks-dark.svg",textSecond:"Стиральная машина"})})}),l.jsx("tr",{children:l.jsx("td",{children:l.jsx(In,{iconFirst:"/images/icons/fan-dark.svg",textFirst:"Кондиционер",iconSecond:"/images/icons/paint-dark.svg",textSecond:"Свежий ремонт"})})})]}),l.jsx(ci,{style:{marginTop:19}}),l.jsxs($f,{children:[l.jsx("tr",{children:l.jsx("td",{children:l.jsx(In,{iconFirst:"/images/icons/up-down-arrows-dark.svg",textFirst:"Лифт",iconSecond:"/images/icons/parking-dark.svg",textSecond:"Парковка"})})}),l.jsx("tr",{children:l.jsx("td",{children:l.jsx(In,{iconFirst:"/images/icons/recycle-dark.svg",textFirst:"Мусоропровод",iconSecond:"/images/icons/dish-dark.svg",textSecond:"Консьерж"})})})]}),l.jsx(ci,{style:{marginTop:19,marginBottom:19}}),l.jsx(al,{icon:"/images/icons/pin.svg",width:12,height:20,text:n.address}),l.jsx(al,{icon:"/images/icons/bus-dark.svg",width:20,height:20,text:`${n.timeToBus} минут до остановки`}),l.jsx(al,{icon:"/images/icons/train-dark.svg",width:20,height:20,text:`${n.timeToTrain} минут до станции`}),l.jsx(Bf,{style:{marginTop:18},children:l.jsxs(at,{children:[l.jsx(le,{xs:2,children:l.jsx(zt,{style:{marginRight:5},src:"/images/icons/thinking-face.svg",width:60,height:64})}),l.jsxs(le,{children:[l.jsx("h4",{style:{marginBottom:4},children:"Не подходит квартира?"}),"Попробуйте сменить настройки поиска на главной странице."]})]})})]})})]})})};class Df{constructor(){Ie(this,"from");Ie(this,"to")}}let Q_=class{constructor(){Ie(this,"price_range");Ie(this,"area_range");Ie(this,"lease_period");Ie(this,"address");Ie(this,"rooms");this.price_range=new Df,this.area_range=new Df,this.lease_period=[],this.address="",this.rooms=0}};var J_={cm:!0,mm:!0,in:!0,px:!0,pt:!0,pc:!0,em:!0,ex:!0,ch:!0,rem:!0,vw:!0,vh:!0,vmin:!0,vmax:!0,"%":!0};function Cm(e){if(typeof e=="number")return{value:e,unit:"px"};var t,n=(e.match(/^[0-9.]*/)||"").toString();n.includes(".")?t=parseFloat(n):t=parseInt(n,10);var r=(e.match(/[^0-9]*$/)||"").toString();return J_[r]?{value:t,unit:r}:(console.warn("React Spinners: ".concat(e," is not a valid css value. Defaulting to ").concat(t,"px.")),{value:t,unit:"px"})}function Oo(e){var t=Cm(e);return"".concat(t.value).concat(t.unit)}var Hf=function(e,t,n){var r="react-spinners-".concat(e,"-").concat(n);if(typeof window>"u"||!window.document)return r;var i=document.createElement("style");document.head.appendChild(i);var o=i.sheet,s=` + @keyframes `.concat(r,` { + `).concat(t,` + } + `);return o&&o.insertRule(s,0),r},Os;(function(e){e.maroon="#800000",e.red="#FF0000",e.orange="#FFA500",e.yellow="#FFFF00",e.olive="#808000",e.green="#008000",e.purple="#800080",e.fuchsia="#FF00FF",e.lime="#00FF00",e.teal="#008080",e.aqua="#00FFFF",e.blue="#0000FF",e.navy="#000080",e.black="#000000",e.gray="#808080",e.silver="#C0C0C0",e.white="#FFFFFF"})(Os||(Os={}));var G_=function(e,t){if(Object.keys(Os).includes(e)&&(e=Os[e]),e[0]==="#"&&(e=e.slice(1)),e.length===3){var n="";e.split("").forEach(function(i){n+=i,n+=i}),e=n}var r=(e.match(/.{2}/g)||[]).map(function(i){return parseInt(i,16)}).join(", ");return"rgba(".concat(r,", ").concat(t,")")},Ps=globalThis&&globalThis.__assign||function(){return Ps=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0||y.image.height>0)&&_(!0))})}},{key:"loadImage",value:function(h){var y=this,_=new Image,C=!1;_.onload=function(){C||y.pumpLoaded()},_.onerror=function(){C||y.pumpLoaded()},_.src=h,C===!1&&(_.width>0||_.height>0)&&(C=!0,this.pumpLoaded())}},{key:"loadVideo",value:function(h){var y=this,_=document.createElement("video");_.addEventListener("loadeddata",function(){y.pumpLoaded()}),_.addEventListener("error",function(){y.pumpLoaded()}),_.setAttribute("src",h)}},{key:"pumpLoaded",value:function(){this.loaded+=1,this.loaded===this.toLoad&&this.resolver(!0)}},{key:"startLoad",value:function(h){h.match(/\.(mp4|webm)/i)&&this.loadVideo(h),h.match(/\.(png|jp(e)?g|gif|webp)/i)&&this.loadImage(h)}},{key:"loadMultiple",value:function(h){var y=this;return this.loaded=0,this.toLoad=h.length,new Promise(function(_){y.resolver=_,h.forEach(function(C){y.startLoad(C)})})}}]),f}();function u(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],g=arguments.length>1?arguments[1]:void 0;if(!g)return f.join(" ").trim();for(var h=[],y=f.length;y--;)g[f[y]]&&h.push(g[f[y]]);return h}function d(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",g=arguments.length>1?arguments[1]:void 0;return g&&g[f]||f}},function(i,o,s){s.d(o,"a",function(){return g}),s.d(o,"b",function(){return h}),s.d(o,"c",function(){return y}),s.d(o,"e",function(){return _}),s.d(o,"d",function(){return C}),s.d(o,"g",function(){return w}),s.d(o,"f",function(){return m});var a=s(0);function c(p){return function(j){if(Array.isArray(j)){for(var b=0,k=new Array(j.length);b2&&arguments[2]!==void 0?arguments[2]:{},_=y.tolerance,C=_===void 0?0:_,w=y.propertyName;return new Promise(function(m){if(g){var p=null,x=h.charAt(0).toUpperCase()+h.slice(1),j=0;g.style["Webkit"+x]!==void 0&&(p="webkit"+x+"End"),g.style.OTransition!==void 0&&(p="o"+h+"End"),g.style[h]!==void 0&&(p=h+"end"),g.clearCssEndEvent&&g.clearCssEndEvent(),g.clearCssEndEvent=function(){g.removeEventListener(p,b)},g.addEventListener(p,b)}else m(!1);function b(k){if((k.srcElement||k.target)===g){if(j>=C){if(w&&w!==k.propertyName)return;g.removeEventListener(p,b),m(k)}j+=1}}})}function f(g){window&&window.requestAnimationFrame(function(){window.requestAnimationFrame(g)})}Object.defineProperty(c,"__esModule",{value:!0}),c.setCssEndEvent=d,c.beforeCssLayout=function(g){window&&window.requestAnimationFrame(g)},c.beforeNextCssLayout=f,c.beforeFutureCssLayout=function(g,h){(function y(_,C){window&&_&&Number.isInteger(_)&&_>0?window.requestAnimationFrame(function(){y(_-1,C)}):C()})(g+1,h)},c.onceNextCssLayout=function(){return new Promise(function(g){f(g)})},c.onceTransitionEnd=function(g){var h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return new Promise(function(y){d(g,"transition",h).then(y)})},c.onceAnimationEnd=function(g){var h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return new Promise(function(y){d(g,"animation",h).then(y)})}}])},,function(i,o,s){i.exports=s(7)},function(i,o,s){s.r(o),s.d(o,"default",function(){return k});var a=s(3),c=s.n(a),u=s(4),d=s(2),f=s.n(d),g=s(0),h=s(1);function y(O){return(y=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(z){return typeof z}:function(z){return z&&typeof Symbol=="function"&&z.constructor===Symbol&&z!==Symbol.prototype?"symbol":typeof z})(O)}function _(){return(_=Object.assign||function(O){for(var M=1;M=0||(V[fe]=U[fe]);return V}(O,M);if(Object.getOwnPropertySymbols){var Q=Object.getOwnPropertySymbols(O);for(H=0;H=0||Object.prototype.propertyIsEnumerable.call(O,z)&&(te[z]=O[z])}return te}function w(O,M){for(var z=0;z$.slides-1?0:U;J!==this.state.selected?this.setState({selected:J}):this.forceClearBar(this.currentInfo)}},{key:"render",value:function(){var $=this,U=this.props,J=(U.inverval,U.play),fe=U.cancelOnInteraction,B=(U.showTimer,U.onTransitionStart),V=U.onTransitionEnd,W=U.onFirstMount,ie=U.onTransitionRequest,oe=C(U,["inverval","play","cancelOnInteraction","showTimer","onTransitionStart","onTransitionEnd","onFirstMount","onTransitionRequest"]);return c.a.createElement(O,_({},oe,{selected:this.state.selected,onFirstMount:function(ue){W&&W(ue),oe.startupScreen||($.setInfo(ue),J===!0&&$.setTimer(ue.currentSlide))},onTransitionStart:function(ue){var Ee=$.getBarFromSlide(ue.nextSlide);Ee&&$.restartBarAnimation(Ee),B&&B(ue)},onTransitionRequest:function(ue){$.clearBar(ue),$.currentInfo=ue,fe===!0&&($.forceStop=!0),ie&&ie(ue)},onTransitionEnd:function(ue){$.setInfo(ue),J===!0&&$.setTimer(ue.currentSlide),V&&V(ue)}}))}}]),te}(a.Component),j(M,"propTypes",{interval:f.a.number,cssModule:f.a.any,play:f.a.bool,cancelOnInteraction:f.a.bool,timerHeight:f.a.string,timerBackgroundColor:f.a.string,showTimer:f.a.bool,onTransitionStart:f.a.func,onTransitionEnd:f.a.func,onTransitionRequest:f.a.func,rootElement:f.a.string}),j(M,"defaultProps",{interval:2e3,play:!1,cancelOnInteraction:!1,timerHeight:"6px",cssModule:null,timerBackgroundColor:"rgba(0, 0, 0, 0.15)",showTimer:!0,onTransitionStart:null,onTransitionEnd:null,onTransitionRequest:null,rootElement:b}),z}}])})})(Om);var X_=Om.exports;const Z_=Pn(X_);const eS=Z_(km),tS=oo.API_ROOT,nS=P.select` + padding: 6px 10px; + border: 1px solid #c2c4c2; + border-radius: 6px; + box-shadow: 0 2px 2px #00000010 +`,Po=P(Y)` + margin-left:0; +`,rS=P.p` + font-size: 20pt; + font-weight: 600; + text-align: center; + margin: 32px 0; + text-shadow: 0 2px 1px #00000020; +`,iS=P.div` + background: url(/images/filter.png); + height: 300px; + width: 1150px; + margin: 0 auto; + margin-bottom: 60px; + border-radius: 20px; + box-shadow: 0 2px 12px #00000060; + padding: 30px; + text-shadow: 0 2px 16px #ffffffa0; +`,oS=P.div` + display: block; + + margin: 12px 0; +`,wc=P.button` + width: fit-content; + height: 27px; + display: inline-block; + margin-right: 16px; + + border-radius: 10px; + padding: 0 16px; + box-shadow: 0 2px 16px #ffffff30; + + color: ${e=>e.active?"green":"black"}; + box-sizing: border-box; + ${e=>e.active?"font-weight: 600;":""} +`,sS=P.h1` + font-size: 16pt; + color: #f0f4f0; + user-select: none; + + padding-bottom: 6px; + border-bottom: 1px solid #f0f2f060; + margin-bottom: 20px; padding-bottom: 1px +`,aS=P(wc)` + float: right; + color: darkred; + margin-right: 0; +`,lS=P.button` + background: royalblue; + padding: 10px; + border-radius: 8px; + color: #f9f9f9; + width: 180px; + + &:disabled { + background: #3a5dc8; + } +`,cS=P.div` + background: #f2f3f2; + border-radius: 12px; + width: 100%; + height: 56px; + margin: 12px 0; + font-weight: 400; + padding: 0 16px +`,uS=P.div` + display: flex; + align-items: center +`,ll=P.div` + height: 55px; + width: 1px; + border-left: 1px solid #c1c3c1; + display: inline-block; + margin: 0 20px +`,ui=P.input` + border: 0; background: 0; + margin: 0 16px; + margin-right: 0; + font-size: 105%; + width: 30px; + outline: none; +`,dS=P.div` + width: 1150px; + margin: 50px auto +`,Wf=P.h3` + font-weight: 500; + margin: 48px 0; + text-align: center; +`,fS=P.div` + filter: drop-shadow(0 2px 8px #00000060); + clip-path: inset(0% 0% 0% 0% round 16px); + + & .awssld, .awssld__container { + width: 1150px; + height: 200px; + } +`,hS=e=>{const t=[{value:0,label:"Гостинка"},{value:1,label:"1 комната"},{value:2,label:"2 комнаты"},{value:3,label:"3 комнаты"},{value:4,label:"4 комнаты"},{value:-1,label:"Выберите"}],n={per_day:!1,per_month:!0,area_from:"",area_to:"",price_from:"",price_to:"",address:"",rooms:t[5],form_err:!1};let r=window.sessionStorage.getItem("pairent_filters");r&&(r=JSON.parse(r));const[i,o]=N.useState(r||n),s=c=>(window.sessionStorage.setItem("pairent_filters",JSON.stringify({...i,...c})),o({...i,...c})),a=()=>{let c=new Q_;c.address=i.address,c.area_range={from:i.area_from,to:i.area_to},c.price_range={from:i.price_from,to:i.price_to},i.per_day&&c.lease_period.push("day"),i.per_month&&c.lease_period.push("month"),i.rooms.value!=-1&&(c.rooms=i.rooms.value),e.onSubmit&&e.onSubmit(c)};return l.jsxs(iS,{children:[l.jsx(sS,{children:"Фильтры"}),l.jsxs(oS,{children:[l.jsxs(wc,{active:i.per_day?1:0,onClick:()=>s({per_day:!i.per_day}),children:[l.jsx(Po,{src:"/images/icons/calendar-day.svg",width:"14",height:"14"}),"Посуточно"]}),l.jsxs(wc,{active:i.per_month?1:0,onClick:()=>s({per_month:!i.per_month}),children:[l.jsx(Po,{src:"/images/icons/calendar.svg",width:"14",height:"14"}),"Ежемесячно"]}),l.jsxs(aS,{onClick:()=>s(n),children:[l.jsx(Po,{src:"/images/icons/eraser-fill.svg",width:"14",height:"14"}),"Сбросить"]})]}),l.jsx(cS,{children:l.jsxs(uS,{children:["Площадь",l.jsx("span",{style:{color:"gray",paddingLeft:10},children:" от "}),l.jsx(ui,{type:"text",placeholder:"—",maxLength:"3",value:i.area_from,onChange:c=>s({area_from:c.target.value})}),l.jsx("span",{style:{color:"gray",paddingLeft:10},children:" до "}),l.jsx(ui,{type:"text",placeholder:"—",maxLength:"3",value:i.area_to,onChange:c=>s({area_to:c.target.value})}),"м²",l.jsx(ll,{}),l.jsx(nS,{onChange:c=>s({rooms:t[c.target.value]??t[5]}),value:i.rooms.value,children:t.map((c,u)=>l.jsx("option",{value:c.value,label:c.label},u))}),l.jsx(ll,{}),"Цена",l.jsx("span",{style:{color:"gray",paddingLeft:6},children:" от "}),l.jsx(ui,{type:"text",placeholder:"—",value:i.price_from,onChange:c=>s({price_from:c.target.value}),style:{width:60}}),l.jsx("span",{style:{color:"gray",paddingLeft:6},children:" до "}),l.jsx(ui,{type:"text",placeholder:"—",value:i.price_to,onChange:c=>s({price_to:c.target.value}),style:{width:60}}),"₽",l.jsx(ll,{}),l.jsx(ui,{type:"text",placeholder:"Район, квартал, ж/д, индекс...",value:i.address,onChange:c=>s({address:c.target.value}),style:{width:300,marginLeft:0}})]})}),l.jsx("div",{style:{float:"right"},children:l.jsx(lS,{onClick:a,disabled:e.loading,children:e.loading?l.jsxs(l.Fragment,{children:[l.jsx(ao,{color:"#a1adb3",cssOverride:{marginRight:6,transform:"translate(-3px, 2px) scale(1.3)"},size:14}),"Загрузка данных..."]}):l.jsxs(l.Fragment,{children:[l.jsx(Po,{src:"/images/icons/search.svg",width:"14",height:"14"}),"Показать варианты"]})})})]})};class pS extends bt.Component{constructor(t){super(t),this.state={apartments:[],pageSize:10,page:1,data_loaded:!1,load_err:!1,loading_filters:!1},Yr.getAll(100).then(n=>{this.setState({apartments:n.data.results,data_loaded:!0})}).catch(n=>{this.setState({data_loaded:!0,apartments:[],load_err:n.message})}),this.filterData=this.filterData.bind(this)}async filterData(t){this.setState({loading_filters:!0});const r=await(await fetch(tS+"/api/apartaments/filters/",{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"}}).catch(i=>console.error(i))).json();this.setState({apartments:r,data_loaded:!0,loading_filters:!1,load_err:!1})}render(){let{page:t,pageSize:n}=this.state,r=Math.floor(this.state.apartments.length/n),i=this.state.apartments.slice(t*n,t*n+n);return l.jsxs(dS,{children:[l.jsx(fS,{children:l.jsxs(eS,{play:!0,cancelOnInteraction:!1,interval:8e3,bullets:!1,children:[l.jsx("a",{href:"https://vvsu.ithub.ru/dod","data-src":"/images/OpenDoorDay.jpg"}),l.jsx("div",{"data-src":"/images/Business.jpg"})]})}),l.jsxs(rS,{children:["Выбор квартиры во",l.jsx("span",{style:{color:"#0066ff"},children:" Владивостоке"})]}),l.jsx(hS,{onSubmit:this.filterData,loading:this.state.loading_filters}),l.jsx(gm,{list:i,loading:this.state.loading_filters}),this.state.data_loaded?null:l.jsxs(l.Fragment,{children:[l.jsx(Wf,{children:"Данные загружаются, подождите немного"}),l.jsx("div",{style:{margin:"0 auto",width:"fit-content"},children:l.jsx(ao,{color:"#0077aa"})})]}),this.state.load_err?l.jsxs(Wf,{children:["Ошибка загрузки данных: ",l.jsx("br",{})," ",this.state.load_err]}):null,l.jsx(aa,{pages:r,onChange:o=>this.setState({page:o}),value:t})]})}}const pt=e=>{const t=n=>{e.onChangeAnswer(n.target.value,n.target.name)};return l.jsxs("div",{className:"question",children:[l.jsx("div",{className:"question__account",children:+e.account+1}),l.jsx("p",{className:"question__title",children:e.name}),l.jsxs("div",{className:"question__answers",children:[l.jsx("p",{children:"Не важно"}),l.jsxs("label",{className:"question__answer",children:[l.jsx("input",{name:e.account,type:"radio",value:"1",onChange:t}),l.jsx("span",{children:"1"})]}),l.jsxs("label",{className:"question__answer",children:[l.jsx("input",{name:e.account,type:"radio",value:"2",onChange:t}),l.jsx("span",{children:"2"})]}),l.jsxs("label",{className:"question__answer",children:[l.jsx("input",{name:e.account,type:"radio",value:"3",onChange:t}),l.jsx("span",{children:"3"})]}),l.jsxs("label",{className:"question__answer",children:[l.jsx("input",{name:e.account,type:"radio",value:"4",onChange:t}),l.jsx("span",{children:"4"})]}),l.jsxs("label",{className:"question__answer",children:[l.jsx("input",{name:e.account,type:"radio",value:"5",onChange:t}),l.jsx("span",{children:"5"})]}),l.jsx("p",{children:"Очень важно"})]})]})},{API_ROOT:gS}=oo;class mS{static async addById(t,n){await Pr.post(gS+"/api/psych_test/add_result/"+t,n)}}const vS=()=>{const[e,t]=N.useState(!0),n=_g(),[r,i]=N.useState(new Array(12)),o=(a,c)=>{r[c]=a,i(r)},s=async a=>{a.preventDefault();let c=!0;for(let u=0;u<12;u++)r[u]==null&&(t(!1),c=!1);c&&(await mS.addById(1,r),n("/"))};return l.jsxs("form",{onSubmit:s,className:"form",children:[l.jsx(pt,{name:"На сколько Вам важна национальность вашего соседа/соседки?",account:"0",onChangeAnswer:o}),l.jsx(pt,{name:"Согласны ли Вы делить одну комнату с вашим соседом/соседкой?",account:"1",onChangeAnswer:o}),l.jsx(pt,{name:"Какое число людей, снимающих квартиру (включая Вас), для вас приемлемо?",account:"2",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важно такое коммуникативное качество, как общительность, в вашем соседе/соседке?",account:"3",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важно такое коммуникативное качество, как эмпатия, в вашем соседе/соседке?",account:"4",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важно такое коммуникативное качество, как доброжелательность, в вашем соседе/соседке?",account:"5",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важно такое коммуникативное качество, как тактичность, в вашем соседе/соседке?",account:"6",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важно такое личностное качество, как ответственность, в вашем соседе/соседке?",account:"7",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важно такое личностное качество, как аккуратность, в вашем соседе/соседке?",account:"8",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важно такое личностное качество, как честность (искренность) , в вашем соседе/соседке ?",account:"9",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важно такое личностное качество, как чистоплотность , в вашем соседе/соседке ?",account:"10",onChangeAnswer:o}),l.jsx(pt,{name:"На сколько вам важна такия черта характера, как трудолюбие , в вашем соседе/соседке ?",account:"11",onChangeAnswer:o}),e&&l.jsx("div",{className:"btn-box",children:l.jsx("button",{className:"btn-box__form-btn",type:"submit",children:"Отправить"})}),!e&&l.jsxs("div",{className:"btn-box",children:[l.jsx("button",{className:"btn-box__form-btn",type:"submit",children:"Отправить"}),l.jsx("p",{className:"btn-box__text",children:"Вы не ответили на один из вопросов"})]})]})};const yS=()=>l.jsxs("div",{className:"header",children:[l.jsx("button",{type:"button",className:"header__btn",children:"Вернуться назад"}),l.jsx("h1",{className:"header__title",children:"Тест на совместимость"})]}),xS=()=>l.jsxs(l.Fragment,{children:[l.jsx(yS,{}),l.jsx(vS,{})]}),wS=()=>l.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"currentColor",viewBox:"0 0 16 16",children:l.jsx("path",{d:"M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 2.256-.37 3.597-.938 4.18-1.234A9.06 9.06 0 0 0 8 15z"})}),Pm=P.div` + box-shadow: 0 2px 1px #00000010; + border: 1px solid #c2c4c2; + border-radius: 14px; +`,_S=P.button` + border: 1px solid #c2c4c2; + display: inline-block; + padding: 12px 16px; + border-radius: 14px; + + background: #ffffff; + color: gray; + box-shadow: 0 2px 1px #00000010; + + font-size: 12pt; + float: left; + + & ${Y} { + transform: translate(-4px, 2px) + } +`,SS=P.div` + text-align: center; + height: 100px; + padding-top: 32px; + + z-index: 1; + position: relative; + top: 0; + + & h2 { + font-weight: 600; + text-align: center; + padding: 0; + display: inline-block; + transform: translateY(6px); + } +`,jS=P.div` + display: inline-block; + float: right +`,qf=P(Pm)` + display: inline-block; + border: 1px solid #c2c4c2; + border-radius: 14px; + padding: 6px 10px; + margin: 0 12px; + font-size: 11pt; + width: 160px; + + & input[type=text] { + margin: 0 8px; + display: inline-block; + width: 20px; + border: 0; + border-bottom: 1px solid gray; + outline: none; + padding-bottom: 2px; + } +`,Vf=P.div` + border-top: 1px solid #c2c4c2; + margin-top: 6px; + padding-top: 8px; + font-size: 10pt; + transform: translate(4px) +`,bS=P.button` + background: royalblue; + width: 40px; + height: 40px; + border-radius: 20px; + float: right; + margin: 0 10px; + box-shadow: 0 2px 1px #00000020; + transition: 250ms ease; + + transform: translateY(12px); + + &:hover { + box-shadow: 0 2px 2px #00000060; + } +`,kS=P.div` + margin: 32px auto; + margin-bottom: 0; + display: block; +`,Tm=P.button` + background: white; + border: 2px solid royalblue; + border-radius: 12px; + color: royalblue; + font-weight: 600; + line-height: 20px; + transition: 150ms ease; + width: 100%; + font-size: 10.5pt; + height: 36px; + opacity: 0; + padding: 0px 10px; + clip-path: border-box; + box-sizing: border-box; + + & svg { + fill: royalblue; + margin: 0; + margin-right: 6px; + transform: translateY(2px); + } + + &:hover { + color: white; + background: royalblue; + } + &:hover svg { + fill: white + } +`,ES=y1` + 0%, 50% { + opacity: 0; + transform: scale(1.05) + } + to { + opacity: 1; + transform: scale(1) + } +`,CS=P(Pm)` + display: inline-block; + padding: 10px; + padding-top: 20px; + background: white; + + width: 200px; + height: 256px; + + margin-right: 20px; + margin-bottom: 84px; + + text-align: center; + + animation: ${ES} 500ms ease; + + & h4 { + margin: 10px 0; + font-weight: 600; + } + & p { + margin: 10px 0; + height: 74px; + color: gray; + font-size: 10pt; + } + + transition: 150ms ease; + &:hover > ${Tm} { + opacity: 1; + padding: 6px 10px; + } + &:hover { + height: 300px; + margin-bottom: 40px; + } +`,OS=P.div` + height: 0px; +`,Rm=P.div` + float: left; + transform: translate(90%, -100%); + background: lightgray; + border: 3px solid white; + border-radius: 100px; + width: 36px; height: 36px; +`,PS=P(Rm)` + float: right; + transform: translate(-75%, -100%); + background: limegreen; + & p { + transform: translateY(6px); + font-size: 11pt; + font-weight: 600; + color: white; + text-shadow: 0 2px 1px #00000040; + margin: 0; + height: auto; + } +`,TS=P.h2` + text-align: center; + line-height: 3.5em; + margin: 0; + padding: 100px 0; + + & span { + display: inline; + margin: 0px auto + } +`;class RS extends bt.Component{constructor(n){super(n);Ie(this,"props")}render(){return l.jsxs("div",{children:["123",this.props.value.map(n=>l.jsxs(CS,{children:[l.jsx(Y,{src:"/images/icons/user.svg",width:"100",height:"100"}),l.jsxs(OS,{children:[l.jsx(Rm,{children:l.jsx(Y,{src:"/images/icons/question.svg",style:{margin:"5px 0"},width:"20",height:"20"})}),l.jsx(PS,{children:l.jsx("p",{children:"?"})})]}),l.jsx("h4",{className:"inner-element",children:"User, 0"}),l.jsx("p",{children:"No description provided."}),l.jsxs(Tm,{children:[l.jsx(wS,{}),"Перейти в чат"]})]}))]})}}class NS extends bt.Component{constructor(t){super(t),this.state={data:[{}],loading:!1}}componentDidMount(){}render(){return l.jsxs(kS,{children:[l.jsxs("h2",{style:{textAlign:"center",lineHeight:"11pt",marginBottom:32},children:["Выбери соседа",l.jsx("br",{}),l.jsx("br",{}),l.jsxs("span",{style:{fontSize:"11pt",fontWeight:500},children:["Не забывай, с этим человеком",l.jsx("br",{}),"придется жить бок-о-бок!"]})]}),this.state.loading?l.jsx(RS,{value:this.state.data}):l.jsxs(TS,{children:["Пожалуйста подождите, идет загрузка данных",l.jsx("br",{}),l.jsx(ao,{color:"#0077aa"})]})]})}}class AS extends bt.Component{render(){return l.jsxs(jS,{children:[l.jsxs(qf,{children:["Совместимость",l.jsxs(Vf,{children:["от",l.jsx("input",{type:"text"}),"до",l.jsx("input",{type:"text"})]})]}),l.jsxs(qf,{children:["Возраст",l.jsxs(Vf,{children:["от",l.jsx("input",{type:"text"}),"до",l.jsx("input",{type:"text"})]})]}),l.jsx(bS,{children:l.jsx(Y,{src:"/images/icons/search.svg",width:"18",height:"18"})})]})}}class IS extends bt.Component{constructor(t){super(t),this.state={}}render(){return l.jsxs(l.Fragment,{children:[l.jsxs(SS,{children:[l.jsxs(_S,{children:[l.jsx(Y,{src:"/images/icons/left-arrow-light.svg",width:10,height:16}),"Вернуться назад"]}),l.jsx(AS,{})]}),l.jsxs("div",{style:{transform:"translateY(-100px)",position:"relative",top:0,zIndex:0},children:[l.jsx(NS,{}),l.jsx(aa,{pages:0})]})]})}}const LS=P.button` + background: white; + border: 2px solid royalblue; + border-radius: 12px; + color: royalblue; + font-weight: 600; + line-height: 20px; + transition: 150ms ease; + width: 100%; + font-size: 10.5pt; + height: 36px; + padding: 6px 10px; + clip-path: border-box; + box-sizing: border-box; + + & svg { + fill: royalblue; + margin: 0; + margin-right: 6px; + transform: translateY(2px); + } + + &:hover { + color: white; + background: royalblue; + } + &:hover svg { + fill: white + } +`,Nm=P.div` + position: fixed; + top: 45%; + left: 50%; + transform: translate(-50%, -50%); + border: 1px solid #c2c4c2; + border-radius: 12px; + padding: 24px 36px; + background: white; + box-shadow: 0 2px 1px #00000010; + + text-align: center; + + & hr { + margin-bottom: 24px; + height: 0px; + border: 0; + border-bottom: 1px solid #c2c4c2; + box-shadow: 0 2px 1px #c2c4c280; + } + +`;function FS(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Am={exports:{}};const MS={},zS=Object.freeze(Object.defineProperty({__proto__:null,default:MS},Symbol.toStringTag,{value:"Module"})),BS=Qm(zS);(function(e,t){(function(n,r){e.exports=r()})(Jt,function(){var n=n||function(r,i){var o;if(typeof window<"u"&&window.crypto&&(o=window.crypto),typeof self<"u"&&self.crypto&&(o=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(o=globalThis.crypto),!o&&typeof window<"u"&&window.msCrypto&&(o=window.msCrypto),!o&&typeof Jt<"u"&&Jt.crypto&&(o=Jt.crypto),!o&&typeof FS=="function")try{o=BS}catch{}var s=function(){if(o){if(typeof o.getRandomValues=="function")try{return o.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof o.randomBytes=="function")try{return o.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},a=Object.create||function(){function m(){}return function(p){var x;return m.prototype=p,x=new m,m.prototype=null,x}}(),c={},u=c.lib={},d=u.Base=function(){return{extend:function(m){var p=a(this);return m&&p.mixIn(m),(!p.hasOwnProperty("init")||this.init===p.init)&&(p.init=function(){p.$super.init.apply(this,arguments)}),p.init.prototype=p,p.$super=this,p},create:function(){var m=this.extend();return m.init.apply(m,arguments),m},init:function(){},mixIn:function(m){for(var p in m)m.hasOwnProperty(p)&&(this[p]=m[p]);m.hasOwnProperty("toString")&&(this.toString=m.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),f=u.WordArray=d.extend({init:function(m,p){m=this.words=m||[],p!=i?this.sigBytes=p:this.sigBytes=m.length*4},toString:function(m){return(m||h).stringify(this)},concat:function(m){var p=this.words,x=m.words,j=this.sigBytes,b=m.sigBytes;if(this.clamp(),j%4)for(var k=0;k>>2]>>>24-k%4*8&255;p[j+k>>>2]|=O<<24-(j+k)%4*8}else for(var M=0;M>>2]=x[M>>>2];return this.sigBytes+=b,this},clamp:function(){var m=this.words,p=this.sigBytes;m[p>>>2]&=4294967295<<32-p%4*8,m.length=r.ceil(p/4)},clone:function(){var m=d.clone.call(this);return m.words=this.words.slice(0),m},random:function(m){for(var p=[],x=0;x>>2]>>>24-b%4*8&255;j.push((k>>>4).toString(16)),j.push((k&15).toString(16))}return j.join("")},parse:function(m){for(var p=m.length,x=[],j=0;j>>3]|=parseInt(m.substr(j,2),16)<<24-j%8*4;return new f.init(x,p/2)}},y=g.Latin1={stringify:function(m){for(var p=m.words,x=m.sigBytes,j=[],b=0;b>>2]>>>24-b%4*8&255;j.push(String.fromCharCode(k))}return j.join("")},parse:function(m){for(var p=m.length,x=[],j=0;j>>2]|=(m.charCodeAt(j)&255)<<24-j%4*8;return new f.init(x,p)}},_=g.Utf8={stringify:function(m){try{return decodeURIComponent(escape(y.stringify(m)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(m){return y.parse(unescape(encodeURIComponent(m)))}},C=u.BufferedBlockAlgorithm=d.extend({reset:function(){this._data=new f.init,this._nDataBytes=0},_append:function(m){typeof m=="string"&&(m=_.parse(m)),this._data.concat(m),this._nDataBytes+=m.sigBytes},_process:function(m){var p,x=this._data,j=x.words,b=x.sigBytes,k=this.blockSize,O=k*4,M=b/O;m?M=r.ceil(M):M=r.max((M|0)-this._minBufferSize,0);var z=M*k,H=r.min(z*4,b);if(z){for(var te=0;te>>7)^(M<<14|M>>>18)^M>>>3,H=f[O-2],te=(H<<15|H>>>17)^(H<<13|H>>>19)^H>>>10;f[O]=z+f[O-7]+te+f[O-16]}var Q=x&j^~x&b,$=C&w^C&m^w&m,U=(C<<30|C>>>2)^(C<<19|C>>>13)^(C<<10|C>>>22),J=(x<<26|x>>>6)^(x<<21|x>>>11)^(x<<7|x>>>25),fe=k+J+Q+d[O]+f[O],B=U+$;k=b,b=j,j=x,x=p+fe|0,p=m,m=w,w=C,C=fe+B|0}_[0]=_[0]+C|0,_[1]=_[1]+w|0,_[2]=_[2]+m|0,_[3]=_[3]+p|0,_[4]=_[4]+x|0,_[5]=_[5]+j|0,_[6]=_[6]+b|0,_[7]=_[7]+k|0},_doFinalize:function(){var h=this._data,y=h.words,_=this._nDataBytes*8,C=h.sigBytes*8;return y[C>>>5]|=128<<24-C%32,y[(C+64>>>9<<4)+14]=r.floor(_/4294967296),y[(C+64>>>9<<4)+15]=_,h.sigBytes=y.length*4,this._process(),this._hash},clone:function(){var h=a.clone.call(this);return h._hash=this._hash.clone(),h}});i.SHA256=a._createHelper(g),i.HmacSHA256=a._createHmacHelper(g)}(Math),n.SHA256})})(Im);var $S=Im.exports;const DS=Pn($S);var Lm={exports:{}};(function(e,t){(function(n,r){e.exports=r(ca)})(Jt,function(n){return function(){var r=n,i=r.lib,o=i.WordArray,s=r.enc;s.Base64={stringify:function(c){var u=c.words,d=c.sigBytes,f=this._map;c.clamp();for(var g=[],h=0;h>>2]>>>24-h%4*8&255,_=u[h+1>>>2]>>>24-(h+1)%4*8&255,C=u[h+2>>>2]>>>24-(h+2)%4*8&255,w=y<<16|_<<8|C,m=0;m<4&&h+m*.75>>6*(3-m)&63));var p=f.charAt(64);if(p)for(;g.length%4;)g.push(p);return g.join("")},parse:function(c){var u=c.length,d=this._map,f=this._reverseMap;if(!f){f=this._reverseMap=[];for(var g=0;g>>6-h%4*2,C=y|_;f[g>>>2]|=C<<24-g%4*8,g++}return o.create(f,g)}}(),n.enc.Base64})})(Lm);var HS=Lm.exports;const Kf=Pn(HS);var Fm={exports:{}};(function(e,t){(function(n,r){e.exports=r(ca)})(Jt,function(n){return n.enc.Utf8})})(Fm);var WS=Fm.exports;const qS=Pn(WS);function _c(e){this.message=e}_c.prototype=new Error,_c.prototype.name="InvalidCharacterError";var Qf=typeof window<"u"&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new _c("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,r,i=0,o=0,s="";r=t.charAt(o++);~r&&(n=i%4?64*n+r:r,i++%4)?s+=String.fromCharCode(255&n>>(-2*i&6)):0)r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(r);return s};function VS(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(n){return decodeURIComponent(Qf(n).replace(/(.)/g,function(r,i){var o=i.charCodeAt(0).toString(16).toUpperCase();return o.length<2&&(o="0"+o),"%"+o}))}(t)}catch{return Qf(t)}}function Ts(e){this.message=e}function KS(e,t){if(typeof e!="string")throw new Ts("Invalid token specified");var n=(t=t||{}).header===!0?0:1;try{return JSON.parse(VS(e.split(".")[n]))}catch(r){throw new Ts("Invalid token specified: "+r.message)}}Ts.prototype=new Error,Ts.prototype.name="InvalidTokenError";var QS={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}},Ft,Mt,Qn=(e=>(e[e.NONE=0]="NONE",e[e.ERROR=1]="ERROR",e[e.WARN=2]="WARN",e[e.INFO=3]="INFO",e[e.DEBUG=4]="DEBUG",e))(Qn||{});(e=>{function t(){Ft=3,Mt=QS}e.reset=t;function n(i){if(!(0<=i&&i<=4))throw new Error("Invalid log level");Ft=i}e.setLevel=n;function r(i){Mt=i}e.setLogger=r})(Qn||(Qn={}));var G=class{constructor(e){this._name=e}debug(...e){Ft>=4&&Mt.debug(G._format(this._name,this._method),...e)}info(...e){Ft>=3&&Mt.info(G._format(this._name,this._method),...e)}warn(...e){Ft>=2&&Mt.warn(G._format(this._name,this._method),...e)}error(...e){Ft>=1&&Mt.error(G._format(this._name,this._method),...e)}throw(e){throw this.error(e),e}create(e){const t=Object.create(this);return t._method=e,t.debug("begin"),t}static createStatic(e,t){const n=new G(`${e}.${t}`);return n.debug("begin"),n}static _format(e,t){const n=`[${e}]`;return t?`${n} ${t}:`:n}static debug(e,...t){Ft>=4&&Mt.debug(G._format(e),...t)}static info(e,...t){Ft>=3&&Mt.info(G._format(e),...t)}static warn(e,...t){Ft>=2&&Mt.warn(G._format(e),...t)}static error(e,...t){Ft>=1&&Mt.error(G._format(e),...t)}};Qn.reset();var JS="10000000-1000-4000-8000-100000000000",$t=class{static _randomWord(){return US.lib.WordArray.random(1).words[0]}static generateUUIDv4(){return JS.replace(/[018]/g,t=>(+t^$t._randomWord()&15>>+t/4).toString(16)).replace(/-/g,"")}static generateCodeVerifier(){return $t.generateUUIDv4()+$t.generateUUIDv4()+$t.generateUUIDv4()}static generateCodeChallenge(e){try{const t=DS(e);return Kf.stringify(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}catch(t){throw G.error("CryptoUtils.generateCodeChallenge",t),t}}static generateBasicAuth(e,t){const n=qS.parse([e,t].join(":"));return Kf.stringify(n)}},fn=class{constructor(e){this._name=e,this._logger=new G(`Event('${this._name}')`),this._callbacks=[]}addHandler(e){return this._callbacks.push(e),()=>this.removeHandler(e)}removeHandler(e){const t=this._callbacks.lastIndexOf(e);t>=0&&this._callbacks.splice(t,1)}raise(...e){this._logger.debug("raise:",...e);for(const t of this._callbacks)t(...e)}},Sc=class{static decode(e){try{return KS(e)}catch(t){throw G.error("JwtUtils.decode",t),t}}},Jf=class{static center({...e}){var t,n,r;return e.width==null&&(e.width=(t=[800,720,600,480].find(i=>i<=window.outerWidth/1.618))!=null?t:360),(n=e.left)!=null||(e.left=Math.max(0,Math.round(window.screenX+(window.outerWidth-e.width)/2))),e.height!=null&&((r=e.top)!=null||(e.top=Math.max(0,Math.round(window.screenY+(window.outerHeight-e.height)/2)))),e}static serialize(e){return Object.entries(e).filter(([,t])=>t!=null).map(([t,n])=>`${t}=${typeof n!="boolean"?n:n?"yes":"no"}`).join(",")}},wt=class extends fn{constructor(){super(...arguments),this._logger=new G(`Timer('${this._name}')`),this._timerHandle=null,this._expiration=0,this._callback=()=>{const e=this._expiration-wt.getEpochTime();this._logger.debug("timer completes in",e),this._expiration<=wt.getEpochTime()&&(this.cancel(),super.raise())}}static getEpochTime(){return Math.floor(Date.now()/1e3)}init(e){const t=this._logger.create("init");e=Math.max(Math.floor(e),1);const n=wt.getEpochTime()+e;if(this.expiration===n&&this._timerHandle){t.debug("skipping since already initialized for expiration at",this.expiration);return}this.cancel(),t.debug("using duration",e),this._expiration=n;const r=Math.min(e,5);this._timerHandle=setInterval(this._callback,r*1e3)}get expiration(){return this._expiration}cancel(){this._logger.create("cancel"),this._timerHandle&&(clearInterval(this._timerHandle),this._timerHandle=null)}},jc=class{static readParams(e,t="query"){if(!e)throw new TypeError("Invalid URL");const r=new URL(e,window.location.origin)[t==="fragment"?"hash":"search"];return new URLSearchParams(r.slice(1))}},tr=class extends Error{constructor(e,t){var n,r,i;if(super(e.error_description||e.error||""),this.form=t,this.name="ErrorResponse",!e.error)throw G.error("ErrorResponse","No error passed"),new Error("No error passed");this.error=e.error,this.error_description=(n=e.error_description)!=null?n:null,this.error_uri=(r=e.error_uri)!=null?r:null,this.state=e.userState,this.session_state=(i=e.session_state)!=null?i:null}},Bu=class extends Error{constructor(e){super(e),this.name="ErrorTimeout"}},GS=class{constructor(e){this._logger=new G("AccessTokenEvents"),this._expiringTimer=new wt("Access token expiring"),this._expiredTimer=new wt("Access token expired"),this._expiringNotificationTimeInSeconds=e.expiringNotificationTimeInSeconds}load(e){const t=this._logger.create("load");if(e.access_token&&e.expires_in!==void 0){const n=e.expires_in;if(t.debug("access token present, remaining duration:",n),n>0){let i=n-this._expiringNotificationTimeInSeconds;i<=0&&(i=1),t.debug("registering expiring timer, raising in",i,"seconds"),this._expiringTimer.init(i)}else t.debug("canceling existing expiring timer because we're past expiration."),this._expiringTimer.cancel();const r=n+1;t.debug("registering expired timer, raising in",r,"seconds"),this._expiredTimer.init(r)}else this._expiringTimer.cancel(),this._expiredTimer.cancel()}unload(){this._logger.debug("unload: canceling existing access token timers"),this._expiringTimer.cancel(),this._expiredTimer.cancel()}addAccessTokenExpiring(e){return this._expiringTimer.addHandler(e)}removeAccessTokenExpiring(e){this._expiringTimer.removeHandler(e)}addAccessTokenExpired(e){return this._expiredTimer.addHandler(e)}removeAccessTokenExpired(e){this._expiredTimer.removeHandler(e)}},YS=class{constructor(e,t,n,r,i){this._callback=e,this._client_id=t,this._intervalInSeconds=r,this._stopOnError=i,this._logger=new G("CheckSessionIFrame"),this._timer=null,this._session_state=null,this._message=s=>{s.origin===this._frame_origin&&s.source===this._frame.contentWindow&&(s.data==="error"?(this._logger.error("error message from check session op iframe"),this._stopOnError&&this.stop()):s.data==="changed"?(this._logger.debug("changed message from check session op iframe"),this.stop(),this._callback()):this._logger.debug(s.data+" message from check session op iframe"))};const o=new URL(n);this._frame_origin=o.origin,this._frame=window.document.createElement("iframe"),this._frame.style.visibility="hidden",this._frame.style.position="fixed",this._frame.style.left="-1000px",this._frame.style.top="0",this._frame.width="0",this._frame.height="0",this._frame.src=o.href}load(){return new Promise(e=>{this._frame.onload=()=>{e()},window.document.body.appendChild(this._frame),window.addEventListener("message",this._message,!1)})}start(e){if(this._session_state===e)return;this._logger.create("start"),this.stop(),this._session_state=e;const t=()=>{!this._frame.contentWindow||!this._session_state||this._frame.contentWindow.postMessage(this._client_id+" "+this._session_state,this._frame_origin)};t(),this._timer=setInterval(t,this._intervalInSeconds*1e3)}stop(){this._logger.create("stop"),this._session_state=null,this._timer&&(clearInterval(this._timer),this._timer=null)}},Mm=class{constructor(){this._logger=new G("InMemoryWebStorage"),this._data={}}clear(){this._logger.create("clear"),this._data={}}getItem(e){return this._logger.create(`getItem('${e}')`),this._data[e]}setItem(e,t){this._logger.create(`setItem('${e}')`),this._data[e]=t}removeItem(e){this._logger.create(`removeItem('${e}')`),delete this._data[e]}get length(){return Object.getOwnPropertyNames(this._data).length}key(e){return Object.getOwnPropertyNames(this._data)[e]}},Uu=class{constructor(e=[],t=null,n={}){this._jwtHandler=t,this._extraHeaders=n,this._logger=new G("JsonService"),this._contentTypes=[],this._contentTypes.push(...e,"application/json"),t&&this._contentTypes.push("application/jwt")}async fetchWithTimeout(e,t={}){const{timeoutInSeconds:n,...r}=t;if(!n)return await fetch(e,r);const i=new AbortController,o=setTimeout(()=>i.abort(),n*1e3);try{return await fetch(e,{...t,signal:i.signal})}catch(s){throw s instanceof DOMException&&s.name==="AbortError"?new Bu("Network timed out"):s}finally{clearTimeout(o)}}async getJson(e,{token:t,credentials:n}={}){const r=this._logger.create("getJson"),i={Accept:this._contentTypes.join(", ")};t&&(r.debug("token passed, setting Authorization header"),i.Authorization="Bearer "+t),this.appendExtraHeaders(i);let o;try{r.debug("url:",e),o=await this.fetchWithTimeout(e,{method:"GET",headers:i,credentials:n})}catch(c){throw r.error("Network Error"),c}r.debug("HTTP response received, status",o.status);const s=o.headers.get("Content-Type");if(s&&!this._contentTypes.find(c=>s.startsWith(c))&&r.throw(new Error(`Invalid response Content-Type: ${s??"undefined"}, from URL: ${e}`)),o.ok&&this._jwtHandler&&(s!=null&&s.startsWith("application/jwt")))return await this._jwtHandler(await o.text());let a;try{a=await o.json()}catch(c){throw r.error("Error parsing JSON response",c),o.ok?c:new Error(`${o.statusText} (${o.status})`)}if(!o.ok)throw r.error("Error from server:",a),a.error?new tr(a):new Error(`${o.statusText} (${o.status}): ${JSON.stringify(a)}`);return a}async postForm(e,{body:t,basicAuth:n,timeoutInSeconds:r,initCredentials:i}){const o=this._logger.create("postForm"),s={Accept:this._contentTypes.join(", "),"Content-Type":"application/x-www-form-urlencoded"};n!==void 0&&(s.Authorization="Basic "+n),this.appendExtraHeaders(s);let a;try{o.debug("url:",e),a=await this.fetchWithTimeout(e,{method:"POST",headers:s,body:t,timeoutInSeconds:r,credentials:i})}catch(f){throw o.error("Network error"),f}o.debug("HTTP response received, status",a.status);const c=a.headers.get("Content-Type");if(c&&!this._contentTypes.find(f=>c.startsWith(f)))throw new Error(`Invalid response Content-Type: ${c??"undefined"}, from URL: ${e}`);const u=await a.text();let d={};if(u)try{d=JSON.parse(u)}catch(f){throw o.error("Error parsing JSON response",f),a.ok?f:new Error(`${a.statusText} (${a.status})`)}if(!a.ok)throw o.error("Error from server:",d),d.error?new tr(d,t):new Error(`${a.statusText} (${a.status}): ${JSON.stringify(d)}`);return d}appendExtraHeaders(e){const t=this._logger.create("appendExtraHeaders"),n=Object.keys(this._extraHeaders),r=["authorization","accept","content-type"];n.length!==0&&n.forEach(i=>{if(r.includes(i.toLocaleLowerCase())){t.warn("Protected header could not be overridden",i,r);return}const o=typeof this._extraHeaders[i]=="function"?this._extraHeaders[i]():this._extraHeaders[i];o&&o!==""&&(e[i]=o)})}},XS=class{constructor(e){this._settings=e,this._logger=new G("MetadataService"),this._signingKeys=null,this._metadata=null,this._metadataUrl=this._settings.metadataUrl,this._jsonService=new Uu(["application/jwk-set+json"],null,this._settings.extraHeaders),this._settings.signingKeys&&(this._logger.debug("using signingKeys from settings"),this._signingKeys=this._settings.signingKeys),this._settings.metadata&&(this._logger.debug("using metadata from settings"),this._metadata=this._settings.metadata),this._settings.fetchRequestCredentials&&(this._logger.debug("using fetchRequestCredentials from settings"),this._fetchRequestCredentials=this._settings.fetchRequestCredentials)}resetSigningKeys(){this._signingKeys=null}async getMetadata(){const e=this._logger.create("getMetadata");if(this._metadata)return e.debug("using cached values"),this._metadata;if(!this._metadataUrl)throw e.throw(new Error("No authority or metadataUrl configured on settings")),null;e.debug("getting metadata from",this._metadataUrl);const t=await this._jsonService.getJson(this._metadataUrl,{credentials:this._fetchRequestCredentials});return e.debug("merging remote JSON with seed metadata"),this._metadata=Object.assign({},this._settings.metadataSeed,t),this._metadata}getIssuer(){return this._getMetadataProperty("issuer")}getAuthorizationEndpoint(){return this._getMetadataProperty("authorization_endpoint")}getUserInfoEndpoint(){return this._getMetadataProperty("userinfo_endpoint")}getTokenEndpoint(e=!0){return this._getMetadataProperty("token_endpoint",e)}getCheckSessionIframe(){return this._getMetadataProperty("check_session_iframe",!0)}getEndSessionEndpoint(){return this._getMetadataProperty("end_session_endpoint",!0)}getRevocationEndpoint(e=!0){return this._getMetadataProperty("revocation_endpoint",e)}getKeysEndpoint(e=!0){return this._getMetadataProperty("jwks_uri",e)}async _getMetadataProperty(e,t=!1){const n=this._logger.create(`_getMetadataProperty('${e}')`),r=await this.getMetadata();if(n.debug("resolved"),r[e]===void 0){if(t===!0){n.warn("Metadata does not contain optional property");return}n.throw(new Error("Metadata does not contain property "+e))}return r[e]}async getSigningKeys(){const e=this._logger.create("getSigningKeys");if(this._signingKeys)return e.debug("returning signingKeys from cache"),this._signingKeys;const t=await this.getKeysEndpoint(!1);e.debug("got jwks_uri",t);const n=await this._jsonService.getJson(t);if(e.debug("got key set",n),!Array.isArray(n.keys))throw e.throw(new Error("Missing keys on keyset")),null;return this._signingKeys=n.keys,this._signingKeys}},zm=class{constructor({prefix:e="oidc.",store:t=localStorage}={}){this._logger=new G("WebStorageStateStore"),this._store=t,this._prefix=e}async set(e,t){this._logger.create(`set('${e}')`),e=this._prefix+e,await this._store.setItem(e,t)}async get(e){return this._logger.create(`get('${e}')`),e=this._prefix+e,await this._store.getItem(e)}async remove(e){this._logger.create(`remove('${e}')`),e=this._prefix+e;const t=await this._store.getItem(e);return await this._store.removeItem(e),t}async getAllKeys(){this._logger.create("getAllKeys");const e=await this._store.length,t=[];for(let n=0;n{const r=this._logger.create("_getClaimsFromJwt");try{const i=Sc.decode(n);return r.debug("JWT decoding successful"),i}catch(i){throw r.error("Error parsing JWT response"),i}},this._jsonService=new Uu(void 0,this._getClaimsFromJwt,this._settings.extraHeaders)}async getClaims(e){const t=this._logger.create("getClaims");e||this._logger.throw(new Error("No token passed"));const n=await this._metadataService.getUserInfoEndpoint();t.debug("got userinfo url",n);const r=await this._jsonService.getJson(n,{token:e,credentials:this._settings.fetchRequestCredentials});return t.debug("got claims",r),r}},Um=class{constructor(e,t){this._settings=e,this._metadataService=t,this._logger=new G("TokenClient"),this._jsonService=new Uu(this._settings.revokeTokenAdditionalContentTypes,null,this._settings.extraHeaders)}async exchangeCode({grant_type:e="authorization_code",redirect_uri:t=this._settings.redirect_uri,client_id:n=this._settings.client_id,client_secret:r=this._settings.client_secret,...i}){const o=this._logger.create("exchangeCode");n||o.throw(new Error("A client_id is required")),t||o.throw(new Error("A redirect_uri is required")),i.code||o.throw(new Error("A code is required"));const s=new URLSearchParams({grant_type:e,redirect_uri:t});for(const[d,f]of Object.entries(i))f!=null&&s.set(d,f);let a;switch(this._settings.client_authentication){case"client_secret_basic":if(!r)throw o.throw(new Error("A client_secret is required")),null;a=$t.generateBasicAuth(n,r);break;case"client_secret_post":s.append("client_id",n),r&&s.append("client_secret",r);break}const c=await this._metadataService.getTokenEndpoint(!1);o.debug("got token endpoint");const u=await this._jsonService.postForm(c,{body:s,basicAuth:a,initCredentials:this._settings.fetchRequestCredentials});return o.debug("got response"),u}async exchangeCredentials({grant_type:e="password",client_id:t=this._settings.client_id,client_secret:n=this._settings.client_secret,scope:r=this._settings.scope,...i}){const o=this._logger.create("exchangeCredentials");t||o.throw(new Error("A client_id is required"));const s=new URLSearchParams({grant_type:e,scope:r});for(const[d,f]of Object.entries(i))f!=null&&s.set(d,f);let a;switch(this._settings.client_authentication){case"client_secret_basic":if(!n)throw o.throw(new Error("A client_secret is required")),null;a=$t.generateBasicAuth(t,n);break;case"client_secret_post":s.append("client_id",t),n&&s.append("client_secret",n);break}const c=await this._metadataService.getTokenEndpoint(!1);o.debug("got token endpoint");const u=await this._jsonService.postForm(c,{body:s,basicAuth:a,initCredentials:this._settings.fetchRequestCredentials});return o.debug("got response"),u}async exchangeRefreshToken({grant_type:e="refresh_token",client_id:t=this._settings.client_id,client_secret:n=this._settings.client_secret,timeoutInSeconds:r,...i}){const o=this._logger.create("exchangeRefreshToken");t||o.throw(new Error("A client_id is required")),i.refresh_token||o.throw(new Error("A refresh_token is required"));const s=new URLSearchParams({grant_type:e});for(const[d,f]of Object.entries(i))f!=null&&s.set(d,f);let a;switch(this._settings.client_authentication){case"client_secret_basic":if(!n)throw o.throw(new Error("A client_secret is required")),null;a=$t.generateBasicAuth(t,n);break;case"client_secret_post":s.append("client_id",t),n&&s.append("client_secret",n);break}const c=await this._metadataService.getTokenEndpoint(!1);o.debug("got token endpoint");const u=await this._jsonService.postForm(c,{body:s,basicAuth:a,timeoutInSeconds:r,initCredentials:this._settings.fetchRequestCredentials});return o.debug("got response"),u}async revoke(e){var t;const n=this._logger.create("revoke");e.token||n.throw(new Error("A token is required"));const r=await this._metadataService.getRevocationEndpoint(!1);n.debug(`got revocation endpoint, revoking ${(t=e.token_type_hint)!=null?t:"default token type"}`);const i=new URLSearchParams;for(const[o,s]of Object.entries(e))s!=null&&i.set(o,s);i.set("client_id",this._settings.client_id),this._settings.client_secret&&i.set("client_secret",this._settings.client_secret),await this._jsonService.postForm(r,{body:i}),n.debug("got response")}},sj=class{constructor(e,t,n){this._settings=e,this._metadataService=t,this._claimsService=n,this._logger=new G("ResponseValidator"),this._userInfoService=new oj(this._settings,this._metadataService),this._tokenClient=new Um(this._settings,this._metadataService)}async validateSigninResponse(e,t){const n=this._logger.create("validateSigninResponse");this._processSigninState(e,t),n.debug("state processed"),await this._processCode(e,t),n.debug("code processed"),e.isOpenId&&this._validateIdTokenAttributes(e),n.debug("tokens validated"),await this._processClaims(e,t==null?void 0:t.skipUserInfo,e.isOpenId),n.debug("claims processed")}async validateCredentialsResponse(e,t){const n=this._logger.create("validateCredentialsResponse");e.isOpenId&&this._validateIdTokenAttributes(e),n.debug("tokens validated"),await this._processClaims(e,t,e.isOpenId),n.debug("claims processed")}async validateRefreshResponse(e,t){var n,r;const i=this._logger.create("validateRefreshResponse");e.userState=t.data,(n=e.session_state)!=null||(e.session_state=t.session_state),(r=e.scope)!=null||(e.scope=t.scope),e.isOpenId&&e.id_token&&(this._validateIdTokenAttributes(e,t.id_token),i.debug("ID Token validated")),e.id_token||(e.id_token=t.id_token,e.profile=t.profile);const o=e.isOpenId&&!!e.id_token;await this._processClaims(e,!1,o),i.debug("claims processed")}validateSignoutResponse(e,t){const n=this._logger.create("validateSignoutResponse");if(t.id!==e.state&&n.throw(new Error("State does not match")),n.debug("state validated"),e.userState=t.data,e.error)throw n.warn("Response was error",e.error),new tr(e)}_processSigninState(e,t){var n;const r=this._logger.create("_processSigninState");if(t.id!==e.state&&r.throw(new Error("State does not match")),t.client_id||r.throw(new Error("No client_id on state")),t.authority||r.throw(new Error("No authority on state")),this._settings.authority!==t.authority&&r.throw(new Error("authority mismatch on settings vs. signin state")),this._settings.client_id&&this._settings.client_id!==t.client_id&&r.throw(new Error("client_id mismatch on settings vs. signin state")),r.debug("state validated"),e.userState=t.data,(n=e.scope)!=null||(e.scope=t.scope),e.error)throw r.warn("Response was error",e.error),new tr(e);t.code_verifier&&!e.code&&r.throw(new Error("Expected code in response"))}async _processClaims(e,t=!1,n=!0){const r=this._logger.create("_processClaims");if(e.profile=this._claimsService.filterProtocolClaims(e.profile),t||!this._settings.loadUserInfo||!e.access_token){r.debug("not loading user info");return}r.debug("loading user info");const i=await this._userInfoService.getClaims(e.access_token);r.debug("user info claims received from user info endpoint"),n&&i.sub!==e.profile.sub&&r.throw(new Error("subject from UserInfo response does not match subject in ID Token")),e.profile=this._claimsService.mergeClaims(e.profile,this._claimsService.filterProtocolClaims(i)),r.debug("user info claims received, updated profile:",e.profile)}async _processCode(e,t){const n=this._logger.create("_processCode");if(e.code){n.debug("Validating code");const r=await this._tokenClient.exchangeCode({client_id:t.client_id,client_secret:t.client_secret,code:e.code,redirect_uri:t.redirect_uri,code_verifier:t.code_verifier,...t.extraTokenParams});Object.assign(e,r)}else n.debug("No code to process")}_validateIdTokenAttributes(e,t){var n;const r=this._logger.create("_validateIdTokenAttributes");r.debug("decoding ID Token JWT");const i=Sc.decode((n=e.id_token)!=null?n:"");if(i.sub||r.throw(new Error("ID Token is missing a subject claim")),t){const o=Sc.decode(t);o.sub!==i.sub&&r.throw(new Error("sub in id_token does not match current sub")),o.auth_time&&o.auth_time!==i.auth_time&&r.throw(new Error("auth_time in id_token does not match original auth_time")),o.azp&&o.azp!==i.azp&&r.throw(new Error("azp in id_token does not match original azp")),!o.azp&&i.azp&&r.throw(new Error("azp not in id_token, but present in original id_token"))}e.profile=i}},Hr=class{constructor(e){this.id=e.id||$t.generateUUIDv4(),this.data=e.data,e.created&&e.created>0?this.created=e.created:this.created=wt.getEpochTime(),this.request_type=e.request_type}toStorageString(){return new G("State").create("toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created,request_type:this.request_type})}static fromStorageString(e){return G.createStatic("State","fromStorageString"),new Hr(JSON.parse(e))}static async clearStaleState(e,t){const n=G.createStatic("State","clearStaleState"),r=wt.getEpochTime()-t,i=await e.getAllKeys();n.debug("got keys",i);for(let o=0;ow.searchParams.append("resource",p));for(const[m,p]of Object.entries({response_mode:a,...C,...h}))p!=null&&w.searchParams.append(m,p.toString());this.url=w.href}},lj="openid",Xo=class{constructor(e){this.access_token="",this.token_type="",this.profile={},this.state=e.get("state"),this.session_state=e.get("session_state"),this.error=e.get("error"),this.error_description=e.get("error_description"),this.error_uri=e.get("error_uri"),this.code=e.get("code")}get expires_in(){if(this.expires_at!==void 0)return this.expires_at-wt.getEpochTime()}set expires_in(e){typeof e=="string"&&(e=Number(e)),e!==void 0&&e>=0&&(this.expires_at=Math.floor(e)+wt.getEpochTime())}get isOpenId(){var e;return((e=this.scope)==null?void 0:e.split(" ").includes(lj))||!!this.id_token}},cj=class{constructor({url:e,state_data:t,id_token_hint:n,post_logout_redirect_uri:r,extraQueryParams:i,request_type:o}){if(this._logger=new G("SignoutRequest"),!e)throw this._logger.error("ctor: No url passed"),new Error("url");const s=new URL(e);n&&s.searchParams.append("id_token_hint",n),r&&(s.searchParams.append("post_logout_redirect_uri",r),t&&(this.state=new Hr({data:t,request_type:o}),s.searchParams.append("state",this.state.id)));for(const[a,c]of Object.entries({...i}))c!=null&&s.searchParams.append(a,c.toString());this.url=s.href}},uj=class{constructor(e){this.state=e.get("state"),this.error=e.get("error"),this.error_description=e.get("error_description"),this.error_uri=e.get("error_uri")}},dj=["nbf","jti","auth_time","nonce","acr","amr","azp","at_hash"],fj=["sub","iss","aud","exp","iat"],hj=class{constructor(e){this._settings=e,this._logger=new G("ClaimsService")}filterProtocolClaims(e){const t={...e};if(this._settings.filterProtocolClaims){let n;Array.isArray(this._settings.filterProtocolClaims)?n=this._settings.filterProtocolClaims:n=dj;for(const r of n)fj.includes(r)||delete t[r]}return t}mergeClaims(e,t){const n={...e};for(const[r,i]of Object.entries(t))for(const o of Array.isArray(i)?i:[i]){const s=n[r];s?Array.isArray(s)?s.includes(o)||s.push(o):n[r]!==o&&(typeof o=="object"&&this._settings.mergeClaims?n[r]=this.mergeClaims(s,o):n[r]=[s,o]):n[r]=o}return n}},pj=class{constructor(e){this._logger=new G("OidcClient"),this.settings=new Bm(e),this.metadataService=new XS(this.settings),this._claimsService=new hj(this.settings),this._validator=new sj(this.settings,this.metadataService,this._claimsService),this._tokenClient=new Um(this.settings,this.metadataService)}async createSigninRequest({state:e,request:t,request_uri:n,request_type:r,id_token_hint:i,login_hint:o,skipUserInfo:s,nonce:a,response_type:c=this.settings.response_type,scope:u=this.settings.scope,redirect_uri:d=this.settings.redirect_uri,prompt:f=this.settings.prompt,display:g=this.settings.display,max_age:h=this.settings.max_age,ui_locales:y=this.settings.ui_locales,acr_values:_=this.settings.acr_values,resource:C=this.settings.resource,response_mode:w=this.settings.response_mode,extraQueryParams:m=this.settings.extraQueryParams,extraTokenParams:p=this.settings.extraTokenParams}){const x=this._logger.create("createSigninRequest");if(c!=="code")throw new Error("Only the Authorization Code flow (with PKCE) is supported");const j=await this.metadataService.getAuthorizationEndpoint();x.debug("Received authorization endpoint",j);const b=new aj({url:j,authority:this.settings.authority,client_id:this.settings.client_id,redirect_uri:d,response_type:c,scope:u,state_data:e,prompt:f,display:g,max_age:h,ui_locales:y,id_token_hint:i,login_hint:o,acr_values:_,resource:C,request:t,request_uri:n,extraQueryParams:m,extraTokenParams:p,request_type:r,response_mode:w,client_secret:this.settings.client_secret,skipUserInfo:s,nonce:a,disablePKCE:this.settings.disablePKCE});await this.clearStaleState();const k=b.state;return await this.settings.stateStore.set(k.id,k.toStorageString()),b}async readSigninResponseState(e,t=!1){const n=this._logger.create("readSigninResponseState"),r=new Xo(jc.readParams(e,this.settings.response_mode));if(!r.state)throw n.throw(new Error("No state in response")),null;const i=await this.settings.stateStore[t?"remove":"get"](r.state);if(!i)throw n.throw(new Error("No matching state found in storage")),null;return{state:$u.fromStorageString(i),response:r}}async processSigninResponse(e){const t=this._logger.create("processSigninResponse"),{state:n,response:r}=await this.readSigninResponseState(e,!0);return t.debug("received state from storage; validating response"),await this._validator.validateSigninResponse(r,n),r}async processResourceOwnerPasswordCredentials({username:e,password:t,skipUserInfo:n=!1,extraTokenParams:r={}}){const i=await this._tokenClient.exchangeCredentials({username:e,password:t,...r}),o=new Xo(new URLSearchParams);return Object.assign(o,i),await this._validator.validateCredentialsResponse(o,n),o}async useRefreshToken({state:e,timeoutInSeconds:t}){var n;const r=this._logger.create("useRefreshToken");let i;if(this.settings.refreshTokenAllowedScope===void 0)i=e.scope;else{const a=this.settings.refreshTokenAllowedScope.split(" ");i=(((n=e.scope)==null?void 0:n.split(" "))||[]).filter(u=>a.includes(u)).join(" ")}const o=await this._tokenClient.exchangeRefreshToken({refresh_token:e.refresh_token,scope:i,timeoutInSeconds:t}),s=new Xo(new URLSearchParams);return Object.assign(s,o),r.debug("validating response",s),await this._validator.validateRefreshResponse(s,{...e,scope:i}),s}async createSignoutRequest({state:e,id_token_hint:t,request_type:n,post_logout_redirect_uri:r=this.settings.post_logout_redirect_uri,extraQueryParams:i=this.settings.extraQueryParams}={}){const o=this._logger.create("createSignoutRequest"),s=await this.metadataService.getEndSessionEndpoint();if(!s)throw o.throw(new Error("No end session endpoint")),null;o.debug("Received end session endpoint",s);const a=new cj({url:s,id_token_hint:t,post_logout_redirect_uri:r,state_data:e,extraQueryParams:i,request_type:n});await this.clearStaleState();const c=a.state;return c&&(o.debug("Signout request has state to persist"),await this.settings.stateStore.set(c.id,c.toStorageString())),a}async readSignoutResponseState(e,t=!1){const n=this._logger.create("readSignoutResponseState"),r=new uj(jc.readParams(e,this.settings.response_mode));if(!r.state){if(n.debug("No state in response"),r.error)throw n.warn("Response was error:",r.error),new tr(r);return{state:void 0,response:r}}const i=await this.settings.stateStore[t?"remove":"get"](r.state);if(!i)throw n.throw(new Error("No matching state found in storage")),null;return{state:Hr.fromStorageString(i),response:r}}async processSignoutResponse(e){const t=this._logger.create("processSignoutResponse"),{state:n,response:r}=await this.readSignoutResponseState(e,!0);return n?(t.debug("Received state from storage; validating response"),this._validator.validateSignoutResponse(r,n)):t.debug("No state from storage; skipping response validation"),r}clearStaleState(){return this._logger.create("clearStaleState"),Hr.clearStaleState(this.settings.stateStore,this.settings.staleStateAgeInSeconds)}async revokeToken(e,t){return this._logger.create("revokeToken"),await this._tokenClient.revoke({token:e,token_type_hint:t})}},gj=class{constructor(e){this._userManager=e,this._logger=new G("SessionMonitor"),this._start=async t=>{const n=t.session_state;if(!n)return;const r=this._logger.create("_start");if(t.profile?(this._sub=t.profile.sub,this._sid=t.profile.sid,r.debug("session_state",n,", sub",this._sub)):(this._sub=void 0,this._sid=void 0,r.debug("session_state",n,", anonymous user")),this._checkSessionIFrame){this._checkSessionIFrame.start(n);return}try{const i=await this._userManager.metadataService.getCheckSessionIframe();if(i){r.debug("initializing check session iframe");const o=this._userManager.settings.client_id,s=this._userManager.settings.checkSessionIntervalInSeconds,a=this._userManager.settings.stopCheckSessionOnError,c=new YS(this._callback,o,i,s,a);await c.load(),this._checkSessionIFrame=c,c.start(n)}else r.warn("no check session iframe found in the metadata")}catch(i){r.error("Error from getCheckSessionIframe:",i instanceof Error?i.message:i)}},this._stop=()=>{const t=this._logger.create("_stop");if(this._sub=void 0,this._sid=void 0,this._checkSessionIFrame&&this._checkSessionIFrame.stop(),this._userManager.settings.monitorAnonymousSession){const n=setInterval(async()=>{clearInterval(n);try{const r=await this._userManager.querySessionStatus();if(r){const i={session_state:r.session_state,profile:r.sub&&r.sid?{sub:r.sub,sid:r.sid}:null};this._start(i)}}catch(r){t.error("error from querySessionStatus",r instanceof Error?r.message:r)}},1e3)}},this._callback=async()=>{const t=this._logger.create("_callback");try{const n=await this._userManager.querySessionStatus();let r=!0;n&&this._checkSessionIFrame?n.sub===this._sub?(r=!1,this._checkSessionIFrame.start(n.session_state),n.sid===this._sid?t.debug("same sub still logged in at OP, restarting check session iframe; session_state",n.session_state):(t.debug("same sub still logged in at OP, session state has changed, restarting check session iframe; session_state",n.session_state),this._userManager.events._raiseUserSessionChanged())):t.debug("different subject signed into OP",n.sub):t.debug("subject no longer signed into OP"),r?this._sub?this._userManager.events._raiseUserSignedOut():this._userManager.events._raiseUserSignedIn():t.debug("no change in session detected, no event to raise")}catch(n){this._sub&&(t.debug("Error calling queryCurrentSigninSession; raising signed out event",n),this._userManager.events._raiseUserSignedOut())}},e||this._logger.throw(new Error("No user manager passed")),this._userManager.events.addUserLoaded(this._start),this._userManager.events.addUserUnloaded(this._stop),this._init().catch(t=>{this._logger.error(t)})}async _init(){this._logger.create("_init");const e=await this._userManager.getUser();if(e)this._start(e);else if(this._userManager.settings.monitorAnonymousSession){const t=await this._userManager.querySessionStatus();if(t){const n={session_state:t.session_state,profile:t.sub&&t.sid?{sub:t.sub,sid:t.sid}:null};this._start(n)}}}},Zo=class{constructor(t){var n;this.id_token=t.id_token,this.session_state=(n=t.session_state)!=null?n:null,this.access_token=t.access_token,this.refresh_token=t.refresh_token,this.token_type=t.token_type,this.scope=t.scope,this.profile=t.profile,this.expires_at=t.expires_at,this.state=t.userState}get expires_in(){if(this.expires_at!==void 0)return this.expires_at-wt.getEpochTime()}set expires_in(t){t!==void 0&&(this.expires_at=Math.floor(t)+wt.getEpochTime())}get expired(){const t=this.expires_in;if(t!==void 0)return t<=0}get scopes(){var t,n;return(n=(t=this.scope)==null?void 0:t.split(" "))!=null?n:[]}toStorageString(){return new G("User").create("toStorageString"),JSON.stringify({id_token:this.id_token,session_state:this.session_state,access_token:this.access_token,refresh_token:this.refresh_token,token_type:this.token_type,scope:this.scope,profile:this.profile,expires_at:this.expires_at})}static fromStorageString(t){return G.createStatic("User","fromStorageString"),new Zo(JSON.parse(t))}},Gf="oidc-client",$m=class{constructor(){this._abort=new fn("Window navigation aborted"),this._disposeHandlers=new Set,this._window=null}async navigate(e){const t=this._logger.create("navigate");if(!this._window)throw new Error("Attempted to navigate on a disposed window");t.debug("setting URL in window"),this._window.location.replace(e.url);const{url:n,keepOpen:r}=await new Promise((i,o)=>{const s=a=>{var c;const u=a.data,d=(c=e.scriptOrigin)!=null?c:window.location.origin;if(!(a.origin!==d||(u==null?void 0:u.source)!==Gf)){try{const f=jc.readParams(u.url,e.response_mode).get("state");if(f||t.warn("no state found in response url"),a.source!==this._window&&f!==e.state)return}catch{this._dispose(),o(new Error("Invalid response from window"))}i(u)}};window.addEventListener("message",s,!1),this._disposeHandlers.add(()=>window.removeEventListener("message",s,!1)),this._disposeHandlers.add(this._abort.addHandler(a=>{this._dispose(),o(a)}))});return t.debug("got response from window"),this._dispose(),r||this.close(),{url:n}}_dispose(){this._logger.create("_dispose");for(const e of this._disposeHandlers)e();this._disposeHandlers.clear()}static _notifyParent(e,t,n=!1,r=window.location.origin){e.postMessage({source:Gf,url:t,keepOpen:n},r)}},Dm={location:!1,toolbar:!1,height:640},Hm="_blank",mj=60,vj=2,Wm=10,yj=class extends Bm{constructor(e){const{popup_redirect_uri:t=e.redirect_uri,popup_post_logout_redirect_uri:n=e.post_logout_redirect_uri,popupWindowFeatures:r=Dm,popupWindowTarget:i=Hm,redirectMethod:o="assign",redirectTarget:s="self",iframeNotifyParentOrigin:a=e.iframeNotifyParentOrigin,iframeScriptOrigin:c=e.iframeScriptOrigin,silent_redirect_uri:u=e.redirect_uri,silentRequestTimeoutInSeconds:d=Wm,automaticSilentRenew:f=!0,validateSubOnSilentRenew:g=!0,includeIdTokenInSilentRenew:h=!1,monitorSession:y=!1,monitorAnonymousSession:_=!1,checkSessionIntervalInSeconds:C=vj,query_status_response_type:w="code",stopCheckSessionOnError:m=!0,revokeTokenTypes:p=["access_token","refresh_token"],revokeTokensOnSignout:x=!1,includeIdTokenInSilentSignout:j=!1,accessTokenExpiringNotificationTimeInSeconds:b=mj,userStore:k}=e;if(super(e),this.popup_redirect_uri=t,this.popup_post_logout_redirect_uri=n,this.popupWindowFeatures=r,this.popupWindowTarget=i,this.redirectMethod=o,this.redirectTarget=s,this.iframeNotifyParentOrigin=a,this.iframeScriptOrigin=c,this.silent_redirect_uri=u,this.silentRequestTimeoutInSeconds=d,this.automaticSilentRenew=f,this.validateSubOnSilentRenew=g,this.includeIdTokenInSilentRenew=h,this.monitorSession=y,this.monitorAnonymousSession=_,this.checkSessionIntervalInSeconds=C,this.stopCheckSessionOnError=m,this.query_status_response_type=w,this.revokeTokenTypes=p,this.revokeTokensOnSignout=x,this.includeIdTokenInSilentSignout=j,this.accessTokenExpiringNotificationTimeInSeconds=b,k)this.userStore=k;else{const O=typeof window<"u"?window.sessionStorage:new Mm;this.userStore=new zm({store:O})}}},bc=class extends $m{constructor({silentRequestTimeoutInSeconds:e=Wm}){super(),this._logger=new G("IFrameWindow"),this._timeoutInSeconds=e,this._frame=bc.createHiddenIframe(),this._window=this._frame.contentWindow}static createHiddenIframe(){const e=window.document.createElement("iframe");return e.style.visibility="hidden",e.style.position="fixed",e.style.left="-1000px",e.style.top="0",e.width="0",e.height="0",e.setAttribute("sandbox","allow-scripts allow-same-origin allow-forms"),window.document.body.appendChild(e),e}async navigate(e){this._logger.debug("navigate: Using timeout of:",this._timeoutInSeconds);const t=setTimeout(()=>this._abort.raise(new Bu("IFrame timed out without a response")),this._timeoutInSeconds*1e3);return this._disposeHandlers.add(()=>clearTimeout(t)),await super.navigate(e)}close(){var e;this._frame&&(this._frame.parentNode&&(this._frame.addEventListener("load",t=>{var n;const r=t.target;(n=r.parentNode)==null||n.removeChild(r),this._abort.raise(new Error("IFrame removed from DOM"))},!0),(e=this._frame.contentWindow)==null||e.location.replace("about:blank")),this._frame=null),this._window=null}static notifyParent(e,t){return super._notifyParent(window.parent,e,!1,t)}},xj=class{constructor(e){this._settings=e,this._logger=new G("IFrameNavigator")}async prepare({silentRequestTimeoutInSeconds:e=this._settings.silentRequestTimeoutInSeconds}){return new bc({silentRequestTimeoutInSeconds:e})}async callback(e){this._logger.create("callback"),bc.notifyParent(e,this._settings.iframeNotifyParentOrigin)}},wj=500,Yf=class extends $m{constructor({popupWindowTarget:e=Hm,popupWindowFeatures:t={}}){super(),this._logger=new G("PopupWindow");const n=Jf.center({...Dm,...t});this._window=window.open(void 0,e,Jf.serialize(n))}async navigate(e){var t;(t=this._window)==null||t.focus();const n=setInterval(()=>{(!this._window||this._window.closed)&&this._abort.raise(new Error("Popup closed by user"))},wj);return this._disposeHandlers.add(()=>clearInterval(n)),await super.navigate(e)}close(){this._window&&(this._window.closed||(this._window.close(),this._abort.raise(new Error("Popup closed")))),this._window=null}static notifyOpener(e,t){if(!window.opener)throw new Error("No window.opener. Can't complete notification.");return super._notifyParent(window.opener,e,t)}},_j=class{constructor(e){this._settings=e,this._logger=new G("PopupNavigator")}async prepare({popupWindowFeatures:e=this._settings.popupWindowFeatures,popupWindowTarget:t=this._settings.popupWindowTarget}){return new Yf({popupWindowFeatures:e,popupWindowTarget:t})}async callback(e,t=!1){this._logger.create("callback"),Yf.notifyOpener(e,t)}},Sj=class{constructor(e){this._settings=e,this._logger=new G("RedirectNavigator")}async prepare({redirectMethod:e=this._settings.redirectMethod,redirectTarget:t=this._settings.redirectTarget}){var n;this._logger.create("prepare");let r=window.self;t==="top"&&(r=(n=window.top)!=null?n:window.self);const i=r.location[e].bind(r.location);let o;return{navigate:async s=>{this._logger.create("navigate");const a=new Promise((c,u)=>{o=u});return i(s.url),await a},close:()=>{this._logger.create("close"),o==null||o(new Error("Redirect aborted")),r.stop()}}}},jj=class extends GS{constructor(e){super({expiringNotificationTimeInSeconds:e.accessTokenExpiringNotificationTimeInSeconds}),this._logger=new G("UserManagerEvents"),this._userLoaded=new fn("User loaded"),this._userUnloaded=new fn("User unloaded"),this._silentRenewError=new fn("Silent renew error"),this._userSignedIn=new fn("User signed in"),this._userSignedOut=new fn("User signed out"),this._userSessionChanged=new fn("User session changed")}load(e,t=!0){super.load(e),t&&this._userLoaded.raise(e)}unload(){super.unload(),this._userUnloaded.raise()}addUserLoaded(e){return this._userLoaded.addHandler(e)}removeUserLoaded(e){return this._userLoaded.removeHandler(e)}addUserUnloaded(e){return this._userUnloaded.addHandler(e)}removeUserUnloaded(e){return this._userUnloaded.removeHandler(e)}addSilentRenewError(e){return this._silentRenewError.addHandler(e)}removeSilentRenewError(e){return this._silentRenewError.removeHandler(e)}_raiseSilentRenewError(e){this._silentRenewError.raise(e)}addUserSignedIn(e){return this._userSignedIn.addHandler(e)}removeUserSignedIn(e){this._userSignedIn.removeHandler(e)}_raiseUserSignedIn(){this._userSignedIn.raise()}addUserSignedOut(e){return this._userSignedOut.addHandler(e)}removeUserSignedOut(e){this._userSignedOut.removeHandler(e)}_raiseUserSignedOut(){this._userSignedOut.raise()}addUserSessionChanged(e){return this._userSessionChanged.addHandler(e)}removeUserSessionChanged(e){this._userSessionChanged.removeHandler(e)}_raiseUserSessionChanged(){this._userSessionChanged.raise()}},bj=class{constructor(e){this._userManager=e,this._logger=new G("SilentRenewService"),this._isStarted=!1,this._retryTimer=new wt("Retry Silent Renew"),this._tokenExpiring=async()=>{const t=this._logger.create("_tokenExpiring");try{await this._userManager.signinSilent(),t.debug("silent token renewal successful")}catch(n){if(n instanceof Bu){t.warn("ErrorTimeout from signinSilent:",n,"retry in 5s"),this._retryTimer.init(5);return}t.error("Error from signinSilent:",n),this._userManager.events._raiseSilentRenewError(n)}}}async start(){const e=this._logger.create("start");if(!this._isStarted){this._isStarted=!0,this._userManager.events.addAccessTokenExpiring(this._tokenExpiring),this._retryTimer.addHandler(this._tokenExpiring);try{await this._userManager.getUser()}catch(t){e.error("getUser error",t)}}}stop(){this._isStarted&&(this._retryTimer.cancel(),this._retryTimer.removeHandler(this._tokenExpiring),this._userManager.events.removeAccessTokenExpiring(this._tokenExpiring),this._isStarted=!1)}},kj=class{constructor(e){this.refresh_token=e.refresh_token,this.id_token=e.id_token,this.session_state=e.session_state,this.scope=e.scope,this.profile=e.profile,this.data=e.state}},Ej=class{constructor(e){this._logger=new G("UserManager"),this.settings=new yj(e),this._client=new pj(e),this._redirectNavigator=new Sj(this.settings),this._popupNavigator=new _j(this.settings),this._iframeNavigator=new xj(this.settings),this._events=new jj(this.settings),this._silentRenewService=new bj(this),this.settings.automaticSilentRenew&&this.startSilentRenew(),this._sessionMonitor=null,this.settings.monitorSession&&(this._sessionMonitor=new gj(this))}get events(){return this._events}get metadataService(){return this._client.metadataService}async getUser(){const e=this._logger.create("getUser"),t=await this._loadUser();return t?(e.info("user loaded"),this._events.load(t,!1),t):(e.info("user not found in storage"),null)}async removeUser(){const e=this._logger.create("removeUser");await this.storeUser(null),e.info("user removed from storage"),this._events.unload()}async signinRedirect(e={}){this._logger.create("signinRedirect");const{redirectMethod:t,...n}=e,r=await this._redirectNavigator.prepare({redirectMethod:t});await this._signinStart({request_type:"si:r",...n},r)}async signinRedirectCallback(e=window.location.href){const t=this._logger.create("signinRedirectCallback"),n=await this._signinEnd(e);return n.profile&&n.profile.sub?t.info("success, signed in subject",n.profile.sub):t.info("no subject"),n}async signinResourceOwnerCredentials({username:e,password:t,skipUserInfo:n=!1}){const r=this._logger.create("signinResourceOwnerCredential"),i=await this._client.processResourceOwnerPasswordCredentials({username:e,password:t,skipUserInfo:n,extraTokenParams:this.settings.extraTokenParams});r.debug("got signin response");const o=await this._buildUser(i);return o.profile&&o.profile.sub?r.info("success, signed in subject",o.profile.sub):r.info("no subject"),o}async signinPopup(e={}){const t=this._logger.create("signinPopup"),{popupWindowFeatures:n,popupWindowTarget:r,...i}=e,o=this.settings.popup_redirect_uri;o||t.throw(new Error("No popup_redirect_uri configured"));const s=await this._popupNavigator.prepare({popupWindowFeatures:n,popupWindowTarget:r}),a=await this._signin({request_type:"si:p",redirect_uri:o,display:"popup",...i},s);return a&&(a.profile&&a.profile.sub?t.info("success, signed in subject",a.profile.sub):t.info("no subject")),a}async signinPopupCallback(e=window.location.href,t=!1){const n=this._logger.create("signinPopupCallback");await this._popupNavigator.callback(e,t),n.info("success")}async signinSilent(e={}){var t;const n=this._logger.create("signinSilent"),{silentRequestTimeoutInSeconds:r,...i}=e;let o=await this._loadUser();if(o!=null&&o.refresh_token){n.debug("using refresh token");const u=new kj(o);return await this._useRefreshToken(u)}const s=this.settings.silent_redirect_uri;s||n.throw(new Error("No silent_redirect_uri configured"));let a;o&&this.settings.validateSubOnSilentRenew&&(n.debug("subject prior to silent renew:",o.profile.sub),a=o.profile.sub);const c=await this._iframeNavigator.prepare({silentRequestTimeoutInSeconds:r});return o=await this._signin({request_type:"si:s",redirect_uri:s,prompt:"none",id_token_hint:this.settings.includeIdTokenInSilentRenew?o==null?void 0:o.id_token:void 0,...i},c,a),o&&((t=o.profile)!=null&&t.sub?n.info("success, signed in subject",o.profile.sub):n.info("no subject")),o}async _useRefreshToken(e){const t=await this._client.useRefreshToken({state:e,timeoutInSeconds:this.settings.silentRequestTimeoutInSeconds}),n=new Zo({...e,...t});return await this.storeUser(n),this._events.load(n),n}async signinSilentCallback(e=window.location.href){const t=this._logger.create("signinSilentCallback");await this._iframeNavigator.callback(e),t.info("success")}async signinCallback(e=window.location.href){const{state:t}=await this._client.readSigninResponseState(e);switch(t.request_type){case"si:r":return await this.signinRedirectCallback(e);case"si:p":return await this.signinPopupCallback(e);case"si:s":return await this.signinSilentCallback(e);default:throw new Error("invalid response_type in state")}}async signoutCallback(e=window.location.href,t=!1){const{state:n}=await this._client.readSignoutResponseState(e);if(n)switch(n.request_type){case"so:r":await this.signoutRedirectCallback(e);break;case"so:p":await this.signoutPopupCallback(e,t);break;case"so:s":await this.signoutSilentCallback(e);break;default:throw new Error("invalid response_type in state")}}async querySessionStatus(e={}){const t=this._logger.create("querySessionStatus"),{silentRequestTimeoutInSeconds:n,...r}=e,i=this.settings.silent_redirect_uri;i||t.throw(new Error("No silent_redirect_uri configured"));const o=await this._loadUser(),s=await this._iframeNavigator.prepare({silentRequestTimeoutInSeconds:n}),a=await this._signinStart({request_type:"si:s",redirect_uri:i,prompt:"none",id_token_hint:this.settings.includeIdTokenInSilentRenew?o==null?void 0:o.id_token:void 0,response_type:this.settings.query_status_response_type,scope:"openid",skipUserInfo:!0,...r},s);try{const c=await this._client.processSigninResponse(a.url);return t.debug("got signin response"),c.session_state&&c.profile.sub?(t.info("success for subject",c.profile.sub),{session_state:c.session_state,sub:c.profile.sub,sid:c.profile.sid}):(t.info("success, user not authenticated"),null)}catch(c){if(this.settings.monitorAnonymousSession&&c instanceof tr)switch(c.error){case"login_required":case"consent_required":case"interaction_required":case"account_selection_required":return t.info("success for anonymous user"),{session_state:c.session_state}}throw c}}async _signin(e,t,n){const r=await this._signinStart(e,t);return await this._signinEnd(r.url,n)}async _signinStart(e,t){const n=this._logger.create("_signinStart");try{const r=await this._client.createSigninRequest(e);return n.debug("got signin request"),await t.navigate({url:r.url,state:r.state.id,response_mode:r.state.response_mode,scriptOrigin:this.settings.iframeScriptOrigin})}catch(r){throw n.debug("error after preparing navigator, closing navigator window"),t.close(),r}}async _signinEnd(e,t){const n=this._logger.create("_signinEnd"),r=await this._client.processSigninResponse(e);return n.debug("got signin response"),await this._buildUser(r,t)}async _buildUser(e,t){const n=this._logger.create("_buildUser"),r=new Zo(e);if(t){if(t!==r.profile.sub)throw n.debug("current user does not match user returned from signin. sub from signin:",r.profile.sub),new tr({...e,error:"login_required"});n.debug("current user matches user returned from signin")}return await this.storeUser(r),n.debug("user stored"),this._events.load(r),r}async signoutRedirect(e={}){const t=this._logger.create("signoutRedirect"),{redirectMethod:n,...r}=e,i=await this._redirectNavigator.prepare({redirectMethod:n});await this._signoutStart({request_type:"so:r",post_logout_redirect_uri:this.settings.post_logout_redirect_uri,...r},i),t.info("success")}async signoutRedirectCallback(e=window.location.href){const t=this._logger.create("signoutRedirectCallback"),n=await this._signoutEnd(e);return t.info("success"),n}async signoutPopup(e={}){const t=this._logger.create("signoutPopup"),{popupWindowFeatures:n,popupWindowTarget:r,...i}=e,o=this.settings.popup_post_logout_redirect_uri,s=await this._popupNavigator.prepare({popupWindowFeatures:n,popupWindowTarget:r});await this._signout({request_type:"so:p",post_logout_redirect_uri:o,state:o==null?void 0:{},...i},s),t.info("success")}async signoutPopupCallback(e=window.location.href,t=!1){const n=this._logger.create("signoutPopupCallback");await this._popupNavigator.callback(e,t),n.info("success")}async _signout(e,t){const n=await this._signoutStart(e,t);return await this._signoutEnd(n.url)}async _signoutStart(e={},t){var n;const r=this._logger.create("_signoutStart");try{const i=await this._loadUser();r.debug("loaded current user from storage"),this.settings.revokeTokensOnSignout&&await this._revokeInternal(i);const o=e.id_token_hint||i&&i.id_token;o&&(r.debug("setting id_token_hint in signout request"),e.id_token_hint=o),await this.removeUser(),r.debug("user removed, creating signout request");const s=await this._client.createSignoutRequest(e);return r.debug("got signout request"),await t.navigate({url:s.url,state:(n=s.state)==null?void 0:n.id})}catch(i){throw r.debug("error after preparing navigator, closing navigator window"),t.close(),i}}async _signoutEnd(e){const t=this._logger.create("_signoutEnd"),n=await this._client.processSignoutResponse(e);return t.debug("got signout response"),n}async signoutSilent(e={}){var t;const n=this._logger.create("signoutSilent"),{silentRequestTimeoutInSeconds:r,...i}=e,o=this.settings.includeIdTokenInSilentSignout?(t=await this._loadUser())==null?void 0:t.id_token:void 0,s=this.settings.popup_post_logout_redirect_uri,a=await this._iframeNavigator.prepare({silentRequestTimeoutInSeconds:r});await this._signout({request_type:"so:s",post_logout_redirect_uri:s,id_token_hint:o,...i},a),n.info("success")}async signoutSilentCallback(e=window.location.href){const t=this._logger.create("signoutSilentCallback");await this._iframeNavigator.callback(e),t.info("success")}async revokeTokens(e){const t=await this._loadUser();await this._revokeInternal(t,e)}async _revokeInternal(e,t=this.settings.revokeTokenTypes){const n=this._logger.create("_revokeInternal");if(!e)return;const r=t.filter(i=>typeof e[i]=="string");if(!r.length){n.debug("no need to revoke due to no token(s)");return}for(const i of r)await this._client.revokeToken(e[i],i),n.info(`${i} revoked successfully`),i!=="access_token"&&(e[i]=null);await this.storeUser(e),n.debug("user stored"),this._events.load(e)}startSilentRenew(){this._logger.create("startSilentRenew"),this._silentRenewService.start()}stopSilentRenew(){this._silentRenewService.stop()}get _userStoreKey(){return`user:${this.settings.authority}:${this.settings.client_id}`}async _loadUser(){const e=this._logger.create("_loadUser"),t=await this.settings.userStore.get(this._userStoreKey);return t?(e.debug("user storageString loaded"),Zo.fromStorageString(t)):(e.debug("no user storageString"),null)}async storeUser(e){const t=this._logger.create("storeUser");if(e){t.debug("storing user");const n=e.toStorageString();await this.settings.userStore.set(this._userStoreKey,n)}else this._logger.debug("removing user"),await this.settings.userStore.remove(this._userStoreKey)}async clearStaleState(){await this._client.clearStaleState()}};class Du{static _checkStorageSupport(){if(this.storage_key===void 0)throw Error("This doesn't support local storage")}_getStorageKey(){return Object.getPrototypeOf(this).constructor.storage_key}_IcheckStorageSupport(){if(this._getStorageKey()===void 0)throw Error("This doesn't support local storage")}static restoreFromLocalStorage(){return _checkStorageSupport(),window.sessionStorage.getItem(this.storage_key)?new APIToken(window.sessionStorage.getItem(this.storage_key)):!1}static isCached(){return this._checkStorageSupport(),!!window.sessionStorage.getItem(this.storage_key)}saveToLocalStorage(){this._IcheckStorageSupport(),window.sessionStorage.setItem(this._getStorageKey(),JSON.stringify(this))}}Ie(Du,"storage_key");var ul;let Cj=(ul=class extends Du{constructor(n){super();Ie(this,"user");Ie(this,"key");Ie(this,"expires");Ie(this,"ip");this.user=n.user,this.key=n.key,this.expires=n.expires,this.ip=n.ip}},Ie(ul,"storage_key","pairent_api_key"),ul);const{API_ROOT:Oj,api_path:Pj}=oo,Rs=class extends Du{isLoggedIn(){return!1}constructor(t){super();for(const n in t)this[n]=t[n]}static restoreFromLocalStorage(){}static async getById(t){const n=await Pr.get(Oj+"/api/user/get",{params:{id:t}});if(n.data.error)throw new Error(n.data.error);return new Rs(n.data)}static async login(t){if(t.error!==null)throw new Error(t.error+": "+t.error_description);const n=await Pr.post(Pj("/api/auth/user/login"),t);return n.status!==200?!1:(n.data.error||(new Cj(n.data.token).saveToLocalStorage(),new Rs(n.data.user_data).saveToLocalStorage()),n.data)}};let Tr=Rs;Ie(Tr,"storage_key","pairent_user_data");const{OIDCConfig:Tj}=oo,Rj=P(LS)` + font-size: 11pt; + width: 250px; + height: 60px; + padding: 16px 20px; + + font-size: 11.5pt; + font-weight: 700; + cursor: ${e=>e.disabled?"default":"pointer"}; + + & svg { + height: 14pt; + transform: translateY(4px); + margin-left: 10px; + } + &:hover { + background: ${e=>e.disabled?"white":"royalblue"}; + } +`,Xf=P.p` + font-size: 8pt; + color: gray; + margin-top: 16px; +`,Nj=()=>l.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",xmlSpace:"preserve",viewBox:"0 0 451.5 155.9",children:l.jsx("path",{fillRule:"evenodd",d:"M408.7 0h42.8L416 102.5l-2.8 8.1c-8.2 23.9-33.9 43.6-58 45.2h-.6c-.8.1-1.6.1-2.5.1H348c-.8 0-1.6 0-2.4-.1h-43l15.7-45.2.3-.8h35.7c9.1 0 19.2-7.8 22.5-17.2l.4-1 1.2-3.5h-32.7c-4.4 0-19.5 0-13.1-18.5l4.4-12.9 3.9-11.2L356.5 0H393l-21.7 62.8H387c2.6-7.5 15.8-45.6 21.7-62.8zm-91.2 0h25.9l-15.7 45.3h-7c-9.6 0-20.1 7.9-23.5 17.4L265 155.9c-.5 0-1-.1-1.5-.1h-43l15.8-45.2 7.8-22.6 14.8-42.5c8.3-24.1 34.4-44 58.6-45.2V0zM208 0h48.7l-20.1 58.1c-3.2 9.1-9.4 15.2-19.4 17.2l16.8.1-12.3 35.2c-8.2 23.9-33.9 43.6-58 45.2h-.7c-.8.1-1.6.1-2.5.1h-4.1c-.8 0-1.6 0-2.4-.1h-43l38.2-110.4c8.4-24.1 34.4-44 58.7-45.2l.1-.2zm-12.7 40.8h15.4l-8.1 23h-23.9l4.4-12.5c1.7-4.6 7.3-10.5 12.2-10.5zm-25.6 48.8H194l-5.5 16.1c-1.1 3.4-6.1 10.8-13.6 10.8h-14.1l8.9-26.9zM96.9 0h48.7l-20.2 58.1c-3.2 9.1-9.4 15.2-19.4 17.2l16.8.1-9.3 27.1h-.2l-2.8 8.1c-8.2 23.9-33.9 43.6-58 45.2h-.6c-.8.1-1.7.1-2.5.1h-4.1c-.8 0-1.6 0-2.4-.1H0l15.7-45.2L23.6 88l14.7-42.5C46.7 21.4 72.7 1.5 97 .3V0zM84.2 40.8h15.4l-8.1 23H67.6L72 51.3c1.7-4.6 7.3-10.5 12.2-10.5zM58.6 89.6h24.3l-5.5 16.1c-1.1 3.4-6.1 10.8-13.5 10.8H49.7l8.9-26.9z",clipRule:"evenodd"})});class Aj extends bt.Component{constructor(t){super(t),this.state={loading:!1,error:JSON.parse(window.localStorage.getItem("auth_fail"))},window.localStorage.removeItem("auth_fail"),this.openid=this.openid.bind(this)}async openid(){if(this.state.loading===!0)return;this.setState({loading:!0}),Qn.setLogger(console),Qn.setLevel(Qn.NONE),new Ej(Tj).signinRedirect()}render(){return Tr.isCached()&&(window.location.href="/"),l.jsx("div",{style:{height:"65vh"},children:l.jsxs(Nm,{children:[l.jsx("h2",{children:"Вход"}),l.jsx("hr",{}),l.jsx(Rj,{onClick:this.openid,disabled:this.state.loading,children:this.state.loading?l.jsx(ao,{size:"24px",color:"#4169e1"}):l.jsxs(l.Fragment,{children:["Войти через",l.jsx(Nj,{})]})}),l.jsxs(Xf,{children:["Вход осуществляется только через",l.jsx("br",{}),"Систему Единого Входа ВВГУ"]}),this.state.error?l.jsxs(Xf,{style:{color:"darkred",fontWeight:"600"},children:["Произошла ошибка: ",this.state.error.error,this.state.error.error_description?l.jsxs(l.Fragment,{children:[l.jsx("br",{}),this.state.error.error_description]}):null]}):null]})})}}const Ij=P.div` + position: relative; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 400px; + text-align: center; + + & h2 { + font-size: 1.8em; + font-weight: 600; + margin: 1.5em 0; + } +`,Lj=P.p` + font-family: monospace; + margin: 10px 0; + width: 780px; +`;class Fj extends bt.Component{constructor(t){super(t),this.response=new Xo(new URL(window.location.href).searchParams)}async componentDidMount(){if(this.response.error)return;window.localStorage.removeItem("auth_fail");let t="?";for(const r in localStorage)if(r.startsWith("oidc.")){t=JSON.parse(localStorage[r]).code_verifier,localStorage.removeItem(r);break}const n=await Tr.login({...this.response,code_verifier:t});if(n.error){window.localStorage.setItem("auth_fail",JSON.stringify(n)),window.location.href="/login";return}n.new_user?window.location.href="/register":window.location.href="/"}render(){return l.jsxs(l.Fragment,{children:[l.jsx("div",{style:{height:"65vh"},children:l.jsxs(Ij,{children:[l.jsx("h2",{children:"Подождите пожалуйста"}),l.jsx("div",{style:{margin:"36px auto",width:"fit-content"},children:l.jsx(ao,{size:"80px",color:"#0077aa"})})]})}),this.response.error?l.jsx("div",{children:l.jsxs(Nm,{children:[l.jsx("h2",{children:"Ошибка авторизации"}),l.jsx("p",{children:this.response.error}),l.jsx(Lj,{children:this.response.error_description})]})}):null]})}}const Mj=P.button` + border: 1px solid #c2c4c2; + display: inline-block; + padding: 12px 16px; + border-radius: 14px; + + background: #ffffff; + color: gray; + box-shadow: 0 2px 1px #00000010; + + font-size: 12pt; + float: left; + + & ${Y} { + transform: translate(-4px, 2px) + } +`,zj=P.div` + height: 100px; + padding-top: 32px; + z-index: 1; + position: relative; + display: flex; + align-items: center; + top: 0; + + & h2 { + margin-left: 28px; + font-weight: 600; + padding: 0; + display: inline-block; + transform: translateY(4px); + } + + & span { + margin-left: 14px; + font-weight: 500; + font-size: 18px; + line-height: 19px; + } +`,Bj=P.div` + width: 1270px; + height: 650px; + + background: #FFFFFF; + box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25); + border-radius: 20px; + margin: 27px auto; +`,Uj=P(at)` + padding: 30px 26px 30px 36px; +`,$j=P.img` + width: 256px; + height: 256px; + + margin: 25px 0px 0px 65px; + + border-radius: 50%; + box-shadow: 0px 0px 12px 2px rgba(0, 0, 0, 0.34); +`,Dj=P.button` + display: flex; + align-items: center; + justify-content: center; + + width: 192px; + height: 32px; + + margin: 16px auto 0px; + + font-weight: 700; + font-size: 16px; + line-height: 19px; + color: #FFFFFF; + + background: #007EFF; + border-radius: 12px; +`,Hj=P.p` + font-weight: 700; + font-size: 20px; + line-height: 24px; +`,Hn=P.p` + font-weight: 500; + font-size: 14px; + line-height: 24px; +`,Wj=P.input` + border: 1px solid #CCCCCC; + border-radius: 12px; + + width: ${e=>e.width}px; + height: ${e=>e.height}px; + + padding-left: 10px; + + font-weight: 500; + font-size: 14px; + line-height: 18px; + color: #000000; + + &::placeholder { + font-weight: 500; + font-size: 12px; + line-height: 24px; + color: #CCCCCC; + } +`,Zf=P.textarea` + border: 1px solid #CCCCCC; + border-radius: 12px; + + margin: 16px 0px 0px 55px; + resize: none; + + padding: 8px; + + font-weight: 500; + font-size: 14px; + line-height: 18px; + color: #000000; + + &::placeholder { + font-weight: 500; + font-size: 14px; + line-height: 24px; + color: #CCCCCC; + } +`,qj=P.div` + width: calc(100% + 15px); + height: 28px; + + padding: 0; + + font-size: 14px; + line-height: 28px; + display: inline-block; + align-items: center; + text-align: center; + color: #FFFFFF; + + background: ${e=>e.background}; + border-radius: 20px; +`,Vj=P.button` + width: 28px; + height: 28px; + + padding: 0px; + + font-weight: 700; + font-size: 20px; + + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + text-align: center; + border-radius: 70%; + + color: #FFFFFF; + background: #D9D9D9; +`,Kj=P.button` + margin-top: 14px; + + width: auto; + height: 27px; + + padding: 0; + + font-weight: 500; + font-size: 14px; + line-height: 17px; + + text-align: left; + + color: #007EFF; + background: none; +`,cr=e=>l.jsx(l.Fragment,{children:l.jsxs(at,{style:{marginTop:e.marginTop,marginLeft:19},children:[l.jsx(le,{xs:5,children:l.jsx(Hn,{children:e.title})}),l.jsx(le,{children:l.jsx(Hn,{children:e.text})})]})}),di=e=>l.jsx(l.Fragment,{children:l.jsxs(at,{style:{marginTop:e.marginTop,marginLeft:19},children:[l.jsx(le,{xs:5,children:l.jsx(Hn,{children:e.title})}),l.jsx(le,{xs:5,children:l.jsx(Wj,{width:e.width,height:e.height,placeholder:e.placeholderInput,value:e.valueInput})})]})}),cl=e=>{const t=e.list;return t.length==0?l.jsx(l.Fragment,{children:l.jsx("h1",{children:"Вы ничего не указали"})}):l.jsx(l.Fragment,{children:l.jsxs(at,{style:{marginLeft:19},children:[t.map((n,r)=>l.jsx(le,{style:{paddingLeft:0,marginRight:9,marginTop:10},children:l.jsx(qj,{background:n.color,children:n.text})},r)),e.button?l.jsx(l.Fragment,{children:l.jsx(le,{style:{paddingLeft:0,marginRight:9,marginTop:10},children:l.jsx(Vj,{children:"+"})})}):l.jsx(l.Fragment,{children:l.jsx(Kj,{children:"Изменить.."})})]})})},Qj=function(){const[e,t]=N.useState(),n=1,[r,i,o]=Xr(async u=>{const d=await Tr.getById(u);t(d),console.log(e.name)});N.useEffect(()=>{r(n)},[]);const s=[{text:"Честность",color:"#3F51B5"},{text:"Аккуратность",color:"#03BCD6"},{text:"Музыкальность",color:"#E91D65"},{text:"Общительность",color:"#03A9F4"},{text:"Дружелюбность",color:"#8CC34D"}],a=[{text:"Честность",color:"#3F51B5"},{text:"Аккуратность",color:"#03BCD6"},{text:"Музыкальность",color:"#E91D65"},{text:"Общительность",color:"#03A9F4"},{text:"Дружелюбность",color:"#8CC34D"},{text:"Мудрость",color:"#FF5923"},{text:"Адекватность",color:"#2196F4"},{text:"Щедрость",color:"#FFC308"},{text:"Вежливость",color:"#9D28B2"}],c=[{text:"Курит",color:"#94740B"},{text:"Равнодушие",color:"#D9B8B0"},{text:"Эгоист",color:"#6E3F58"},{text:"Лень",color:"#9F6844"},{text:"Лживость",color:"#AD9029"},{text:"Диструктивность",color:"#9A150C"},{text:"Токсичность",color:"#608426"}];return l.jsxs(l.Fragment,{children:[l.jsxs(zj,{children:[l.jsxs(Mj,{children:[l.jsx(Y,{src:"/images/icons/left-arrow-light.svg",width:10,height:16}),"Вернуться назад"]}),l.jsxs("h2",{children:["Личный кабинет",l.jsx("span",{children:"/ Мои данные"})]})]}),l.jsx(Bj,{children:l.jsxs(Uj,{children:[l.jsx(le,{children:l.jsxs(Dn,{children:[l.jsx(Hj,{children:"Добрый день, Александр!"}),l.jsx(Hn,{children:"Ваш статус - Студент"}),l.jsx($j,{src:"/images/avatar-test.jpg"}),l.jsxs(Dj,{children:[l.jsx(Y,{src:"/images/icons/camera.svg",width:18,height:16}),"Загрузить фото"]}),l.jsx(Zf,{rows:3,cols:30,placeholder:"Опиши себя парой предложений.."}),l.jsx(Zf,{style:{marginTop:9},rows:3,cols:30,placeholder:"Напишите сюда свои хобби.."})]})}),l.jsx(le,{children:l.jsxs(Dn,{style:{borderLeft:"1px solid #CCCCCC",height:"100%"},children:[l.jsx(cr,{marginTop:13,title:"Имя",text:"Александр"}),l.jsx(cr,{marginTop:13,title:"Фамилия",text:"Манаенков"}),l.jsx(cr,{marginTop:13,title:"Отчество",text:"Викторович"}),l.jsx(cr,{marginTop:13,title:"Дата рождения",text:"14.09.2004"}),l.jsx(cr,{marginTop:33,title:"Факультет",text:"Информационные системы (по отраслям)"}),l.jsx(cr,{marginTop:44,title:"Группа",text:"СО-ИС-20"}),l.jsx(di,{marginTop:33,title:"Телефон",width:190,height:32,placeholderInput:"Введите номер телефона"}),l.jsx(di,{marginTop:10,title:"E-mail",width:190,height:32,placeholderInput:"Введите E-mail"}),l.jsx(di,{marginTop:10,title:"Telegram",width:190,height:32,placeholderInput:"Введите Ваш телеграмм"}),l.jsx(di,{marginTop:10,title:"Discord",width:190,height:32,placeholderInput:"Введите Ваш дискорд"}),l.jsx(di,{marginTop:55,title:"Город",width:190,height:32,placeholderInput:"Введите город"})]})}),l.jsx(le,{children:l.jsxs(Dn,{style:{borderLeft:"1px solid #CCCCCC",height:"100%"},children:[l.jsx(Hn,{style:{marginLeft:19,marginTop:13},children:"Ваши личностные характеристики"}),l.jsx(cl,{list:s,button:!0}),l.jsx(Hn,{style:{marginLeft:19,marginTop:25},children:"Желаемые черты соседа"}),l.jsx(cl,{list:a}),l.jsx(Hn,{style:{marginLeft:19,marginTop:19},children:"Нежелаемые черты соседа"}),l.jsx(cl,{list:c})]})})]})})]})},Jj=Object.freeze({publicRoutes:[{path:"/",component:l.jsx(pS,{}),exact:!0},{path:"/favorites",component:l.jsx(Rf,{}),exact:!0},{path:"/comparisons",component:l.jsx(Lf,{}),exact:!0},{path:"/apartment/:id",component:l.jsx(K_,{}),exact:!0},{path:"/favorites",component:l.jsx(Rf,{}),exact:!0},{path:"/comparisons",component:l.jsx(Lf,{}),exact:!0},{path:"/tinder",component:l.jsx(IS,{}),exact:!0},{path:"/login",component:l.jsx(Aj,{}),exact:!0},{path:"/sign-in",component:l.jsx(Fj,{}),exact:!0},{path:"/psych_test",component:l.jsx(xS,{}),exact:!0},{path:"/personal_cabinet",component:l.jsx(Qj,{}),exact:!0}],privateRoutes:[]}),{publicRoutes:Gj}=Jj,Yj=()=>l.jsx(lx,{children:Gj.map(e=>l.jsx(bg,{element:e.component,path:e.path,exact:e.exact},e.path))});const Xj=function(){return l.jsxs("footer",{children:[l.jsxs("div",{className:"footerHouses",children:[l.jsxs("svg",{width:"64",height:"112",viewBox:"0 0 64 112",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[l.jsx("path",{d:"M0 16L31.5 0.5L64 16V112H0V16Z",fill:"#D9D9D9"}),l.jsx("rect",{x:"45",width:"8",height:"16",fill:"#D9D9D9"}),l.jsx("rect",{x:"37",y:"27",width:"16",height:"16",fill:"white"}),l.jsx("rect",{x:"10",y:"27",width:"16",height:"16",fill:"white"}),l.jsx("rect",{x:"37",y:"79",width:"16",height:"16",fill:"white"}),l.jsx("rect",{x:"10",y:"79",width:"16",height:"16",fill:"white"}),l.jsx("rect",{x:"37",y:"53",width:"16",height:"16",fill:"white"}),l.jsx("rect",{x:"10",y:"53",width:"16",height:"16",fill:"white"})]}),l.jsxs("svg",{width:"64",height:"64",viewBox:"0 0 64 64",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[l.jsx("rect",{width:"64",height:"64",fill:"#D9D9D9"}),l.jsx("rect",{x:"38",y:"38",width:"16",height:"16",fill:"white"}),l.jsx("rect",{x:"11",y:"38",width:"16",height:"16",fill:"white"}),l.jsx("rect",{x:"38",y:"12",width:"16",height:"16",fill:"white"}),l.jsx("rect",{x:"11",y:"12",width:"16",height:"16",fill:"white"})]})]}),l.jsx("div",{className:"footerBlock"})]})};function Zj(){return l.jsxs(l.Fragment,{children:[l.jsxs(hx,{children:[l.jsx(k1,{}),l.jsxs("main",{children:[l.jsx("div",{className:"horizontalLine"}),l.jsx(Yj,{})]})]}),l.jsx(Xj,{})]})}const eb=dl.createRoot(document.getElementById("root"));eb.render(l.jsx(Zj,{})); diff --git a/static/index.html b/static/index.html new file mode 100644 index 0000000..7b2ba46 --- /dev/null +++ b/static/index.html @@ -0,0 +1,20 @@ + + + + + Pairent + + + + + + + + +
+ + +