PageSourceSearch

https://zerde.ai/assets/app-DQCW1V05.js

js zerde.ai collected 2026-10-05 13:31:44 UTC 1,052,951 bytes, 402 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Landing-CS5h3KiR.js","assets/userStore-3Hbb8fEl.js","assets/user.service-BJ1kyjDJ.js","assets/clock-QCYaNK_Y.js","assets/badge-iSTyHvSS.js","assets/useTutorialVideos-5eHcZorX.js","assets/flask-conical-D_J2HlND.js","assets/circle-help-DS5M2nqo.js","assets/proxy-BeZp72t9.js","assets/timer-BcqUSbdN.js","assets/index-CIOs0ev1.js","assets/play-sC4Adzc4.js","assets/zap-BK0K9gMY.js","assets/star-CRJKoyir.js","assets/coffee-CY_msDvX.js","assets/house-CjqIIinZ.js","assets/brain-CazynafO.js","assets/heart-BQYqGSze.js","assets/usePlans-BX0TVI-u.js","assets/PaymentModal-D-D0KCiS.js","assets/dialog-CfSxp4On.js","assets/circle-check-big-DyEKuDwy.js","assets/seo.config-0P-0bSTu.js","assets/share-2-BEndahv9.js","assets/Landing-B-4hdKtO.css","assets/Terms-Du0j5tYu.js","assets/PageSEO-C29ZLH-0.js","assets/Privacy-Bsvf-9bK.js","assets/NotFound-CK2XEz94.js","assets/arrow-left-BS6oloWa.js","assets/QMJLanding-C4Dhb2C-.js","assets/PresentationLanding-soqBXzGL.js","assets/palette-CxMlcYb-.js","assets/layers-t2MqXJO_.js","assets/VideoLanding-6httdZ8r.js","assets/volume-2-B2P5wjC0.js","assets/GamesLanding-pfzbXtvt.js","assets/trophy-p6qkg67t.js","assets/BZBLanding-DMVjBq9C.js","assets/circle-check-cxEkMJDC.js","assets/TZBLanding-CkU1M_47.js","assets/calendar-D2VigaAA.js","assets/BlogIndex-DFwKVH2I.js","assets/blogData-CYHBDkbq.js","assets/BlogPost-BpN-dvMr.js","assets/Login-B2OTxunO.js","assets/VerifyOTP-DZU0JOpE.js","assets/index.esm-BkC9HfYr.js","assets/types-CRoC4UIs.js","assets/input-Dy9R-Qs5.js","assets/label-DCzaBmCO.js","assets/alert-DFLnYV3U.js","assets/Dashboard-DuLyGRyx.js","assets/progress-DOCOkUH0.js","assets/skeleton-DvchcgY_.js","assets/useQMJ-DR6WG0Q-.js","assets/qmj.service-CAup3UcV.js","assets/useVideos-CpptNVTv.js","assets/useModel3d-EdUGu7q1.js","assets/useFormatDate-B4g9KZLa.js","assets/triangle-alert-D7M1C8jf.js","assets/trending-up-Dltn8MuG.js","assets/file-stack-xSdtz3Y_.js","assets/infinity-CSytwVA6.js","assets/AITools-Czpq6Cm3.js","assets/useDocuments-Cd8PadPV.js","assets/document.service-Bi7WaaZq.js","assets/search-DXz1qDsX.js","assets/Profile-CYbQQPm9.js","assets/tabs-CXykx38R.js","assets/TelegramConnectCard-mlcLTQzg.js","assets/browser-JP79f-a9.js","assets/refresh-cw-BULDHTUh.js","assets/Subscription-CjMtbt2Q.js","assets/TelegramBot-BNJgpGec.js","assets/ServicePageHeader-C5ruV1Zh.js","assets/QMJList-1ftWeEnT.js","assets/alert-dialog-CfEdOcsl.js","assets/ActiveQMJGenerationBanner-C4AFfuHQ.js","assets/qmjGenerationStorage-COZA0tGr.js","assets/circle-alert-Boc3nvZh.js","assets/QMJCreate-BpY3zWJd.js","assets/select-D39Q3ou4.js","assets/index-DSI6OSeg.js","assets/chevron-up-CoF5NpGj.js","assets/UpgradePrompt-C1JeCrF1.js","assets/QMJGenerate-C_ENcjOE.js","assets/rotate-ccw-OKFV1yOT.js","assets/QMJDetail-Bqrtiw0w.js","assets/jspdf.es.min-B8GuXNh8.js","assets/qmj.types-DenILStf.js","assets/square-pen-D-GwcxWZ.js","assets/download-BdA6S4Tz.js","assets/file-BNqmu9fL.js","assets/printer-BLXA5Xdw.js","assets/QMJEdit-DNu9aMaz.js","assets/ZerdeEditor-CEI0W3py.js","assets/VideoList-DpYQWYmo.js","assets/video.types-BiSbYDGg.js","assets/VideoCreate-DBOFuoIY.js","assets/wifi-off-BEpSefcW.js","assets/circle-x-BodK2nZH.js","assets/languages-dT_9JHXt.js","assets/mic-BsA6uhLL.js","assets/VideoDetail-B-qQwYez.js","assets/collapsible-7BrZKlXH.js","assets/QuizList-BV6E0KEB.js","assets/useQuizzes-DwidaY9w.js","assets/ellipsis-vertical-D__los7-.js","assets/QuizCreate-DfuXoKiN.js","assets/checkbox-CREk497v.js","assets/grip-vertical-Crwff-G6.js","assets/upload-BhFr0G1Y.js","assets/QuizDetail-CEP4RHOf.js","assets/table-D-xK0aLY.js","assets/eye-Cfecrep0.js","assets/qr-code-D_r2Y6I6.js","assets/copy-Bawi9M9m.js","assets/medal-DpVbV9D_.js","assets/QuizEdit-BorVm7p0.js","assets/save-D74fokYw.js","assets/DocumentList-C8wrAce0.js","assets/documentCategoryStore-CDH1_jcv.js","assets/useAssessment-C2ArjFXH.js","assets/assessment.service-Dq2dpKgc.js","assets/clipboard-list-CYhL3ard.js","assets/DocumentCreate-BZQGatZk.js","assets/DocumentDetail-C765S0ys.js","assets/AssessmentEditor-Bj65-D41.js","assets/core.esm-Du_INhni.js","assets/sortable.esm-B8bERJD3.js","assets/radio-group-B12KMoGI.js","assets/AssessmentPublish-CM33fntT.js","assets/useClassrooms-D1BhbExL.js","assets/AssessmentTake-CzoVCx-o.js","assets/lock-B5cPY9ZE.js","assets/PresentationList-BaCeCooV.js","assets/usePresentations-RWKQm3D_.js","assets/PresentationCreate-BNUR0FsN.js","assets/pptxgen.es-CyNKHLWo.js","assets/popover-Bu4T0fMy.js","assets/link-2-C1-mLsJF.js","assets/pause-Bs_gMezG.js","assets/useResources-BoX-w21O.js","assets/PresentationDetail--9XmyTkG.js","assets/layout-grid-CDssh-Kk.js","assets/ResourcesPage-BcoUf00I.js","assets/slider-iVhIi-TB.js","assets/chevron-left-DeYx06Cm.js","assets/music-7QfTfo4H.js","assets/graduation-cap-CMePVI3U.js","assets/ModelList-Bshw15eG.js","assets/HomeworkCheck-BEb6IUU_.js","assets/useHomework-8MIOgYUg.js","assets/camera-CCE9Os91.js","assets/thumbs-up-C_Nsw-ig.js","assets/HomeworkHistory-98F3flnL.js","assets/HomeworkDetail-FDKmUdCQ.js","assets/SubmitAssignment-BeSKYNUI.js","assets/useAssignments-B-nIlRnw.js","assets/AvatarList-D3KOCSJU.js","assets/avatar.utils-1ek-M1Uk.js","assets/useAvatars-DThJrRWt.js","assets/AvatarConversation-k39QTtxb.js","assets/HelpersList-C3yTgSwB.js","assets/heart-pulse-CekPbAHY.js","assets/atom-B9oJvT2K.js","assets/orbit-B-MA0RXw.js","assets/map-DE3OPZwX.js","assets/calculator-DLFXXC9S.js","assets/earth-BlKa3ITD.js","assets/test-tubes-BluHtcwJ.js","assets/shapes-qsqWj3L6.js","assets/ARGlobe-WsYWIeYk.js","assets/three.module-C0oHIjYh.js","assets/quantize-BganWWw-.js","assets/switch-CNPv72_X.js","assets/info-AeLw3KCW.js","assets/HumanBodyExplorer-wmh6y4ce.js","assets/activity-DzGVC548.js","assets/wind-l8OF2Tcj.js","assets/utensils-crossed-B0rLc7gS.js","assets/droplets-pV2c_Myn.js","assets/stethoscope-DXIrwGFn.js","assets/PhysicsLab-B1pOqwK7.js","assets/target-CqnBo893.js","assets/arrow-down-BZxb7G1a.js","assets/circle-dot-X67iAPUD.js","assets/scale-BbYqAGju.js","assets/gauge-CctRskz9.js","assets/ChemLab-E45YFWdp.js","assets/flame-C9ULUVXr.js","assets/snowflake-Bj7co4DL.js","assets/SolarSystem-C3kMLW8Q.js","assets/HistoryMap-C_Po30fD.js","assets/index.es-CLzr7x9n.js","assets/MathSandbox-FmUjr7oE.js","assets/grid-3x3-B-q3P5Mz.js","assets/ruler-BdM_UpxN.js","assets/square--Atrzhxo.js","assets/PieChart-D0Q8rRfH.js","assets/dollar-sign-DbRh9pRC.js","assets/ConversationWorlds-CU9w3SPR.js","assets/ShapeSculpt-Cp4ygSVU.js","assets/register_all_kernels-oWaQYvs4.js","assets/__vite-browser-external-D7Ct-6yo.js","assets/camera-off-eSi_zNcF.js","assets/WorldMap-CIkMx6n1.js","assets/shuffle-DzFyiPOw.js","assets/coins-URb-fZLd.js","assets/lightbulb-MRyB03DL.js","assets/PeriodicTable-C4IEONeI.js","assets/BrainBreaksList-DNv01C6E.js","assets/PoseMatch-BMJP1AyO.js","assets/usePoseDetector-CRnuhgJ_.js","assets/pose-detection.esm-CNR3KWPP.js","assets/FruitNinja-C2H1tt2i.js","assets/StatueFreeze-DTK_JK1j.js","assets/volume-x-CcudOQbI.js","assets/BalloonPop-CdkvWPa_.js","assets/camera-B_VWCT1J.js","assets/ReactionDash-h4EuwcRN.js","assets/JumpJack-oa8MaMsQ.js","assets/BreathBubble-BT03_hRg.js","assets/ColorRush-DynxBTef.js","assets/MemoryFlash-XQAWWOmg.js","assets/RhythmTap-Dc21UEsu.js","assets/BreakShell-Brv4oUdh.js","assets/Stroop-CghIAxcA.js","assets/NumberOrder-gMdhCFjB.js","assets/MathPop-CeC3Gl_W.js","assets/RedLight-npbz5_va.js","assets/BubbleWrap-DNaeGYJd.js","assets/OddOne-CRsYndkd.js","assets/ZonePunch-xfNAR0fW.js","assets/SquatCount-BpKfXbqK.js","assets/BalanceHold-DCBNNOlh.js","assets/ClassroomList-CwtAMd9H.js","assets/ClassroomCreate-CorENK_E.js","assets/ClassesCard-CaA0R-fg.js","assets/pencil-DaDYV2t1.js","assets/ClassroomDetail-BSKJzTrj.js","assets/file-check-5uwTdP2j.js","assets/JoinClassroom-Cpm-GPah.js","assets/JoinSchoolClass-BOniN0MD.js","assets/SchoolLayout-Pw7WBr7b.js","assets/SchoolAdministration-KHlHjAsr.js","assets/AnalyticsCard-B_t1B1Kv.js","assets/ImageUrlOrFileField-Dr8lVqgz.js","assets/AnalyticsCard-Dgihpmma.css","assets/SchoolTeachers-DfL-KY3Y.js","assets/MembersCard-BobJtIBr.js","assets/SchoolStudents-Dv7G3Ias.js","assets/FeaturedStudentsCard-DBfVB1eJ.js","assets/SchoolClasses-C3TVfQ69.js","assets/SchoolSubjects-CfpDrHw4.js","assets/SubjectsCard-BlyozHvZ.js","assets/SchoolCabinets-pT_5NGih.js","assets/CabinetsCard-B-na2Kxj.js","assets/SchoolSchedule-DuK4RKzh.js","assets/ScheduleCard-DJCAIwrf.js","assets/JoinSuccess-OvviZ3g0.js","assets/GamesPage-B4bFVCSz.js","assets/swords-DrYdR14H.js","assets/storage-TSLYOtwp.js","assets/storage-BPyxjPoM.js","assets/storage-DZZkvLCY.js","assets/list-ordered-DivsqtFF.js","assets/storage-VumL8ot-.js","assets/games.service-CiSxiCH2.js","assets/subjects.constants-Czccs5PE.js","assets/storage-DkCPiPDH.js","assets/storage-DvOVQNc0.js","assets/storage-B55O-dX5.js","assets/storage-B74RndoS.js","assets/storage-CoU1p51r.js","assets/storage-jNcfKG6n.js","assets/storage-DjVDykXZ.js","assets/storage-D50a9S6S.js","assets/storage-YtPsgeKU.js","assets/package-open-CsKcpnpW.js","assets/GameDemo-BoxrD7OX.js","assets/flag-CJxttNW7.js","assets/BaigeGamePage-BDtkVnSb.js","assets/RaceTrack-BzciYOYX.js","assets/BaigePlayPage-lO6IGeXj.js","assets/SuryptauCreatePage-BvEKQDrb.js","assets/gameDefinition-C8F7oiK-.js","assets/SuryptauPlayPage-DsybADww.js","assets/YesNoCreatePage-1KbMMG6_.js","assets/GameHeader-Dzvm4mCc.js","assets/YesNoPlayPage-CaXI4Dj4.js","assets/RiddleCreatePage-BY2NELz7.js","assets/GameInfoSection-BN411Zus.js","assets/ItemListSection-CZCpS0Uc.js","assets/base-CeHQn868.js","assets/RiddlePlayPage-CpgrVGWM.js","assets/ResultsScreen-CJR-pqoR.js","assets/MatchingCreatePage-BrLI5-qf.js","assets/MatchingPlayPage-D9uIS5Ee.js","assets/useGameTimer-Bj0BFrgf.js","assets/MemoryCreatePage-BKkm6mtX.js","assets/MemoryPlayPage-C-vSxTBm.js","assets/PlayHeader-Czfy_ER0.js","assets/WordSearchCreatePage-BAlypDP1.js","assets/WordSearchPlayPage-e2xNBGfh.js","assets/CrosswordCreatePage-B1yuvHC2.js","assets/gridBuilder-N-u9YzD5.js","assets/CrosswordPlayPage-B9w1U6Tz.js","assets/FillBlanksCreatePage-DoTg6NJV.js","assets/FillBlanksPlayPage-D0KKpcum.js","assets/UnscrambleCreatePage-D4F19Q9c.js","assets/UnscramblePlayPage-DLSaEoqr.js","assets/DictationCreatePage-CbGolE9g.js","assets/link-CkvIr5tu.js","assets/DictationPlayPage-WXgmvqoH.js","assets/DialogueCreatePage-DPFmD-ag.js","assets/DialoguePlayPage-D0z077gR.js","assets/index-Dd0rvcVe.js","assets/SessionJoin-MQQJpCq9.js","assets/SessionPlay-CT2qMHIK.js","assets/SessionResults-B2B14BpV.js","assets/AdminDashboard-vxnuCj4D.js","assets/useAdmin-DGRYV8JV.js","assets/AdminSubjects-DojAiVRV.js","assets/AdminUsers-j9WIMwY5.js","assets/AdminPlans-BX2t9lqZ.js","assets/AdminSubscriptionAnalytics-KsNW5Sho.js","assets/AdminAvatars-DpRHyYMl.js","assets/AdminSchools-xI6x7tIE.js","assets/AdminTutorialVideos-DUoT5RO8.js","assets/AdminModels3D-CDeipzhZ.js"])))=>i.map(i=>d[i]);
2var lP=Object.defineProperty;var hh=e=>{throw TypeError(e)};
vendor: 6,787 bytes, lines 2-10
2var cP=(e,t,n)=>t in e?lP(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var On=(e,t,n)=>cP(e,typeof t!="symbol"?t+"":t,n),Su=(e,t,n)=>t.has(e)||hh("Cannot "+n);var P=(e,t,n)=>(Su(e,t,"read from private field"),n?n.call(e):t.get(e)),W=(e,t,n)=>t.has(e)?hh("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),V=(e,t,n,r)=>(Su(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),ie=(e,t,n)=>(Su(e,t,"access private method"),n);var Na=(e,t,n,r)=>({set _(o){V(e,t,o,n)},get _(){return P(e,t,r)}});function Hy(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const o in r)if(o!=="default"&&!(o in e)){const i=Object.getOwnPropertyDescriptor(r,o);i&&Object.defineProperty(e,o,i.get?i:{enumerable:!0,get:()=>r[o]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const i of o)if(i.type==="childList")for(const s of i.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(o){const i={};return o.integrity&&(i.integrity=o.integrity),o.referrerPolicy&&(i.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?i.credentials="include":o.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(o){if(o.ep)return;o.ep=!0;const i=n(o);fetch(o.href,i)}})();var cV=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Eo(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function uV(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:function(){return e[r]}})}),n}var qy={exports:{}},Dc={},By={exports:{}},se={};/**
3 * @license React
4 * react.production.min.js
5 *
6 * Copyright (c) Facebook, Inc. and its affiliates.
7 *
8 * This source code is licensed under the MIT license found in the
9 * LICENSE file in the root directory of this source tree.
10 */var ma=Symbol.for("react.element"),uP=Symbol.for("react.portal"),dP=Symbol.for("react.fragment"),fP=Symbol.for("react.strict_mode"),pP=Symbol.for("react.profiler"),mP=Symbol.for("react.provider"),hP=Symbol.for("react.context"),gP=Symbol.for("react.forward_ref"),vP=Symbol.for("react.suspense"),yP=Symbol.for("react.memo"),bP=Symbol.for("react.lazy"),gh=Symbol.iterator;function wP(e){return e===null||typeof e!="object"?null:(e=gh&&e[gh]||e["@@iterator"],typeof e=="function"?e:null)}var Wy={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Gy=Object.assign,Ky={};function Li(e,t,n){this.props=e,this.context=t,this.refs=Ky,this.updater=n||Wy}Li.prototype.isReactComponent={};Li.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")};Li.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Qy(){}Qy.prototype=Li.prototype;function cp(e,t,n){this.props=e,this.context=t,this.refs=Ky,this.updater=n||Wy}var up=cp.prototype=new Qy;up.constructor=cp;Gy(up,Li.prototype);up.isPureReactComponent=!0;var vh=Array.isArray,Yy=Object.prototype.hasOwnProperty,dp={current:null},Jy={key:!0,ref:!0,__self:!0,__source:!0};function Xy(e,t,n){var r,o={},i=null,s=null;if(t!=null)for(r in t.ref!==void 0&&(s=t.ref),t.key!==void 0&&(i=""+t.key),t)Yy.call(t,r)&&!Jy.hasOwnProperty(r)&&(o[r]=t[r]);var a=arguments.length-2;if(a===1)o.children=n;else if(1<a){for(var l=Array(a),c=0;c<a;c++)l[c]=arguments[c+2];o.children=l}if(e&&e.defaultProps)for(r in a=e.defaultProps,a)o[r]===void 0&&(o[r]=a[r]);return{$$typeof:ma,type:e,key:i,ref:s,props:o,_owner:dp.current}}function xP(e,t){return{$$typeof:ma,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function fp(e){return typeof e=="object"&&e!==null&&e.$$typeof===ma}function SP(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var yh=/\/+/g;function Cu(e,t){return typeof e=="object"&&e!==null&&e.key!=null?SP(""+e.key):t.toString(36)}function dl(e,t,n,r,o){var i=typeof e;(i==="undefined"||i==="boolean")&&(e=null);var s=!1;if(e===null)s=!0;else switch(i){case"string":case"number":s=!0;break;case"object":switch(e.$$typeof){case ma:case uP:s=!0}}if(s)return s=e,o=o(s),e=r===""?"."+Cu(s,0):r,vh(o)?(n="",e!=null&&(n=e.replace(yh,"$&/")+"/"),dl(o,t,n,"",function(c){return c})):o!=null&&(fp(o)&&(o=xP(o,n+(!o.key||s&&s.key===o.key?"":(""+o.key).replace(yh,"$&/")+"/")+e)),t.push(o)),1;if(s=0,r=r===""?".":r+":",vh(e))for(var a=0;a<e.length;a++){i=e[a];var l=r+Cu(i,a);s+=dl(i,t,n,l,o)}else if(l=wP(e),typeof l=="function")for(e=l.call(e),a=0;!(i=e.next()).done;)i=i.value,l=r+Cu(i,a++),s+=dl(i,t,n,l,o);else if(i==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return s}function Oa(e,t,n){if(e==null)return e;var r=[],o=0;return dl(e,r,"","",function(i){return t.call(n,i,o++)}),r}function CP(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var dt={current:null},fl={transition:null},PP={ReactCurrentDispatcher:dt,ReactCurrentBatchConfig:fl,ReactCurrentOwner:dp};function Zy(){throw Error("act(...) is not supported in production builds of React.")}se.Children={map:Oa,forEach:function(e,t,n){Oa(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return Oa(e,function(){t++}),t},toArray:function(e){return Oa(e,function(t){return t})||[]},only:function(e){if(!fp(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};se.Component=Li;se.Fragment=dP;se.Profiler=pP;se.PureComponent=cp;se.StrictMode=fP;se.Suspense=vP;
vendor: 4,836 bytes, lines 10-26
10se.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=PP;se.act=Zy;se.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=Gy({},e.props),o=e.key,i=e.ref,s=e._owner;if(t!=null){if(t.ref!==void 0&&(i=t.ref,s=dp.current),t.key!==void 0&&(o=""+t.key),e.type&&e.type.defaultProps)var a=e.type.defaultProps;for(l in t)Yy.call(t,l)&&!Jy.hasOwnProperty(l)&&(r[l]=t[l]===void 0&&a!==void 0?a[l]:t[l])}var l=arguments.length-2;if(l===1)r.children=n;else if(1<l){a=Array(l);for(var c=0;c<l;c++)a[c]=arguments[c+2];r.children=a}return{$$typeof:ma,type:e.type,key:o,ref:i,props:r,_owner:s}};se.createContext=function(e){return e={$$typeof:hP,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:mP,_context:e},e.Consumer=e};se.createElement=Xy;se.createFactory=function(e){var t=Xy.bind(null,e);return t.type=e,t};se.createRef=function(){return{current:null}};se.forwardRef=function(e){return{$$typeof:gP,render:e}};se.isValidElement=fp;se.lazy=function(e){return{$$typeof:bP,_payload:{_status:-1,_result:e},_init:CP}};se.memo=function(e,t){return{$$typeof:yP,type:e,compare:t===void 0?null:t}};se.startTransition=function(e){var t=fl.transition;fl.transition={};try{e()}finally{fl.transition=t}};se.unstable_act=Zy;se.useCallback=function(e,t){return dt.current.useCallback(e,t)};se.useContext=function(e){return dt.current.useContext(e)};se.useDebugValue=function(){};se.useDeferredValue=function(e){return dt.current.useDeferredValue(e)};se.useEffect=function(e,t){return dt.current.useEffect(e,t)};se.useId=function(){return dt.current.useId()};se.useImperativeHandle=function(e,t,n){return dt.current.useImperativeHandle(e,t,n)};se.useInsertionEffect=function(e,t){return dt.current.useInsertionEffect(e,t)};se.useLayoutEffect=function(e,t){return dt.current.useLayoutEffect(e,t)};se.useMemo=function(e,t){return dt.current.useMemo(e,t)};se.useReducer=function(e,t,n){return dt.current.useReducer(e,t,n)};se.useRef=function(e){return dt.current.useRef(e)};se.useState=function(e){return dt.current.useState(e)};se.useSyncExternalStore=function(e,t,n){return dt.current.useSyncExternalStore(e,t,n)};se.useTransition=function(){return dt.current.useTransition()};se.version="18.3.1";By.exports=se;var m=By.exports;const Ce=Eo(m),ha=Hy({__proto__:null,default:Ce},[m]);/**
11 * @license React
12 * react-jsx-runtime.production.min.js
13 *
14 * Copyright (c) Facebook, Inc. and its affiliates.
15 *
16 * This source code is licensed under the MIT license found in the
17 * LICENSE file in the root directory of this source tree.
18 */var EP=m,kP=Symbol.for("react.element"),TP=Symbol.for("react.fragment"),AP=Object.prototype.hasOwnProperty,RP=EP.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,_P={key:!0,ref:!0,__self:!0,__source:!0};function eb(e,t,n){var r,o={},i=null,s=null;n!==void 0&&(i=""+n),t.key!==void 0&&(i=""+t.key),t.ref!==void 0&&(s=t.ref);for(r in t)AP.call(t,r)&&!_P.hasOwnProperty(r)&&(o[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)o[r]===void 0&&(o[r]=t[r]);return{$$typeof:kP,type:e,key:i,ref:s,props:o,_owner:RP.current}}Dc.Fragment=TP;Dc.jsx=eb;Dc.jsxs=eb;qy.exports=Dc;var u=qy.exports,tb={exports:{}},Ot={},nb={exports:{}},rb={};/**
19 * @license React
20 * scheduler.production.min.js
21 *
22 * Copyright (c) Facebook, Inc. and its affiliates.
23 *
24 * This source code is licensed under the MIT license found in the
25 * LICENSE file in the root directory of this source tree.
26 */(function(e){function t(D,O){var $=D.length;D.push(O);e:for(;0<$;){var B=$-1>>>1,oe=D[B];if(0<o(oe,O))D[B]=O,D[$]=oe,$=B;else break e}}function n(D){return D.length===0?null:D[0]}function r(D){if(D.length===0)return null;var O=D[0],$=D.pop();if($!==O){D[0]=$;e:for(var B=0,oe=D.length,Le=oe>>>1;B<Le;){var De=2*(B+1)-1,Jt=D[De],nt=De+1,mt=D[nt];if(0>o(Jt,$))nt<oe&&0>o(mt,Jt)?(D[B]=mt,D[nt]=$,B=nt):(D[B]=Jt,D[De]=$,B=De);else if(nt<oe&&0>o(mt,$))D[B]=mt,D[nt]=$,B=nt;else break e}}return O}function o(D,O){var $=D.sortIndex-O.sortIndex;return $!==0?$:D.id-O.id}if(typeof performance=="object"&&typeof performance.now=="function"){var i=performance;e.unstable_now=function(){return i.now()}}else{var s=Date,a=s.now();e.unstable_now=function(){return s.now()-a}}var l=[],c=[],d=1,f=null,p=3,h=!1,g=!1,v=!1,b=typeof setTimeout=="function"?setTimeout:null,y=typeof clearTimeout=="function"?clearTimeout:null,w=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function x(D){for(var O=n(c);O!==null;){if(O.callback===null)r(c);else if(O.startTime<=D)r(c),O.sortIndex=O.expirationTime,t(l,O);else break;O=n(c)}}
vendor: 9,411 bytes, lines 26-35
26function S(D){if(v=!1,x(D),!g)if(n(l)!==null)g=!0,q(C);else{var O=n(c);O!==null&&re(S,O.startTime-D)}}function C(D,O){g=!1,v&&(v=!1,y(T),T=-1),h=!0;var $=p;try{for(x(O),f=n(l);f!==null&&(!(f.expirationTime>O)||D&&!L());){var B=f.callback;if(typeof B=="function"){f.callback=null,p=f.priorityLevel;var oe=B(f.expirationTime<=O);O=e.unstable_now(),typeof oe=="function"?f.callback=oe:f===n(l)&&r(l),x(O)}else r(l);f=n(l)}if(f!==null)var Le=!0;else{var De=n(c);De!==null&&re(S,De.startTime-O),Le=!1}return Le}finally{f=null,p=$,h=!1}}var k=!1,E=null,T=-1,j=5,A=-1;function L(){return!(e.unstable_now()-A<j)}function F(){if(E!==null){var D=e.unstable_now();A=D;var O=!0;try{O=E(!0,D)}finally{O?K():(k=!1,E=null)}}else k=!1}var K;if(typeof w=="function")K=function(){w(F)};else if(typeof MessageChannel<"u"){var I=new MessageChannel,Z=I.port2;I.port1.onmessage=F,K=function(){Z.postMessage(null)}}else K=function(){b(F,0)};function q(D){E=D,k||(k=!0,K())}function re(D,O){T=b(function(){D(e.unstable_now())},O)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(D){D.callback=null},e.unstable_continueExecution=function(){g||h||(g=!0,q(C))},e.unstable_forceFrameRate=function(D){0>D||125<D?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):j=0<D?Math.floor(1e3/D):5},e.unstable_getCurrentPriorityLevel=function(){return p},e.unstable_getFirstCallbackNode=function(){return n(l)},e.unstable_next=function(D){switch(p){case 1:case 2:case 3:var O=3;break;default:O=p}var $=p;p=O;try{return D()}finally{p=$}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(D,O){switch(D){case 1:case 2:case 3:case 4:case 5:break;default:D=3}var $=p;p=D;try{return O()}finally{p=$}},e.unstable_scheduleCallback=function(D,O,$){var B=e.unstable_now();switch(typeof $=="object"&&$!==null?($=$.delay,$=typeof $=="number"&&0<$?B+$:B):$=B,D){case 1:var oe=-1;break;case 2:oe=250;break;case 5:oe=1073741823;break;case 4:oe=1e4;break;default:oe=5e3}return oe=$+oe,D={id:d++,callback:O,priorityLevel:D,startTime:$,expirationTime:oe,sortIndex:-1},$>B?(D.sortIndex=$,t(c,D),n(l)===null&&D===n(c)&&(v?(y(T),T=-1):v=!0,re(S,$-B))):(D.sortIndex=oe,t(l,D),g||h||(g=!0,q(C))),D},e.unstable_shouldYield=L,e.unstable_wrapCallback=function(D){var O=p;return function(){var $=p;p=O;try{return D.apply(this,arguments)}finally{p=$}}}})(rb);nb.exports=rb;var DP=nb.exports;/**
27 * @license React
28 * react-dom.production.min.js
29 *
30 * Copyright (c) Facebook, Inc. and its affiliates.
31 *
32 * This source code is licensed under the MIT license found in the
33 * LICENSE file in the root directory of this source tree.
34 */var jP=m,jt=DP;function M(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var ob=new Set,Ns={};function ko(e,t){Ci(e,t),Ci(e+"Capture",t)}function Ci(e,t){for(Ns[e]=t,e=0;e<t.length;e++)ob.add(t[e])}var Qn=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Pd=Object.prototype.hasOwnProperty,NP=/^[: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]*$/,bh={},wh={};function OP(e){return Pd.call(wh,e)?!0:Pd.call(bh,e)?!1:NP.test(e)?wh[e]=!0:(bh[e]=!0,!1)}function MP(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 LP(e,t,n,r){if(t===null||typeof t>"u"||MP(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 ft(e,t,n,r,o,i,s){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=s}var Qe={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Qe[e]=new ft(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Qe[t]=new ft(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Qe[e]=new ft(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Qe[e]=new ft(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){Qe[e]=new ft(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Qe[e]=new ft(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Qe[e]=new ft(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Qe[e]=new ft(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Qe[e]=new ft(e,5,!1,e.toLowerCase(),null,!1,!1)});var pp=/[\-:]([a-z])/g;function mp(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(pp,mp);Qe[t]=new ft(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(pp,mp);Qe[t]=new ft(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(pp,mp);Qe[t]=new ft(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Qe[e]=new ft(e,1,!1,e.toLowerCase(),null,!1,!1)});Qe.xlinkHref=new ft("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Qe[e]=new ft(e,1,!1,e.toLowerCase(),null,!0,!0)});function hp(e,t,n,r){var o=Qe.hasOwnProperty(t)?Qe[t]:null;(o!==null?o.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(LP(t,n,o,r)&&(n=null),r||o===null?OP(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=n===null?o.type===3?!1:"":n:(t=o.attributeName,r=o.attributeNamespace,n===null?e.removeAttribute(t):(o=o.type,n=o===3||o===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var tr=jP.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,Ma=Symbol.for("react.element"),zo=Symbol.for("react.portal"),Vo=Symbol.for("react.fragment"),gp=Symbol.for("react.strict_mode"),Ed=Symbol.for("react.profiler"),ib=Symbol.for("react.provider"),sb=Symbol.for("react.context"),vp=Symbol.for("react.forward_ref"),kd=Symbol.for("react.suspense"),Td=Symbol.for("react.suspense_list"),yp=Symbol.for("react.memo"),lr=Symbol.for("react.lazy"),ab=Symbol.for("react.offscreen"),xh=Symbol.iterator;function Xi(e){return e===null||typeof e!="object"?null:(e=xh&&e[xh]||e["@@iterator"],typeof e=="function"?e:null)}var Te=Object.assign,Pu;function hs(e){if(Pu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Pu=t&&t[1]||""}return`
35`+Pu+e}var Eu=!1;function ku(e,t){if(!e||Eu)return"";Eu=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var r=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){r=c}e.call(t.prototype)}else{try{throw Error()}catch(c){r=c}e()}}
vendor: 4,297 bytes, lines 35-38
35catch(c){if(c&&r&&typeof c.stack=="string"){for(var o=c.stack.split(`
36`),i=r.stack.split(`
37`),s=o.length-1,a=i.length-1;1<=s&&0<=a&&o[s]!==i[a];)a--;for(;1<=s&&0<=a;s--,a--)if(o[s]!==i[a]){if(s!==1||a!==1)do if(s--,a--,0>a||o[s]!==i[a]){var l=`
38`+o[s].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}while(1<=s&&0<=a);break}}}finally{Eu=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?hs(e):""}function IP(e){switch(e.tag){case 5:return hs(e.type);case 16:return hs("Lazy");case 13:return hs("Suspense");case 19:return hs("SuspenseList");case 0:case 2:case 15:return e=ku(e.type,!1),e;case 11:return e=ku(e.type.render,!1),e;case 1:return e=ku(e.type,!0),e;default:return""}}function Ad(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 Vo:return"Fragment";case zo:return"Portal";case Ed:return"Profiler";case gp:return"StrictMode";case kd:return"Suspense";case Td:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case sb:return(e.displayName||"Context")+".Consumer";case ib:return(e._context.displayName||"Context")+".Provider";case vp:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case yp:return t=e.displayName||null,t!==null?t:Ad(e.type)||"Memo";case lr:t=e._payload,e=e._init;try{return Ad(e(t))}catch{}}return null}function FP(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 Ad(t);case 8:return t===gp?"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 Nr(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function lb(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function UP(e){var t=lb(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 o=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(s){r=""+s,i.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 La(e){e._valueTracker||(e._valueTracker=UP(e))}function cb(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=lb(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Fl(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 Rd(e,t){var n=t.checked;return Te({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Sh(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Nr(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 ub(e,t){t=t.checked,t!=null&&hp(e,"checked",t,!1)}function _d(e,t){ub(e,t);var n=Nr(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")?Dd(e,t.type,n):t.hasOwnProperty("defaultValue")&&Dd(e,t.type,Nr(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}
vendor: 4,180 bytes, line 38
38function Ch(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 Dd(e,t,n){(t!=="number"||Fl(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var gs=Array.isArray;function Zo(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Nr(n),t=null,o=0;o<e.length;o++){if(e[o].value===n){e[o].selected=!0,r&&(e[o].defaultSelected=!0);return}t!==null||e[o].disabled||(t=e[o])}t!==null&&(t.selected=!0)}}function jd(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(M(91));return Te({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Ph(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(M(92));if(gs(n)){if(1<n.length)throw Error(M(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Nr(n)}}function db(e,t){var n=Nr(t.value),r=Nr(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function Eh(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function fb(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Nd(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?fb(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Ia,pb=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,o){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,o)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(Ia=Ia||document.createElement("div"),Ia.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Ia.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Os(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Ss={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},$P=["Webkit","ms","Moz","O"];Object.keys(Ss).forEach(function(e){$P.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Ss[t]=Ss[e]})});function mb(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Ss.hasOwnProperty(e)&&Ss[e]?(""+t).trim():t+"px"}function hb(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,o=mb(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}var zP=Te({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 Od(e,t){if(t){if(zP[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(M(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(M(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(M(61))}if(t.style!=null&&typeof t.style!="object")throw Error(M(62))}}function Md(e,t){if(e.indexOf("-")===-1)return typeof t.is=="str
38ing";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 Ld=null;function bp(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Id=null,ei=null,ti=null;function kh(e){if(e=ya(e)){if(typeof Id!="function")throw Error(M(280));var t=e.stateNode;t&&(t=Lc(t),Id(e.stateNode,e.type,t))}}function gb(e){ei?ti?ti.push(e):ti=[e]:ei=e}function vb(){if(ei){var e=ei,t=ti;if(ti=ei=null,kh(e),t)for(e=0;e<t.length;e++)kh(t[e])}}function yb(e,t){return e(t)}function bb(){}var Tu=!1;function wb(e,t,n){if(Tu)return e(t,n);Tu=!0;try{return yb(e,t,n)}finally{Tu=!1,(ei!==null||ti!==null)&&(bb(),vb())}}function Ms(e,t){var n=e.stateNode;if(n===null)return null;var r=Lc(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(M(231,t,typeof n));return n}var Fd=!1;if(Qn)try{var Zi={};Object.defineProperty(Zi,"passive",{get:function(){Fd=!0}}),window.addEventListener("test",Zi,Zi),window.removeEventListener("test",Zi,Zi)}catch{Fd=!1}function VP(e,t,n,r,o,i,s,a,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(d){this.onError(d)}}var Cs=!1,Ul=null,$l=!1,Ud=null,HP={onError:function(e){Cs=!0,Ul=e}};function qP(e,t,n,r,o,i,s,a,l){Cs=!1,Ul=null,VP.apply(HP,arguments)}function BP(e,t,n,r,o,i,s,a,l){if(qP.apply(this,arguments),Cs){if(Cs){var c=Ul;Cs=!1,Ul=null}else throw Error(M(198));$l||($l=!0,Ud=c)}}function To(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function xb(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function Th(e){if(To(e)!==e)throw Error(M(188))}function WP(e){var t=e.alternate;if(!t){if(t=To(e),t===null)throw Error(M(188));return t!==e?null:e}for(var n=e,r=t;;){var o=n.return;if(o===null)break;var i=o.alternate;if(i===null){if(r=o.return,r!==null){n=r;continue}break}if(o.child===i.child){for(i=o.child;i;){if(i===n)return Th(o),e;if(i===r)return Th(o),t;i=i.sibling}throw Error(M(188))}if(n.return!==r.return)n=o,r=i;else{for(var s=!1,a=o.child;a;){if(a===n){s=!0,n=o,r=i;break}if(a===r){s=!0,r=o,n=i;break}a=a.sibling}if(!s){for(a=i.child;a;){if(a===n){s=!0,n=i,r=o;break}if(a===r){s=!0,r=i,n=o;break}a=a.sibling}if(!s)throw Error(M(189))}}if(n.alternate!==r)throw Error(M(190))}if(n.tag!==3)throw Error(M(188));return n.stateNode.current===n?e:t}function Sb(e){return e=WP(e),e!==null?Cb(e):null}function Cb(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=Cb(e);if(t!==null)return t;e=e.sibling}return null}var Pb=jt.unstable_scheduleCallback,Ah=jt.unstable_cancelCallback,GP=jt.unstable_shouldYield,KP=jt.unstable_requestPaint,je=jt.unstable_now,QP=jt.unstable_getCurrentPriorityLevel,wp=jt.unstable_ImmediatePriority,Eb=jt.unstable_UserBlockingPriority,zl=jt.unstable_NormalPriority,YP=jt.unstable_LowPriority,kb=jt.unstable_IdlePriority,jc=null,Tn=null;function JP(e){if(Tn&&typeof Tn.onCommitFiberRoot=="function")try{Tn.onCommitFiberRoot(jc,e,void 0,(e.current.flags&128)===128)}catch{}}var ln=Math.clz32?Math.clz32:eE,XP=Math.log,ZP=Math.LN2;function eE(e){return e>>>=0,e===0?32:31-(XP(e)/ZP|0)|0}var Fa=64,Ua=4194304;function vs(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 Vl(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,o=e.suspendedLanes,i=e.pingedLanes,s=n&268435455;if(s!==0){var a=s&~o;a!==0?r=vs(a):(i&=s,i!==0&&(r=vs(i)))}else s=n&~o,s!==0?r=vs(s):i!==0&&(r=vs(i));if(r===0)return 0;if(t!==0&&t!==r&&!(t&o)&&(o=r&-r,i=t&-t,o>=i||o===16&&(i&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-ln(t),o=1<<n,r|=e[n],t&=~o;return r}function tE(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 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 t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function nE(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,o=e.expirationTimes,i=e.pendingLanes;0<i;){var s=31-ln(i),a=1<<s,l=o[s];l===-1?(!(a&n)||a&r)&&(o[s]=tE(a,t)):l<=t&&(e.expiredLanes|=a),i&=~a}}function $d(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Tb(){var e=Fa;return Fa<<=1,!(Fa&4194240)&&(Fa=64),e}function Au(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function ga(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-ln(t),e[t]=n}function rE(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<n;){var o=31-ln(n),i=1<<o;t[o]=0,r[o]=-1,e[o]=-1,n&=~i}}function xp(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-ln(n),o=1<<r;o&t|e[r]&t&&(e[r]|=t),n&=~o}}var he=0;function Ab(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var Rb,Sp,_b,Db,jb,zd=!1,$a=[],Cr=null,Pr=null,Er=null,Ls=new Map,Is=new Map,ur=[],oE="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Rh(e,t){switch(e){case"focusin":case"focusout":Cr=null;break;case"dragenter":case"dragleave":Pr=null;break;case"mouseover":case"mouseout":Er=null;break;case"pointerover":case"pointerout":Ls.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Is.delete(t.pointerId)}}function es(e,t,n,r,o,i){return e===null||e.nativeEvent!==i?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:i,targetContainers:[o]},t!==null&&(t=ya(t),t!==null&&Sp(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,o!==null&&t.indexOf(o)===-1&&t.push(o),e)}function iE(e,t,n,r,o){switch(t){case"focusin":return Cr=es(Cr,e,t,n,r,o),!0;case"dragenter":return Pr=es(Pr,e,t,n,r,o),!0;case"mouseover":return Er=es(Er,e,t,n,r,o),!0;case"pointerover":var i=o.pointerId;return Ls.set(i,es(Ls.get(i)||null,e,t,n,r,o)),!0;case"gotpointercapture":return i=o.pointerId,Is.set(i,es(Is.get(i)||null,e,t,n,r,o)),!0}return!1}function Nb(e){var t=Kr(e.target);if(t!==null){var n=To(t);if(n!==null){if(t=n.tag,t===13){if(t=xb(n),t!==null){e.blockedOn=t,jb(e.priority,function(){_b(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function pl(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Vd(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Ld=r,n.target.dispatchEvent(r),Ld=null}else return t=ya(n),t!==null&&Sp(t),e.blockedOn=n,!1;t.shift()}return!0}function _h(e,t,n){pl(e)&&n.delete(t)}function sE(){zd=!1,Cr!==null&&pl(Cr)&&(Cr=null),Pr!==null&&pl(Pr)&&(Pr=null),Er!==null&&pl(Er)&&(Er=null),Ls.forEach(_h),Is.forEach(_h)}function ts(e,t){e.blockedOn===t&&(e.blockedOn=null,zd||(zd=!0,jt.unstable_scheduleCallback(jt.unstable_NormalPriority,sE)))}function Fs(e){function t(o){return ts(o,e)}if(0<$a.length){ts($a[0],e);for(var n=1;n<$a.length;n++){var r=$a[n];r.blockedOn===e&&(r.blockedOn=null)}}for(Cr!==null&&ts(Cr,e),Pr!==null&&ts(Pr,e),Er!==null&&ts(Er,e),Ls.forEach(t),Is.forEach(t),n=0;n<ur.length;n++)r=ur[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<ur.length&&(n=ur[0],n.blockedOn===null);)Nb(n),n.blockedOn===null&&ur.shift()}var ni=tr.ReactCurrentBatchConfig,Hl=!0;function aE(e,t,n,r){var o=he,i=ni.transition;ni.transition=null;try{he=1,Cp(e,t,n,r)}finally{he=o,ni.transition=i}}function lE(e,t,n,r){var o=he,i=ni.transition;ni.transition=null;try{he=4,Cp(e,t,n,r)}finally{he=o,ni.transition=i}}function Cp(e,t,n,r){if(Hl){var o=Vd(e,t,n,r);if(o===null)Fu(e,t,r,ql,n),Rh(e,r);else if(iE(o,e,t,n,r))r.stopPropagation();else if(Rh(e,r),t&4&&-1<oE.indexOf(e)){for(;o!==null;){var i=ya(o);if(i!==null&&Rb(i),i=Vd(e,t,n,r),i===null&&Fu(e,t,r,ql,n),i===o)break;o=i}o!==null&&r.stopPropagation()}else Fu(e,t,r,null,n)}}var ql=null;function Vd(e,t,n,r){if(ql=null,e=bp(r),e=Kr(e),e!==null)if(t=To(e),t===null)e=null;else if(n=t.tag,n===13){if(e=xb(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return ql=e,null}
vendor: 10,081 bytes, line 38
38function Ob(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(QP()){case wp:return 1;case Eb:return 4;case zl:case YP:return 16;case kb:return 536870912;default:return 16}default:return 16}}var xr=null,Pp=null,ml=null;function Mb(){if(ml)return ml;var e,t=Pp,n=t.length,r,o="value"in xr?xr.value:xr.textContent,i=o.length;for(e=0;e<n&&t[e]===o[e];e++);var s=n-e;for(r=1;r<=s&&t[n-r]===o[i-r];r++);return ml=o.slice(e,1<r?1-r:void 0)}function hl(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function za(){return!0}function Dh(){return!1}function Mt(e){function t(n,r,o,i,s){this._reactName=n,this._targetInst=o,this.type=r,this.nativeEvent=i,this.target=s,this.currentTarget=null;for(var a in e)e.hasOwnProperty(a)&&(n=e[a],this[a]=n?n(i):i[a]);return this.isDefaultPrevented=(i.defaultPrevented!=null?i.defaultPrevented:i.returnValue===!1)?za:Dh,this.isPropagationStopped=Dh,this}return Te(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=za)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=za)},persist:function(){},isPersistent:za}),t}var Ii={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Ep=Mt(Ii),va=Te({},Ii,{view:0,detail:0}),cE=Mt(va),Ru,_u,ns,Nc=Te({},va,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:kp,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==ns&&(ns&&e.type==="mousemove"?(Ru=e.screenX-ns.screenX,_u=e.screenY-ns.screenY):_u=Ru=0,ns=e),Ru)},movementY:function(e){return"movementY"in e?e.movementY:_u}}),jh=Mt(Nc),uE=Te({},Nc,{dataTransfer:0}),dE=Mt(uE),fE=Te({},va,{relatedTarget:0}),Du=Mt(fE),pE=Te({},Ii,{animationName:0,elapsedTime:0,pseudoElement:0}),mE=Mt(pE),hE=Te({},Ii,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),gE=Mt(hE),vE=Te({},Ii,{data:0}),Nh=Mt(vE),yE={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},bE={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},wE={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function xE(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=wE[e])?!!t[e]:!1}function kp(){return xE}var SE=Te({},va,{key:function(e){if(e.key){var t=yE[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=hl(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?bE[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:kp,charCode:function(e){return e.type==="keypress"?hl(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?hl(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),CE=Mt(SE),PE=Te({},Nc,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Oh=Mt(PE),EE=Te({},va,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:kp}),kE=Mt(EE),TE=Te({},Ii,{propertyName:0,elapsedTime:0,pseudoElement:0}),AE=Mt(TE),RE=Te({},Nc,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),_E=Mt(RE),DE=[9,13,27,32],Tp=Qn&&"CompositionEvent"in window,Ps=null;Qn&&"documentMode"in document&&(Ps=document.documentMode);var jE=Qn&&"TextEvent"in window&&!Ps,Lb=Qn&&(!Tp||Ps&&8<Ps&&11>=Ps),Mh=" ",Lh=!1;function Ib(e,t){switch(e){case"keyup":return DE.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Fb(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ho=!1;function NE(e,t){switch(e){case"compositionend":return Fb(t);case"keypress":return t.which!==32?null:(Lh=!0,Mh);case"textInput":return e=t.data,e===Mh&&Lh?null:e;default:return null}}function OE(e,t){if(Ho)return e==="compositionend"||!Tp&&Ib(e,t)?(e=Mb(),ml=Pp=xr=null,Ho=!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.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Lb&&t.locale!=="ko"?null:t.data;default:return null}}var ME={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Ih(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!ME[e.type]:t==="textarea"}function Ub(e,t,n,r){gb(r),t=Bl(t,"onChange"),0<t.length&&(n=new Ep("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Es=null,Us=null;function LE(e){Yb(e,0)}function Oc(e){var t=Wo(e);if(cb(t))return e}function IE(e,t){if(e==="change")return t}var $b=!1;if(Qn){var ju;if(Qn){var Nu="oninput"in document;if(!Nu){var Fh=document.createElement("div");Fh.setAttribute("oninput","return;"),Nu=typeof Fh.oninput=="function"}ju=Nu}else ju=!1;$b=ju&&(!document.documentMode||9<document.documentMode)}function Uh(){Es&&(Es.detachEvent("onpropertychange",zb),Us=Es=null)}function zb(e){if(e.propertyName==="value"&&Oc(Us)){var t=[];Ub(t,Us,e,bp(e)),wb(LE,t)}}function FE(e,t,n){e==="focusin"?(Uh(),Es=t,Us=n,Es.attachEvent("onpropertychange",zb)):e==="focusout"&&Uh()}function UE(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Oc(Us)}function $E(e,t){if(e==="click")return Oc(t)}function zE(e,t){if(e==="input"||e==="change")return Oc(t)}function VE(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var un=typeof Object.is=="function"?Object.is:VE;function $s(e,t){if(un(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var o=n[r];if(!Pd.call(t,o)||!un(e[o],t[o]))return!1}return!0}function $h(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function zh(e,t){var n=$h(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=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=$h(n)}}function Vb(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Vb(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Hb(){for(var e=window,t=Fl();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Fl(e.document)}return t}function Ap(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 HE(e){var t=Hb(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Vb(n.ownerDocument.documentElement,n)){if(r!==null&&Ap(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 o=n.textContent.length,i=Math.min(r.start,o);r=r.end===void 0?i:Math.min(r.end,o),!e.extend&&i>r&&(o=r,r=i,i=o),o=zh(n,i);var s=zh(n,r);o&&s&&(e.rangeCount!==1||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==s.node||e.focusOffset!==s.offset)&&(t=t.createRange(),t.setStart(o.node,o.offset),e.removeAllRanges(),i>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<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var qE=Qn&&"documentMode"in document&&11>=document.documentMode,qo=null,Hd=null,ks=null,qd=!1;
vendor: 4,821 bytes, line 38
38function Vh(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;qd||qo==null||qo!==Fl(r)||(r=qo,"selectionStart"in r&&Ap(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}),ks&&$s(ks,r)||(ks=r,r=Bl(Hd,"onSelect"),0<r.length&&(t=new Ep("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=qo)))}function Va(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Bo={animationend:Va("Animation","AnimationEnd"),animationiteration:Va("Animation","AnimationIteration"),animationstart:Va("Animation","AnimationStart"),transitionend:Va("Transition","TransitionEnd")},Ou={},qb={};Qn&&(qb=document.createElement("div").style,"AnimationEvent"in window||(delete Bo.animationend.animation,delete Bo.animationiteration.animation,delete Bo.animationstart.animation),"TransitionEvent"in window||delete Bo.transitionend.transition);function Mc(e){if(Ou[e])return Ou[e];if(!Bo[e])return e;var t=Bo[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in qb)return Ou[e]=t[n];return e}var Bb=Mc("animationend"),Wb=Mc("animationiteration"),Gb=Mc("animationstart"),Kb=Mc("transitionend"),Qb=new Map,Hh="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Ur(e,t){Qb.set(e,t),ko(t,[e])}for(var Mu=0;Mu<Hh.length;Mu++){var Lu=Hh[Mu],BE=Lu.toLowerCase(),WE=Lu[0].toUpperCase()+Lu.slice(1);Ur(BE,"on"+WE)}Ur(Bb,"onAnimationEnd");Ur(Wb,"onAnimationIteration");Ur(Gb,"onAnimationStart");Ur("dblclick","onDoubleClick");Ur("focusin","onFocus");Ur("focusout","onBlur");Ur(Kb,"onTransitionEnd");Ci("onMouseEnter",["mouseout","mouseover"]);Ci("onMouseLeave",["mouseout","mouseover"]);Ci("onPointerEnter",["pointerout","pointerover"]);Ci("onPointerLeave",["pointerout","pointerover"]);ko("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));ko("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));ko("onBeforeInput",["compositionend","keypress","textInput","paste"]);ko("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));ko("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));ko("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ys="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),GE=new Set("cancel close invalid load scroll toggle".split(" ").concat(ys));function qh(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,BP(r,t,void 0,e),e.currentTarget=null}function Yb(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],o=r.event;r=r.listeners;e:{var i=void 0;if(t)for(var s=r.length-1;0<=s;s--){var a=r[s],l=a.instance,c=a.currentTarget;if(a=a.listener,l!==i&&o.isPropagationStopped())break e;qh(o,a,c),i=l}else for(s=0;s<r.length;s++){if(a=r[s],l=a.instance,c=a.currentTarget,a=a.listener,l!==i&&o.isPropagationStopped())break e;qh(o,a,c),i=l}}}if($l)throw e=Ud,$l=!1,Ud=null,e}function be(e,t){var n=t[Qd];n===void 0&&(n=t[Qd]=new Set);var r=e+"__bubble";n.has(r)||(Jb(t,e,2,!1),n.add(r))}function Iu(e,t,n){var r=0;t&&(r|=4),Jb(n,e,r,t)}var Ha="_reactListening"+Math.random().toString(36).slice(2);function zs(e){if(!e[Ha]){e[Ha]=!0,ob.forEach(function(n){n!=="selectionchange"&&(GE.has(n)||Iu(n,!1,e),Iu(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Ha]||(t[Ha]=!0,Iu("selectionchange",!1,t))}}function Jb(e,t,n,r){switch(Ob(t)){case 1:var o=aE;break;case 4:o=lE;break;default:o=Cp}n=o.bind(null,t,n,e),o=void 0,!Fd||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(o=!0),r?o!==void 0?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):o!==void 0?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function Fu(e,t,n,r,o){var i=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var a=r.stateNode.containerInfo;
vendor: 32,937 bytes, lines 38-41
38if(a===o||a.nodeType===8&&a.parentNode===o)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&(l=s.stateNode.containerInfo,l===o||l.nodeType===8&&l.parentNode===o))return;s=s.return}for(;a!==null;){if(s=Kr(a),s===null)return;if(l=s.tag,l===5||l===6){r=i=s;continue e}a=a.parentNode}}r=r.return}wb(function(){var c=i,d=bp(n),f=[];e:{var p=Qb.get(e);if(p!==void 0){var h=Ep,g=e;switch(e){case"keypress":if(hl(n)===0)break e;case"keydown":case"keyup":h=CE;break;case"focusin":g="focus",h=Du;break;case"focusout":g="blur",h=Du;break;case"beforeblur":case"afterblur":h=Du;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":h=jh;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":h=dE;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":h=kE;break;case Bb:case Wb:case Gb:h=mE;break;case Kb:h=AE;break;case"scroll":h=cE;break;case"wheel":h=_E;break;case"copy":case"cut":case"paste":h=gE;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":h=Oh}var v=(t&4)!==0,b=!v&&e==="scroll",y=v?p!==null?p+"Capture":null:p;v=[];for(var w=c,x;w!==null;){x=w;var S=x.stateNode;if(x.tag===5&&S!==null&&(x=S,y!==null&&(S=Ms(w,y),S!=null&&v.push(Vs(w,S,x)))),b)break;w=w.return}0<v.length&&(p=new h(p,g,null,n,d),f.push({event:p,listeners:v}))}}if(!(t&7)){e:{if(p=e==="mouseover"||e==="pointerover",h=e==="mouseout"||e==="pointerout",p&&n!==Ld&&(g=n.relatedTarget||n.fromElement)&&(Kr(g)||g[Yn]))break e;if((h||p)&&(p=d.window===d?d:(p=d.ownerDocument)?p.defaultView||p.parentWindow:window,h?(g=n.relatedTarget||n.toElement,h=c,g=g?Kr(g):null,g!==null&&(b=To(g),g!==b||g.tag!==5&&g.tag!==6)&&(g=null)):(h=null,g=c),h!==g)){if(v=jh,S="onMouseLeave",y="onMouseEnter",w="mouse",(e==="pointerout"||e==="pointerover")&&(v=Oh,S="onPointerLeave",y="onPointerEnter",w="pointer"),b=h==null?p:Wo(h),x=g==null?p:Wo(g),p=new v(S,w+"leave",h,n,d),p.target=b,p.relatedTarget=x,S=null,Kr(d)===c&&(v=new v(y,w+"enter",g,n,d),v.target=x,v.relatedTarget=b,S=v),b=S,h&&g)t:{for(v=h,y=g,w=0,x=v;x;x=jo(x))w++;for(x=0,S=y;S;S=jo(S))x++;for(;0<w-x;)v=jo(v),w--;for(;0<x-w;)y=jo(y),x--;for(;w--;){if(v===y||y!==null&&v===y.alternate)break t;v=jo(v),y=jo(y)}v=null}else v=null;h!==null&&Bh(f,p,h,v,!1),g!==null&&b!==null&&Bh(f,b,g,v,!0)}}e:{if(p=c?Wo(c):window,h=p.nodeName&&p.nodeName.toLowerCase(),h==="select"||h==="input"&&p.type==="file")var C=IE;else if(Ih(p))if($b)C=zE;else{C=UE;var k=FE}else(h=p.nodeName)&&h.toLowerCase()==="input"&&(p.type==="checkbox"||p.type==="radio")&&(C=$E);if(C&&(C=C(e,c))){Ub(f,C,n,d);break e}k&&k(e,p,c),e==="focusout"&&(k=p._wrapperState)&&k.controlled&&p.type==="number"&&Dd(p,"number",p.value)}switch(k=c?Wo(c):window,e){case"focusin":(Ih(k)||k.contentEditable==="true")&&(qo=k,Hd=c,ks=null);break;case"focusout":ks=Hd=qo=null;break;case"mousedown":qd=!0;break;case"contextmenu":case"mouseup":case"dragend":qd=!1,Vh(f,n,d);break;case"selectionchange":if(qE)break;case"keydown":case"keyup":Vh(f,n,d)}var E;if(Tp)e:{switch(e){case"compositionstart":var T="onCompositionStart";break e;case"compositionend":T="onCompositionEnd";break e;case"compositionupdate":T="onCompositionUpdate";break e}T=void 0}else Ho?Ib(e,n)&&(T="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(T="onCompositionStart");T&&(Lb&&n.locale!=="ko"&&(Ho||T!=="onCompositionStart"?T==="onCompositionEnd"&&Ho&&(E=Mb()):(xr=d,Pp="value"in xr?xr.value:xr.textContent,Ho=!0)),k=Bl(c,T),0<k.length&&(T=new Nh(T,e,null,n,d),f.push({event:T,listeners:k}),E?T.data=E:(E=Fb(n),E!==null&&(T.data=E)))),(E=jE?NE(e,n):OE(e,n))&&(c=Bl(c,"onBeforeInput"),0<c.length&&(d=new Nh("onBeforeInput","beforeinput",null,n,d),f.push({event:d,listeners:c}),d.data=E))}Yb(f,t)})}function Vs(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Bl(e,t){for(var n=t+"Capture",r=[];e!==null;){var o=e,i=o.stateNode;o.tag===5&&i!==null&&(o=i,i=Ms(e,n),i!=null&&r.unshift(Vs(e,i,o)),i=Ms(e,t),i!=null&&r.push(Vs(e,i,o))),e=e.return}return r}function jo(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Bh(e,t,n,r,o){for(var i=t._reactName,s=[];n!==null&&n!==r;){var a=n,l=a.alternate,c=a.stateNode;if(l!==null&&l===r)break;a.tag===5&&c!==null&&(a=c,o?(l=Ms(n,i),l!=null&&s.unshift(Vs(n,l,a))):o||(l=Ms(n,i),l!=null&&s.push(Vs(n,l,a)))),n=n.return}s.length!==0&&e.push({event:t,listeners:s})}var KE=/\r\n?/g,QE=/\u0000|\uFFFD/g;function Wh(e){return(typeof e=="string"?e:""+e).replace(KE,`
39`).replace(QE,"")}function qa(e,t,n){if(t=Wh(t),Wh(e)!==t&&n)throw Error(M(425))}function Wl(){}var Bd=null,Wd=null;function Gd(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Kd=typeof setTimeout=="function"?setTimeout:void 0,YE=typeof clearTimeout=="function"?clearTimeout:void 0,Gh=typeof Promise=="function"?Promise:void 0,JE=typeof queueMicrotask=="function"?queueMicrotask:typeof Gh<"u"?function(e){return Gh.resolve(null).then(e).catch(XE)}:Kd;function XE(e){setTimeout(function(){throw e})}function Uu(e,t){var n=t,r=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&o.nodeType===8)if(n=o.data,n==="/$"){if(r===0){e.removeChild(o),Fs(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=o}while(n);Fs(t)}function kr(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function Kh(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var Fi=Math.random().toString(36).slice(2),Sn="__reactFiber$"+Fi,Hs="__reactProps$"+Fi,Yn="__reactContainer$"+Fi,Qd="__reactEvents$"+Fi,ZE="__reactListeners$"+Fi,ek="__reactHandles$"+Fi;function Kr(e){var t=e[Sn];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Yn]||n[Sn]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Kh(e);e!==null;){if(n=e[Sn])return n;e=Kh(e)}return t}e=n,n=e.parentNode}return null}function ya(e){return e=e[Sn]||e[Yn],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Wo(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(M(33))}function Lc(e){return e[Hs]||null}var Yd=[],Go=-1;function $r(e){return{current:e}}function xe(e){0>Go||(e.current=Yd[Go],Yd[Go]=null,Go--)}function ve(e,t){Go++,Yd[Go]=e.current,e.current=t}var Or={},tt=$r(Or),bt=$r(!1),mo=Or;function Pi(e,t){var n=e.type.contextTypes;if(!n)return Or;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o={},i;for(i in n)o[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function wt(e){return e=e.childContextTypes,e!=null}function Gl(){xe(bt),xe(tt)}function Qh(e,t,n){if(tt.current!==Or)throw Error(M(168));ve(tt,t),ve(bt,n)}function Xb(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var o in r)if(!(o in t))throw Error(M(108,FP(e)||"Unknown",o));return Te({},n,r)}function Kl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Or,mo=tt.current,ve(tt,e),ve(bt,bt.current),!0}function Yh(e,t,n){var r=e.stateNode;if(!r)throw Error(M(169));n?(e=Xb(e,t,mo),r.__reactInternalMemoizedMergedChildContext=e,xe(bt),xe(tt),ve(tt,e)):xe(bt),ve(bt,n)}var Un=null,Ic=!1,$u=!1;function Zb(e){Un===null?Un=[e]:Un.push(e)}function tk(e){Ic=!0,Zb(e)}function zr(){if(!$u&&Un!==null){$u=!0;var e=0,t=he;try{var n=Un;for(he=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}Un=null,Ic=!1}catch(o){throw Un!==null&&(Un=Un.slice(e+1)),Pb(wp,zr),o}finally{he=t,$u=!1}}return null}var Ko=[],Qo=0,Ql=null,Yl=0,Vt=[],Ht=0,ho=null,qn=1,Bn="";function Br(e,t){Ko[Qo++]=Yl,Ko[Qo++]=Ql,Ql=e,Yl=t}function ew(e,t,n){Vt[Ht++]=qn,Vt[Ht++]=Bn,Vt[Ht++]=ho,ho=e;var r=qn;e=Bn;var o=32-ln(r)-1;r&=~(1<<o),n+=1;var i=32-ln(t)+o;if(30<i){var s=o-o%5;i=(r&(1<<s)-1).toString(32),r>>=s,o-=s,qn=1<<32-ln(t)+o|n<<o|r,Bn=i+e}else qn=1<<i|n<<o|r,Bn=e}function Rp(e){e.return!==null&&(Br(e,1),ew(e,1,0))}function _p(e){for(;e===Ql;)Ql=Ko[--Qo],Ko[Qo]=null,Yl=Ko[--Qo],Ko[Qo]=null;for(;e===ho;)ho=Vt[--Ht],Vt[Ht]=null,Bn=Vt[--Ht],Vt[Ht]=null,qn=Vt[--Ht],Vt[Ht]=null}var _t=null,Rt=null,Pe=!1,rn=null;function tw(e,t){var n=qt(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function Jh(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,_t=e,Rt=kr(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,_t=e,Rt=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=ho!==null?{id:qn,overflow:Bn}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=qt(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,_t=e,Rt=null,!0):!1;default:return!1}}function Jd(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Xd(e){if(Pe){var t=Rt;if(t){var n=t;if(!Jh(e,t)){if(Jd(e))throw Error(M(418));t=kr(n.nextSibling);var r=_t;t&&Jh(e,t)?tw(r,n):(e.flags=e.flags&-4097|2,Pe=!1,_t=e)}}else{if(Jd(e))throw Error(M(418));e.flags=e.flags&-4097|2,Pe=!1,_t=e}}}function Xh(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;_t=e}function Ba(e){if(e!==_t)return!1;if(!Pe)return Xh(e),Pe=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!Gd(e.type,e.memoizedProps)),t&&(t=Rt)){if(Jd(e))throw nw(),Error(M(418));for(;t;)tw(e,t),t=kr(t.nextSibling)}if(Xh(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(M(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){Rt=kr(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}Rt=null}}else Rt=_t?kr(e.stateNode.nextSibling):null;return!0}function nw(){for(var e=Rt;e;)e=kr(e.nextSibling)}function Ei(){Rt=_t=null,Pe=!1}function Dp(e){rn===null?rn=[e]:rn.push(e)}var nk=tr.ReactCurrentBatchConfig;function rs(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(M(309));var r=n.stateNode}if(!r)throw Error(M(147,e));var o=r,i=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===i?t.ref:(t=function(s){var a=o.refs;s===null?delete a[i]:a[i]=s},t._stringRef=i,t)}if(typeof e!="string")throw Error(M(284));if(!n._owner)throw Error(M(290,e))}return e}function Wa(e,t){throw e=Object.prototype.toString.call(t),Error(M(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function Zh(e){var t=e._init;return t(e._payload)}function rw(e){function t(y,w){if(e){var x=y.deletions;x===null?(y.deletions=[w],y.flags|=16):x.push(w)}}function n(y,w){if(!e)return null;for(;w!==null;)t(y,w),w=w.sibling;return null}function r(y,w){for(y=new Map;w!==null;)w.key!==null?y.set(w.key,w):y.set(w.index,w),w=w.sibling;return y}function o(y,w){return y=_r(y,w),y.index=0,y.sibling=null,y}function i(y,w,x){return y.index=x,e?(x=y.alternate,x!==null?(x=x.index,x<w?(y.flags|=2,w):x):(y.flags|=2,w)):(y.flags|=1048576,w)}function s(y){return e&&y.alternate===null&&(y.flags|=2),y}function a(y,w,x,S){return w===null||w.tag!==6?(w=Gu(x,y.mode,S),w.return=y,w):(w=o(w,x),w.return=y,w)}function l(y,w,x,S){var C=x.type;return C===Vo?d(y,w,x.props.children,S,x.key):w!==null&&(w.elementType===C||typeof C=="object"&&C!==null&&C.$$typeof===lr&&Zh(C)===w.type)?(S=o(w,x.props),S.ref=rs(y,w,x),S.return=y,S):(S=Sl(x.type,x.key,x.props,null,y.mode,S),S.ref=rs(y,w,x),S.return=y,S)}function c(y,w,x,S){return w===null||w.tag!==4||w.stateNode.containerInfo!==x.containerInfo||w.stateNode.implementation!==x.implementation?(w=Ku(x,y.mode,S),w.return=y,w):(w=o(w,x.children||[]),w.return=y,w)}function d(y,w,x,S,C){return w===null||w.tag!==7?(w=uo(x,y.mode,S,C),w.return=y,w):(w=o(w,x),w.return=y,w)}function f(y,w,x){if(typeof w=="string"&&w!==""||typeof w=="number")return w=Gu(""+w,y.mode,x),w.return=y,w;if(typeof w=="object"&&w!==null){switch(w.$$typeof){case Ma:return x=Sl(w.type,w.key,w.props,null,y.mode,x),x.ref=rs(y,null,w),x.return=y,x;case zo:return w=Ku(w,y.mode,x),w.return=y,w;case lr:var S=w._init;return f(y,S(w._payload),x)}if(gs(w)||Xi(w))return w=uo(w,y.mode,x,null),w.return=y,w;Wa(y,w)}return null}function p(y,w,x,S){var C=w!==null?w.key:null;if(typeof x=="string"&&x!==""||typeof x=="number")return C!==null?null:a(y,w,""+x,S);if(typeof x=="object"&&x!==null){switch(x.$$typeof){case Ma:return x.key===C?l(y,w,x,S):null;case zo:return x.key===C?c(y,w,x,S):null;case lr:return C=x._init,p(y,w,C(x._payload),S)}if(gs(x)||Xi(x))return C!==null?null:d(y,w,x,S,null);Wa(y,x)}return null}function h(y,w,x,S,C){if(typeof S=="string"&&S!==""||typeof S=="number")return y=y.get(x)||null,a(w,y,""+S,C);if(typeof S=="object"&&S!==null){switch(S.$$typeof){case Ma:return y=y.get(S.key===null?x:S.key)||null,l(w,y,S,C);case zo:return y=y.get(S.key===null?x:S.key)||null,c(w,y,S,C);case lr:var k=S._init;return h(y,w,x,k(S._payload),C)}if(gs(S)||Xi(S))return y=y.get(x)||null,d(w,y,S,C,null);Wa(w,S)}return null}function g(y,w,x,S){for(var C=null,k=null,E=w,T=w=0,j=null;E!==null&&T<x.length;T++){E.index>T?(j=E,E=null):j=E.sibling;var A=p(y,E,x[T],S);if(A===null){E===null&&(E=j);break}e&&E&&A.alternate===null&&t(y,E),w=i(A,w,T),k===null?C=A:k.sibling=A,k=A,E=j}if(T===x.length)return n(y,E),Pe&&Br(y,T),C;if(E===null){for(;T<x.length;T++)E=f(y,x[T],S),E!==null&&(w=i(E,w,T),k===null?C=E:k.sibling=E,k=E);return Pe&&Br(y,T),C}for(E=r(y,E);T<x.length;T++)j=h(E,y,T,x[T],S),j!==null&&(e&&j.alternate!==null&&E.delete(j.key===null?T:j.key),w=i(j,w,T),k===null?C=j:k.sibling=j,k=j);return e&&E.forEach(function(L){return t(y,L)}),Pe&&Br(y,T),C}function v(y,w,x,S){var C=Xi(x);if(typeof C!="function")throw Error(M(150));if(x=C.call(x),x==null)throw Error(M(151));for(var k=C=null,E=w,T=w=0,j=null,A=x.next();E!==null&&!A.done;T++,A=x.next()){E.index>T?(j=E,E=null):j=E.sibling;var L=p(y,E,A.value,S);if(L===null){E===null&&(E=j);break}e&&E&&L.alternate===null&&t(y,E),w=i(L,w,T),k===null?C=L:k.sibling=L,k=L,E=j}if(A.done)return n(y,E),Pe&&Br(y,T),C;if(E===null){for(;!A.done;T++,A=x.next())A=f(y,A.value,S),A!==null&&(w=i(A,w,T),k===null?C=A:k.sibling=A,k=A);return Pe&&Br(y,T),C}for(E=r(y,E);!A.done;T++,A=x.next())A=h(E,y,T,A.value,S),A!==null&&(e&&A.alternate!==null&&E.delete(A.key===null?T:A.key),w=i(A,w,T),k===null?C=A:k.sibling=A,k=A);return e&&E.forEach(function(F){return t(y,F)}),Pe&&Br(y,T),C}function b(y,w,x,S){if(typeof x=="object"&&x!==null&&x.type===Vo&&x.key===null&&(x=x.props.children),typeof x=="object"&&x!==null){switch(x.$$typeof){case Ma:e:{for(var C=x.key,k=w;k!==null;){if(k.key===C){if(C=x.type,C===Vo){if(k.tag===7){n(y,k.sibling),w=o(k,x.props.children),w.return=y,y=w;break e}}else if(k.elementType===C||typeof C=="object"&&C!==null&&C.$$typeof===lr&&Zh(C)===k.type){n(y,k.sibling),w=o(k,x.props),w.ref=rs(y,k,x),w.return=y,y=w;break e}n(y,k);break}else t(y,k);k=k.sibling}x.type===Vo?(w=uo(x.props.children,y.mode,S,x.key),w.return=y,y=w):(S=Sl(x.type,x.key,x.props,null,y.mode,S),S.ref=rs(y,w,x),S.return=y,y=S)}return s(y);case zo:e:{for(k=x.key;w!==null;){if(w.key===k)if(w.tag===4&&w.stateNode.containerInfo===x.containerInfo&&w.stateNode.implementation===x.implementation){n(y,w.sibling),w=o(w,x.children||[]),w.return=y,y=w;break e}else{n(y,w);break}else t(y,w);w=w.sibling}w=Ku(x,y.mode,S),w.return=y,y=w}return s(y);case lr:return k=x._init,b(y,w,k(x._payload),S)}if(gs(x))return g(y,w,x,S);if(Xi(x))return v(y,w,x,S);Wa(y,x)}return typeof x=="string"&&x!==""||typeof x=="number"?(x=""+x,w!==null&&w.tag===6?(n(y,w.sibling),w=o(w,x),w.return=y,y=w):(n(y,w),w=Gu(x,y.mode,S),w.return=y,y=w),s(y)):n(y,w)}return b}var ki=rw(!0),ow=rw(!1),Jl=$r(null),Xl=null,Yo=null,jp=null;function Np(){jp=Yo=Xl=null}function Op(e){var t=Jl.current;xe(Jl),e._currentValue=t}function Zd(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function ri(e,t){Xl=e,jp=Yo=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(yt=!0),e.firstContext=null)}function Gt(e){var t=e._currentValue;if(jp!==e)if(e={context:e,memoizedValue:t,next:null},Yo===null){if(Xl===null)throw Error(M(308));Yo=e,Xl.dependencies={lanes:0,firstContext:e}}else Yo=Yo.next=e;return t}var Qr=null;function Mp(e){Qr===null?Qr=[e]:Qr.push(e)}function iw(e,t,n,r){var o=t.interleaved;return o===null?(n.next=n,Mp(t)):(n.next=o.next,o.next=n),t.interleaved=n,Jn(e,r)}function Jn(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var cr=!1;function Lp(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function sw(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Wn(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Tr(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,fe&2){var o=r.pending;return o===null?t.next=t:(t.next=o.next,o.next=t),r.pending=t,Jn(e,n)}return o=r.interleaved,o===null?(t.next=t,Mp(r)):(t.next=o.next,o.next=t),r.interleaved=t,Jn(e,n)}function gl(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,xp(e,n)}}function eg(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var o=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var s={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?o=i=s:i=i.next=s,n=n.next}while(n!==null);i===null?o=i=t:i=i.next=t}else o=i=t;n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:i,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Zl(e,t,n,r){var o=e.updateQueue;cr=!1;var i=o.firstBaseUpdate,s=o.lastBaseUpdate,a=o.shared.pending;if(a!==null){o.shared.pending=null;var l=a,c=l.next;l.next=null,s===null?i=c:s.next=c,s=l;var d=e.alternate;d!==null&&(d=d.updateQueue,a=d.lastBaseUpdate,a!==s&&(a===null?d.firstBaseUpdate=c:a.next=c,d.lastBaseUpdate=l))}if(i!==null){var f=o.baseState;s=0,d=c=l=null,a=i;do{var p=a.lane,h=a.eventTime;if((r&p)===p){d!==null&&(d=d.next={eventTime:h,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var g=e,v=a;switch(p=t,h=n,v.tag){case 1:if(g=v.payload,typeof g=="function"){f=g.call(h,f,p);break e}f=g;break e;case 3:g.flags=g.flags&-65537|128;case 0:if(g=v.payload,p=typeof g=="function"?g.call(h,f,p):g,p==null)break e;f=Te({},f,p);break e;case 2:cr=!0}}a.callback!==null&&a.lane!==0&&(e.flags|=64,p=o.effects,p===null?o.effects=[a]:p.push(a))}else h={eventTime:h,lane:p,tag:a.tag,payload:a.payload,callback:a.callback,next:null},d===null?(c=d=h,l=f):d=d.next=h,s|=p;if(a=a.next,a===null){if(a=o.shared.pending,a===null)break;p=a,a=p.next,p.next=null,o.lastBaseUpdate=p,o.shared.pending=null}}while(!0);if(d===null&&(l=f),o.baseState=l,o.firstBaseUpdate=c,o.lastBaseUpdate=d,t=o.shared.interleaved,t!==null){o=t;do s|=o.lane,o=o.next;while(o!==t)}else i===null&&(o.shared.lanes=0);vo|=s,e.lanes=s,e.memoizedState=f}}function tg(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],o=r.callback;if(o!==null){if(r.callback=null,r=n,typeof o!="function")throw Error(M(191,o));o.call(r)}}}var ba={},An=$r(ba),qs=$r(ba),Bs=$r(ba);function Yr(e){if(e===ba)throw Error(M(174));return e}function Ip(e,t){switch(ve(Bs,t),ve(qs,e),ve(An,ba),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Nd(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Nd(t,e)}xe(An),ve(An,t)}function Ti(){xe(An),xe(qs),xe(Bs)}function aw(e){Yr(Bs.current);var t=Yr(An.current),n=Nd(t,e.type);t!==n&&(ve(qs,e),ve(An,n))}function Fp(e){qs.current===e&&(xe(An),xe(qs))}var Ee=$r(0);function ec(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 zu=[];function Up(){for(var e=0;e<zu.length;e++)zu[e]._workInProgressVersionPrimary=null;zu.length=0}var vl=tr.ReactCurrentDispatcher,Vu=tr.ReactCurrentBatchConfig,go=0,ke=null,Ie=null,Ve=null,tc=!1,Ts=!1,Ws=0,rk=0;function Je(){throw Error(M(321))}function $p(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!un(e[n],t[n]))return!1;return!0}function zp(e,t,n,r,o,i){if(go=i,ke=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,vl.current=e===null||e.memoizedState===null?ak:lk,e=n(r,o),Ts){i=0;do{if(Ts=!1,Ws=0,25<=i)throw Error(M(301));i+=1,Ve=Ie=null,t.updateQueue=null,vl.current=ck,e=n(r,o)}while(Ts)}if(vl.current=nc,t=Ie!==null&&Ie.next!==null,go=0,Ve=Ie=ke=null,tc=!1,t)throw Error(M(300));return e}function Vp(){var e=Ws!==0;return Ws=0,e}function yn(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Ve===null?ke.memoizedState=Ve=e:Ve=Ve.next=e,Ve}function Kt(){if(Ie===null){var e=ke.alternate;e=e!==null?e.memoizedState:null}else e=Ie.next;var t=Ve===null?ke.memoizedState:Ve.next;if(t!==null)Ve=t,Ie=e;else{if(e===null)throw Error(M(310));Ie=e,e={memoizedState:Ie.memoizedState,baseState:Ie.baseState,baseQueue:Ie.baseQueue,queue:Ie.queue,next:null},Ve===null?ke.memoizedState=Ve=e:Ve=Ve.next=e}return Ve}function Gs(e,t){return typeof t=="function"?t(e):t}function Hu(e){var t=Kt(),n=t.queue;if(n===null)throw Error(M(311));n.lastRenderedReducer=e;var r=Ie,o=r.baseQueue,i=n.pending;if(i!==null){if(o!==null){var s=o.next;o.next=i.next,i.next=s}r.baseQueue=o=i,n.pending=null}if(o!==null){i=o.next,r=r.baseState;var a=s=null,l=null,c=i;do{var d=c.lane;if((go&d)===d)l!==null&&(l=l.next={lane:0,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null}),r=c.hasEagerState?c.eagerState:e(r,c.action);else{var f={lane:d,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null};l===null?(a=l=f,s=r):l=l.next=f,ke.lanes|=d,vo|=d}c=c.next}while(c!==null&&c!==i);l===null?s=r:l.next=a,un(r,t.memoizedState)||(yt=!0),t.memoizedState=r,t.baseState=s,t.baseQueue=l,n.lastRenderedState=r}if(e=n.interleaved,e!==null){o=e;do i=o.lane,ke.lanes|=i,vo|=i,o=o.next;while(o!==e)}else o===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function qu(e){var t=Kt(),n=t.queue;if(n===null)throw Error(M(311));n.lastRenderedReducer=e;var r=n.dispatch,o=n.pending,i=t.memoizedState;if(o!==null){n.pending=null;var s=o=o.next;do i=e(i,s.action),s=s.next;while(s!==o);un(i,t.memoizedState)||(yt=!0),t.memoizedState=i,t.baseQueue===null&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function lw(){}function cw(e,t){var n=ke,r=Kt(),o=t(),i=!un(r.memoizedState,o);if(i&&(r.memoizedState=o,yt=!0),r=r.queue,Hp(fw.bind(null,n,r,e),[e]),r.getSnapshot!==t||i||Ve!==null&&Ve.memoizedState.tag&1){if(n.flags|=2048,Ks(9,dw.bind(null,n,r,o,t),void 0,null),qe===null)throw Error(M(349));go&30||uw(n,t,o)}return o}function uw(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=ke.updateQueue,t===null?(t={lastEffect:null,stores:null},ke.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function dw(e,t,n,r){t.value=n,t.getSnapshot=r,pw(t)&&mw(e)}function fw(e,t,n){return n(function(){pw(t)&&mw(e)})}function pw(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!un(e,n)}catch{return!0}}function mw(e){var t=Jn(e,1);t!==null&&cn(t,e,1,-1)}function ng(e){var t=yn();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Gs,lastRenderedState:e},t.queue=e,e=e.dispatch=sk.bind(null,ke,e),[t.memoizedState,e]}function Ks(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=ke.updateQueue,t===null?(t={lastEffect:null,stores:null},ke.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function hw(){return Kt().memoizedState}function yl(e,t,n,r){var o=yn();ke.flags|=e,o.memoizedState=Ks(1|t,n,void 0,r===void 0?null:r)}function Fc(e,t,n,r){var o=Kt();r=r===void 0?null:r;var i=void 0;if(Ie!==null){var s=Ie.memoizedState;if(i=s.destroy,r!==null&&$p(r,s.deps)){o.memoizedState=Ks(t,n,i,r);return}}ke.flags|=e,o.memoizedState=Ks(1|t,n,i,r)}function rg(e,t){return yl(8390656,8,e,t)}function Hp(e,t){return Fc(2048,8,e,t)}function gw(e,t){return Fc(4,2,e,t)}function vw(e,t){return Fc(4,4,e,t)}function yw(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function bw(e,t,n){return n=n!=null?n.concat([e]):null,Fc(4,4,yw.bind(null,t,e),n)}function qp(){}function ww(e,t){var n=Kt();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&$p(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function xw(e,t){var n=Kt();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&$p(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Sw(e,t,n){return go&21?(un(n,t)||(n=Tb(),ke.lanes|=n,vo|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,yt=!0),e.memoizedState=n)}function ok(e,t){var n=he;he=n!==0&&4>n?n:4,e(!0);var r=Vu.transition;Vu.transition={};try{e(!1),t()}finally{he=n,Vu.transition=r}}function Cw(){return Kt().memoizedState}function ik(e,t,n){var r=Rr(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Pw(e))Ew(t,n);else if(n=iw(e,t,n,r),n!==null){var o=ut();cn(n,e,r,o),kw(n,t,r)}}function sk(e,t,n){var r=Rr(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Pw(e))Ew(t,o);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var s=t.lastRenderedState,a=i(s,n);if(o.hasEagerState=!0,o.eagerState=a,un(a,s)){var l=t.interleaved;l===null?(o.next=o,Mp(t)):(o.next=l.next,l.next=o),t.interleaved=o;return}}catch{}finally{}n=iw(e,t,o,r),n!==null&&(o=ut(),cn(n,e,r,o),kw(n,t,r))}}function Pw(e){var t=e.alternate;return e===ke||t!==null&&t===ke}function Ew(e,t){Ts=tc=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function kw(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,xp(e,n)}}var nc={readContext:Gt,useCallback:Je,useContext:Je,useEffect:Je,useImperativeHandle:Je,useInsertionEffect:Je,useLayoutEffect:Je,useMemo:Je,useReducer:Je,useRef:Je,useState:Je,useDebugValue:Je,useDeferredValue:Je,useTransition:Je,useMutableSource:Je,useSyncExternalStore:Je,useId:Je,unstable_isNewReconciler:!1},ak={readContext:Gt,useCallback:function(e,t){return yn().memoizedState=[e,t===void 0?null:t],e},useContext:Gt,useEffect:rg,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,yl(4194308,4,yw.bind(null,t,e),n)},useLayoutEffect:function(e,t){return yl(4194308,4,e,t)},useInsertionEffect:function(e,t){return yl(4,2,e,t)},useMemo:function(e,t){var n=yn();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=yn();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=ik.bind(null,ke,e),[r.memoizedState,e]},useRef:function(e){var t=yn();return e={current:e},t.memoizedState=e},useState:ng,useDebugValue:qp,useDeferredValue:function(e){return yn().memoizedState=e},useTransition:function(){var e=ng(!1),t=e[0];return e=ok.bind(null,e[1]),yn().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=ke,o=yn();if(Pe){if(n===void 0)throw Error(M(407));n=n()}else{if(n=t(),qe===null)throw Error(M(349));go&30||uw(r,t,n)}o.memoizedState=n;var i={value:n,getSnapshot:t};return o.queue=i,rg(fw.bind(null,r,i,e),[e]),r.flags|=2048,Ks(9,dw.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=yn(),t=qe.identifierPrefix;if(Pe){var n=Bn,r=qn;n=(r&~(1<<32-ln(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Ws++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=rk++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},lk={readContext:Gt,useCallback:ww,useContext:Gt,useEffect:Hp,useImperativeHandle:bw,useInsertionEffect:gw,useLayoutEffect:vw,useMemo:xw,useReducer:Hu,useRef:hw,useState:function(){return Hu(Gs)},useDebugValue:qp,useDeferredValue:function(e){var t=Kt();return Sw(t,Ie.memoizedState,e)},useTransition:function(){var e=Hu(Gs)[0],t=Kt().memoizedState;return[e,t]},useMutableSource:lw,useSyncExternalStore:cw,useId:Cw,unstable_isNewReconciler:!1},ck={readContext:Gt,useCallback:ww,useContext:Gt,useEffect:Hp,useImperativeHandle:bw,useInsertionEffect:gw,useLayoutEffect:vw,useMemo:xw,useReducer:qu,useRef:hw,useState:function(){return qu(Gs)},useDebugValue:qp,useDeferredValue:function(e){var t=Kt();return Ie===null?t.memoizedState=e:Sw(t,Ie.memoizedState,e)},useTransition:function(){var e=qu(Gs)[0],t=Kt().memoizedState;return[e,t]},useMutableSource:lw,useSyncExternalStore:cw,useId:Cw,unstable_isNewReconciler:!1};function Zt(e,t){if(e&&e.defaultProps){t=Te({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function ef(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:Te({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Uc={isMounted:function(e){return(e=e._reactInternals)?To(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=ut(),o=Rr(e),i=Wn(r,o);i.payload=t,n!=null&&(i.callback=n),t=Tr(e,i,o),t!==null&&(cn(t,e,o,r),gl(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=ut(),o=Rr(e),i=Wn(r,o);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Tr(e,i,o),t!==null&&(cn(t,e,o,r),gl(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ut(),r=Rr(e),o=Wn(n,r);o.tag=2,t!=null&&(o.callback=t),t=Tr(e,o,r),t!==null&&(cn(t,e,r,n),gl(t,e,r))}};function og(e,t,n,r,o,i,s){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,i,s):t.prototype&&t.prototype.isPureReactComponent?!$s(n,r)||!$s(o,i):!0}function Tw(e,t,n){var r=!1,o=Or,i=t.contextType;return typeof i=="object"&&i!==null?i=Gt(i):(o=wt(t)?mo:tt.current,r=t.contextTypes,i=(r=r!=null)?Pi(e,o):Or),t=new t(n,i),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Uc,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=i),t}function ig(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Uc.enqueueReplaceState(t,t.state,null)}function tf(e,t,n,r){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs={},Lp(e);var i=t.contextType;typeof i=="object"&&i!==null?o.context=Gt(i):(i=wt(t)?mo:tt.current,o.context=Pi(e,i)),o.state=e.memoizedState,i=t.getDerivedStateFromProps,typeof i=="function"&&(ef(e,t,i,n),o.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof o.getSnapshotBeforeUpdate=="function"||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(t=o.state,typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount(),t!==o.state&&Uc.enqueueReplaceState(o,o.state,null),Zl(e,n,o,r),o.state=e.memoizedState),typeof o.componentDidMount=="function"&&(e.flags|=4194308)}function Ai(e,t){try{var n="",r=t;do n+=IP(r),r=r.return;while(r);var o=n}catch(i){o=`
40Error generating stack: `+i.message+`
41`+i.stack}return{value:e,source:t,stack:o,digest:null}}function Bu(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function nf(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var uk=typeof WeakMap=="function"?WeakMap:Map;
vendor: 10,977 bytes, line 41
41function Aw(e,t,n){n=Wn(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){oc||(oc=!0,pf=r),nf(e,t)},n}function Rw(e,t,n){n=Wn(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var o=t.value;n.payload=function(){return r(o)},n.callback=function(){nf(e,t)}}var i=e.stateNode;return i!==null&&typeof i.componentDidCatch=="function"&&(n.callback=function(){nf(e,t),typeof r!="function"&&(Ar===null?Ar=new Set([this]):Ar.add(this));var s=t.stack;this.componentDidCatch(t.value,{componentStack:s!==null?s:""})}),n}function sg(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new uk;var o=new Set;r.set(t,o)}else o=r.get(t),o===void 0&&(o=new Set,r.set(t,o));o.has(n)||(o.add(n),e=Pk.bind(null,e,t,n),t.then(e,e))}function ag(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function lg(e,t,n,r,o){return e.mode&1?(e.flags|=65536,e.lanes=o,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=Wn(-1,1),t.tag=2,Tr(n,t,1))),n.lanes|=1),e)}var dk=tr.ReactCurrentOwner,yt=!1;function st(e,t,n,r){t.child=e===null?ow(t,null,n,r):ki(t,e.child,n,r)}function cg(e,t,n,r,o){n=n.render;var i=t.ref;return ri(t,o),r=zp(e,t,n,r,i,o),n=Vp(),e!==null&&!yt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Xn(e,t,o)):(Pe&&n&&Rp(t),t.flags|=1,st(e,t,r,o),t.child)}function ug(e,t,n,r,o){if(e===null){var i=n.type;return typeof i=="function"&&!Xp(i)&&i.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=i,_w(e,t,i,r,o)):(e=Sl(n.type,null,r,t,t.mode,o),e.ref=t.ref,e.return=t,t.child=e)}if(i=e.child,!(e.lanes&o)){var s=i.memoizedProps;if(n=n.compare,n=n!==null?n:$s,n(s,r)&&e.ref===t.ref)return Xn(e,t,o)}return t.flags|=1,e=_r(i,r),e.ref=t.ref,e.return=t,t.child=e}function _w(e,t,n,r,o){if(e!==null){var i=e.memoizedProps;if($s(i,r)&&e.ref===t.ref)if(yt=!1,t.pendingProps=r=i,(e.lanes&o)!==0)e.flags&131072&&(yt=!0);else return t.lanes=e.lanes,Xn(e,t,o)}return rf(e,t,n,r,o)}function Dw(e,t,n){var r=t.pendingProps,o=r.children,i=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},ve(Xo,Tt),Tt|=n;else{if(!(n&1073741824))return e=i!==null?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,ve(Xo,Tt),Tt|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=i!==null?i.baseLanes:n,ve(Xo,Tt),Tt|=r}else i!==null?(r=i.baseLanes|n,t.memoizedState=null):r=n,ve(Xo,Tt),Tt|=r;return st(e,t,o,n),t.child}function jw(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function rf(e,t,n,r,o){var i=wt(n)?mo:tt.current;return i=Pi(t,i),ri(t,o),n=zp(e,t,n,r,i,o),r=Vp(),e!==null&&!yt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Xn(e,t,o)):(Pe&&r&&Rp(t),t.flags|=1,st(e,t,n,o),t.child)}function dg(e,t,n,r,o){if(wt(n)){var i=!0;Kl(t)}else i=!1;if(ri(t,o),t.stateNode===null)bl(e,t),Tw(t,n,r),tf(t,n,r,o),r=!0;else if(e===null){var s=t.stateNode,a=t.memoizedProps;s.props=a;var l=s.context,c=n.contextType;typeof c=="object"&&c!==null?c=Gt(c):(c=wt(n)?mo:tt.current,c=Pi(t,c));var d=n.getDerivedStateFromProps,f=typeof d=="function"||typeof s.getSnapshotBeforeUpdate=="function";f||typeof s.UNSAFE_componentWillReceiveProps!="function"&&typeof s.componentWillReceiveProps!="function"||(a!==r||l!==c)&&ig(t,s,r,c),cr=!1;var p=t.memoizedState;s.state=p,Zl(t,r,s,o),l=t.memoizedState,a!==r||p!==l||bt.current||cr?(typeof d=="function"&&(ef(t,n,d,r),l=t.memoizedState),(a=cr||og(t,n,a,r,p,l,c))?(f||typeof s.UNSAFE_componentWillMount!="function"&&typeof s.componentWillMount!="function"||(typeof s.componentWillMount=="function"&&s.componentWillMount(),typeof s.UNSAFE_componentWillMount=="function"&&s.UNSAFE_componentWillMount()),typeof s.componentDidMount=="function"&&(t.flags|=4194308)):(typeof s.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),s.props=r,s.state=l,s.context=c,r=a):(typeof s.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{s=t.stateNode,sw(e,t),a=t.memoizedProps,c=t.type===t.elementType?a:Zt(t.type,a),s.props=c,f=t.pendingProps,p=s.context,l=n.contextType,typeof l=="object"&&l!==null?l=Gt(l):(l=wt(n)?mo:tt.current,l=Pi(t,l));var h=n.getDerivedStateFromProps;(d=typeof h=="function"||typeof s.getSnapshotBeforeUpdate=="function")||typeof s.UNSAFE_componentWillReceiveProps!="function"&&typeof s.componentWillReceiveProps!="function"||(a!==f||p!==l)&&ig(t,s,r,l),cr=!1,p=t.memoizedState,s.state=p,Zl(t,r,s,o);var g=t.memoizedState;a!==f||p!==g||bt.current||cr?(typeof h=="function"&&(ef(t,n,h,r),g=t.memoizedState),(c=cr||og(t,n,c,r,p,g,l)||!1)?(d||typeof s.UNSAFE_componentWillUpdate!="function"&&typeof s.componentWillUpdate!="function"||(typeof s.componentWillUpdate=="function"&&s.componentWillUpdate(r,g,l),typeof s.UNSAFE_componentWillUpdate=="function"&&s.UNSAFE_componentWillUpdate(r,g,l)),typeof s.componentDidUpdate=="function"&&(t.flags|=4),typeof s.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof s.componentDidUpdate!="function"||a===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),typeof s.getSnapshotBeforeUpdate!="function"||a===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=g),s.props=r,s.state=g,s.context=l,r=c):(typeof s.componentDidUpdate!="function"||a===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),typeof s.getSnapshotBeforeUpdate!="function"||a===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),r=!1)}return of(e,t,n,r,i,o)}function of(e,t,n,r,o,i){jw(e,t);var s=(t.flags&128)!==0;if(!r&&!s)return o&&Yh(t,n,!1),Xn(e,t,i);r=t.stateNode,dk.current=t;var a=s&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&s?(t.child=ki(t,e.child,null,i),t.child=ki(t,null,a,i)):st(e,t,a,i),t.memoizedState=r.state,o&&Yh(t,n,!0),t.child}function Nw(e){var t=e.stateNode;t.pendingContext?Qh(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Qh(e,t.context,!1),Ip(e,t.containerInfo)}function fg(e,t,n,r,o){return Ei(),Dp(o),t.flags|=256,st(e,t,n,r),t.child}var sf={dehydrated:null,treeContext:null,retryLane:0};function af(e){return{baseLanes:e,cachePool:null,transitions:null}}function Ow(e,t,n){var r=t.pendingProps,o=Ee.current,i=!1,s=(t.flags&128)!==0,a;if((a=s)||(a=e!==null&&e.memoizedState===null?!1:(o&2)!==0),a?(i=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(o|=1),ve(Ee,o&1),e===null)return Xd(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(s=r.children,e=r.fallback,i?(r=t.mode,i=t.child,s={mode:"hidden",children:s},!(r&1)&&i!==null?(i.childLanes=0,i.pendingProps=s):i=Vc(s,r,0,null),e=uo(e,r,n,null),i.return=t,e.return=t,i.sibling=e,t.child=i,t.child.memoizedState=af(n),t.memoizedState=sf,e):Bp(t,s));if(o=e.memoizedState,o!==null&&(a=o.dehydrated,a!==null))return fk(e,t,s,r,a,o,n);if(i){i=r.fallback,s=t.mode,o=e.child,a=o.sibling;var l={mode:"hidden",children:r.children};return!(s&1)&&t.child!==o?(r=t.child,r.childLanes=0,r.pendingProps=l,t.deletions=null):(r=_r(o,l),r.subtreeFlags=o.subtreeFlags&14680064),a!==null?i=_r(a,i):(i=uo(i,s,n,null),i.flags|=2),i.return=t,r.return=t,r.sibling=i,t.child=r,r=i,i=t.child,s=e.child.memoizedState,s=s===null?af(n):{baseLanes:s.baseLanes|n,cachePool:null,transitions:s.transitions},i.memoizedState=s,i.childLanes=e.childLanes&~n,t.memoizedState=sf,r}return i=e.child,e=i.sibling,r=_r(i,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Bp(e,t){return t=Vc({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Ga(e,t,n,r){return r!==null&&Dp(r),ki(t,e.child,null,n),e=Bp(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function fk(e,t,n,r,o,i,s){if(n)return t.flags&256?(t.flags&=-257,r=Bu(Error(M(422))),Ga(e,t,s,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(i=r.fallback,o=t.mode,r=Vc({mode:"visible",children:r.children},o,0,null),i=uo(i,o,s,null),i.flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,t.mode&1&&ki(t,e.child,null,s),t.child.memoizedState=af(s),t.memoizedState=sf,i);if(!(t.mode&1))return Ga(e,t,s,null);if(o.data==="$!"){if(r=o.nextSibling&&o.nextSibling.dataset,r)var a=r.dgst;return r=a,i=Error(M(419)),r=Bu(i,r,void 0),Ga(e,t,s,r)}if(a=(s&e.childLanes)!==0,yt||a){if(r=qe,r!==null){switch(s&-s){case 4:o=2;break;case 16:o=8;break;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:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}o=o&(r.suspendedLanes|s)?0:o,o!==0&&o!==i.retryLane&&(i.retryLane=o,Jn(e,o),cn(r,e,o,-1))}return Jp(),r=Bu(Error(M(421))),Ga(e,t,s,r)}return o.data==="$?"?(t.flags|=128,t.child=e.child,t=Ek.bind(null,e),o._reactRetry=t,null):(e=i.treeContext,Rt=kr(o.nextSibling),_t=t,Pe=!0,rn=null,e!==null&&(Vt[Ht++]=qn,Vt[Ht++]=Bn,Vt[Ht++]=ho,qn=e.id,Bn=e.overflow,ho=t),t=Bp(t,r.children),t.flags|=4096,t)}function pg(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Zd(e.return,t,n)}function Wu(e,t,n,r,o){var i=e.memoizedState;i===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=o)}function Mw(e,t,n){var r=t.pendingProps,o=r.revealOrder,i=r.tail;if(st(e,t,r.children,n),r=Ee.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&pg(e,n,t);else if(e.tag===19)pg(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(ve(Ee,r),!(t.mode&1))t.memoizedState=null;else switch(o){case"forwards":for(n=t.child,o=null;n!==null;)e=n.alternate,e!==null&&ec(e)===null&&(o=n),n=n.sibling;n=o,n===null?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),Wu(t,!1,o,n,i);break;case"backwards":for(n=null,o=t.child,t.child=null;o!==null;){if(e=o.alternate,e!==null&&ec(e)===null){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}Wu(t,!0,n,null,i);break;case"together":Wu(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function bl(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Xn(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),vo|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(M(153));
vendor: 4,746 bytes, line 41
41if(t.child!==null){for(e=t.child,n=_r(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=_r(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function pk(e,t,n){switch(t.tag){case 3:Nw(t),Ei();break;case 5:aw(t);break;case 1:wt(t.type)&&Kl(t);break;case 4:Ip(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,o=t.memoizedProps.value;ve(Jl,r._currentValue),r._currentValue=o;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(ve(Ee,Ee.current&1),t.flags|=128,null):n&t.child.childLanes?Ow(e,t,n):(ve(Ee,Ee.current&1),e=Xn(e,t,n),e!==null?e.sibling:null);ve(Ee,Ee.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return Mw(e,t,n);t.flags|=128}if(o=t.memoizedState,o!==null&&(o.rendering=null,o.tail=null,o.lastEffect=null),ve(Ee,Ee.current),r)break;return null;case 22:case 23:return t.lanes=0,Dw(e,t,n)}return Xn(e,t,n)}var Lw,lf,Iw,Fw;Lw=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};lf=function(){};Iw=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,Yr(An.current);var i=null;switch(n){case"input":o=Rd(e,o),r=Rd(e,r),i=[];break;case"select":o=Te({},o,{value:void 0}),r=Te({},r,{value:void 0}),i=[];break;case"textarea":o=jd(e,o),r=jd(e,r),i=[];break;default:typeof o.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Wl)}Od(n,r);var s;n=null;for(c in o)if(!r.hasOwnProperty(c)&&o.hasOwnProperty(c)&&o[c]!=null)if(c==="style"){var a=o[c];for(s in a)a.hasOwnProperty(s)&&(n||(n={}),n[s]="")}else c!=="dangerouslySetInnerHTML"&&c!=="children"&&c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&c!=="autoFocus"&&(Ns.hasOwnProperty(c)?i||(i=[]):(i=i||[]).push(c,null));for(c in r){var l=r[c];if(a=o!=null?o[c]:void 0,r.hasOwnProperty(c)&&l!==a&&(l!=null||a!=null))if(c==="style")if(a){for(s in a)!a.hasOwnProperty(s)||l&&l.hasOwnProperty(s)||(n||(n={}),n[s]="");for(s in l)l.hasOwnProperty(s)&&a[s]!==l[s]&&(n||(n={}),n[s]=l[s])}else n||(i||(i=[]),i.push(c,n)),n=l;else c==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,a=a?a.__html:void 0,l!=null&&a!==l&&(i=i||[]).push(c,l)):c==="children"?typeof l!="string"&&typeof l!="number"||(i=i||[]).push(c,""+l):c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&(Ns.hasOwnProperty(c)?(l!=null&&c==="onScroll"&&be("scroll",e),i||a===l||(i=[])):(i=i||[]).push(c,l))}n&&(i=i||[]).push("style",n);var c=i;(t.updateQueue=c)&&(t.flags|=4)}};Fw=function(e,t,n,r){n!==r&&(t.flags|=4)};function os(e,t){if(!Pe)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Xe(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags&14680064,r|=o.flags&14680064,o.return=e,o=o.sibling;else for(o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function mk(e,t,n){var r=t.pendingProps;switch(_p(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Xe(t),null;case 1:return wt(t.type)&&Gl(),Xe(t),null;case 3:return r=t.stateNode,Ti(),xe(bt),xe(tt),Up(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Ba(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,rn!==null&&(gf(rn),rn=null))),lf(e,t),Xe(t),null;case 5:Fp(t);var o=Yr(Bs.current);if(n=t.type,e!==null&&t.stateNode!=null)Iw(e,t,n,r,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(M(166));return Xe(t),null}if(e=Yr(An.current),Ba(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[Sn]=t,r[Hs]=i,e=(t.mode&1)!==0,n){case"dialog":be("cancel",r),be("close",r);break;case"iframe":case"object":case"embed":be("load",r);break;case"video":case"audio":for(o=0;o<ys.length;o++)be(ys[o],r);break;case"source":be("error",r);break;case"img":case"image":case"link":be("error",r),be("load",r);break;case"details":be("toggle",r);break;case"input":Sh(r,i),be("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},be("invalid",r);break;case"textarea":Ph(r,i),be("invalid",r)}Od(n,i),o=null;for(var s in i)if(i.hasOwnProperty(s)){var a=i[s];
vendor: 31,695 bytes, line 41
41s==="children"?typeof a=="string"?r.textContent!==a&&(i.suppressHydrationWarning!==!0&&qa(r.textContent,a,e),o=["children",a]):typeof a=="number"&&r.textContent!==""+a&&(i.suppressHydrationWarning!==!0&&qa(r.textContent,a,e),o=["children",""+a]):Ns.hasOwnProperty(s)&&a!=null&&s==="onScroll"&&be("scroll",r)}switch(n){case"input":La(r),Ch(r,i,!0);break;case"textarea":La(r),Eh(r);break;case"select":case"option":break;default:typeof i.onClick=="function"&&(r.onclick=Wl)}r=o,t.updateQueue=r,r!==null&&(t.flags|=4)}else{s=o.nodeType===9?o:o.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=fb(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=s.createElement("div"),e.innerHTML="<script><\/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[Sn]=t,e[Hs]=r,Lw(e,t,!1,!1),t.stateNode=e;e:{switch(s=Md(n,r),n){case"dialog":be("cancel",e),be("close",e),o=r;break;case"iframe":case"object":case"embed":be("load",e),o=r;break;case"video":case"audio":for(o=0;o<ys.length;o++)be(ys[o],e);o=r;break;case"source":be("error",e),o=r;break;case"img":case"image":case"link":be("error",e),be("load",e),o=r;break;case"details":be("toggle",e),o=r;break;case"input":Sh(e,r),o=Rd(e,r),be("invalid",e);break;case"option":o=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},o=Te({},r,{value:void 0}),be("invalid",e);break;case"textarea":Ph(e,r),o=jd(e,r),be("invalid",e);break;default:o=r}Od(n,o),a=o;for(i in a)if(a.hasOwnProperty(i)){var l=a[i];i==="style"?hb(e,l):i==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&pb(e,l)):i==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&Os(e,l):typeof l=="number"&&Os(e,""+l):i!=="suppressContentEditableWarning"&&i!=="suppressHydrationWarning"&&i!=="autoFocus"&&(Ns.hasOwnProperty(i)?l!=null&&i==="onScroll"&&be("scroll",e):l!=null&&hp(e,i,l,s))}switch(n){case"input":La(e),Ch(e,r,!1);break;case"textarea":La(e),Eh(e);break;case"option":r.value!=null&&e.setAttribute("value",""+Nr(r.value));break;case"select":e.multiple=!!r.multiple,i=r.value,i!=null?Zo(e,!!r.multiple,i,!1):r.defaultValue!=null&&Zo(e,!!r.multiple,r.defaultValue,!0);break;default:typeof o.onClick=="function"&&(e.onclick=Wl)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return Xe(t),null;case 6:if(e&&t.stateNode!=null)Fw(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(M(166));if(n=Yr(Bs.current),Yr(An.current),Ba(t)){if(r=t.stateNode,n=t.memoizedProps,r[Sn]=t,(i=r.nodeValue!==n)&&(e=_t,e!==null))switch(e.tag){case 3:qa(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&qa(r.nodeValue,n,(e.mode&1)!==0)}i&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[Sn]=t,t.stateNode=r}return Xe(t),null;case 13:if(xe(Ee),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(Pe&&Rt!==null&&t.mode&1&&!(t.flags&128))nw(),Ei(),t.flags|=98560,i=!1;else if(i=Ba(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(M(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(M(317));i[Sn]=t}else Ei(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Xe(t),i=!1}else rn!==null&&(gf(rn),rn=null),i=!0;if(!i)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||Ee.current&1?Ue===0&&(Ue=3):Jp())),t.updateQueue!==null&&(t.flags|=4),Xe(t),null);case 4:return Ti(),lf(e,t),e===null&&zs(t.stateNode.containerInfo),Xe(t),null;case 10:return Op(t.type._context),Xe(t),null;case 17:return wt(t.type)&&Gl(),Xe(t),null;case 19:if(xe(Ee),i=t.memoizedState,i===null)return Xe(t),null;if(r=(t.flags&128)!==0,s=i.rendering,s===null)if(r)os(i,!1);else{if(Ue!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(s=ec(e),s!==null){for(t.flags|=128,os(i,!1),r=s.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)i=n,e=r,i.flags&=14680066,s=i.alternate,s===null?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=s.childLanes,i.lanes=s.lanes,i.child=s.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=s.memoizedProps,i.memoizedState=s.memoizedState,i.updateQueue=s.updateQueue,i.type=s.type,e=s.dependencies,i.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return ve(Ee,Ee.current&1|2),t.child}e=e.sibling}i.tail!==null&&je()>Ri&&(t.flags|=128,r=!0,os(i,!1),t.lanes=4194304)}else{if(!r)if(e=ec(s),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),os(i,!0),i.tail===null&&i.tailMode==="hidden"&&!s.alternate&&!Pe)return Xe(t),null}else 2*je()-i.renderingStartTime>Ri&&n!==1073741824&&(t.flags|=128,r=!0,os(i,!1),t.lanes=4194304);i.isBackwards?(s.sibling=t.child,t.child=s):(n=i.last,n!==null?n.sibling=s:t.child=s,i.last=s)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=je(),t.sibling=null,n=Ee.current,ve(Ee,r?n&1|2:n&1),t):(Xe(t),null);case 22:case 23:return Yp(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Tt&1073741824&&(Xe(t),t.subtreeFlags&6&&(t.flags|=8192)):Xe(t),null;case 24:return null;case 25:return null}throw Error(M(156,t.tag))}function hk(e,t){switch(_p(t),t.tag){case 1:return wt(t.type)&&Gl(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ti(),xe(bt),xe(tt),Up(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Fp(t),null;case 13:if(xe(Ee),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(M(340));Ei()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return xe(Ee),null;case 4:return Ti(),null;case 10:return Op(t.type._context),null;case 22:case 23:return Yp(),null;case 24:return null;default:return null}}var Ka=!1,Ze=!1,gk=typeof WeakSet=="function"?WeakSet:Set,H=null;function Jo(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Re(e,t,r)}else n.current=null}function cf(e,t,n){try{n()}catch(r){Re(e,t,r)}}var mg=!1;function vk(e,t){if(Bd=Hl,e=Hb(),Ap(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 o=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var s=0,a=-1,l=-1,c=0,d=0,f=e,p=null;t:for(;;){for(var h;f!==n||o!==0&&f.nodeType!==3||(a=s+o),f!==i||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(h=f.firstChild)!==null;)p=f,f=h;for(;;){if(f===e)break t;if(p===n&&++c===o&&(a=s),p===i&&++d===r&&(l=s),(h=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=h}n=a===-1||l===-1?null:{start:a,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(Wd={focusedElem:e,selectionRange:n},Hl=!1,H=t;H!==null;)if(t=H,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,H=e;else for(;H!==null;){t=H;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var v=g.memoizedProps,b=g.memoizedState,y=t.stateNode,w=y.getSnapshotBeforeUpdate(t.elementType===t.type?v:Zt(t.type,v),b);y.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var x=t.stateNode.containerInfo;x.nodeType===1?x.textContent="":x.nodeType===9&&x.documentElement&&x.removeChild(x.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(M(163))}}catch(S){Re(t,t.return,S)}if(e=t.sibling,e!==null){e.return=t.return,H=e;break}H=t.return}return g=mg,mg=!1,g}function As(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var o=r=r.next;do{if((o.tag&e)===e){var i=o.destroy;o.destroy=void 0,i!==void 0&&cf(t,n,i)}o=o.next}while(o!==r)}}function $c(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 uf(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 Uw(e){var t=e.alternate;t!==null&&(e.alternate=null,Uw(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Sn],delete t[Hs],delete t[Qd],delete t[ZE],delete t[ek])),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 $w(e){return e.tag===5||e.tag===3||e.tag===4}function hg(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||$w(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 df(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=Wl));else if(r!==4&&(e=e.child,e!==null))for(df(e,t,n),e=e.sibling;e!==null;)df(e,t,n),e=e.sibling}function ff(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(ff(e,t,n),e=e.sibling;e!==null;)ff(e,t,n),e=e.sibling}var Be=null,nn=!1;function rr(e,t,n){for(n=n.child;n!==null;)zw(e,t,n),n=n.sibling}function zw(e,t,n){if(Tn&&typeof Tn.onCommitFiberUnmount=="function")try{Tn.onCommitFiberUnmount(jc,n)}catch{}switch(n.tag){case 5:Ze||Jo(n,t);case 6:var r=Be,o=nn;Be=null,rr(e,t,n),Be=r,nn=o,Be!==null&&(nn?(e=Be,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Be.removeChild(n.stateNode));break;case 18:Be!==null&&(nn?(e=Be,n=n.stateNode,e.nodeType===8?Uu(e.parentNode,n):e.nodeType===1&&Uu(e,n),Fs(e)):Uu(Be,n.stateNode));break;case 4:r=Be,o=nn,Be=n.stateNode.containerInfo,nn=!0,rr(e,t,n),Be=r,nn=o;break;case 0:case 11:case 14:case 15:if(!Ze&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){o=r=r.next;do{var i=o,s=i.destroy;i=i.tag,s!==void 0&&(i&2||i&4)&&cf(n,t,s),o=o.next}while(o!==r)}rr(e,t,n);break;case 1:if(!Ze&&(Jo(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){Re(n,t,a)}rr(e,t,n);break;case 21:rr(e,t,n);break;case 22:n.mode&1?(Ze=(r=Ze)||n.memoizedState!==null,rr(e,t,n),Ze=r):rr(e,t,n);break;default:rr(e,t,n)}}function gg(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new gk),t.forEach(function(r){var o=kk.bind(null,e,r);n.has(r)||(n.add(r),r.then(o,o))})}}function Xt(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var o=n[r];try{var i=e,s=t,a=s;e:for(;a!==null;){switch(a.tag){case 5:Be=a.stateNode,nn=!1;break e;case 3:Be=a.stateNode.containerInfo,nn=!0;break e;case 4:Be=a.stateNode.containerInfo,nn=!0;break e}a=a.return}if(Be===null)throw Error(M(160));zw(i,s,o),Be=null,nn=!1;var l=o.alternate;l!==null&&(l.return=null),o.return=null}catch(c){Re(o,t,c)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Vw(t,e),t=t.sibling}function Vw(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Xt(t,e),gn(e),r&4){try{As(3,e,e.return),$c(3,e)}catch(v){Re(e,e.return,v)}try{As(5,e,e.return)}catch(v){Re(e,e.return,v)}}break;case 1:Xt(t,e),gn(e),r&512&&n!==null&&Jo(n,n.return);break;case 5:if(Xt(t,e),gn(e),r&512&&n!==null&&Jo(n,n.return),e.flags&32){var o=e.stateNode;try{Os(o,"")}catch(v){Re(e,e.return,v)}}if(r&4&&(o=e.stateNode,o!=null)){var i=e.memoizedProps,s=n!==null?n.memoizedProps:i,a=e.type,l=e.updateQueue;if(e.updateQueue=null,l!==null)try{a==="input"&&i.type==="radio"&&i.name!=null&&ub(o,i),Md(a,s);var c=Md(a,i);for(s=0;s<l.length;s+=2){var d=l[s],f=l[s+1];d==="style"?hb(o,f):d==="dangerouslySetInnerHTML"?pb(o,f):d==="children"?Os(o,f):hp(o,d,f,c)}switch(a){case"input":_d(o,i);break;case"textarea":db(o,i);break;case"select":var p=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!i.multiple;var h=i.value;h!=null?Zo(o,!!i.multiple,h,!1):p!==!!i.multiple&&(i.defaultValue!=null?Zo(o,!!i.multiple,i.defaultValue,!0):Zo(o,!!i.multiple,i.multiple?[]:"",!1))}o[Hs]=i}catch(v){Re(e,e.return,v)}}break;case 6:if(Xt(t,e),gn(e),r&4){if(e.stateNode===null)throw Error(M(162));o=e.stateNode,i=e.memoizedProps;try{o.nodeValue=i}catch(v){Re(e,e.return,v)}}break;case 3:if(Xt(t,e),gn(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Fs(t.containerInfo)}catch(v){Re(e,e.return,v)}break;case 4:Xt(t,e),gn(e);break;case 13:Xt(t,e),gn(e),o=e.child,o.flags&8192&&(i=o.memoizedState!==null,o.stateNode.isHidden=i,!i||o.alternate!==null&&o.alternate.memoizedState!==null||(Kp=je())),r&4&&gg(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(Ze=(c=Ze)||d,Xt(t,e),Ze=c):Xt(t,e),gn(e),r&8192){if(c=e.memoizedState!==null,(e.stateNode.isHidden=c)&&!d&&e.mode&1)for(H=e,d=e.child;d!==null;){for(f=H=d;H!==null;){switch(p=H,h=p.child,p.tag){case 0:case 11:case 14:case 15:As(4,p,p.return);break;case 1:Jo(p,p.return);var g=p.stateNode;if(typeof g.componentWillUnmount=="function"){r=p,n=p.return;try{t=r,g.props=t.memoizedProps,g.state=t.memoizedState,g.componentWillUnmount()}catch(v){Re(r,n,v)}}break;case 5:Jo(p,p.return);break;case 22:if(p.memoizedState!==null){yg(f);continue}}h!==null?(h.return=p,H=h):yg(f)}d=d.sibling}e:for(d=null,f=e;;){if(f.tag===5){if(d===null){d=f;try{o=f.stateNode,c?(i=o.style,typeof i.setProperty=="function"?i.setProperty("display","none","important"):i.display="none"):(a=f.stateNode,l=f.memoizedProps.style,s=l!=null&&l.hasOwnProperty("display")?l.display:null,a.style.display=mb("display",s))}catch(v){Re(e,e.return,v)}}}else if(f.tag===6){if(d===null)try{f.stateNode.nodeValue=c?"":f.memoizedProps}catch(v){Re(e,e.return,v)}}else if((f.tag!==22&&f.tag!==23||f.memoizedState===null||f===e)&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break e;for(;f.sibling===null;){if(f.return===null||f.return===e)break e;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:Xt(t,e),gn(e),r&4&&gg(e);break;case 21:break;default:Xt(t,e),gn(e)}}function gn(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if($w(n)){var r=n;break e}n=n.return}throw Error(M(160))}switch(r.tag){case 5:var o=r.stateNode;r.flags&32&&(Os(o,""),r.flags&=-33);var i=hg(e);ff(e,i,o);break;case 3:case 4:var s=r.stateNode.containerInfo,a=hg(e);df(e,a,s);break;default:throw Error(M(161))}}catch(l){Re(e,e.return,l)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function yk(e,t,n){H=e,Hw(e)}function Hw(e,t,n){for(var r=(e.mode&1)!==0;H!==null;){var o=H,i=o.child;if(o.tag===22&&r){var s=o.memoizedState!==null||Ka;if(!s){var a=o.alternate,l=a!==null&&a.memoizedState!==null||Ze;a=Ka;var c=Ze;if(Ka=s,(Ze=l)&&!c)for(H=o;H!==null;)s=H,l=s.child,s.tag===22&&s.memoizedState!==null?bg(o):l!==null?(l.return=s,H=l):bg(o);for(;i!==null;)H=i,Hw(i),i=i.sibling;H=o,Ka=a,Ze=c}vg(e)}else o.subtreeFlags&8772&&i!==null?(i.return=o,H=i):vg(e)}}function vg(e){for(;H!==null;){var t=H;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:Ze||$c(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!Ze)if(n===null)r.componentDidMount();else{var o=t.elementType===t.type?n.memoizedProps:Zt(t.type,n.memoizedProps);r.componentDidUpdate(o,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;i!==null&&tg(t,i,r);break;case 3:var s=t.updateQueue;if(s!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}tg(t,s,n)}break;case 5:var a=t.stateNode;if(n===null&&t.flags&4){n=a;var l=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break;case"img":l.src&&(n.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var c=t.alternate;if(c!==null){var d=c.memoizedState;if(d!==null){var f=d.dehydrated;f!==null&&Fs(f)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(M(163))}Ze||t.flags&512&&uf(t)}catch(p){Re(t,t.return,p)}}if(t===e){H=null;break}if(n=t.sibling,n!==null){n.return=t.return,H=n;break}H=t.return}}function yg(e){for(;H!==null;){var t=H;if(t===e){H=null;break}var n=t.sibling;if(n!==null){n.return=t.return,H=n;break}H=t.return}}function bg(e){for(;H!==null;){var t=H;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{$c(4,t)}catch(l){Re(t,n,l)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var o=t.return;try{r.componentDidMount()}catch(l){Re(t,o,l)}}var i=t.return;try{uf(t)}catch(l){Re(t,i,l)}break;case 5:var s=t.return;try{uf(t)}catch(l){Re(t,s,l)}}}catch(l){Re(t,t.return,l)}if(t===e){H=null;break}var a=t.sibling;if(a!==null){a.return=t.return,H=a;break}H=t.return}}var bk=Math.ceil,rc=tr.ReactCurrentDispatcher,Wp=tr.ReactCurrentOwner,Bt=tr.ReactCurrentBatchConfig,fe=0,qe=null,Me=null,Ge=0,Tt=0,Xo=$r(0),Ue=0,Qs=null,vo=0,zc=0,Gp=0,Rs=null,vt=null,Kp=0,Ri=1/0,Fn=null,oc=!1,pf=null,Ar=null,Qa=!1,Sr=null,ic=0,_s=0,mf=null,wl=-1,xl=0;function ut(){return fe&6?je():wl!==-1?wl:wl=je()}function Rr(e){return e.mode&1?fe&2&&Ge!==0?Ge&-Ge:nk.transition!==null?(xl===0&&(xl=Tb()),xl):(e=he,e!==0||(e=window.event,e=e===void 0?16:Ob(e.type)),e):1}function cn(e,t,n,r){if(50<_s)throw _s=0,mf=null,Error(M(185));ga(e,n,r),(!(fe&2)||e!==qe)&&(e===qe&&(!(fe&2)&&(zc|=n),Ue===4&&dr(e,Ge)),xt(e,r),n===1&&fe===0&&!(t.mode&1)&&(Ri=je()+500,Ic&&zr()))}function xt(e,t){var n=e.callbackNode;nE(e,t);var r=Vl(e,e===qe?Ge:0);if(r===0)n!==null&&Ah(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Ah(n),t===1)e.tag===0?tk(wg.bind(null,e)):Zb(wg.bind(null,e)),JE(function(){!(fe&6)&&zr()}),n=null;else{switch(Ab(r)){case 1:n=wp;break;case 4:n=Eb;break;case 16:n=zl;break;case 536870912:n=kb;break;default:n=zl}n=Jw(n,qw.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function qw(e,t){if(wl=-1,xl=0,fe&6)throw Error(M(327));var n=e.callbackNode;if(oi()&&e.callbackNode!==n)return null;var r=Vl(e,e===qe?Ge:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=sc(e,r);else{t=r;var o=fe;fe|=2;var i=Ww();(qe!==e||Ge!==t)&&(Fn=null,Ri=je()+500,co(e,t));do try{Sk();break}catch(a){Bw(e,a)}while(!0);Np(),rc.current=i,fe=o,Me!==null?t=0:(qe=null,Ge=0,t=Ue)}if(t!==0){if(t===2&&(o=$d(e),o!==0&&(r=o,t=hf(e,o))),t===1)throw n=Qs,co(e,0),dr(e,r),xt(e,je()),n;if(t===6)dr(e,r);else{if(o=e.current.alternate,!(r&30)&&!wk(o)&&(t=sc(e,r),t===2&&(i=$d(e),i!==0&&(r=i,t=hf(e,i))),t===1))throw n=Qs,co(e,0),dr(e,r),xt(e,je()),n;switch(e.finishedWork=o,e.finishedLanes=r,t){case 0:case 1:throw Error(M(345));case 2:Wr(e,vt,Fn);break;case 3:if(dr(e,r),(r&130023424)===r&&(t=Kp+500-je(),10<t)){if(Vl(e,0)!==0)break;if(o=e.suspendedLanes,(o&r)!==r){ut(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=Kd(Wr.bind(null,e,vt,Fn),t);break}Wr(e,vt,Fn);break;case 4:if(dr(e,r),(r&4194240)===r)break;for(t=e.eventTimes,o=-1;0<r;){var s=31-ln(r);i=1<<s,s=t[s],s>o&&(o=s),r&=~i}if(r=o,r=je()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*bk(r/1960))-r,10<r){e.timeoutHandle=Kd(Wr.bind(null,e,vt,Fn),r);break}Wr(e,vt,Fn);break;case 5:Wr(e,vt,Fn);break;default:throw Error(M(329))}}}return xt(e,je()),e.callbackNode===n?qw.bind(null,e):null}function hf(e,t){var n=Rs;return e.current.memoizedState.isDehydrated&&(co(e,t).flags|=256),e=sc(e,t),e!==2&&(t=vt,vt=n,t!==null&&gf(t)),e}function gf(e){vt===null?vt=e:vt.push.apply(vt,e)}function wk(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var o=n[r],i=o.getSnapshot;o=o.value;try{if(!un(i(),o))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function dr(e,t){for(t&=~Gp,t&=~zc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-ln(t),r=1<<n;e[n]=-1,t&=~r}}function wg(e){if(fe&6)throw Error(M(327));oi();var t=Vl(e,0);if(!(t&1))return xt(e,je()),null;var n=sc(e,t);if(e.tag!==0&&n===2){var r=$d(e);r!==0&&(t=r,n=hf(e,r))}if(n===1)throw n=Qs,co(e,0),dr(e,t),xt(e,je()),n;if(n===6)throw Error(M(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Wr(e,vt,Fn),xt(e,je()),null}function Qp(e,t){var n=fe;fe|=1;try{return e(t)}finally{fe=n,fe===0&&(Ri=je()+500,Ic&&zr())}}function yo(e){Sr!==null&&Sr.tag===0&&!(fe&6)&&oi();var t=fe;fe|=1;var n=Bt.transition,r=he;try{if(Bt.transition=null,he=1,e)return e()}finally{he=r,Bt.transition=n,fe=t,!(fe&6)&&zr()}}function Yp(){Tt=Xo.current,xe(Xo)}function co(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,YE(n)),Me!==null)for(n=Me.return;n!==null;){var r=n;switch(_p(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&Gl();break;case 3:Ti(),xe(bt),xe(tt),Up();break;case 5:Fp(r);break;case 4:Ti();break;case 13:xe(Ee);break;case 19:xe(Ee);break;case 10:Op(r.type._context);break;case 22:case 23:Yp()}n=n.return}if(qe=e,Me=e=_r(e.current,null),Ge=Tt=t,Ue=0,Qs=null,Gp=zc=vo=0,vt=Rs=null,Qr!==null){for(t=0;t<Qr.length;t++)if(n=Qr[t],r=n.interleaved,r!==null){n.interleaved=null;var o=r.next,i=n.pending;if(i!==null){var s=i.next;i.next=o,r.next=s}n.pending=r}Qr=null}return e}function Bw(e,t){do{var n=Me;try{if(Np(),vl.current=nc,tc){for(var r=ke.memoizedState;r!==null;){var o=r.queue;o!==null&&(o.pending=null),r=r.next}tc=!1}if(go=0,Ve=Ie=ke=null,Ts=!1,Ws=0,Wp.current=null,n===null||n.return===null){Ue=1,Qs=t,Me=null;break}e:{var i=e,s=n.return,a=n,l=t;if(t=Ge,a.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var c=l,d=a,f=d.tag;if(!(d.mode&1)&&(f===0||f===11||f===15)){var p=d.alternate;p?(d.updateQueue=p.updateQueue,d.memoizedState=p.memoizedState,d.lanes=p.lanes):(d.updateQueue=null,d.memoizedState=null)}var h=ag(s);if(h!==null){h.flags&=-257,lg(h,s,a,i,t),h.mode&1&&sg(i,c,t),t=h,l=c;var g=t.updateQueue;if(g===null){var v=new Set;v.add(l),t.updateQueue=v}else g.add(l);break e}else{if(!(t&1)){sg(i,c,t),Jp();break e}l=Error(M(426))}}else if(Pe&&a.mode&1){var b=ag(s);if(b!==null){!(b.flags&65536)&&(b.flags|=256),lg(b,s,a,i,t),Dp(Ai(l,a));break e}}i=l=Ai(l,a),Ue!==4&&(Ue=2),Rs===null?Rs=[i]:Rs.push(i),i=s;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t;var y=Aw(i,l,t);eg(i,y);break e;case 1:a=l;var w=i.type,x=i.stateNode;if(!(i.flags&128)&&(typeof w.getDerivedStateFromError=="function"||x!==null&&typeof x.componentDidCatch=="function"&&(Ar===null||!Ar.has(x)))){i.flags|=65536,t&=-t,i.lanes|=t;var S=Rw(i,a,t);eg(i,S);break e}}i=i.return}while(i!==null)}Kw(n)}catch(C){t=C,Me===n&&n!==null&&(Me=n=n.return);continue}break}while(!0)}function Ww(){var e=rc.current;return rc.current=nc,e===null?nc:e}function Jp(){(Ue===0||Ue===3||Ue===2)&&(Ue=4),qe===null||!(vo&268435455)&&!(zc&268435455)||dr(qe,Ge)}function sc(e,t){var n=fe;fe|=2;var r=Ww();(qe!==e||Ge!==t)&&(Fn=null,co(e,t));do try{xk();break}catch(o){Bw(e,o)}while(!0);if(Np(),fe=n,rc.current=r,Me!==null)throw Error(M(261));return qe=null,Ge=0,Ue}function xk(){for(;Me!==null;)Gw(Me)}function Sk(){for(;Me!==null&&!GP();)Gw(Me)}function Gw(e){var t=Yw(e.alternate,e,Tt);e.memoizedProps=e.pendingProps,t===null?Kw(e):Me=t,Wp.current=null}function Kw(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=hk(n,t),n!==null){n.flags&=32767,Me=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Ue=6,Me=null;return}}else if(n=mk(n,t,Tt),n!==null){Me=n;return}if(t=t.sibling,t!==null){Me=t;return}Me=t=e}while(t!==null);Ue===0&&(Ue=5)}function Wr(e,t,n){var r=he,o=Bt.transition;try{Bt.transition=null,he=1,Ck(e,t,n,r)}finally{Bt.transition=o,he=r}return null}function Ck(e,t,n,r){do oi();while(Sr!==null);if(fe&6)throw Error(M(327));n=e.finishedWork;var o=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(M(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(rE(e,i),e===qe&&(Me=qe=null,Ge=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Qa||(Qa=!0,Jw(zl,function(){return oi(),null})),i=(n.flags&15990)!==0,n.subtreeFlags&15990||i){i=Bt.transition,Bt.transition=null;var s=he;he=1;var a=fe;fe|=4,Wp.current=null,vk(e,n),Vw(n,e),HE(Wd),Hl=!!Bd,Wd=Bd=null,e.current=n,yk(n),KP(),fe=a,he=s,Bt.transition=i}else e.current=n;if(Qa&&(Qa=!1,Sr=e,ic=o),i=e.pendingLanes,i===0&&(Ar=null),JP(n.stateNode),xt(e,je()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)o=t[n],r(o.value,{componentStack:o.stack,digest:o.digest});if(oc)throw oc=!1,e=pf,pf=null,e;return ic&1&&e.tag!==0&&oi(),i=e.pendingLanes,i&1?e===mf?_s++:(_s=0,mf=e):_s=0,zr(),null}function oi(){if(Sr!==null){var e=Ab(ic),t=Bt.transition,n=he;try{if(Bt.transition=null,he=16>e?16:e,Sr===null)var r=!1;else{if(e=Sr,Sr=null,ic=0,fe&6)throw Error(M(331));var o=fe;for(fe|=4,H=e.current;H!==null;){var i=H,s=i.child;if(H.flags&16){var a=i.deletions;if(a!==null){for(var l=0;l<a.length;l++){var c=a[l];for(H=c;H!==null;){var d=H;switch(d.tag){case 0:case 11:case 15:As(8,d,i)}var f=d.child;if(f!==null)f.return=d,H=f;else for(;H!==null;){d=H;var p=d.sibling,h=d.return;if(Uw(d),d===c){H=null;break}if(p!==null){p.return=h,H=p;break}H=h}}}var g=i.alternate;if(g!==null){var v=g.child;if(v!==null){g.child=null;do{var b=v.sibling;v.sibling=null,v=b}while(v!==null)}}H=i}}if(i.subtreeFlags&2064&&s!==null)s.return=i,H=s;else e:for(;H!==null;){if(i=H,i.flags&2048)switch(i.tag){case 0:case 11:case 15:As(9,i,i.return)}var y=i.sibling;if(y!==null){y.return=i.return,H=y;break e}H=i.return}}var w=e.current;for(H=w;H!==null;){s=H;var x=s.child;if(s.subtreeFlags&2064&&x!==null)x.return=s,H=x;else e:for(s=w;H!==null;){if(a=H,a.flags&2048)try{switch(a.tag){case 0:case 11:case 15:$c(9,a)}}catch(C){Re(a,a.return,C)}if(a===s){H=null;break e}var S=a.sibling;if(S!==null){S.return=a.return,H=S;break e}H=a.return}}if(fe=o,zr(),Tn&&typeof Tn.onPostCommitFiberRoot=="function")try{Tn.onPostCommitFiberRoot(jc,e)}catch{}r=!0}return r}finally{he=n,Bt.transition=t}}return!1}function xg(e,t,n){t=Ai(n,t),t=Aw(e,t,1),e=Tr(e,t,1),t=ut(),e!==null&&(ga(e,1,t),xt(e,t))}function Re(e,t,n){if(e.tag===3)xg(e,e,n);else for(;t!==null;){if(t.tag===3){xg(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(Ar===null||!Ar.has(r))){e=Ai(n,e),e=Rw(t,e,1),t=Tr(t,e,1),e=ut(),t!==null&&(ga(t,1,e),xt(t,e));break}}t=t.return}}function Pk(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=ut(),e.pingedLanes|=e.suspendedLanes&n,qe===e&&(Ge&n)===n&&(Ue===4||Ue===3&&(Ge&130023424)===Ge&&500>je()-Kp?co(e,0):Gp|=n),xt(e,t)}function Qw(e,t){t===0&&(e.mode&1?(t=Ua,Ua<<=1,!(Ua&130023424)&&(Ua=4194304)):t=1);var n=ut();e=Jn(e,t),e!==null&&(ga(e,t,n),xt(e,n))}function Ek(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Qw(e,n)}function kk(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;o!==null&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(M(314))}r!==null&&r.delete(t),Qw(e,n)}var Yw;Yw=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||bt.current)yt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return yt=!1,pk(e,t,n);yt=!!(e.flags&131072)}else yt=!1,Pe&&t.flags&1048576&&ew(t,Yl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;bl(e,t),e=t.pendingProps;var o=Pi(t,tt.current);ri(t,n),o=zp(null,t,r,e,o,n);var i=Vp();return t.flags|=1,typeof o=="object"&&o!==null&&typeof o.render=="function"&&o.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,wt(r)?(i=!0,Kl(t)):i=!1,t.memoizedState=o.state!==null&&o.state!==void 0?o.state:null,Lp(t),o.updater=Uc,t.stateNode=o,o._reactInternals=t,tf(t,r,e,n),t=of(null,t,r,!0,i,n)):(t.tag=0,Pe&&i&&Rp(t),st(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch(bl(e,t),e=t.pendingProps,o=r._init,r=o(r._payload),t.type=r,o=t.tag=Ak(r),e=Zt(r,e),o){case 0:t=rf(null,t,r,e,n);break e;case 1:t=dg(null,t,r,e,n);break e;case 11:t=cg(null,t,r,e,n);break e;case 14:t=ug(null,t,r,Zt(r.type,e),n);break e}throw Error(M(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Zt(r,o),rf(e,t,r,o,n);case 1:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Zt(r,o),dg(e,t,r,o,n);case 3:e:{if(Nw(t),e===null)throw Error(M(387));r=t.pendingProps,i=t.memoizedState,o=i.element,sw(e,t),Zl(t,r,null,n);var s=t.memoizedState;if(r=s.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){o=Ai(Error(M(423)),t),t=fg(e,t,r,n,o);break e}else if(r!==o){o=Ai(Error(M(424)),t),t=fg(e,t,r,n,o);break e}else for(Rt=kr(t.stateNode.containerInfo.firstChild),_t=t,Pe=!0,rn=null,n=ow(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Ei(),r===o){t=Xn(e,t,n);break e}st(e,t,r,n)}t=t.child}return t;case 5:return aw(t),e===null&&Xd(t),r=t.type,o=t.pendingProps,i=e!==null?e.memoizedProps:null,s=o.children,Gd(r,o)?s=null:i!==null&&Gd(r,i)&&(t.flags|=32),jw(e,t),st(e,t,s,n),t.child;case 6:return e===null&&Xd(t),null;case 13:return Ow(e,t,n);case 4:return Ip(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=ki(t,null,r,n):st(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Zt(r,o),cg(e,t,r,o,n);case 7:return st(e,t,t.pendingProps,n),t.child;case 8:return st(e,t,t.pendingProps.children,n),t.child;case 12:return st(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,i=t.memoizedProps,s=o.value,ve(Jl,r._currentValue),r._currentValue=s,i!==null)if(un(i.value,s)){if(i.children===o.children&&!bt.current){t=Xn(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var a=i.dependencies;if(a!==null){s=i.child;for(var l=a.firstContext;l!==null;){if(l.context===r){if(i.tag===1){l=Wn(-1,n&-n),l.tag=2;var c=i.updateQueue;if(c!==null){c=c.shared;var d=c.pending;d===null?l.next=l:(l.next=d.next,d.next=l),c.pending=l}}i.lanes|=n,l=i.alternate,l!==null&&(l.lanes|=n),Zd(i.return,n,t),a.lanes|=n;break}l=l.next}}else if(i.tag===10)s=i.type===t.type?null:i.child;else if(i.tag===18){if(s=i.return,s===null)throw Error(M(341));s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),Zd(s,n,t),s=i.sibling}else s=i.child;if(s!==null)s.return=i;else for(s=i;s!==null;){if(s===t){s=null;break}if(i=s.sibling,i!==null){i.return=s.return,s=i;break}s=s.return}i=s}st(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,ri(t,n),o=Gt(o),r=r(o),t.flags|=1,st(e,t,r,n),t.child;case 14:return r=t.type,o=Zt(r,t.pendingProps),o=Zt(r.type,o),ug(e,t,r,o,n);case 15:return _w(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Zt(r,o),bl(e,t),t.tag=1,wt(r)?(e=!0,Kl(t)):e=!1,ri(t,n),Tw(t,r,o),tf(t,r,o,n),of(null,t,r,!0,e,n);case 19:return Mw(e,t,n);case 22:return Dw(e,t,n)}throw Error(M(156,t.tag))};function Jw(e,t){return Pb(e,t)}function Tk(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.t
vendor: 1,171 bytes, line 41
41ype=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 qt(e,t,n,r){return new Tk(e,t,n,r)}function Xp(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Ak(e){if(typeof e=="function")return Xp(e)?1:0;if(e!=null){if(e=e.$$typeof,e===vp)return 11;if(e===yp)return 14}return 2}function _r(e,t){var n=e.alternate;return n===null?(n=qt(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 Sl(e,t,n,r,o,i){var s=2;if(r=e,typeof e=="function")Xp(e)&&(s=1);else if(typeof e=="string")s=5;
vendor: 8,727 bytes, line 41
41else e:switch(e){case Vo:return uo(n.children,o,i,t);case gp:s=8,o|=8;break;case Ed:return e=qt(12,n,t,o|2),e.elementType=Ed,e.lanes=i,e;case kd:return e=qt(13,n,t,o),e.elementType=kd,e.lanes=i,e;case Td:return e=qt(19,n,t,o),e.elementType=Td,e.lanes=i,e;case ab:return Vc(n,o,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case ib:s=10;break e;case sb:s=9;break e;case vp:s=11;break e;case yp:s=14;break e;case lr:s=16,r=null;break e}throw Error(M(130,e==null?e:typeof e,""))}return t=qt(s,n,t,o),t.elementType=e,t.type=r,t.lanes=i,t}function uo(e,t,n,r){return e=qt(7,e,r,t),e.lanes=n,e}function Vc(e,t,n,r){return e=qt(22,e,r,t),e.elementType=ab,e.lanes=n,e.stateNode={isHidden:!1},e}function Gu(e,t,n){return e=qt(6,e,null,t),e.lanes=n,e}function Ku(e,t,n){return t=qt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Rk(e,t,n,r,o){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=Au(0),this.expirationTimes=Au(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Au(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Zp(e,t,n,r,o,i,s,a,l){return e=new Rk(e,t,n,a,l),t===1?(t=1,i===!0&&(t|=8)):t=0,i=qt(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Lp(i),e}function _k(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:zo,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function Xw(e){if(!e)return Or;e=e._reactInternals;e:{if(To(e)!==e||e.tag!==1)throw Error(M(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(wt(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(M(171))}if(e.tag===1){var n=e.type;if(wt(n))return Xb(e,n,t)}return t}function Zw(e,t,n,r,o,i,s,a,l){return e=Zp(n,r,!0,e,o,i,s,a,l),e.context=Xw(null),n=e.current,r=ut(),o=Rr(n),i=Wn(r,o),i.callback=t??null,Tr(n,i,o),e.current.lanes=o,ga(e,o,r),xt(e,r),e}function Hc(e,t,n,r){var o=t.current,i=ut(),s=Rr(o);return n=Xw(n),t.context===null?t.context=n:t.pendingContext=n,t=Wn(i,s),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=Tr(o,t,s),e!==null&&(cn(e,o,s,i),gl(e,o,s)),s}function ac(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Sg(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function em(e,t){Sg(e,t),(e=e.alternate)&&Sg(e,t)}function Dk(){return null}var ex=typeof reportError=="function"?reportError:function(e){console.error(e)};function tm(e){this._internalRoot=e}qc.prototype.render=tm.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(M(409));Hc(e,t,null,null)};qc.prototype.unmount=tm.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;yo(function(){Hc(null,e,null,null)}),t[Yn]=null}};function qc(e){this._internalRoot=e}qc.prototype.unstable_scheduleHydration=function(e){if(e){var t=Db();e={blockedOn:null,target:e,priority:t};for(var n=0;n<ur.length&&t!==0&&t<ur[n].priority;n++);ur.splice(n,0,e),n===0&&Nb(e)}};function nm(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Bc(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Cg(){}function jk(e,t,n,r,o){if(o){if(typeof r=="function"){var i=r;r=function(){var c=ac(s);i.call(c)}}var s=Zw(t,r,e,0,null,!1,!1,"",Cg);return e._reactRootContainer=s,e[Yn]=s.current,zs(e.nodeType===8?e.parentNode:e),yo(),s}for(;o=e.lastChild;)e.removeChild(o);if(typeof r=="function"){var a=r;r=function(){var c=ac(l);a.call(c)}}var l=Zp(e,0,!1,null,null,!1,!1,"",Cg);return e._reactRootContainer=l,e[Yn]=l.current,zs(e.nodeType===8?e.parentNode:e),yo(function(){Hc(t,l,n,r)}),l}function Wc(e,t,n,r,o){var i=n._reactRootContainer;if(i){var s=i;if(typeof o=="function"){var a=o;o=function(){var l=ac(s);a.call(l)}}Hc(t,s,e,o)}else s=jk(n,t,e,o,r);return ac(s)}Rb=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=vs(t.pendingLanes);n!==0&&(xp(t,n|1),xt(t,je()),!(fe&6)&&(Ri=je()+500,zr()))}break;case 13:yo(function(){var r=Jn(e,1);if(r!==null){var o=ut();cn(r,e,1,o)}}),em(e,1)}};Sp=function(e){if(e.tag===13){var t=Jn(e,134217728);if(t!==null){var n=ut();cn(t,e,134217728,n)}em(e,134217728)}};_b=function(e){if(e.tag===13){var t=Rr(e),n=Jn(e,t);if(n!==null){var r=ut();cn(n,e,t,r)}em(e,t)}};Db=function(){return he};jb=function(e,t){var n=he;try{return he=e,t()}finally{he=n}};Id=function(e,t,n){switch(t){case"input":if(_d(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var o=Lc(r);if(!o)throw Error(M(90));cb(r),_d(r,o)}}}break;case"textarea":db(e,n);break;case"select":t=n.value,t!=null&&Zo(e,!!n.multiple,t,!1)}};yb=Qp;bb=yo;var Nk={usingClientEntryPoint:!1,Events:[ya,Wo,Lc,gb,vb,Qp]},is={findFiberByHostInstance:Kr,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Ok={bundleType:is.bundleType,version:is.version,rendererPackageName:is.rendererPackageName,rendererConfig:is.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:tr.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Sb(e),e===null?null:e.stateNode},findFiberByHostInstance:is.findFiberByHostInstance||Dk,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Ya=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Ya.isDisabled&&Ya.supportsFiber)try{jc=Ya.inject(Ok),Tn=Ya}catch{}}Ot.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Nk;Ot.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!nm(t))throw Error(M(200));return _k(e,t,null,n)};Ot.createRoot=function(e,t){if(!nm(e))throw Error(M(299));var n=!1,r="",o=ex;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(o=t.onRecoverableError)),t=Zp(e,1,!1,null,null,n,!1,r,o),e[Yn]=t.current,zs(e.nodeType===8?e.parentNode:e),new tm(t)};Ot.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(M(188)):(e=Object.keys(e).join(","),Error(M(268,e)));return e=Sb(t),e=e===null?null:e.stateNode,e};Ot.flushSync=function(e){return yo(e)};Ot.hydrate=function(e,t,n){if(!Bc(t))throw Error(M(200));return Wc(null,e,t,!0,n)};Ot.hydrateRoot=function(e,t,n){if(!nm(e))throw Error(M(405));var r=n!=null&&n.hydratedSources||null,o=!1,i="",s=ex;if(n!=null&&(n.unstable_strictMode===!0&&(o=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onRecoverableError!==void 0&&(s=n.onRecoverableError)),t=Zw(t,null,e,1,n??null,o,!1,i,s),e[Yn]=t.current,zs(e),r)for(e=0;e<r.length;e++)n=r[e],o=n._getVersion,o=o(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,o]:t.mutableSourceEagerHydrationData.push(n,o);return new qc(t)};Ot.render=function(e,t,n){if(!Bc(t))throw Error(M(200));return Wc(null,e,t,!1,n)};Ot.unmountComponentAtNode=function(e){if(!Bc(e))throw Error(M(40));return e._reactRootContainer?(yo(function(){Wc(null,null,e,!1,function(){e._reactRootContainer=null,e[Yn]=null})}),!0):!1};Ot.unstable_batchedUpdates=Qp;Ot.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Bc(n))throw Error(M(200));if(e==null||e._reactInternals===void 0)throw Error(M(38));return Wc(e,t,n,!1,r)};Ot.version="18.3.1-next-f1338f8080-20240426";function tx(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(tx)}catch(e){console.error(e)}}tx(),tb.exports=Ot;
41var wa=tb.exports;const nx=Eo(wa),Mk=Hy({__proto__:null,default:nx},[wa]);/**
42 * @remix-run/router v1.23.1
43 *
44 * Copyright (c) Remix Software Inc.
45 *
46 * This source code is licensed under the MIT license found in the
47 * LICENSE.md file in the root directory of this source tree.
48 *
49 * @license MIT
50 */function Ys(){return Ys=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ys.apply(this,arguments)}var sn;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(sn||(sn={}));const Pg="popstate";function Lk(e){e===void 0&&(e={});let{initialEntries:t=["/"],initialIndex:n,v5Compat:r=!1}=e,o;o=t.map((h,g)=>d(h,typeof h=="string"?null:h.state,g===0?"default":void 0));let i=l(n??o.length-1),s=sn.Pop,a=null;function l(h){return Math.min(Math.max(h,0),o.length-1)}function c(){return o[i]}function d(h,g,v){g===void 0&&(g=null);let b=lc(o?c().pathname:"/",h,g,v);return Gc(b.pathname.charAt(0)==="/","relative pathnames are not supported in memory history: "+JSON.stringify(h)),b}function f(h){return typeof h=="string"?h:Js(h)}return{get index(){return i},get action(){return s},get location(){return c()},createHref:f,createURL(h){return new URL(f(h),"http://localhost")},encodeLocation(h){let g=typeof h=="string"?Ui(h):h;return{pathname:g.pathname||"",search:g.search||"",hash:g.hash||""}},push(h,g){s=sn.Push;let v=d(h,g);i+=1,o.splice(i,o.length,v),r&&a&&a({action:s,location:v,delta:1})},replace(h,g){s=sn.Replace;let v=d(h,g);o[i]=v,r&&a&&a({action:s,location:v,delta:0})},go(h){s=sn.Pop;let g=l(i+h),v=o[g];i=g,a&&a({action:s,location:v,delta:h})},listen(h){return a=h,()=>{a=null}}}}function Ik(e){e===void 0&&(e={});function t(r,o){let{pathname:i,search:s,hash:a}=r.location;return lc("",{pathname:i,search:s,hash:a},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function n(r,o){return typeof o=="string"?o:Js(o)}return Uk(t,n,null,e)}function Ke(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Gc(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Fk(){return Math.random().toString(36).substr(2,8)}function Eg(e,t){return{usr:e.state,key:e.key,idx:t}}function lc(e,t,n,r){return n===void 0&&(n=null),Ys({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?Ui(t):t,{state:n,key:t&&t.key||r||Fk()})}function Js(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 Ui(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 Uk(e,t,n,r){r===void 0&&(r={});let{window:o=document.defaultView,v5Compat:i=!1}=r,s=o.history,a=sn.Pop,l=null,c=d();c==null&&(c=0,s.replaceState(Ys({},s.state,{idx:c}),""));function d(){return(s.state||{idx:null}).idx}function f(){a=sn.Pop;let b=d(),y=b==null?null:b-c;c=b,l&&l({action:a,location:v.location,delta:y})}function p(b,y){a=sn.Push;let w=lc(v.location,b,y);c=d()+1;let x=Eg(w,c),S=v.createHref(w);try{s.pushState(x,"",S)}catch(C){if(C instanceof DOMException&&C.name==="DataCloneError")throw C;o.location.assign(S)}i&&l&&l({action:a,location:v.location,delta:1})}function h(b,y){a=sn.Replace;let w=lc(v.location,b,y);c=d();let x=Eg(w,c),S=v.createHref(w);s.replaceState(x,"",S),i&&l&&l({action:a,location:v.location,delta:0})}function g(b){let y=o.location.origin!=="null"?o.location.origin:o.location.href,w=typeof b=="string"?b:Js(b);return w=w.replace(/ $/,"%20"),Ke(y,"No window.location.(origin|href) available to create URL for href: "+w),new URL(w,y)}let v={get action(){return a},get location(){return e(o,s)},listen(b){if(l)throw new Error("A history only accepts one active listener");return o.addEventListener(Pg,f),l=b,()=>{o.removeEventListener(Pg,f),l=null}},createHref(b){return t(o,b)},createURL:g,encodeLocation(b){let y=g(b);return{pathname:y.pathname,search:y.search,hash:y.hash}},push:p,replace:h,go(b){return s.go(b)}};return v}var kg;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(kg||(kg={}));
vendor: 2,175 bytes, line 50
50function $k(e,t,n){return n===void 0&&(n="/"),zk(e,t,n)}function zk(e,t,n,r){let o=typeof t=="string"?Ui(t):t,i=rm(o.pathname||"/",n);if(i==null)return null;let s=rx(e);Vk(s);let a=null;for(let l=0;a==null&&l<s.length;++l){let c=eT(i);a=Jk(s[l],c)}return a}function rx(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let o=(i,s,a)=>{let l={relativePath:a===void 0?i.path||"":a,caseSensitive:i.caseSensitive===!0,childrenIndex:s,route:i};l.relativePath.startsWith("/")&&(Ke(l.relativePath.startsWith(r),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(r.length));let c=Dr([r,l.relativePath]),d=n.concat(l);i.children&&i.children.length>0&&(Ke(i.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),rx(i.children,t,d,c)),!(i.path==null&&!i.index)&&t.push({path:c,score:Qk(c,i.index),routesMeta:d})};return e.forEach((i,s)=>{var a;if(i.path===""||!((a=i.path)!=null&&a.includes("?")))o(i,s);else for(let l of ox(i.path))o(i,s,l)}),t}function ox(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,o=n.endsWith("?"),i=n.replace(/\?$/,"");if(r.length===0)return o?[i,""]:[i];let s=ox(r.join("/")),a=[];return a.push(...s.map(l=>l===""?i:[i,l].join("/"))),o&&a.push(...s),a.map(l=>e.startsWith("/")&&l===""?"/":l)}function Vk(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Yk(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const Hk=/^:[\w-]+$/,qk=3,Bk=2,Wk=1,Gk=10,Kk=-2,Tg=e=>e==="*";function Qk(e,t){let n=e.split("/"),r=n.length;return n.some(Tg)&&(r+=Kk),t&&(r+=Bk),n.filter(o=>!Tg(o)).reduce((o,i)=>o+(Hk.test(i)?qk:i===""?Wk:Gk),r)}function Yk(e,t){return e.length===t.length&&e.slice(0,-1).every((r,o)=>r===t[o])?e[e.length-1]-t[t.length-1]:0}function Jk(e,t,n){let{routesMeta:r}=e,o={},i="/",s=[];for(let a=0;a<r.length;++a){let l=r[a],c=a===r.length-1,d=i==="/"?t:t.slice(i.length)||"/",f=Xk({path:l.relativePath,caseSensitive:l.caseSensitive,end:c},d),p=l.route;if(!f)return null;
vendor: 9,678 bytes, lines 50-59
50Object.assign(o,f.params),s.push({params:o,pathname:Dr([i,f.pathname]),pathnameBase:iT(Dr([i,f.pathnameBase])),route:p}),f.pathnameBase!=="/"&&(i=Dr([i,f.pathnameBase]))}return s}function Xk(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=Zk(e.path,e.caseSensitive,e.end),o=t.match(n);if(!o)return null;let i=o[0],s=i.replace(/(.)\/+$/,"$1"),a=o.slice(1);return{params:r.reduce((c,d,f)=>{let{paramName:p,isOptional:h}=d;if(p==="*"){let v=a[f]||"";s=i.slice(0,i.length-v.length).replace(/(.)\/+$/,"$1")}const g=a[f];return h&&!g?c[p]=void 0:c[p]=(g||"").replace(/%2F/g,"/"),c},{}),pathname:i,pathnameBase:s,pattern:e}}function Zk(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Gc(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=[],o="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(s,a,l)=>(r.push({paramName:a,isOptional:l!=null}),l?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),o+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?o+="\\/*$":e!==""&&e!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,t?void 0:"i"),r]}function eT(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Gc(!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 rm(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)||"/"}const tT=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,nT=e=>tT.test(e);function rT(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:o=""}=typeof e=="string"?Ui(e):e,i;if(n)if(nT(n))i=n;else{if(n.includes("//")){let s=n;n=n.replace(/\/\/+/g,"/"),Gc(!1,"Pathnames cannot have embedded double slashes - normalizing "+(s+" -> "+n))}n.startsWith("/")?i=Ag(n.substring(1),"/"):i=Ag(n,t)}else i=t;return{pathname:i,search:sT(r),hash:aT(o)}}function Ag(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(o=>{o===".."?n.length>1&&n.pop():o!=="."&&n.push(o)}),n.length>1?n.join("/"):"/"}function Qu(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 <Link to="..."> and the router will parse it for you.'}function oT(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function om(e,t){let n=oT(e);return t?n.map((r,o)=>o===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function im(e,t,n,r){r===void 0&&(r=!1);let o;typeof e=="string"?o=Ui(e):(o=Ys({},e),Ke(!o.pathname||!o.pathname.includes("?"),Qu("?","pathname","search",o)),Ke(!o.pathname||!o.pathname.includes("#"),Qu("#","pathname","hash",o)),Ke(!o.search||!o.search.includes("#"),Qu("#","search","hash",o)));let i=e===""||o.pathname==="",s=i?"/":o.pathname,a;if(s==null)a=n;else{let f=t.length-1;if(!r&&s.startsWith("..")){let p=s.split("/");for(;p[0]==="..";)p.shift(),f-=1;o.pathname=p.join("/")}a=f>=0?t[f]:"/"}let l=rT(o,a),c=s&&s!=="/"&&s.endsWith("/"),d=(i||s===".")&&n.endsWith("/");return!l.pathname.endsWith("/")&&(c||d)&&(l.pathname+="/"),l}const Dr=e=>e.join("/").replace(/\/\/+/g,"/"),iT=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),sT=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,aT=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function lT(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const ix=["post","put","patch","delete"];new Set(ix);const cT=["get",...ix];new Set(cT);/**
51 * React Router v6.30.2
52 *
53 * Copyright (c) Remix Software Inc.
54 *
55 * This source code is licensed under the MIT license found in the
56 * LICENSE.md file in the root directory of this source tree.
57 *
58 * @license MIT
59 */function cc(){return cc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},cc.apply(this,arguments)}const sm=m.createContext(null),uT=m.createContext(null),Vr=m.createContext(null),am=m.createContext(null),Dn=m.createContext({outlet:null,matches:[],isDataRoute:!1}),sx=m.createContext(null);function dT(e,t){let{relative:n}=t===void 0?{}:t;$i()||Ke(!1);let{basename:r,navigator:o}=m.useContext(Vr),{hash:i,pathname:s,search:a}=cx(e,{relative:n}),l=s;return r!=="/"&&(l=s==="/"?r:Dr([r,s])),o.createHref({pathname:l,search:a,hash:i})}function $i(){return m.useContext(am)!=null}function Et(){return $i()||Ke(!1),m.useContext(am).location}function ax(e){m.useContext(Vr).static||m.useLayoutEffect(e)}function nr(){let{isDataRoute:e}=m.useContext(Dn);return e?ET():fT()}function fT(){$i()||Ke(!1);let e=m.useContext(sm),{basename:t,future:n,navigator:r}=m.useContext(Vr),{matches:o}=m.useContext(Dn),{pathname:i}=Et(),s=JSON.stringify(om(o,n.v7_relativeSplatPath)),a=m.useRef(!1);return ax(()=>{a.current=!0}),m.useCallback(function(c,d){if(d===void 0&&(d={}),!a.current)return;if(typeof c=="number"){r.go(c);return}let f=im(c,JSON.parse(s),i,d.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:Dr([t,f.pathname])),(d.replace?r.replace:r.push)(f,d.state,d)},[t,r,s,i,e])}const lx=m.createContext(null);function dV(){return m.useContext(lx)}function pT(e){let t=m.useContext(Dn).outlet;return t&&m.createElement(lx.Provider,{value:e},t)}function fV(){let{matches:e}=m.useContext(Dn),t=e[e.length-1];return t?t.params:{}}function cx(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=m.useContext(Vr),{matches:o}=m.useContext(Dn),{pathname:i}=Et(),s=JSON.stringify(om(o,r.v7_relativeSplatPath));return m.useMemo(()=>im(e,JSON.parse(s),i,n==="path"),[e,s,i,n])}function mT(e,t){return hT(e)}function hT(e,t,n,r){$i()||Ke(!1);let{navigator:o}=m.useContext(Vr),{matches:i}=m.useContext(Dn),s=i[i.length-1],a=s?s.params:{};s&&s.pathname;let l=s?s.pathnameBase:"/";s&&s.route;let c=Et(),d;d=c;let f=d.pathname||"/",p=f;if(l!=="/"){let v=l.replace(/^\//,"").split("/");p="/"+f.replace(/^\//,"").split("/").slice(v.length).join("/")}let h=$k(e,{pathname:p});return wT(h&&h.map(v=>Object.assign({},v,{params:Object.assign({},a,v.params),pathname:Dr([l,o.encodeLocation?o.encodeLocation(v.pathname).pathname:v.pathname]),pathnameBase:v.pathnameBase==="/"?l:Dr([l,o.encodeLocation?o.encodeLocation(v.pathnameBase).pathname:v.pathnameBase])})),i,n,r)}function gT(){let e=PT(),t=lT(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,o={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return m.createElement(m.Fragment,null,m.createElement("h2",null,"Unexpected Application Error!"),m.createElement("h3",{style:{fontStyle:"italic"}},t),n?m.createElement("pre",{style:o},n):null,null)}const vT=m.createElement(gT,null);class yT extends m.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!==void 0?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!==void 0?m.createElement(Dn.Provider,{value:this.props.routeContext},m.createElement(sx.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function bT(e){let{routeContext:t,match:n,children:r}=e,o=m.useContext(sm);return o&&o.static&&o.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=n.route.id),m.createElement(Dn.Provider,{value:t},r)}function wT(e,t,n,r){var o;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var i;if(!n)return null;if(n.errors)e=n.matches;else if((i=r)!=null&&i.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let s=e,a=(o=n)==null?void 0:o.errors;if(a!=null){let d=s.findIndex(f=>f.route.id&&(a==null?void 0:a[f.route.id])!==void 0);d>=0||Ke(!1),s=s.slice(0,Math.min(s.length,d+1))}let l=!1,c=-1;if(n&&r&&r.v7_partialHydration)for(let d=0;d<s.length;d++){let f=s[d];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(c=d),f.route.id){let{loaderData:p,errors:h}=n,g=f.route.loader&&p[f.route.id]===void 0&&(!h||h[f.route.id]===void 0);if(f.route.lazy||g){l=!0,c>=0?s=s.slice(0,c+1):s=[s[0]];break}}}return s.reduceRight((d,f,p)=>{let h,g=!1,v=null,b=null;n&&(h=a&&f.route.id?a[f.route.id]:void 0,v=f.route.errorElement||vT,l&&(c<0&&p===0?(kT("route-fallback"),g=!0,b=null):c===p&&(g=!0,b=f.route.hydrateFallbackElement||null)));let y=t.concat(s.slice(0,p+1)),w=()=>{let x;return h?x=v:g?x=b:f.route.Component?x=m.createElement(f.route.Component,null):f.route.element?x=f.route.element:x=d,m.createElement(bT,{match:f,routeContext:{outlet:d,matches:y,isDataRoute:n!=null},children:x})};return n&&(f.route.ErrorBoundary||f.route.errorElement||p===0)?m.createElement(yT,{location:n.location,revalidation:n.revalidation,component:v,error:h,children:w(),routeC
59ontext:{outlet:null,matches:y,isDataRoute:!0}}):w()},null)}var ux=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(ux||{}),dx=function(e){return 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",e}(dx||{});function xT(e){let t=m.useContext(sm);return t||Ke(!1),t}function ST(e){let t=m.useContext(uT);return t||Ke(!1),t}function CT(e){let t=m.useContext(Dn);return t||Ke(!1),t}function fx(e){let t=CT(),n=t.matches[t.matches.length-1];return n.route.id||Ke(!1),n.route.id}function PT(){var e;let t=m.useContext(sx),n=ST(dx.UseRouteError),r=fx();return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function ET(){let{router:e}=xT(ux.UseNavigateStable),t=fx(),n=m.useRef(!1);return ax(()=>{n.current=!0}),m.useCallback(function(o,i){i===void 0&&(i={}),n.current&&(typeof o=="number"?e.navigate(o):e.navigate(o,cc({fromRouteId:t},i)))},[e,t])}const Rg={};function kT(e,t,n){Rg[e]||(Rg[e]=!0)}function px(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}const TT="startTransition",_g=ha[TT];function AT(e){let{basename:t,children:n,initialEntries:r,initialIndex:o,future:i}=e,s=m.useRef();s.current==null&&(s.current=Lk({initialEntries:r,initialIndex:o,v5Compat:!0}));let a=s.current,[l,c]=m.useState({action:a.action,location:a.location}),{v7_startTransition:d}=i||{},f=m.useCallback(p=>{d&&_g?_g(()=>c(p)):c(p)},[c,d]);return m.useLayoutEffect(()=>a.listen(f),[a,f]),m.useEffect(()=>px(i),[i]),m.createElement(mx,{basename:t,children:n,location:l.location,navigationType:l.action,navigator:a,future:i})}function Mr(e){let{to:t,replace:n,state:r,relative:o}=e;$i()||Ke(!1);let{future:i,static:s}=m.useContext(Vr),{matches:a}=m.useContext(Dn),{pathname:l}=Et(),c=nr(),d=im(t,om(a,i.v7_relativeSplatPath),l,o==="path"),f=JSON.stringify(d);return m.useEffect(()=>c(JSON.parse(f),{replace:n,state:r,relative:o}),[c,f,o,n,r]),null}function Ao(e){return pT(e.context)}function mx(e){let{basename:t="/",children:n=null,location:r,navigationType:o=sn.Pop,navigator:i,static:s=!1,future:a}=e;$i()&&Ke(!1);let l=t.replace(/^\/*/,"/"),c=m.useMemo(()=>({basename:l,navigator:i,static:s,future:cc({v7_relativeSplatPath:!1},a)}),[l,a,i,s]);typeof r=="string"&&(r=Ui(r));let{pathname:d="/",search:f="",hash:p="",state:h=null,key:g="default"}=r,v=m.useMemo(()=>{let b=rm(d,l);return b==null?null:{location:{pathname:b,search:f,hash:p,state:h,key:g},navigationType:o}},[l,d,f,p,h,g,o]);return v==null?null:m.createElement(Vr.Provider,{value:c},m.createElement(am.Provider,{children:n,value:v}))}new Promise(()=>{});/**
60 * React Router DOM v6.30.2
61 *
62 * Copyright (c) Remix Software Inc.
63 *
64 * This source code is licensed under the MIT license found in the
65 * LICENSE.md file in the root directory of this source tree.
66 *
67 * @license MIT
68 */function vf(){return vf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},vf.apply(this,arguments)}function RT(e,t){if(e==null)return{};var n={},r=Object.keys(e),o,i;for(i=0;i<r.length;i++)o=r[i],!(t.indexOf(o)>=0)&&(n[o]=e[o]);return n}function _T(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function DT(e,t){return e.button===0&&(!t||t==="_self")&&!_T(e)}function yf(e){return e===void 0&&(e=""),new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(o=>[n,o]):[[n,r]])},[]))}function jT(e,t){let n=yf(e);return t&&t.forEach((r,o)=>{n.has(o)||t.getAll(o).forEach(i=>{n.append(o,i)})}),n}const NT=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],OT="6";try{window.__reactRouterVersion=OT}catch{}const MT="startTransition",Dg=ha[MT];function LT(e){let{basename:t,children:n,future:r,window:o}=e,i=m.useRef();i.current==null&&(i.current=Ik({window:o,v5Compat:!0}));let s=i.current,[a,l]=m.useState({action:s.action,location:s.location}),{v7_startTransition:c}=r||{},d=m.useCallback(f=>{c&&Dg?Dg(()=>l(f)):l(f)},[l,c]);return m.useLayoutEffect(()=>s.listen(d),[s,d]),m.useEffect(()=>px(r),[r]),m.createElement(mx,{basename:t,children:n,location:a.location,navigationType:a.action,navigator:s,future:r})}const IT=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",FT=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,on=m.forwardRef(function(t,n){let{onClick:r,relative:o,reloadDocument:i,replace:s,state:a,target:l,to:c,preventScrollReset:d,viewTransition:f}=t,p=RT(t,NT),{basename:h}=m.useContext(Vr),g,v=!1;if(typeof c=="string"&&FT.test(c)&&(g=c,IT))try{let x=new URL(window.location.href),S=c.startsWith("//")?new URL(x.protocol+c):new URL(c),C=rm(S.pathname,h);S.origin===x.origin&&C!=null?c=C+S.search+S.hash:v=!0}catch{}let b=dT(c,{relative:o}),y=UT(c,{replace:s,state:a,target:l,preventScrollReset:d,relative:o,viewTransition:f});function w(x){r&&r(x),x.defaultPrevented||y(x)}return m.createElement("a",vf({},p,{href:g||b,onClick:v||i?r:w,ref:n,target:l}))});var jg;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(jg||(jg={}));var Ng;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(Ng||(Ng={}));function UT(e,t){let{target:n,replace:r,state:o,preventScrollReset:i,relative:s,viewTransition:a}=t===void 0?{}:t,l=nr(),c=Et(),d=cx(e,{relative:s});return m.useCallback(f=>{if(DT(f,n)){f.preventDefault();let p=r!==void 0?r:Js(c)===Js(d);l(e,{replace:p,state:o,preventScrollReset:i,relative:s,viewTransition:a})}},[c,l,d,r,o,n,e,i,s,a])}function pV(e){let t=m.useRef(yf(e)),n=m.useRef(!1),r=Et(),o=m.useMemo(()=>jT(r.search,n.current?null:t.current),[r.search]),i=nr(),s=m.useCallback((a,l)=>{const c=yf(typeof a=="function"?a(o):a);n.current=!0,i("?"+c,l)},[i,o]);return[o,s]}var zi=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},$T={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},fr,lp,jy,zT=(jy=class{constructor(){W(this,fr,$T);W(this,lp,!1)}setTimeoutProvider(e){V(this,fr,e)}setTimeout(e,t){return P(this,fr).setTimeout(e,t)}clearTimeout(e){P(this,fr).clearTimeout(e)}setInterval(e,t){return P(this,fr).setInterval(e,t)}clearInterval(e){P(this,fr).clearInterval(e)}},fr=new WeakMap,lp=new WeakMap,jy),Jr=new zT;function VT(e){setTimeout(e,0)}var bo=typeof window>"u"||"Deno"in globalThis;function at(){}function HT(e,t){return typeof e=="function"?e(t):e}function bf(e){return typeof e=="number"&&e>=0&&e!==1/0}function hx(e,t){return Math.max(e+(t||0)-Date.now(),0)}function jr(e,t){return typeof e=="function"?e(t):e}function zt(e,t){return typeof e=="function"?e(t):e}function Og(e,t){const{type:n="all",exact:r,fetchStatus:o,predicate:i,queryKey:s,stale:a}=e;if(s){if(r){if(t.queryHash!==lm(s,t.options))return!1}else if(!Xs(t.queryKey,s))return!1}if(n!=="all"){const l=t.isActive();if(n==="active"&&!l||n==="inactive"&&l)return!1}return!(typeof a=="boolean"&&t.isStale()!==a||o&&o!==t.state.fetchStatus||i&&!i(t))}function Mg(e,t){const{exact:n,status:r,predicate:o,mutationKey:i}=e;if(i){if(!t.options.mutationKey)return!1;if(n){if(wo(t.options.mutationKey)!==wo(i))return!1}else if(!Xs(t.options.mutationKey,i))return!1}return!(r&&t.state.status!==r||o&&!o(t))}function lm(e,t){return((t==null?void 0:t.queryKeyHashFn)||wo)(e)}function wo(e){return JSON.stringify(e,(t,n)=>wf(n)?Object.keys(n).sort().reduce((r,o)=>(r[o]=n[o],r),{}):n)}function Xs(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(n=>Xs(e[n],t[n])):!1}var qT=Object.prototype.hasOwnProperty;function gx(e,t){if(e===t)return e;const n=Lg(e)&&Lg(t);if(!n&&!(wf(e)&&wf(t)))return t;const o=(n?e:Object.keys(e)).length,i=n?t:Object.keys(t),s=i.length,a=n?
68new Array(s):{};let l=0;for(let c=0;c<s;c++){const d=n?c:i[c],f=e[d],p=t[d];if(f===p){a[d]=f,(n?c<o:qT.call(e,d))&&l++;continue}if(f===null||p===null||typeof f!="object"||typeof p!="object"){a[d]=p;continue}const h=gx(f,p);a[d]=h,h===f&&l++}return o===s&&l===o?e:a}function uc(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(e[n]!==t[n])return!1;return!0}function Lg(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function wf(e){if(!Ig(e))return!1;const t=e.constructor;if(t===void 0)return!0;const n=t.prototype;return!(!Ig(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function Ig(e){return Object.prototype.toString.call(e)==="[object Object]"}function BT(e){return new Promise(t=>{Jr.setTimeout(t,e)})}function xf(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?gx(e,t):t}function WT(e,t,n=0){const r=[...e,t];return n&&r.length>n?r.slice(1):r}function GT(e,t,n=0){const r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var cm=Symbol();function vx(e,t){return!e.queryFn&&(t!=null&&t.initialPromise)?()=>t.initialPromise:!e.queryFn||e.queryFn===cm?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function yx(e,t){return typeof e=="function"?e(...t):!!e}var Zr,pr,di,Ny,KT=(Ny=class extends zi{constructor(){super();W(this,Zr);W(this,pr);W(this,di);V(this,di,t=>{if(!bo&&window.addEventListener){const n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){P(this,pr)||this.setEventListener(P(this,di))}onUnsubscribe(){var t;this.hasListeners()||((t=P(this,pr))==null||t.call(this),V(this,pr,void 0))}setEventListener(t){var n;V(this,di,t),(n=P(this,pr))==null||n.call(this),V(this,pr,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){P(this,Zr)!==t&&(V(this,Zr,t),this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){var t;return typeof P(this,Zr)=="boolean"?P(this,Zr):((t=globalThis.document)==null?void 0:t.visibilityState)!=="hidden"}},Zr=new WeakMap,pr=new WeakMap,di=new WeakMap,Ny),um=new KT;function Sf(){let e,t;const n=new Promise((o,i)=>{e=o,t=i});n.status="pending",n.catch(()=>{});function r(o){Object.assign(n,o),delete n.resolve,delete n.reject}return n.resolve=o=>{r({status:"fulfilled",value:o}),e(o)},n.reject=o=>{r({status:"rejected",reason:o}),t(o)},n}var QT=VT;function YT(){let e=[],t=0,n=a=>{a()},r=a=>{a()},o=QT;const i=a=>{t?e.push(a):o(()=>{n(a)})},s=()=>{const a=e;e=[],a.length&&o(()=>{r(()=>{a.forEach(l=>{n(l)})})})};return{batch:a=>{let l;t++;try{l=a()}finally{t--,t||s()}return l},batchCalls:a=>(...l)=>{i(()=>{a(...l)})},schedule:i,setNotifyFunction:a=>{n=a},setBatchNotifyFunction:a=>{r=a},setScheduler:a=>{o=a}}}var Fe=YT(),fi,mr,pi,Oy,JT=(Oy=class extends zi{constructor(){super();W(this,fi,!0);W(this,mr);W(this,pi);V(this,pi,t=>{if(!bo&&window.addEventListener){const n=()=>t(!0),r=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}})}onSubscribe(){P(this,mr)||this.setEventListener(P(this,pi))}onUnsubscribe(){var t;this.hasListeners()||((t=P(this,mr))==null||t.call(this),V(this,mr,void 0))}setEventListener(t){var n;V(this,pi,t),(n=P(this,mr))==null||n.call(this),V(this,mr,t(this.setOnline.bind(this)))}setOnline(t){P(this,fi)!==t&&(V(this,fi,t),this.listeners.forEach(r=>{r(t)}))}isOnline(){return P(this,fi)}},fi=new WeakMap,mr=new WeakMap,pi=new WeakMap,Oy),dc=new JT;function XT(e){return Math.min(1e3*2**e,3e4)}function bx(e){return(e??"online")==="online"?dc.isOnline():!0}var Cf=class extends Error{constructor(e){super("CancelledError"),this.revert=e==null?void 0:e.revert,this.silent=e==null?void 0:e.silent}};function wx(e){let t=!1,n=0,r;const o=Sf(),i=()=>o.status!=="pending",s=v=>{var b;if(!i()){const y=new Cf(v);p(y),(b=e.onCancel)==null||b.call(e,y)}},a=()=>{t=!0},l=()=>{t=!1},c=()=>um.isFocused()&&(e.networkMode==="always"||dc.isOnline())&&e.canRun(),d=()=>bx(e.networkMode)&&e.canRun(),f=v=>{i()||(r==null||r(),o.resolve(v))},p=v=>{i()||(r==null||r(),o.reject(v))},h=()=>new Promise(v=>{var b;r=y=>{(i()||c())&&v(y)},(b=e.onPause)==null||b.call(e)}).then(()=>{var v;r=void 0,i()||(v=e.onContinue)==null||v.call(e)}),g=()=>{if(i())return;let v;const b=n===0?e.initialPromise:void 0;try{v=b??e.fn()}catch(y){v=Promise.reject(y)}Promise.resolve(v).then(f).catch(y=>{var k;if(i())return;const w=e.retry??(bo?0:3),x=e.retryDelay??XT,S=typeof x=="function"?x(n,y):x,C=w===!0||typeof w=="number"&&n<w||typeof w=="function"&&w(n,y);if(t||!C){p(y);return}n++,(k=e.onFail)==null||k.call(e,n,y),BT(S).then(()=>c()?void 0:h()).then(()=>{t?p(y):g()})})};return{promise:o,status:()=>o.status,cancel:s,continue:()=>(r==null||r(),o),cancelRetry:a,continueRetry:l,canStart:d,start:()=>(d()?g():h().then(g),o)}}var eo,My,xx=(My=class{constructor(){W(this,eo)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),bf(this.gcTime)&&V(this,eo,Jr.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(bo?1/0:5*60*1e3))}clearGcTimeout(){P(this,eo)&&(Jr.clearTimeout(P(this,eo)),V(this,eo,void 0))}},eo=new WeakMap,My),to,mi,$t,no,ze,ca,ro,en,In,Ly,ZT=(Ly=class extends xx{constructor(t){super();W(this,en);W(this,to);W(this,mi);W(this,$t);W(this,no);W(this,ze);W(this,ca);W(this,ro);V(this,ro,!1),V(this,ca,t.defaultOptions),this.setOptions(t.options),this.observers=[],V(this,no,t.client),V(this,$t,P(this,no).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,V(this,to,Ug(this.options)),this.state=t.state??P(this,to),this.scheduleGc()}get meta(){return this.options.meta}get promise(){var t;return(t=P(this,ze))==null?void 0:t.promise}setOptions(t){if(this.options={...P(this,ca),...t},this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const n=Ug(this.options);n.data!==void 0&&(this.setState(Fg(n.data,n.dataUpdatedAt)),V(this,to,n))}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&P(this,$t).remove(this)}setData(t,n){const r=xf(this.state.data,t,this.options);return ie(this,en,In).call(this,{data:r,type:"success",dataUpdatedAt:n==null?void 0:n.updatedAt,manual:n==null?void 0:n.manual}),r}setState(t,n){ie(this,en,In).call(this,{type:"setState",state:t,setStateOptions:n})}cancel(t){var r,o;const n=(r=P(this,ze))==null?void 0:r.promise;return(o=P(this,ze))==null||o.cancel(t),n?n.then(at).catch(at):Prom
68ise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(P(this,to))}isActive(){return this.observers.some(t=>zt(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===cm||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>jr(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!hx(this.state.dataUpdatedAt,t)}onFocus(){var n;const t=this.observers.find(r=>r.shouldFetchOnWindowFocus());t==null||t.refetch({cancelRefetch:!1}),(n=P(this,ze))==null||n.continue()}onOnline(){var n;const t=this.observers.find(r=>r.shouldFetchOnReconnect());t==null||t.refetch({cancelRefetch:!1}),(n=P(this,ze))==null||n.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),P(this,$t).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(n=>n!==t),this.observers.length||(P(this,ze)&&(P(this,ro)?P(this,ze).cancel({revert:!0}):P(this,ze).cancelRetry()),this.scheduleGc()),P(this,$t).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||ie(this,en,In).call(this,{type:"invalidate"})}async fetch(t,n){var l,c,d,f,p,h,g,v,b,y,w,x;if(this.state.fetchStatus!=="idle"&&((l=P(this,ze))==null?void 0:l.status())!=="rejected"){if(this.state.data!==void 0&&(n!=null&&n.cancelRefetch))this.cancel({silent:!0});else if(P(this,ze))return P(this,ze).continueRetry(),P(this,ze).promise}if(t&&this.setOptions(t),!this.options.queryFn){const S=this.observers.find(C=>C.options.queryFn);S&&this.setOptions(S.options)}const r=new AbortController,o=S=>{Object.defineProperty(S,"signal",{enumerable:!0,get:()=>(V(this,ro,!0),r.signal)})},i=()=>{const S=vx(this.options,n),k=(()=>{const E={client:P(this,no),queryKey:this.queryKey,meta:this.meta};return o(E),E})();return V(this,ro,!1),this.options.persister?this.options.persister(S,k,this):S(k)},a=(()=>{const S={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:P(this,no),state:this.state,fetchFn:i};return o(S),S})();(c=this.options.behavior)==null||c.onFetch(a,this),V(this,mi,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((d=a.fetchOptions)==null?void 0:d.meta))&&ie(this,en,In).call(this,{type:"fetch",meta:(f=a.fetchOptions)==null?void 0:f.meta}),V(this,ze,wx({initialPromise:n==null?void 0:n.initialPromise,fn:a.fetchFn,onCancel:S=>{S instanceof Cf&&S.revert&&this.setState({...P(this,mi),fetchStatus:"idle"}),r.abort()},onFail:(S,C)=>{ie(this,en,In).call(this,{type:"failed",failureCount:S,error:C})},onPause:()=>{ie(this,en,In).call(this,{type:"pause"})},onContinue:()=>{ie(this,en,In).call(this,{type:"continue"})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0}));try{const S=await P(this,ze).start();if(S===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(S),(h=(p=P(this,$t).config).onSuccess)==null||h.call(p,S,this),(v=(g=P(this,$t).config).onSettled)==null||v.call(g,S,this.state.error,this),S}catch(S){if(S instanceof Cf){if(S.silent)return P(this,ze).promise;if(S.revert){if(this.state.data===void 0)throw S;return this.state.data}}throw ie(this,en,In).call(this,{type:"error",error:S}),(y=(b=P(this,$t).config).onError)==null||y.call(b,S,this),(x=(w=P(this,$t).config).onSettled)==null||x.call(w,this.state.data,S,this),S}finally{this.scheduleGc()}}},to=new WeakMap,mi=new WeakMap,$t=new WeakMap,no=new WeakMap,ze=new WeakMap,ca=new WeakMap,ro=new WeakMap,en=new WeakSet,In=function(t){const n=r=>{switch(t.type){case"failed":return{...r,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...Sx(r.data,this.options),fetchMeta:t.meta??null};case"success":const o={...r,...Fg(t.data,t.dataUpdatedAt),dataUpdateCount:r.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return V(this,mi,t.manual?o:void 0),o;case"error":const i=t.error;
vendor: 4,197 bytes, line 68
68return{...r,error:i,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:i,fetchStatus:"idle",status:"error"};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...t.state}}};this.state=n(this.state),Fe.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),P(this,$t).notify({query:this,type:"updated",action:t})})},Ly);function Sx(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:bx(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function Fg(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function Ug(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var ht,le,ua,ot,oo,hi,$n,hr,da,gi,vi,io,so,gr,yi,me,bs,Pf,Ef,kf,Tf,Af,Rf,_f,Cx,Iy,eA=(Iy=class extends zi{constructor(t,n){super();W(this,me);W(this,ht);W(this,le);W(this,ua);W(this,ot);W(this,oo);W(this,hi);W(this,$n);W(this,hr);W(this,da);W(this,gi);W(this,vi);W(this,io);W(this,so);W(this,gr);W(this,yi,new Set);this.options=n,V(this,ht,t),V(this,hr,null),V(this,$n,Sf()),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(P(this,le).addObserver(this),$g(P(this,le),this.options)?ie(this,me,bs).call(this):this.updateResult(),ie(this,me,Tf).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Df(P(this,le),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Df(P(this,le),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,ie(this,me,Af).call(this),ie(this,me,Rf).call(this),P(this,le).removeObserver(this)}setOptions(t){const n=this.options,r=P(this,le);if(this.options=P(this,ht).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof zt(this.options.enabled,P(this,le))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");ie(this,me,_f).call(this),P(this,le).setOptions(this.options),n._defaulted&&!uc(this.options,n)&&P(this,ht).getQueryCache().notify({type:"observerOptionsUpdated",query:P(this,le),observer:this});const o=this.hasListeners();o&&zg(P(this,le),r,this.options,n)&&ie(this,me,bs).call(this),this.updateResult(),o&&(P(this,le)!==r||zt(this.options.enabled,P(this,le))!==zt(n.enabled,P(this,le))||jr(this.options.staleTime,P(this,le))!==jr(n.staleTime,P(this,le)))&&ie(this,me,Pf).call(this);const i=ie(this,me,Ef).call(this);o&&(P(this,le)!==r||zt(this.options.enabled,P(this,le))!==zt(n.enabled,P(this,le))||i!==P(this,gr))&&ie(this,me,kf).call(this,i)}getOptimisticResult(t){const n=P(this,ht).getQueryCache().build(P(this,ht),t),r=this.createResult(n,t);return nA(this,r)&&(V(this,ot,r),V(this,hi,this.options),V(this,oo,P(this,le).state)),r}getCurrentResult(){return P(this,ot)}trackResult(t,n){return new Proxy(t,{get:(r,o)=>(this.trackProp(o),n==null||n(o),o==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&P(this,$n).status==="pending"&&P(this,$n).reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(r,o))})}trackProp(t){P(this,yi).add(t)}getCurrentQuery(){return P(this,le)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const n=P(this,ht).defaultQueryOptions(t),r=P(this,ht).getQueryCache().build(P(this,ht),n);return r.fetch().then(()=>this.createResult(r,n))}fetch(t){return ie(this,me,bs).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),P(this,ot)))}createResult(t,n){var j;const r=P(this,le),o=this.options,i=P(this,ot),s=P(this,oo),a=P(this,hi),c=t!==r?t.state:P(this,ua),{state:d}=t;let f={...d},p=!1,h;
68if(n._optimisticResults){const A=this.hasListeners(),L=!A&&$g(t,n),F=A&&zg(t,r,n,o);(L||F)&&(f={...f,...Sx(d.data,t.options)}),n._optimisticResults==="isRestoring"&&(f.fetchStatus="idle")}let{error:g,errorUpdatedAt:v,status:b}=f;h=f.data;let y=!1;if(n.placeholderData!==void 0&&h===void 0&&b==="pending"){let A;i!=null&&i.isPlaceholderData&&n.placeholderData===(a==null?void 0:a.placeholderData)?(A=i.data,y=!0):A=typeof n.placeholderData=="function"?n.placeholderData((j=P(this,vi))==null?void 0:j.state.data,P(this,vi)):n.placeholderData,A!==void 0&&(b="success",h=xf(i==null?void 0:i.data,A,n),p=!0)}if(n.select&&h!==void 0&&!y)if(i&&h===(s==null?void 0:s.data)&&n.select===P(this,da))h=P(this,gi);else try{V(this,da,n.select),h=n.select(h),h=xf(i==null?void 0:i.data,h,n),V(this,gi,h),V(this,hr,null)}catch(A){V(this,hr,A)}P(this,hr)&&(g=P(this,hr),h=P(this,gi),v=Date.now(),b="error");const w=f.fetchStatus==="fetching",x=b==="pending",S=b==="error",C=x&&w,k=h!==void 0,T={status:b,fetchStatus:f.fetchStatus,isPending:x,isSuccess:b==="success",isError:S,isInitialLoading:C,isLoading:C,data:h,dataUpdatedAt:f.dataUpdatedAt,error:g,errorUpdatedAt:v,failureCount:f.fetchFailureCount,failureReason:f.fetchFailureReason,errorUpdateCount:f.errorUpdateCount,isFetched:f.dataUpdateCount>0||f.errorUpdateCount>0,isFetchedAfterMount:f.dataUpdateCount>c.dataUpdateCount||f.errorUpdateCount>c.errorUpdateCount,isFetching:w,isRefetching:w&&!x,isLoadingError:S&&!k,isPaused:f.fetchStatus==="paused",isPlaceholderData:p,isRefetchError:S&&k,isStale:dm(t,n),refetch:this.refetch,promise:P(this,$n),isEnabled:zt(n.enabled,t)!==!1};if(this.options.experimental_prefetchInRender){const A=K=>{T.status==="error"?K.reject(T.error):T.data!==void 0&&K.resolve(T.data)},L=()=>{const K=V(this,$n,T.promise=Sf());A(K)},F=P(this,$n);switch(F.status){case"pending":t.queryHash===r.queryHash&&A(F);break;case"fulfilled":(T.status==="error"||T.data!==F.value)&&L();break;case"rejected":(T.status!=="error"||T.error!==F.reason)&&L();break}}return T}updateResult(){const t=P(this,ot),n=this.createResult(P(this,le),this.options);if(V(this,oo,P(this,le).state),V(this,hi,this.options),P(this,oo).data!==void 0&&V(this,vi,P(this,le)),uc(n,t))return;V(this,ot,n);const r=()=>{if(!t)return!0;const{notifyOnChangeProps:o}=this.options,i=typeof o=="function"?o():o;if(i==="all"||!i&&!P(this,yi).size)return!0;const s=new Set(i??P(this,yi));return this.options.throwOnError&&s.add("error"),Object.keys(P(this,ot)).some(a=>{const l=a;return P(this,ot)[l]!==t[l]&&s.has(l)})};ie(this,me,Cx).call(this,{listeners:r()})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&ie(this,me,Tf).call(this)}},ht=new WeakMap,le=new WeakMap,ua=new WeakMap,ot=new WeakMap,oo=new WeakMap,hi=new WeakMap,$n=new WeakMap,hr=new WeakMap,da=new WeakMap,gi=new WeakMap,vi=new WeakMap,io=new WeakMap,so=new WeakMap,gr=new WeakMap,yi=new WeakMap,me=new WeakSet,bs=function(t){ie(this,me,_f).call(this);let n=P(this,le).fetch(this.options,t);return t!=null&&t.throwOnError||(n=n.catch(at)),n},Pf=function(){ie(this,me,Af).call(this);const t=jr(this.options.staleTime,P(this,le));if(bo||P(this,ot).isStale||!bf(t))return;const r=hx(P(this,ot).dataUpdatedAt,t)+1;V(this,io,Jr.setTimeout(()=>{P(this,ot).isStale||this.updateResult()},r))},Ef=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(P(this,le)):this.options.refetchInterval)??!1},kf=function(t){ie(this,me,Rf).call(this),V(this,gr,t),!(bo||zt(this.options.enabled,P(this,le))===!1||!bf(P(this,gr))||P(this,gr)===0)&&V(this,so,Jr.setInterval(()=>{(this.options.refetchIntervalInBackground||um.isFocused())&&ie(this,me,bs).call(this)},P(this,gr)))},Tf=function(){ie(this,me,Pf).call(this),ie(this,me,kf).call(this,ie(this,me,Ef).call(this))},Af=function(){P(this,io)&&(Jr.clearTimeout(P(this,io)),V(this,io,void 0))},Rf=function(){P(this,so)&&(Jr.clearInterval(P(this,so)),V(this,so,void 0))},_f=function(){const t=P(this,ht).getQueryCache().build(P(this,ht),this.options);if(t===P(this,le))return;const n=P(this,le);V(this,le,t),V(this,ua,t.state),this.hasListeners()&&(n==null||n.removeObserver(this),t.addObserver(this))},Cx=function(t){Fe.batch(()=>
68{t.listeners&&this.listeners.forEach(n=>{n(P(this,ot))}),P(this,ht).getQueryCache().notify({query:P(this,le),type:"observerResultsUpdated"})})},Iy);function tA(e,t){return zt(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function $g(e,t){return tA(e,t)||e.state.data!==void 0&&Df(e,t,t.refetchOnMount)}function Df(e,t,n){if(zt(t.enabled,e)!==!1&&jr(t.staleTime,e)!=="static"){const r=typeof n=="function"?n(e):n;return r==="always"||r!==!1&&dm(e,t)}return!1}function zg(e,t,n,r){return(e!==t||zt(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&dm(e,n)}function dm(e,t){return zt(t.enabled,e)!==!1&&e.isStaleByTime(jr(t.staleTime,e))}function nA(e,t){return!uc(e.getCurrentResult(),t)}function Vg(e){return{onFetch:(t,n)=>{var d,f,p,h,g;const r=t.options,o=(p=(f=(d=t.fetchOptions)==null?void 0:d.meta)==null?void 0:f.fetchMore)==null?void 0:p.direction,i=((h=t.state.data)==null?void 0:h.pages)||[],s=((g=t.state.data)==null?void 0:g.pageParams)||[];let a={pages:[],pageParams:[]},l=0;const c=async()=>{let v=!1;const b=x=>{Object.defineProperty(x,"signal",{enumerable:!0,get:()=>(t.signal.aborted?v=!0:t.signal.addEventListener("abort",()=>{v=!0}),t.signal)})},y=vx(t.options,t.fetchOptions),w=async(x,S,C)=>{if(v)return Promise.reject();if(S==null&&x.pages.length)return Promise.resolve(x);const E=(()=>{const L={client:t.client,queryKey:t.queryKey,pageParam:S,direction:C?"backward":"forward",meta:t.options.meta};return b(L),L})(),T=await y(E),{maxPages:j}=t.options,A=C?GT:WT;return{pages:A(x.pages,T,j),pageParams:A(x.pageParams,S,j)}};if(o&&i.length){const x=o==="backward",S=x?rA:Hg,C={pages:i,pageParams:s},k=S(r,C);a=await w(C,k,x)}else{const x=e??i.length;do{const S=l===0?s[0]??r.initialPageParam:Hg(r,a);if(l>0&&S==null)break;a=await w(a,S),l++}while(l<x)}return a};t.options.persister?t.fetchFn=()=>{var v,b;return(b=(v=t.options).persister)==null?void 0:b.call(v,c,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n)}:t.fetchFn=c}}}function Hg(e,{pages:t,pageParams:n}){const r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function rA(e,{pages:t,pageParams:n}){var r;return t.length>0?(r=e.getPreviousPageParam)==null?void 0:r.call(e,t[0],t,n[0],n):void 0}var fa,bn,it,ao,wn,sr,Fy,oA=(Fy=class extends xx{constructor(t){super();W(this,wn);W(this,fa);W(this,bn);W(this,it);W(this,ao);V(this,fa,t.client),this.mutationId=t.mutationId,V(this,it,t.mutationCache),V(this,bn,[]),this.state=t.state||Px(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){P(this,bn).includes(t)||(P(this,bn).push(t),this.clearGcTimeout(),P(this,it).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){V(this,bn,P(this,bn).filter(n=>n!==t)),this.scheduleGc(),P(this,it).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){P(this,bn).length||(this.state.status==="pending"?this.scheduleGc():P(this,it).remove(this))}continue(){var t;return((t=P(this,ao))==null?void 0:t.continue())??this.execute(this.state.variables)}async execute(t){var s,a,l,c,d,f,p,h,g,v,b,y,w,x,S,C,k,E,T,j;const n=()=>{ie(this,wn,sr).call(this,{type:"continue"})},r={client:P(this,fa),meta:this.options.meta,mutationKey:this.options.mutationKey};V(this,ao,wx({fn:()=>this.options.mutationFn?this.options.mutationFn(t,r):Promise.reject(new Error("No mutationFn found")),onFail:(A,L)=>{ie(this,wn,sr).call(this,{type:"failed",failureCount:A,error:L})},onPause:()=>{ie(this,wn,sr).call(this,{type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>P(this,it).canRun(this)}));const o=this.state.status==="pending",i=!P(this,ao).canStart();try{if(o)n();else{ie(this,wn,sr).call(this,{type:"pending",variables:t,isPaused:i}),await((a=(s=P(this,it).config).onMutate)==null?void 0:a.call(s,t,this,r));const L=await((c=(l=this.options).onMutate)==null?void 0:c.call(l,t,r));L!==this.state.context&&ie(this,wn,sr).call(this,{type:"pending",context:L,variables:t,isPaused:i})}const A=await P(this,ao).start();return await((f=(d=P(this,it).config).onSuccess)==null?void 0:f.call(d,A,t,this.state.context,this,r)),await((h=(p=this.options).onSuccess)==null?void 0:h.call(p,A,t,this.state.context,r)),await((v=(g=P(this,it).config).onSettled)==null?void 0:v.call(g,A,null,this.state.variables,this.state.context,this,r)),await((y=(b=this.options).onSettled)==null?void 0:y.call(b,A,null,t,this.state.context,r)),ie(this,wn,sr).call(this,{type:"success",data:A}),A}catch(A){try{throw await((x=(w=P(this,it).config).onError)==null?void 0:x.call(w,A,t,this.state.context,this,r)),await((C=(S=this.options).onError)==null?void 0:C.call(S,A,t,this.state.context,r)),await((E=(k=P(this,it).config).onSettled)==null?void 0:E.
68call(k,void 0,A,this.state.variables,this.state.context,this,r)),await((j=(T=this.options).onSettled)==null?void 0:j.call(T,void 0,A,t,this.state.context,r)),A}finally{ie(this,wn,sr).call(this,{type:"error",error:A})}}finally{P(this,it).runNext(this)}}},fa=new WeakMap,bn=new WeakMap,it=new WeakMap,ao=new WeakMap,wn=new WeakSet,sr=function(t){const n=r=>{switch(t.type){case"failed":return{...r,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...r,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:t.error,failureCount:r.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),Fe.batch(()=>{P(this,bn).forEach(r=>{r.onMutationUpdate(t)}),P(this,it).notify({mutation:this,type:"updated",action:t})})},Fy);function Px(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var zn,tn,pa,Uy,iA=(Uy=class extends zi{constructor(t={}){super();W(this,zn);W(this,tn);W(this,pa);this.config=t,V(this,zn,new Set),V(this,tn,new Map),V(this,pa,0)}build(t,n,r){const o=new oA({client:t,mutationCache:this,mutationId:++Na(this,pa)._,options:t.defaultMutationOptions(n),state:r});return this.add(o),o}add(t){P(this,zn).add(t);const n=Ja(t);if(typeof n=="string"){const r=P(this,tn).get(n);r?r.push(t):P(this,tn).set(n,[t])}this.notify({type:"added",mutation:t})}remove(t){if(P(this,zn).delete(t)){const n=Ja(t);if(typeof n=="string"){const r=P(this,tn).get(n);if(r)if(r.length>1){const o=r.indexOf(t);o!==-1&&r.splice(o,1)}else r[0]===t&&P(this,tn).delete(n)}}this.notify({type:"removed",mutation:t})}canRun(t){const n=Ja(t);if(typeof n=="string"){const r=P(this,tn).get(n),o=r==null?void 0:r.find(i=>i.state.status==="pending");return!o||o===t}else return!0}runNext(t){var r;const n=Ja(t);if(typeof n=="string"){const o=(r=P(this,tn).get(n))==null?void 0:r.find(i=>i!==t&&i.state.isPaused);return(o==null?void 0:o.continue())??Promise.resolve()}else return Promise.resolve()}clear(){Fe.batch(()=>{P(this,zn).forEach(t=>{this.notify({type:"removed",mutation:t})}),P(this,zn).clear(),P(this,tn).clear()})}getAll(){return Array.from(P(this,zn))}find(t){const n={exact:!0,...t};return this.getAll().find(r=>Mg(n,r))}findAll(t={}){return this.getAll().filter(n=>Mg(t,n))}notify(t){Fe.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){const t=this.getAll().filter(n=>n.state.isPaused);return Fe.batch(()=>Promise.all(t.map(n=>n.continue().catch(at))))}},zn=new WeakMap,tn=new WeakMap,pa=new WeakMap,Uy);function Ja(e){var t;return(t=e.options.scope)==null?void 0:t.id}var Vn,vr,gt,Hn,Kn,Cl,jf,$y,sA=($y=class extends zi{constructor(n,r){super();W(this,Kn);W(this,Vn);W(this,vr);W(this,gt);W(this,Hn);V(this,Vn,n),this.setOptions(r),this.bindMethods(),ie(this,Kn,Cl).call(this)}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(n){var o;const r=this.options;this.options=P(this,Vn).defaultMutationOptions(n),uc(this.options,r)||P(this,Vn).getMutationCache().notify({type:"observerOptionsUpdated",mutation:P(this,gt),observer:this}),r!=null&&r.mutationKey&&this.options.mutationKey&&wo(r.mutationKey)!==wo(this.options.mutationKey)?this.reset():((o=P(this,gt))==null?void 0:o.state.status)==="pending"&&P(this,gt).setOptions(this.options)}onUnsubscribe(){var n;this.hasListeners()||(n=P(this,gt))==null||n.removeObserver(this)}onMutationUpdate(n){ie(this,Kn,Cl).call(this),ie(this,Kn,jf).call(this,n)}getCurrentResult(){return P(this,vr)}reset(){var n;(n=P(this,gt))==null||n.removeObserver(this),V(this,gt,void 0),ie(this,Kn,Cl).call(this),ie(this,Kn,jf).call(this)}mutate(n,r){var o;return V(this,Hn,r),(o=P(this,gt))==null||o.removeObserver(this),V(this,gt,P(this,Vn).getMutationCache().build(P(this,Vn),this.options)),P(this,gt).addObserver(this),P(this,gt).execute(n)}},Vn=new WeakMap,vr=new WeakMap,gt=new WeakMap,Hn=new WeakMap,Kn=new WeakSet,Cl=function(){var r;const n=((r=P(this,gt))==null?void 0:r.state)??Px();V(this,vr,{...n,isPending:n.status==="pending",isSuccess:n.status==="success",isError:n.status==="error",isIdle:n.status==="idle",mutate:this.mutate,reset:this.reset})},jf=function(n){Fe.batch(()=>{var r,o,i,s,a,l,c,d;if(P(this,Hn)&&this.hasListeners()){const f=P(this,vr).variables,p=P(this,vr).context,h={client:P(this,Vn),meta:this.options.meta,mutationKey:this.options.mutationKey};(n==null?void 0:n.type)==="success"?((o=(r=P(this,Hn)).onSuccess)==null||o.call(r,n.data,f,p,h),(s=(i=P(this,Hn)).onSettled)==null||s.call(i,n.data,null,f,p,h)):(n==null?void 0:n.type)==="error"&&((l=(a=P(this,Hn)).onError)==null||l.call(a,n.error,f,p,h),(d=(c=P(this,Hn)).onSettled)==null||d.call(c,void 0,n.error,f,p,h))}
vendor: 6,176 bytes, line 68
68this.listeners.forEach(f=>{f(P(this,vr))})})},$y),xn,zy,aA=(zy=class extends zi{constructor(t={}){super();W(this,xn);this.config=t,V(this,xn,new Map)}build(t,n,r){const o=n.queryKey,i=n.queryHash??lm(o,n);let s=this.get(i);return s||(s=new ZT({client:t,queryKey:o,queryHash:i,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(o)}),this.add(s)),s}add(t){P(this,xn).has(t.queryHash)||(P(this,xn).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const n=P(this,xn).get(t.queryHash);n&&(t.destroy(),n===t&&P(this,xn).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){Fe.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return P(this,xn).get(t)}getAll(){return[...P(this,xn).values()]}find(t){const n={exact:!0,...t};return this.getAll().find(r=>Og(n,r))}findAll(t={}){const n=this.getAll();return Object.keys(t).length>0?n.filter(r=>Og(t,r)):n}notify(t){Fe.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){Fe.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){Fe.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},xn=new WeakMap,zy),Ae,yr,br,bi,wi,wr,xi,Si,Vy,lA=(Vy=class{constructor(e={}){W(this,Ae);W(this,yr);W(this,br);W(this,bi);W(this,wi);W(this,wr);W(this,xi);W(this,Si);V(this,Ae,e.queryCache||new aA),V(this,yr,e.mutationCache||new iA),V(this,br,e.defaultOptions||{}),V(this,bi,new Map),V(this,wi,new Map),V(this,wr,0)}mount(){Na(this,wr)._++,P(this,wr)===1&&(V(this,xi,um.subscribe(async e=>{e&&(await this.resumePausedMutations(),P(this,Ae).onFocus())})),V(this,Si,dc.subscribe(async e=>{e&&(await this.resumePausedMutations(),P(this,Ae).onOnline())})))}unmount(){var e,t;Na(this,wr)._--,P(this,wr)===0&&((e=P(this,xi))==null||e.call(this),V(this,xi,void 0),(t=P(this,Si))==null||t.call(this),V(this,Si,void 0))}isFetching(e){return P(this,Ae).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return P(this,yr).findAll({...e,status:"pending"}).length}getQueryData(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=P(this,Ae).get(t.queryHash))==null?void 0:n.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),n=P(this,Ae).build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(jr(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return P(this,Ae).findAll(e).map(({queryKey:t,state:n})=>{const r=n.data;return[t,r]})}setQueryData(e,t,n){const r=this.defaultQueryOptions({queryKey:e}),o=P(this,Ae).get(r.queryHash),i=o==null?void 0:o.state.data,s=HT(t,i);if(s!==void 0)return P(this,Ae).build(this,r).setData(s,{...n,manual:!0})}setQueriesData(e,t,n){return Fe.batch(()=>P(this,Ae).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=P(this,Ae).get(t.queryHash))==null?void 0:n.state}removeQueries(e){const t=P(this,Ae);Fe.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=P(this,Ae);return Fe.batch(()=>(n.findAll(e).forEach(r=>{r.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){const n={revert:!0,...t},r=Fe.batch(()=>P(this,Ae).findAll(e).map(o=>o.cancel(n)));return Promise.all(r).then(at).catch(at)}invalidateQueries(e,t={}){return Fe.batch(()=>(P(this,Ae).findAll(e).forEach(n=>{n.invalidate()}),(e==null?void 0:e.refetchType)==="none"?Promise.resolve():this.refetchQueries({...e,type:(e==null?void 0:e.refetchType)??(e==null?void 0:e.type)??"active"},t)))}refetchQueries(e,t={}){const n={...t,cancelRefetch:t.cancelRefetch??!0},r=Fe.batch(()=>P(this,Ae).findAll(e).filter(o=>!o.isDisabled()&&!o.isStatic()).map(o=>{let i=o.fetch(void 0,n);return n.throwOnError||(i=i.catch(at)),o.state.fetchStatus==="paused"?Promise.resolve():i}));return Promise.all(r).then(at)}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=P(this,Ae).build(this,t);return n.isStaleByTime(jr(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(at).catch(at)}fetchInfiniteQuery(e){return e.behavior=Vg(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(at).catch(at)}ensureInfiniteQueryData(e){return e.behavior=Vg(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return dc.isOnline()?P(this,yr).resumePausedMutations():Promise.resolve()}getQueryCache(){return P(this,Ae)}getMutationCache(){return P(this,yr)}getDefaultOptions(){return P(this,br)}setDefaultOptions(e){V(this,br,e)}setQueryDefaults(e,t){P(this,bi).set(wo(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...P(this,bi).values()],n={};return t.forEach(r=>{Xs(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){P(this,wi).set(wo(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...P(this,wi).values()],n={};return t.forEach(r=>{Xs(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...P(this,br).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=lm(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===cm&&(t.enabled=!1),t}defaultMutationOptions(e){return e!=null&&e._defaulted?e:{...P(this,br).mutations,...(e==null?void 0:e.mutationKey)&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){P(this,Ae).clear(),P(this,yr).clear()}},Ae=new WeakMap,yr=new WeakMap,br=new WeakMap,bi=new WeakMap,wi=new WeakMap,wr=new WeakMap,xi=new WeakMap,Si=new WeakMap,Vy),Ex=m.createContext(void 0),ue=e=>{const t=m.useContext(Ex);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},cA=({client:e,children:t})=>(m.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),u.jsx(Ex.Provider,{value:e,children:t})),kx=m.createContext(!1),uA=()=>m.useContext(kx);kx.Provider;function dA(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}
68var fA=m.createContext(dA()),pA=()=>m.useContext(fA),mA=(e,t)=>{(e.suspense||e.throwOnError||e.experimental_prefetchInRender)&&(t.isReset()||(e.retryOnMount=!1))},hA=e=>{m.useEffect(()=>{e.clearReset()},[e])},gA=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:o})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(o&&e.data===void 0||yx(n,[e.error,r])),vA=e=>{if(e.suspense){const n=o=>o==="static"?o:Math.max(o??1e3,1e3),r=e.staleTime;e.staleTime=typeof r=="function"?(...o)=>n(r(...o)):n(r),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},yA=(e,t)=>e.isLoading&&e.isFetching&&!t,bA=(e,t)=>(e==null?void 0:e.suspense)&&t.isPending,qg=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function wA(e,t,n){var f,p,h,g,v;const r=uA(),o=pA(),i=ue(),s=i.defaultQueryOptions(e);(p=(f=i.getDefaultOptions().queries)==null?void 0:f._experimental_beforeQuery)==null||p.call(f,s),s._optimisticResults=r?"isRestoring":"optimistic",vA(s),mA(s,o),hA(o);const a=!i.getQueryCache().get(s.queryHash),[l]=m.useState(()=>new t(i,s)),c=l.getOptimisticResult(s),d=!r&&e.subscribed!==!1;if(m.useSyncExternalStore(m.useCallback(b=>{const y=d?l.subscribe(Fe.batchCalls(b)):at;return l.updateResult(),y},[l,d]),()=>l.getCurrentResult(),()=>l.getCurrentResult()),m.useEffect(()=>{l.setOptions(s)},[s,l]),bA(s,c))throw qg(s,l,o);if(gA({result:c,errorResetBoundary:o,throwOnError:s.throwOnError,query:i.getQueryCache().get(s.queryHash),suspense:s.suspense}))throw c.error;if((g=(h=i.getDefaultOptions().queries)==null?void 0:h._experimental_afterQuery)==null||g.call(h,s,c),s.experimental_prefetchInRender&&!bo&&yA(c,r)){const b=a?qg(s,l,o):(v=i.getQueryCache().get(s.queryHash))==null?void 0:v.promise;b==null||b.catch(at).finally(()=>{l.updateResult()})}return s.notifyOnChangeProps?c:l.trackResult(c)}function $e(e,t){return wA(e,eA)}function ae(e,t){const n=ue(),[r]=m.useState(()=>new sA(n,e));m.useEffect(()=>{r.setOptions(e)},[r,e]);const o=m.useSyncExternalStore(m.useCallback(s=>r.subscribe(Fe.batchCalls(s)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),i=m.useCallback((s,a)=>{r.mutate(s,a).catch(at)},[r]);if(o.error&&yx(r.options.throwOnError,[o.error]))throw o.error;return{...o,mutate:i,mutateAsync:o.mutate}}var xA=typeof Element<"u",SA=typeof Map=="function",CA=typeof Set=="function",PA=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function Pl(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var n,r,o;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!Pl(e[r],t[r]))return!1;return!0}var i;if(SA&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(i=e.entries();!(r=i.next()).done;)if(!t.has(r.value[0]))return!1;for(i=e.entries();!(r=i.next()).done;)if(!Pl(r.value[1],t.get(r.value[0])))return!1;return!0}if(CA&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(i=e.entries();!(r=i.next()).done;)if(!t.has(r.value[0]))return!1;return!0}if(PA&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&typeof e.valueOf=="function"&&typeof t.valueOf=="function")return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&typeof e.toString=="function"&&typeof t.toString=="function")return e.toString()===t.toString();if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,o[r]))return!1;if(xA&&e instanceof Element)return!1;for(r=n;r--!==0;)if(!((o[r]==="_owner"||o[r]==="__v"||o[r]==="__o")&&e.$$typeof)&&!Pl(e[o[r]],t[o[r]]))return!1;return!0}return e!==e&&t!==t}var EA=function(t,n){try{return Pl(t,n)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}};const kA=Eo(EA);var TA=function(e,t,n,r,o,i,s,a){if(!e){var l;if(t===void 0)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,s,a],d=0;l=new Error(t.replace(/%s/g,function(){return c[d++]})),l.name="Invariant Violation"}throw l.framesToPop=1,l}},AA=TA;const Bg=Eo(AA);var RA=function(t,n,r,o){var i=r?r.call(o,t,n):void 0;if(i!==void 0)return!!i;if(t===n)return!0;
68if(typeof t!="object"||!t||typeof n!="object"||!n)return!1;var s=Object.keys(t),a=Object.keys(n);if(s.length!==a.length)return!1;for(var l=Object.prototype.hasOwnProperty.bind(n),c=0;c<s.length;c++){var d=s[c];if(!l(d))return!1;var f=t[d],p=n[d];if(i=r?r.call(o,f,p,d):void 0,i===!1||i===void 0&&f!==p)return!1}return!0};const _A=Eo(RA);var Tx=(e=>(e.BASE="base",e.BODY="body",e.HEAD="head",e.HTML="html",e.LINK="link",e.META="meta",e.NOSCRIPT="noscript",e.SCRIPT="script",e.STYLE="style",e.TITLE="title",e.FRAGMENT="Symbol(react.fragment)",e))(Tx||{}),Yu={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]},meta:{charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]}},Wg=Object.values(Tx),fm={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},DA=Object.entries(fm).reduce((e,[t,n])=>(e[n]=t,e),{}),an="data-rh",ii={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate",PRIORITIZE_SEO_TAGS:"prioritizeSeoTags"},si=(e,t)=>{for(let n=e.length-1;n>=0;n-=1){const r=e[n];if(Object.prototype.hasOwnProperty.call(r,t))return r[t]}return null},jA=e=>{let t=si(e,"title");const n=si(e,ii.TITLE_TEMPLATE);if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,()=>t);const r=si(e,ii.DEFAULT_TITLE);return t||r||void 0},NA=e=>si(e,ii.ON_CHANGE_CLIENT_STATE)||(()=>{}),Ju=(e,t)=>t.filter(n=>typeof n[e]<"u").map(n=>n[e]).reduce((n,r)=>({...n,...r}),{}),OA=(e,t)=>t.filter(n=>typeof n.base<"u").map(n=>n.base).reverse().reduce((n,r)=>{if(!n.length){const o=Object.keys(r);for(let i=0;i<o.length;i+=1){const a=o[i].toLowerCase();if(e.indexOf(a)!==-1&&r[a])return n.concat(r)}}return n},[]),MA=e=>console&&typeof console.warn=="function"&&console.warn(e),ss=(e,t,n)=>{const r={};return n.filter(o=>Array.isArray(o[e])?!0:(typeof o[e]<"u"&&MA(`Helmet: ${e} should be of type "Array". Instead found type "${typeof o[e]}"`),!1)).map(o=>o[e]).reverse().reduce((o,i)=>{const s={};i.filter(l=>{let c;const d=Object.keys(l);for(let p=0;p<d.length;p+=1){const h=d[p],g=h.toLowerCase();t.indexOf(g)!==-1&&!(c==="rel"&&l[c].toLowerCase()==="canonical")&&!(g==="rel"&&l[g].toLowerCase()==="stylesheet")&&(c=g),t.indexOf(h)!==-1&&(h==="innerHTML"||h==="cssText"||h==="itemprop")&&(c=h)}if(!c||!l[c])return!1;const f=l[c].toLowerCase();return r[c]||(r[c]={}),s[c]||(s[c]={}),r[c][f]?!1:(s[c][f]=!0,!0)}).reverse().forEach(l=>o.push(l));const a=Object.keys(s);for(let l=0;l<a.length;l+=1){const c=a[l],d={...r[c],...s[c]};r[c]=d}return o},[]).reverse()},LA=(e,t)=>{if(Array.isArray(e)&&e.length){for(let n=0;n<e.length;n+=1)if(e[n][t])return!0}return!1},IA=e=>({baseTag:OA(["href"],e),bodyAttributes:Ju("bodyAttributes",e),defer:si(e,ii.DEFER),encode:si(e,ii.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:Ju("htmlAttributes",e),linkTags:ss("link",["rel","href"],e),metaTags:ss("meta",["name","charset","http-equiv","property","itemprop"],e),noscriptTags:ss("noscript",["innerHTML"],e),onChangeClientState:NA(e),scriptTags:ss("script",["src","innerHTML"],e),styleTags:ss("style",["cssText"],e),title:jA(e),titleAttributes:Ju("titleAttributes",e),prioritizeSeoTags:LA(e,ii.PRIORITIZE_SEO_TAGS)}),Ax=e=>Array.isArray(e)?e.join(""):e,FA=(e,t)=>{const n=Object.keys(e);for(let r=0;r<n.length;r+=1)if(t[n[r]]&&t[n[r]].includes(e[n[r]]))return!0;return!1},Xu=(e,t)=>Array.isArray(e)?e.reduce((n,r)=>(FA(r,t)?n.priority.push(r):n.default.push(r),n),{priority:[],default:[]}):{default:e,priority:[]},Gg=(e,t)=>({...e,[t]:void 0}),UA=["noscript","script","style"],Nf=(e,t=!0)=>t===!1?String(e):String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;"),Rx=e=>Object.keys(e).reduce((t,n)=>{const r=typeof e[n]<"u"?`${n}="${e[n]}"`:`${n}`;return t?`${t} ${r}`:r},""),$A=(e,t,n,r)=>{const o=Rx(n),i=Ax(t);return o?`<${e} ${an}="true" ${o}>${Nf(i,r)}</${e}>`:`<${e} ${an}="true">${Nf(i,r)}</${e}>`},zA=(e,t,n=!0)=>t.reduce((r,o)=>{const i=o,s=Object.keys(i).filter(c=>!(c==="innerHTML"||c==="cssText")).reduce((c,d)=>{const f=typeof i[d]>"u"?d:`${d}="${Nf(i[d],n)}"`;return c?`${c} ${f}`:f},""),a=i.innerHTML||i.cssText||"",l=UA.indexOf(e)===-1;return`${r}<${e} ${an}="true" ${s}${l?"/>":`>${a}</${e}>`}`},""),_x=(e,t={})=>Object.keys(e).reduce((n,r)=>{const o=fm[r];return n[o||r]=e[r],n},t),VA=(e,t,n)=>{const r={key:t,[an]:!0},o=_x(n,r);return[Ce.createElement("title",o,t)]},El=(e,t)=>t.map((n,r)=>{const o={key:r,[an]:!0};
68return Object.keys(n).forEach(i=>{const a=fm[i]||i;if(a==="innerHTML"||a==="cssText"){const l=n.innerHTML||n.cssText;o.dangerouslySetInnerHTML={__html:l}}else o[a]=n[i]}),Ce.createElement(e,o)}),Ut=(e,t,n=!0)=>{switch(e){case"title":return{toComponent:()=>VA(e,t.title,t.titleAttributes),toString:()=>$A(e,t.title,t.titleAttributes,n)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>_x(t),toString:()=>Rx(t)};default:return{toComponent:()=>El(e,t),toString:()=>zA(e,t,n)}}},HA=({metaTags:e,linkTags:t,scriptTags:n,encode:r})=>{const o=Xu(e,Yu.meta),i=Xu(t,Yu.link),s=Xu(n,Yu.script);return{priorityMethods:{toComponent:()=>[...El("meta",o.priority),...El("link",i.priority),...El("script",s.priority)],toString:()=>`${Ut("meta",o.priority,r)} ${Ut("link",i.priority,r)} ${Ut("script",s.priority,r)}`},metaTags:o.default,linkTags:i.default,scriptTags:s.default}},qA=e=>{const{baseTag:t,bodyAttributes:n,encode:r=!0,htmlAttributes:o,noscriptTags:i,styleTags:s,title:a="",titleAttributes:l,prioritizeSeoTags:c}=e;let{linkTags:d,metaTags:f,scriptTags:p}=e,h={toComponent:()=>{},toString:()=>""};return c&&({priorityMethods:h,linkTags:d,metaTags:f,scriptTags:p}=HA(e)),{priority:h,base:Ut("base",t,r),bodyAttributes:Ut("bodyAttributes",n,r),htmlAttributes:Ut("htmlAttributes",o,r),link:Ut("link",d,r),meta:Ut("meta",f,r),noscript:Ut("noscript",i,r),script:Ut("script",p,r),style:Ut("style",s,r),title:Ut("title",{title:a,titleAttributes:l},r)}},Of=qA,Xa=[],Dx=!!(typeof window<"u"&&window.document&&window.document.createElement),Mf=class{constructor(e,t){On(this,"instances",[]);On(this,"canUseDOM",Dx);On(this,"context");On(this,"value",{setHelmet:e=>{this.context.helmet=e},helmetInstances:{get:()=>this.canUseDOM?Xa:this.instances,add:e=>{(this.canUseDOM?Xa:this.instances).push(e)},remove:e=>{const t=(this.canUseDOM?Xa:this.instances).indexOf(e);(this.canUseDOM?Xa:this.instances).splice(t,1)}}});this.context=e,this.canUseDOM=t||!1,t||(e.helmet=Of({baseTag:[],bodyAttributes:{},htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},BA={},jx=Ce.createContext(BA),lo,Nx=(lo=class extends m.Component{constructor(n){super(n);On(this,"helmetData");this.helmetData=new Mf(this.props.context||{},lo.canUseDOM)}render(){return Ce.createElement(jx.Provider,{value:this.helmetData.value},this.props.children)}},On(lo,"canUseDOM",Dx),lo),No=(e,t)=>{const n=document.head||document.querySelector("head"),r=n.querySelectorAll(`${e}[${an}]`),o=[].slice.call(r),i=[];let s;return t&&t.length&&t.forEach(a=>{const l=document.createElement(e);for(const c in a)if(Object.prototype.hasOwnProperty.call(a,c))if(c==="innerHTML")l.innerHTML=a.innerHTML;else if(c==="cssText")l.styleSheet?l.styleSheet.cssText=a.cssText:l.appendChild(document.createTextNode(a.cssText));else{const d=c,f=typeof a[d]>"u"?"":a[d];l.setAttribute(c,f)}l.setAttribute(an,"true"),o.some((c,d)=>(s=d,l.isEqualNode(c)))?o.splice(s,1):i.push(l)}),o.forEach(a=>{var l;return(l=a.parentNode)==null?void 0:l.removeChild(a)}
68),i.forEach(a=>n.appendChild(a)),{oldTags:o,newTags:i}},Lf=(e,t)=>{const n=document.getElementsByTagName(e)[0];if(!n)return;const r=n.getAttribute(an),o=r?r.split(","):[],i=[...o],s=Object.keys(t);for(const a of s){const l=t[a]||"";n.getAttribute(a)!==l&&n.setAttribute(a,l),o.indexOf(a)===-1&&o.push(a);const c=i.indexOf(a);c!==-1&&i.splice(c,1)}for(let a=i.length-1;a>=0;a-=1)n.removeAttribute(i[a]);o.length===i.length?n.removeAttribute(an):n.getAttribute(an)!==s.join(",")&&n.setAttribute(an,s.join(","))},WA=(e,t)=>{typeof e<"u"&&document.title!==e&&(document.title=Ax(e)),Lf("title",t)},Kg=(e,t)=>{const{baseTag:n,bodyAttributes:r,htmlAttributes:o,linkTags:i,metaTags:s,noscriptTags:a,onChangeClientState:l,scriptTags:c,styleTags:d,title:f,titleAttributes:p}=e;Lf("body",r),Lf("html",o),WA(f,p);const h={baseTag:No("base",n),linkTags:No("link",i),metaTags:No("meta",s),noscriptTags:No("noscript",a),scriptTags:No("script",c),styleTags:No("style",d)},g={},v={};Object.keys(h).forEach(b=>{const{newTags:y,oldTags:w}=h[b];y.length&&(g[b]=y),w.length&&(v[b]=h[b].oldTags)}),t&&t(),l(e,g,v)},as=null,GA=e=>{as&&cancelAnimationFrame(as),e.defer?as=requestAnimationFrame(()=>{Kg(e,()=>{as=null})}):(Kg(e),as=null)},KA=GA,Qg=class extends m.Component{constructor(){super(...arguments);On(this,"rendered",!1)}shouldComponentUpdate(t){return!_A(t,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:t}=this.props.context;t.remove(this),this.emitChange()}emitChange(){const{helmetInstances:t,setHelmet:n}=this.props.context;let r=null;const o=IA(t.get().map(i=>{const s={...i.props};return delete s.context,s}));Nx.canUseDOM?KA(o):Of&&(r=Of(o)),n(r)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:t}=this.props.context;t.add(this),this.emitChange()}render(){return this.init(),null}},Cd,hV=(Cd=class extends m.Component{shouldComponentUpdate(e){return!kA(Gg(this.props,"helmetData"),Gg(e,"helmetData"))}mapNestedChildrenToProps(e,t){if(!t)return null;switch(e.type){case"script":case"noscript":return{innerHTML:t};case"style":return{cssText:t};default:throw new Error(`<${e.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`)}}flattenArrayTypeChildren(e,t,n,r){return{...t,[e.type]:[...t[e.type]||[],{...n,...this.mapNestedChildrenToProps(e,r)}]}}mapObjectTypeChildren(e,t,n,r){switch(e.type){case"title":return{...t,[e.type]:r,titleAttributes:{...n}};case"body":return{...t,bodyAttributes:{...n}};case"html":return{...t,htmlAttributes:{...n}};default:return{...t,[e.type]:{...n}}}}mapArrayTypeChildrenToProps(e,t){let n={...t};return Object.keys(e).forEach(r=>{n={...n,[r]:e[r]}}),n}warnOnInvalidChildren(e,t){return Bg(Wg.some(n=>e.type===n),typeof e.type=="function"?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":`Only elements types ${Wg.join(", ")} are allowed. Helmet does not support rendering <${e.type}> elements. Refer to our API for more information.`),Bg(!t||typeof t=="string"||Array.isArray(t)&&!t.some(n=>typeof n!="string"),`Helmet expects a string as a child of <${e.type}>. Did you forget to wrap your children in braces? ( <${e.type}>{\`\`}</${e.type}> ) Refer to our API for more information.`),!0}mapChildrenToProps(e,t){let n={};return Ce.Children.forEach(e,r=>{if(!r||!r.props)return;const{children:o,...i}=r.props,s=Object.keys(i).reduce((l,c)=>(l[DA[c]||c]=i[c],l),{});let{type:a}=r;
68switch(typeof a=="symbol"?a=a.toString():this.warnOnInvalidChildren(r,o),a){case"Symbol(react.fragment)":t=this.mapChildrenToProps(o,t);break;case"link":case"meta":case"noscript":case"script":case"style":n=this.flattenArrayTypeChildren(r,n,s,o);break;default:t=this.mapObjectTypeChildren(r,t,s,o);break}}),this.mapArrayTypeChildrenToProps(n,t)}render(){const{children:e,...t}=this.props;let n={...t},{helmetData:r}=t;if(e&&(n=this.mapChildrenToProps(e,n)),r&&!(r instanceof Mf)){const o=r;r=new Mf(o.context,!0),delete n.helmetData}return r?Ce.createElement(Qg,{...n,context:r.value}):Ce.createElement(jx.Consumer,null,o=>Ce.createElement(Qg,{...n,context:o}))}},On(Cd,"defaultProps",{defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1}),Cd),Ox={exports:{}},QA="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",YA=QA,JA=YA;function Mx(){}function Lx(){}Lx.resetWarningCache=Mx;var XA=function(){function e(r,o,i,s,a,l){if(l!==JA){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:Lx,resetWarningCache:Mx};return n.PropTypes=n,n};Ox.exports=XA();var ZA=Ox.exports;const ce=Eo(ZA);function eR(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,If(e,t)}function If(e,t){return If=Object.setPrototypeOf||function(n,r){return n.__proto__=r,n},If(e,t)}var Oe={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title",FRAGMENT:"Symbol(react.fragment)"},tR={rel:["amphtml","canonical","alternate"]},nR={type:["application/ld+json"]},rR={charset:"",name:["robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]};Object.keys(Oe).map(function(e){return Oe[e]});var fc={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"};Object.keys(fc).reduce(function(e,t){return e[fc[t]]=t,e},{});var oR=function(e){return Array.isArray(e)?e.join(""):e},Zu=function(e,t){return Array.isArray(e)?e.reduce(function(n,r){return function(o,i){for(var s=Object.keys(o),a=0;a<s.length;a+=1)if(i[s[a]]&&i[s[a]].includes(o[s[a]]))return!0;return!1}(r,t)?n.priority.push(r):n.default.push(r),n},{priority:[],default:[]}):{default:e}},iR=[Oe.NOSCRIPT,Oe.SCRIPT,Oe.STYLE],ed=function(e,t){return t===void 0&&(t=!0),t===!1?String(e):String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")},Yg=function(e){return Object.keys(e).reduce(function(t,n){var r=e[n]!==void 0?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r},"")},Jg=function(e,t){return t===void 0&&(t={}),Object.keys(e).reduce(function(n,r){return n[fc[r]||r]=e[r],n},t)},kl=function(e,t){return t.map(function(n,r){var o,i=((o={key:r})["data-rh"]=!0,o);return Object.keys(n).forEach(function(s){var a=fc[s]||s;a==="innerHTML"||a==="cssText"?i.dangerouslySetInnerHTML={__html:n.innerHTML||n.cssText}:i[a]=n[s]}),Ce.createElement(e,i)})},Ft=function(e,t,n){switch(e){case Oe.TITLE:return{toComponent:function(){return o=t.titleAttributes,(i={key:r=t.title})["data-rh"]=!0,s=Jg(o,i),[Ce.createElement(Oe.TITLE,s,r)];var r,o,i,s},toString:function(){return function(r,o,i,s){var a=Yg(i),l=oR(o);return a?"<"+r+' data-rh="true" '+a+">"+ed(l,s)+"</"+r+">":"<"+r+' data-rh="true">'+ed(l,s)+"</"+r+">"}(e,t.title,t.titleAttributes,n)}};case"bodyAttributes":case"htmlAttributes":return{toComponent:function(){return Jg(t)},toString:function(){return Yg(t)}};default:return{toComponent:function(){return kl(e,t)},toString:function(){return function(r,o,i){return o.reduce(function(s,a){var l=Object.keys(a).filter(function(f){return!(f==="innerHTML"||f==="cssText")}).reduce(function(f,p){var h=a[p]===void 0?p:p+'="'+ed(a[p],i)+'"';return f?f+" "+h:h},""),c=a.innerHTML||a.cssText||"",d=iR.indexOf(r)===-1;return s+"<"+r+' data-rh="true" '+l+(d?"/>":">"+c+"</"+r+">")},"")}(e,t,n)}}}},sR=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,o=e.htmlAttributes,i=e.noscriptTags,s=e.styleTags,a=e.title,l=a===void 0?"":a,c=e.titleAttributes,d=e.linkTags,f=e.metaTags,p=e.scriptTags,h={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var g=function(v){var b=v.linkTags,y=v.scriptTags,w=v.encode,x=Zu(v.metaTags,rR),S=Zu(b,tR),C=Zu(y,nR);return{priorityMethods:{toComponent:function(){return[].concat(kl(Oe.META,x.priority),kl(Oe.LINK,S.priority),kl(Oe.SCRIPT,C.priority))},toString:function(){return Ft(Oe.META,x.priority,w)+" "+Ft(Oe.LINK,S.priority,w)+" "+Ft(Oe.SCRIPT,C.priority,w)}},metaTags:x.default,linkTags:S.default,scriptTags:C.default}}(e);h=g.priorityMethods,d=g.linkTags,f=g.metaTags,p=g.scriptTags}return{priority:h,base:Ft(Oe.BASE,t,r),bodyAttributes:Ft("bodyAttributes",n,r),htmlAttributes:Ft("htmlAttributes",o,r),link:Ft(Oe.LINK,d,r),meta:Ft(Oe.META,f,r),noscript:Ft(Oe.NOSCRIPT,i,r),script:Ft(Oe.SCRIPT,p,r),style:Ft(Oe.STYLE,s,r),title:Ft(Oe.TITLE,{title:l,titleAttributes:c},r)}},Za=[],aR=function(e,t){var n=this;t===void 0&&(t=typeof document<"u"),this.instances=[],this.value={setHelmet:function(r){n.context.helmet=r},helmetInstances:{get:function(){return n.canUseDOM?Za:n.instances},add:function(r){(n.canUseDOM?Za:n.instances).push(r)},remove:function(r){var o=(n.canUseDOM?Za:n.instances).indexOf(r);(n.canUseDOM?Za:n.instances).splice(o,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=sR({baseTag:[],bodyAttributes:{},htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))},lR=Ce.createContext({}),cR=ce.shape({setHelmet:ce.func,helmetInstances:ce.shape({get:ce.func,add:ce.func,remove:ce.func}
68)}),uR=typeof document<"u",ws=function(e){function t(n){var r;return(r=e.call(this,n)||this).helmetData=new aR(r.props.context,t.canUseDOM),r}return eR(t,e),t.prototype.render=function(){return Ce.createElement(lR.Provider,{value:this.helmetData.value},this.props.children)},t}(m.Component);ws.canUseDOM=uR,ws.propTypes={context:ce.shape({helmet:ce.shape()}),children:ce.node.isRequired},ws.defaultProps={context:{}},ws.displayName="HelmetProvider";cR.isRequired;ce.object,ce.object,ce.oneOfType([ce.arrayOf(ce.node),ce.node]),ce.string,ce.bool,ce.bool,ce.object,ce.arrayOf(ce.object),ce.arrayOf(ce.object),ce.arrayOf(ce.object),ce.func,ce.arrayOf(ce.object),ce.arrayOf(ce.object),ce.string,ce.object,ce.string,ce.bool,ce.object;const dR="modulepreload",fR=function(e){return"/"+e},Xg={},_=function(t,n,r){let o=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const s=document.querySelector("meta[property=csp-nonce]"),a=(s==null?void 0:s.nonce)||(s==null?void 0:s.getAttribute("nonce"));o=Promise.allSettled(n.map(l=>{if(l=fR(l),l in Xg)return;Xg[l]=!0;const c=l.endsWith(".css"),d=c?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${d}`))return;const f=document.createElement("link");if(f.rel=c?"stylesheet":dR,c||(f.as="script"),f.crossOrigin="",f.href=l,a&&f.setAttribute("nonce",a),document.head.appendChild(f),c)return new Promise((p,h)=>{f.addEventListener("load",p),f.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${l}`)))})}))}function i(s){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=s,window.dispatchEvent(a),!a.defaultPrevented)throw s}return o.then(s=>{for(const a of s||[])a.status==="rejected"&&i(a.reason);return t().catch(i)})},Tl={...Mk},{version:Ix,hydrate:pR}=Tl,mR=Number((Ix||"").split(".")[0])>17,hR=Number((Ix||"").split(".")[0])>18;function gR(e,t,n={}){const{useLegacyRender:r}=n;if(r||!mR)pR(e,t);else if(hR)_(()=>import("./client-CSEkIXLA.js").then(o=>o.c),[]).then(({default:{hydrateRoot:o}})=>{Ce.startTransition(()=>{o(t,e)})});else{Tl.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.usingClientEntryPoint=!0;const{hydrateRoot:o}=Tl;if(!o)throw new Error("hydrateRoot not found");Ce.startTransition(()=>{o(t,e),Tl.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.usingClientEntryPoint=!1})}}function vR(e){return document.readyState==="loading"?new Promise(t=>{document.addEventListener("DOMContentLoaded",()=>t(e))}):Promise.resolve(e)}function yR(e){try{return JSON.parse(e||"{}")}catch(t){return console.error("[SSG] On state deserialization -",t,e),{}}}function bR(e,t,n={}){const{transformState:r,rootContainer:o="#root",ssrWhenDev:i,getStyleCollector:s=null}=n,a=typeof window<"u";async function l(c=!1,d){const f=[],g={isClient:a,onSSRAppRendered:c?()=>{}:b=>f.push(b),triggerOnSSRAppRendered:()=>Promise.all(f.map(b=>b())),initialState:{},transformState:r,routePath:d,getStyleCollector:s,routes:void 0,routerOptions:void 0,base:"/",app:e,routerType:"single-page"};c&&(await vR(),g.initialState=(r==null?void 0:r(window.__INITIAL_STATE__||{}))||yR(window.__INITIAL_STATE__)),await(t==null?void 0:t(g));const v=g.initialState;return{...g,initialState:v}}return a&&(async()=>{const c=typeof o=="string"?document.querySelector(o):o;if(!c){typeof $jsdom>"u"&&console.warn("[vite-react-ssg] Root container not found.");return}const d=await l(!0);window.__VITE_REACT_SSG_CONTEXT__=d;const f=u.jsx(ws,{children:e});document.querySelector("[data-server-rendered=true]"),gR(f,c,n)})(),l}/**
69 * @license lucide-react v0.441.0 - ISC
70 *
71 * This source code is licensed under the ISC license.
72 * See the LICENSE file in the root directory of this source tree.
73 */const wR=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Fx=(...e)=>e.filter((t,n,r)=>!!t&&r.indexOf(t)===n).join(" ");/**
74 * @license lucide-react v0.441.0 - ISC
75 *
76 * This source code is licensed under the ISC license.
77 * See the LICENSE file in the root directory of this source tree.
78 */var xR={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
79 * @license lucide-react v0.441.0 - ISC
80 *
81 * This source code is licensed under the ISC license.
82 * See the LICENSE file in the root directory of this source tree.
83 */const SR=m.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:o="",children:i,iconNode:s,...a},l)=>m.createElement("svg",{ref:l,...xR,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:Fx("lucide",o),...a},[...s.map(([c,d])=>m.createElement(c,d)),...Array.isArray(i)?i:[i]]));/**
84 * @license lucide-react v0.441.0 - ISC
85 *
86 * This source code is licensed under the ISC license.
87 * See the LICENSE file in the root directory of this source tree.
88 */const Y=(e,t)=>
88{const n=m.forwardRef(({className:r,...o},i)=>m.createElement(SR,{ref:i,iconNode:t,className:Fx(`lucide-${wR(e)}`,r),...o}));return n.displayName=`${e}`,n};/**
89 * @license lucide-react v0.441.0 - ISC
90 *
91 * This source code is licensed under the ISC license.
92 * See the LICENSE file in the root directory of this source tree.
93 */const Ux=Y("ArrowRight",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/**
94 * @license lucide-react v0.441.0 - ISC
95 *
96 * This source code is licensed under the ISC license.
97 * See the LICENSE file in the root directory of this source tree.
98 */const $x=Y("BookOpen",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);/**
99 * @license lucide-react v0.441.0 - ISC
100 *
101 * This source code is licensed under the ISC license.
102 * See the LICENSE file in the root directory of this source tree.
103 */const zx=Y("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);/**
104 * @license lucide-react v0.441.0 - ISC
105 *
106 * This source code is licensed under the ISC license.
107 * See the LICENSE file in the root directory of this source tree.
108 */const Vx=Y("Box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);/**
109 * @license lucide-react v0.441.0 - ISC
110 *
111 * This source code is licensed under the ISC license.
112 * See the LICENSE file in the root directory of this source tree.
113 */const Hx=Y("Building2",[["path",{d:"M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z",key:"1b4qmf"}],["path",{d:"M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2",key:"i71pzd"}],["path",{d:"M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2",key:"10jefs"}],["path",{d:"M10 6h4",key:"1itunk"}],["path",{d:"M10 10h4",key:"tcdvrf"}],["path",{d:"M10 14h4",key:"kelpxr"}],["path",{d:"M10 18h4",key:"1ulq68"}]]);/**
114 * @license lucide-react v0.441.0 - ISC
115 *
116 * This source code is licensed under the ISC license.
117 * See the LICENSE file in the root directory of this source tree.
118 */const CR=Y("ChartColumn",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]);/**
119 * @license lucide-react v0.441.0 - ISC
120 *
121 * This source code is licensed under the ISC license.
122 * See the LICENSE file in the root directory of this source tree.
123 */const PR=Y("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/**
124 * @license lucide-react v0.441.0 - ISC
125 *
126 * This source code is licensed under the ISC license.
127 * See the LICENSE file in the root directory of this source tree.
128 */const Ff=Y("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
129 * @license lucide-react v0.441.0 - ISC
130 *
131 * This source code is licensed under the ISC license.
132 * See the LICENSE file in the root directory of this source tree.
133 */const ER=Y("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/**
134 * @license lucide-react v0.441.0 - ISC
135 *
136 * This source code is licensed under the ISC license.
137 * See the LICENSE file in the root directory of this source tree.
138 */const kR=Y("CircleUserRound",[["path",{d:"M18 20a6 6 0 0 0-12 0",key:"1qehca"}],["circle",{cx:"12",cy:"10",r:"4",key:"1h16sb"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);/**
139 * @license lucide-react v0.441.0 - ISC
140 *
141 * This source code is licensed under the ISC license.
142 * See the LICENSE file in the root directory of this source tree.
143 */const TR=Y("Circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);/**
144 * @license lucide-react v0.441.0 - ISC
145 *
146 * This source code is licensed under the ISC license.
147 * See the LICENSE file in the root directory of this source tree.
148 */const AR=Y("ClipboardCheck",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"m9 14 2 2 4-4",key:"df797q"}]]);/**
149 * @license lucide-react v0.441.0 - ISC
150 *
151 * This source code is licensed under the ISC license.
152 * See the LICENSE file in the root directory of this source tree.
153 */const RR=Y("CreditCard",[["rect",{width:"20",height:"14",x:"2",y:"5",rx:"2",key:"ynyp8z"}],["line",{x1:"2",x2:"22",y1:"10",y2:"10",key:"1b3vmo"}]]);/**
154 * @license lucide-react v0.441.0 - ISC
155 *
156 * This source code is licensed under the ISC license.
157 * See the LICENSE file in the root directory of this source tree.
158 */const qx=Y("Crown",[["path",{d:"M11.562 3.266a.5.5 0 0 1 .876 0L15.39 8.87a1 1 0 0 0 1.516.294L21.183 5.5a.5.5 0 0 1 .798.519l-2.834 10.246a1 1 0 0 1-.956.734H5.81a1 1 0 0 1-.957-.734L2.02 6.02a.5.5 0 0 1 .798-.519l4.276 3.664a1 1 0 0 0 1.516-.294z",key:"1vdc57"}],["path",{d:"M5 21h14",key:"11awu3"}]]);/**
159 * @license lucide-react v0.441.0 - ISC
160 *
161 * This source code is licensed under the ISC license.
162 * See the LICENSE file in the root directory of this source tree.
163 */const _R=Y("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);/**
164 * @license lucide-react v0.441.0 - ISC
165 *
166 * This source code is licensed under the ISC license.
167 * See the LICENSE file in the root directory of this source tree.
168 */const DR=Y("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);/**
169 * @license lucide-react v0.441.0 - ISC
170 *
171 * This source code is licensed under the ISC license.
172 * See the LICENSE file in the root directory of this source tree.
173 */const jR=Y("Gamepad2",[["line",{x1:"6",x2:"10",y1:"11",y2:"11",key:"1gktln"}],["line",{x1:"8",x2:"8",y1:"9",y2:"13",key:"qnk9ow"}],["line",{x1:"15",x2:"15.01",y1:"12",y2:"12",key:"krot7o"}],["line",{x1:"18",x2:"18.01",y1:"10",y2:"10",key:"1lcuu1"}],["path",{d:"M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z",key:"mfqc10"}]]);/**
174 * @license lucide-react v0.441.0 - ISC
175 *
176 * This source code is licensed under the ISC license.
177 * See the LICENSE file in the root directory of this source tree.
178 */const NR=Y("Gift",[["rect",{x:"3",y:"8",width:"18",height:"4",rx:"1",key:"bkv52"}],["path",{d:"M12 8v13",key:"1c76mn"}],["path",{d:"M19 12v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7",key:"6wjy6b"}],["path",{d:"M7.5 8a2.5 2.5 0 0 1 0-5A4.8 8 0 0 1 12 8a4.8 8 0 0 1 4.5-5 2.5 2.5 0 0 1 0 5",key:"1ihvrl"}]]);/**
179 * @license lucide-react v0.441.0 - ISC
180 *
181 * This source code is licensed under the ISC license.
182 * See the LICENSE file in the root directory of this source tree.
183 */const pm=Y("Globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]);/**
184 * @license lucide-react v0.441.0 - ISC
185 *
186 * This source code is licensed under the ISC license.
187 * See the LICENSE file in the root directory of this source tree.
188 */const OR=Y("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);/**
189 * @license lucide-react v0.441.0 - ISC
190 *
191 * This source code is licensed under the ISC license.
192 * See the LICENSE file in the root directory of this source tree.
193 */const MR=Y("ImagePlus",[["path",{d:"M16 5h6",key:"1vod17"}],["path",{d:"M19 2v6",key:"4bpg5p"}],["path",{d:"M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5",key:"1ue2ih"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}]]);/**
194 * @license lucide-react v0.441.0 - ISC
195 *
196 * This source code is licensed under the ISC license.
197 * See the LICENSE file in the root directory of this source tree.
198 */const LR=Y("Image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);/**
199 * @license lucide-react v0.441.0 - ISC
200 *
201 * This source code is licensed under the ISC license.
202 * See the LICENSE file in the root directory of this source tree.
203 */const mm=Y("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);/**
204 * @license lucide-react v0.441.0 - ISC
205 *
206 * This source code is licensed under the ISC license.
207 * See the LICENSE file in the root directory of this source tree.
208 */const Lr=Y("LoaderCircle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);/**
209 * @license lucide-react v0.441.0 - ISC
210 *
211 * This source code is licensed under the ISC license.
212 * See the LICENSE file in the root directory of this source tree.
213 */const Zs=Y("LogOut",[["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}],["polyline",{points:"16 17 21 12 16 7",key:"1gabdz"}],["line",{x1:"21",x2:"9",y1:"12",y2:"12",key:"1uyos4"}]]);/**
214 * @license lucide-react v0.441.0 - ISC
215 *
216 * This source code is licensed under the ISC license.
217 * See the LICENSE file in the root directory of this source tree.
218 */const IR=Y("Mail",[["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}]]);/**
219 * @license lucide-react v0.441.0 - ISC
220 *
221 * This source code is licensed under the ISC license.
222 * See the LICENSE file in the root directory of this source tree.
223 */const FR=Y("MapPin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);/**
224 * @license lucide-react v0.441.0 - ISC
225 *
226 * This source code is licensed under the ISC license.
227 * See the LICENSE file in the root directory of this source tree.
228 */const hm=Y("Menu",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]);/**
229 * @license lucide-react v0.441.0 - ISC
230 *
231 * This source code is licensed under the ISC license.
232 * See the LICENSE file in the root directory of this source tree.
233 */const Uf=Y("MessageCircle",[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]]);/**
234 * @license lucide-react v0.441.0 - ISC
235 *
236 * This source code is licensed under the ISC license.
237 * See the LICENSE file in the root directory of this source tree.
238 */const Zg=Y("MessageSquare",[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]]);/**
239 * @license lucide-react v0.441.0 - ISC
240 *
241 * This source code is licensed under the ISC license.
242 * See the LICENSE file in the root directory of this source tree.
243 */const UR=Y("Minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]);/**
244 * @license lucide-react v0.441.0 - ISC
245 *
246 * This source code is licensed under the ISC license.
247 * See the LICENSE file in the root directory of this source tree.
248 */const $R=Y("Monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);/**
249 * @license lucide-react v0.441.0 - ISC
250 *
251 * This source code is licensed under the ISC license.
252 * See the LICENSE file in the root directory of this source tree.
253 */const ev=Y("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);/**
254 * @license lucide-react v0.441.0 - ISC
255 *
256 * This source code is licensed under the ISC license.
257 * See the LICENSE file in the root directory of this source tree.
258 */const zR=Y("PartyPopper",[["path",{d:"M5.8 11.3 2 22l10.7-3.79",key:"gwxi1d"}],["path",{d:"M4 3h.01",key:"1vcuye"}],["path",{d:"M22 8h.01",key:"1mrtc2"}],["path",{d:"M15 2h.01",key:"1cjtqr"}],["path",{d:"M22 20h.01",key:"1mrys2"}],["path",{d:"m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10",key:"hbicv8"}],["path",{d:"m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17",key:"1i94pl"}],["path",{d:"m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7",key:"1cofks"}],["path",{d:"M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z",key:"4kbmks"}]]);/**
259 * @license lucide-react v0.441.0 - ISC
260 *
261 * This source code is licensed under the ISC license.
262 * See the LICENSE file in the root directory of this source tree.
263 */const VR=Y("Phone",[["path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z",key:"foiqr5"}]]);/**
264 * @license lucide-react v0.441.0 - ISC
265 *
266 * This source code is licensed under the ISC license.
267 * See the LICENSE file in the root directory of this source tree.
268 */const HR=Y("Plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/**
269 * @license lucide-react v0.441.0 - ISC
270 *
271 * This source code is licensed under the ISC license.
272 * See the LICENSE file in the root directory of this source tree.
273 */const Bx=Y("Presentation",[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]]);/**
274 * @license lucide-react v0.441.0 - ISC
275 *
276 * This source code is licensed under the ISC license.
277 * See the LICENSE file in the root directory of this source tree.
278 */const qR=Y("School",[["path",{d:"M14 22v-4a2 2 0 1 0-4 0v4",key:"hhkicm"}],["path",{d:"m18 10 4 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-8l4-2",ke
278y:"1vwozw"}],["path",{d:"M18 5v17",key:"1sw6gf"}],["path",{d:"m4 6 8-4 8 4",key:"1q0ilc"}],["path",{d:"M6 5v17",key:"1xfsm0"}],["circle",{cx:"12",cy:"9",r:"2",key:"1092wv"}]]);/**
279 * @license lucide-react v0.441.0 - ISC
280 *
281 * This source code is licensed under the ISC license.
282 * See the LICENSE file in the root directory of this source tree.
283 */const Wx=Y("Send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/**
284 * @license lucide-react v0.441.0 - ISC
285 *
286 * This source code is licensed under the ISC license.
287 * See the LICENSE file in the root directory of this source tree.
288 */const BR=Y("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
289 * @license lucide-react v0.441.0 - ISC
290 *
291 * This source code is licensed under the ISC license.
292 * See the LICENSE file in the root directory of this source tree.
293 */const Gx=Y("Shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]);/**
294 * @license lucide-react v0.441.0 - ISC
295 *
296 * This source code is licensed under the ISC license.
297 * See the LICENSE file in the root directory of this source tree.
298 */const ea=Y("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);/**
299 * @license lucide-react v0.441.0 - ISC
300 *
301 * This source code is licensed under the ISC license.
302 * See the LICENSE file in the root directory of this source tree.
303 */const tv=Y("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);/**
304 * @license lucide-react v0.441.0 - ISC
305 *
306 * This source code is licensed under the ISC license.
307 * See the LICENSE file in the root directory of this source tree.
308 */const WR=Y("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);/**
309 * @license lucide-react v0.441.0 - ISC
310 *
311 * This source code is licensed under the ISC license.
312 * See the LICENSE file in the root directory of this source tree.
313 */const xa=Y("User",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);/**
314 * @license lucide-react v0.441.0 - ISC
315 *
316 * This source code is licensed under the ISC license.
317 * See the LICENSE file in the root directory of this source tree.
318 */const GR=Y("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]);/**
319 * @license lucide-react v0.441.0 - ISC
320 *
321 * This source code is licensed under the ISC license.
322 * See the LICENSE file in the root directory of this source tree.
323 */const Kx=Y("Video",[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]]);/**
324 * @license lucide-react v0.441.0 - ISC
325 *
326 * This source code is licensed under the ISC license.
327 * See the LICENSE file in the root directory of this source tree.
328 */const nv=Y("Wallet",[["path",{d:"M19 7V4a1 1 0 0 0-1-1H5a2 2 0 0 0 0 4h15a1 1 0 0 1 1 1v4h-3a2 2 0 0 0 0 4h3a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1",key:"18etb6"}],["path",{d:"M3 5v14a2 2 0 0 0 2 2h15a1 1 0 0 0 1-1v-4",key:"xoc0q4"}]]);/**
329 * @license lucide-react v0.441.0 - ISC
330 *
331 * This source code is licensed under the ISC license.
332 * See the LICENSE file in the root directory of this source tree.
333 */const Vi=Y("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}
333],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);function Ro(){return u.jsx("div",{className:"flex min-h-screen items-center justify-center",children:u.jsxs("div",{className:"flex flex-col items-center gap-4",children:[u.jsx(Lr,{className:"h-12 w-12 animate-spin text-primary"}),u.jsx("p",{className:"text-muted-foreground",children:"Loading..."})]})})}const KR=(e,t,n,r)=>{var i,s,a,l;const o=[n,{code:t,...r||{}}];if((s=(i=e==null?void 0:e.services)==null?void 0:i.logger)!=null&&s.forward)return e.services.logger.forward(o,"warn","react-i18next::",!0);fo(o[0])&&(o[0]=`react-i18next:: ${o[0]}`),(l=(a=e==null?void 0:e.services)==null?void 0:a.logger)!=null&&l.warn?e.services.logger.warn(...o):console!=null&&console.warn&&console.warn(...o)},rv={},$f=(e,t,n,r)=>{fo(n)&&rv[n]||(fo(n)&&(rv[n]=new Date),KR(e,t,n,r))},Qx=(e,t)=>()=>{if(e.isInitialized)t();else{const n=()=>{setTimeout(()=>{e.off("initialized",n)},0),t()};e.on("initialized",n)}},zf=(e,t,n)=>{e.loadNamespaces(t,Qx(e,n))},ov=(e,t,n,r)=>{if(fo(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return zf(e,n,r);n.forEach(o=>{e.options.ns.indexOf(o)<0&&e.options.ns.push(o)}),e.loadLanguages(t,Qx(e,r))},QR=(e,t,n={})=>!t.languages||!t.languages.length?($f(t,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(r,o)=>{if(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&r.services.backendConnector.backend&&r.isLanguageChangingTo&&!o(r.isLanguageChangingTo,e))return!1}}),fo=e=>typeof e=="string",YR=e=>typeof e=="object"&&e!==null,JR=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,XR={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},ZR=e=>XR[e],e2=e=>e.replace(JR,ZR);let Vf={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:e2};const t2=(e={})=>{Vf={...Vf,...e}},n2=()=>Vf;let Yx;const r2=e=>{Yx=e},o2=()=>Yx,i2={type:"3rdParty",init(e){t2(e.options.react),r2(e)}},s2=m.createContext();class a2{constructor(){this.usedNamespaces={}}addUsedNamespaces(t){t.forEach(n=>{this.usedNamespaces[n]||(this.usedNamespaces[n]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}const l2=(e,t)=>{const n=m.useRef();return m.useEffect(()=>{n.current=e},[e,t]),n.current},Jx=(e,t,n,r)=>e.getFixedT(t,n,r),c2=(e,t,n,r)=>m.useCallback(Jx(e,t,n,r),[e,t,n,r]),J=(e,t={})=>{var S,C,k,E;const{i18n:n}=t,{i18n:r,defaultNS:o}=m.useContext(s2)||{},i=n||r||o2();if(i&&!i.reportNamespaces&&(i.reportNamespaces=new a2),!i){$f(i,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const T=(A,L)=>fo(L)?L:YR(L)&&fo(L.defaultValue)?L.defaultValue:Array.isArray(A)?A[A.length-1]:A,j=[T,{},!1];return j.t=T,j.i18n={},j.ready=!1,j}(S=i.options.react)!=null&&S.wait&&$f(i,"DEPRECATED_OPTION","useTranslation: It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");const s={...n2(),...i.options.react,...t},{useSuspense:a,keyPrefix:l}=s;let c=o||((C=i.options)==null?void 0:C.defaultNS);c=fo(c)?[c]:c||["translation"],(E=(k=i.reportNamespaces).addUsedNamespaces)==null||E.call(k,c);const d=(i.isInitialized||i.initializedStoreOnce)&&c.every(T=>QR(T,i,s)),f=c2(i,t.lng||null,s.nsMode==="fallback"?c:c[0],l),p=()=>f,h=()=>Jx(i,t.lng||null,s.nsMode==="fallback"?c:c[0],l),[g,v]=m.useState(p);let b=c.join();t.lng&&(b=`${t.lng}${b}`);const y=l2(b),w=m.useRef(!0);m.useEffect(()=>{const{bindI18n:T,bindI18nStore:j}=s;w.current=!0,!d&&!a&&(t.lng?ov(i,t.lng,c,()=>{w.current&&v(h)}):zf(i,c,()=>{w.current&&v(h)})),d&&y&&y!==b&&w.current&&v(h);const A=()=>{w.current&&v(h)};return T&&(i==null||i.on(T,A)),j&&(i==null||i.store.on(j,A)),()=>{w.current=!1,i&&T&&(T==null||T.split(" ").forEach(L=>i.off(L,A))),j&&i&&j.split(" ").forEach(L=>i.store.off(L,A))}},[i,b]),m.useEffect(()=>{w.current&&d&&v(p)},[i,l,d]);const x=[g,i,d];if(x.t=g,x.i18n=i,x.ready=d,d||!d&&!a)return x;throw new Promise(T=>{t.lng?ov(i,t.lng,c,()=>T()):zf(i,c,()=>T())})};function iv(e,t){if(typeof e=="function")return e(t);
vendor: 4,215 bytes, line 333
333e!=null&&(e.current=t)}function Sa(...e){return t=>{let n=!1;const r=e.map(o=>{const i=iv(o,t);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let o=0;o<r.length;o++){const i=r[o];typeof i=="function"?i():iv(e[o],null)}}}}function Se(...e){return m.useCallback(Sa(...e),e)}var u2=Symbol.for("react.lazy"),pc=ha[" use ".trim().toString()];function d2(e){return typeof e=="object"&&e!==null&&"then"in e}function Xx(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===u2&&"_payload"in e&&d2(e._payload)}function Zx(e){const t=p2(e),n=m.forwardRef((r,o)=>{let{children:i,...s}=r;Xx(i)&&typeof pc=="function"&&(i=pc(i._payload));const a=m.Children.toArray(i),l=a.find(h2);if(l){const c=l.props.children,d=a.map(f=>f===l?m.Children.count(c)>1?m.Children.only(null):m.isValidElement(c)?c.props.children:null:f);return u.jsx(t,{...s,ref:o,children:m.isValidElement(c)?m.cloneElement(c,void 0,d):null})}return u.jsx(t,{...s,ref:o,children:i})});return n.displayName=`${e}.Slot`,n}var f2=Zx("Slot");function p2(e){const t=m.forwardRef((n,r)=>{let{children:o,...i}=n;if(Xx(o)&&typeof pc=="function"&&(o=pc(o._payload)),m.isValidElement(o)){const s=v2(o),a=g2(i,o.props);return o.type!==m.Fragment&&(a.ref=r?Sa(r,s):s),m.cloneElement(o,a)}return m.Children.count(o)>1?m.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var m2=Symbol("radix.slottable");function h2(e){return m.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===m2}function g2(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...a)=>{const l=i(...a);return o(...a),l}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}function v2(e){var r,o;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function e0(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=e0(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function t0(){for(var e,t,n=0,r="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=e0(e))&&(r&&(r+=" "),r+=t);return r}const sv=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,av=t0,gm=(e,t)=>n=>{var r;if((t==null?void 0:t.variants)==null)return av(e,n==null?void 0:n.class,n==null?void 0:n.className);const{variants:o,defaultVariants:i}=t,s=Object.keys(o).map(c=>{const d=n==null?void 0:n[c],f=i==null?void 0:i[c];if(d===null)return null;const p=sv(d)||sv(f);return o[c][p]}),a=n&&Object.entries(n).reduce((c,d)=>{let[f,p]=d;return p===void 0||(c[f]=p),c},{}),l=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((c,d)=>{let{class:f,className:p,...h}=d;return Object.entries(h).every(g=>{let[v,b]=g;return Array.isArray(b)?b.includes({...i,...a}[v]):{...i,...a}[v]===b})?[...c,f,p]:c},[]);return av(e,s,l,n==null?void 0:n.class,n==null?void 0:n.className)},vm="-",y2=e=>{const t=w2(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:s=>{const a=s.split(vm);return a[0]===""&&a.length!==1&&a.shift(),n0(a,t)||b2(s)},getConflictingClassGroupIds:(s,a)=>{const l=n[s]||[];return a&&r[s]?[...l,...r[s]]:l}}},n0=(e,t)=>{var s;if(e.length===0)return t.classGroupId;const n=e[0],r=t.nextPart.get(n),o=r?n0(e.slice(1),r):void 0;if(o)return o;if(t.validators.length===0)return;const i=e.join(vm);return(s=t.validators.find(({validator:a})=>a(i)))==null?void 0:s.classGroupId},lv=/^\[(.+)\]$/,b2=e=>{if(lv.test(e)){const t=lv.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},w2=e=>{const{theme:t,prefix:n}=e,r={nextPart:new Map,validators:[]};return S2(Object.entries(e.classGroups),n).forEach(([i,s])=>{Hf(s,r,i,t)}),r},Hf=(e,t,n,r)=>{e.forEach(o=>{if(typeof o=="string"){const i=o===""?t:cv(t,o);i.classGroupId=n;return}if(typeof o=="function"){if(x2(o)){Hf(o(r),t,n,r);return}t.validators.push({validator:o,classGroupId:n});return}
vendor: 4,830 bytes, line 333
333Object.entries(o).forEach(([i,s])=>{Hf(s,cv(t,i),n,r)})})},cv=(e,t)=>{let n=e;return t.split(vm).forEach(r=>{n.nextPart.has(r)||n.nextPart.set(r,{nextPart:new Map,validators:[]}),n=n.nextPart.get(r)}),n},x2=e=>e.isThemeGetter,S2=(e,t)=>t?e.map(([n,r])=>{const o=r.map(i=>typeof i=="string"?t+i:typeof i=="object"?Object.fromEntries(Object.entries(i).map(([s,a])=>[t+s,a])):i);return[n,o]}):e,C2=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,r=new Map;const o=(i,s)=>{n.set(i,s),t++,t>e&&(t=0,r=n,n=new Map)};return{get(i){let s=n.get(i);if(s!==void 0)return s;if((s=r.get(i))!==void 0)return o(i,s),s},set(i,s){n.has(i)?n.set(i,s):o(i,s)}}},r0="!",P2=e=>{const{separator:t,experimentalParseClassName:n}=e,r=t.length===1,o=t[0],i=t.length,s=a=>{const l=[];let c=0,d=0,f;for(let b=0;b<a.length;b++){let y=a[b];if(c===0){if(y===o&&(r||a.slice(b,b+i)===t)){l.push(a.slice(d,b)),d=b+i;continue}if(y==="/"){f=b;continue}}y==="["?c++:y==="]"&&c--}const p=l.length===0?a:a.substring(d),h=p.startsWith(r0),g=h?p.substring(1):p,v=f&&f>d?f-d:void 0;return{modifiers:l,hasImportantModifier:h,baseClassName:g,maybePostfixModifierPosition:v}};return n?a=>n({className:a,parseClassName:s}):s},E2=e=>{if(e.length<=1)return e;const t=[];let n=[];return e.forEach(r=>{r[0]==="["?(t.push(...n.sort(),r),n=[]):n.push(r)}),t.push(...n.sort()),t},k2=e=>({cache:C2(e.cacheSize),parseClassName:P2(e),...y2(e)}),T2=/\s+/,A2=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:o}=t,i=[],s=e.trim().split(T2);let a="";for(let l=s.length-1;l>=0;l-=1){const c=s[l],{modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:h}=n(c);let g=!!h,v=r(g?p.substring(0,h):p);if(!v){if(!g){a=c+(a.length>0?" "+a:a);continue}if(v=r(p),!v){a=c+(a.length>0?" "+a:a);continue}g=!1}const b=E2(d).join(":"),y=f?b+r0:b,w=y+v;if(i.includes(w))continue;i.push(w);const x=o(v,g);for(let S=0;S<x.length;++S){const C=x[S];i.push(y+C)}a=c+(a.length>0?" "+a:a)}return a};function R2(){let e=0,t,n,r="";for(;e<arguments.length;)(t=arguments[e++])&&(n=o0(t))&&(r&&(r+=" "),r+=n);return r}const o0=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=o0(e[r]))&&(n&&(n+=" "),n+=t);return n};function _2(e,...t){let n,r,o,i=s;function s(l){const c=t.reduce((d,f)=>f(d),e());return n=k2(c),r=n.cache.get,o=n.cache.set,i=a,a(l)}function a(l){const c=r(l);if(c)return c;const d=A2(l,n);return o(l,d),d}return function(){return i(R2.apply(null,arguments))}}const ye=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},i0=/^\[(?:([a-z-]+):)?(.+)\]$/i,D2=/^\d+\/\d+$/,j2=new Set(["px","full","screen"]),N2=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,O2=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,M2=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,L2=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,I2=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Mn=e=>ai(e)||j2.has(e)||D2.test(e),or=e=>Hi(e,"length",B2),ai=e=>!!e&&!Number.isNaN(Number(e)),td=e=>Hi(e,"number",ai),ls=e=>!!e&&Number.isInteger(Number(e)),F2=e=>e.endsWith("%")&&ai(e.slice(0,-1)),ne=e=>i0.test(e),ir=e=>N2.test(e),U2=new Set(["length","size","percentage"]),$2=e=>Hi(e,U2,s0),z2=e=>Hi(e,"position",s0),V2=new Set(["image","url"]),H2=e=>Hi(e,V2,G2),q2=e=>Hi(e,"",W2),cs=()=>!0,Hi=(e,t,n)=>{const r=i0.exec(e);return r?r[1]?typeof t=="string"?r[1]===t:t.has(r[1]):n(r[2]):!1},B2=e=>O2.test(e)&&!M2.test(e),s0=()=>!1,W2=e=>L2.test(e),G2=e=>I2.test(e),K2=()=>{const e=ye("colors"),t=ye("spacing"),n=ye("blur"),r=ye("brightness"),o=ye("borderColor"),i=ye("borderRadius"),s=ye("borderSpacing"),a=ye("borderWidth"),l=ye("contrast"),c=ye("grayscale"),d=ye("hueRotate"),f=ye("invert"),p=ye("gap"),h=ye("gradientColorStops"),g=ye("gradientColorStopPositions"),v=ye("inset"),b=ye("margin"),y=ye("opacity"),w=ye("padding"),x=ye("saturate"),S=ye("scale"),C=ye("sepia"),k=ye("skew"),E=ye("space"),T=ye("translate"),j=()=>["auto","contain","none"],A=()=>["auto","hidden","clip","visible","scroll"],L=()=>["auto",ne,t],F=()=>[ne,t],K=()=>["",Mn,or],I=()=>["auto",ai,ne],Z=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],q=()=>["solid","dashed","dotted","double","none"],re=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],D=()=>["start","end","center","between","around","evenly","stretch"],O=()=>["","0",ne],$=()=>["auto","avoid","all","avoid-page","page","left","right","column"],B=()=>[ai,ne];return{cacheSize:500,separator:":",theme:{colors:[cs],spacing:[Mn,or],blur:["none","",ir,ne],brightness:B(),borderColor:[e],borderRadius:["n
333one","","full",ir,ne],borderSpacing:F(),borderWidth:K(),contrast:B(),grayscale:O(),hueRotate:B(),invert:O(),gap:F(),gradientColorStops:[e],gradientColorStopPositions:[F2,or],inset:L(),margin:L(),opacity:B(),padding:F(),saturate:B(),scale:B(),sepia:O(),skew:B(),space:F(),translate:F()},classGroups:{aspect:[{aspect:["auto","square","video",ne]}],container:["container"],columns:[{columns:[ir]}],"break-after":[{"break-after":$()}],"break-before":[{"break-before":$()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...Z(),ne]}],overflow:[{overflow:A()}],"overflow-x":[{"overflow-x":A()}],"overflow-y":[{"overflow-y":A()}],overscroll:[{overscroll:j()}],"overscroll-x":[{"overscroll-x":j()}],"overscroll-y":[{"overscroll-y":j()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[v]}],"inset-x":[{"inset-x":[v]}],"inset-y":[{"inset-y":[v]}],start:[{start:[v]}],end:[{end:[v]}],top:[{top:[v]}],right:[{right:[v]}],bottom:[{bottom:[v]}],left:[{left:[v]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",ls,ne]}],basis:[{basis:L()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",ne]}],grow:[{grow:O()}],shrink:[{shrink:O()}],order:[{order:["first","last","none",ls,ne]}],"grid-cols":[{"grid-cols":[cs]}],"col-start-end":[{col:["auto",{span:["full",ls,ne]},ne]}],"col-start":[{"col-start":I()}],"col-end":[{"col-end":I()}],"grid-rows":[{"grid-rows":[cs]}],"row-start-end":[{row:["auto",{span:[ls,ne]},ne]}],"row-start":[{"row-start":I()}],"row-end":[{"row-end":I()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",ne]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",ne]}],gap:[{gap:[p]}],"gap-x":[{"gap-x":[p]}],"gap-y":[{"gap-y":[p]}],"justify-content":[{justify:["normal",...D()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...D(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...D(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[w]}],px:[{px:[w]}],py:[{py:[w]}],ps:[{ps:[w]}],pe:[{pe:[w]}],pt:[{pt:[w]}],pr:[{pr:[w]}],pb:[{pb:[w]}],pl:[{pl:[w]}],m:[{m:[b]}],mx:[{mx:[b]}],my:[{my:[b]}],ms:[{ms:[b]}],me:[{me:[b]}],mt:[{mt:[b]}],mr:[{mr:[b]}],mb:[{mb:[b]}],ml:[{ml:[b]}],"space-x":[{"space-x":[E]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[E]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",ne,t]}],"min-w":[{"min-w":[ne,t,"min","max","fit"]}],"max-w":[{"max-w":[ne,t,"none","full","min","max","fit","prose",{screen:[ir]},ir]}],h:[{h:[ne,t,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[ne,t,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[ne,t,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[ne,t,"auto","min","max","fit"]}],"font-size":[{text:["base",ir,or]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",td]}],"font-family":[{font:[cs]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",ne]}],"line-clamp":[{"line-clamp":["none",ai,td]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",Mn,ne]}],"list-image":[{"list-image":["none",ne]}],"list-style-type":[{list:["none","disc","decimal",ne]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[y]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[y]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...q(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",Mn,or]}],"underline-offset":[{"underline-offset":["auto",Mn,ne]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:F()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ne]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",ne]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[y]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...Z(),z2]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",$2]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},H2]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[g]}
333],"gradient-via-pos":[{via:[g]}],"gradient-to-pos":[{to:[g]}],"gradient-from":[{from:[h]}],"gradient-via":[{via:[h]}],"gradient-to":[{to:[h]}],rounded:[{rounded:[i]}],"rounded-s":[{"rounded-s":[i]}],"rounded-e":[{"rounded-e":[i]}],"rounded-t":[{"rounded-t":[i]}],"rounded-r":[{"rounded-r":[i]}],"rounded-b":[{"rounded-b":[i]}],"rounded-l":[{"rounded-l":[i]}],"rounded-ss":[{"rounded-ss":[i]}],"rounded-se":[{"rounded-se":[i]}],"rounded-ee":[{"rounded-ee":[i]}],"rounded-es":[{"rounded-es":[i]}],"rounded-tl":[{"rounded-tl":[i]}],"rounded-tr":[{"rounded-tr":[i]}],"rounded-br":[{"rounded-br":[i]}],"rounded-bl":[{"rounded-bl":[i]}],"border-w":[{border:[a]}],"border-w-x":[{"border-x":[a]}],"border-w-y":[{"border-y":[a]}],"border-w-s":[{"border-s":[a]}],"border-w-e":[{"border-e":[a]}],"border-w-t":[{"border-t":[a]}],"border-w-r":[{"border-r":[a]}],"border-w-b":[{"border-b":[a]}],"border-w-l":[{"border-l":[a]}],"border-opacity":[{"border-opacity":[y]}],"border-style":[{border:[...q(),"hidden"]}],"divide-x":[{"divide-x":[a]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[a]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[y]}
vendor: 4,469 bytes, line 333
333],"divide-style":[{divide:q()}],"border-color":[{border:[o]}],"border-color-x":[{"border-x":[o]}],"border-color-y":[{"border-y":[o]}],"border-color-s":[{"border-s":[o]}],"border-color-e":[{"border-e":[o]}],"border-color-t":[{"border-t":[o]}],"border-color-r":[{"border-r":[o]}],"border-color-b":[{"border-b":[o]}],"border-color-l":[{"border-l":[o]}],"divide-color":[{divide:[o]}],"outline-style":[{outline:["",...q()]}],"outline-offset":[{"outline-offset":[Mn,ne]}],"outline-w":[{outline:[Mn,or]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:K()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[y]}],"ring-offset-w":[{"ring-offset":[Mn,or]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",ir,q2]}],"shadow-color":[{shadow:[cs]}],opacity:[{opacity:[y]}],"mix-blend":[{"mix-blend":[...re(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":re()}],filter:[{filter:["","none"]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[l]}],"drop-shadow":[{"drop-shadow":["","none",ir,ne]}],grayscale:[{grayscale:[c]}],"hue-rotate":[{"hue-rotate":[d]}],invert:[{invert:[f]}],saturate:[{saturate:[x]}],sepia:[{sepia:[C]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[l]}],"backdrop-grayscale":[{"backdrop-grayscale":[c]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[d]}],"backdrop-invert":[{"backdrop-invert":[f]}],"backdrop-opacity":[{"backdrop-opacity":[y]}],"backdrop-saturate":[{"backdrop-saturate":[x]}],"backdrop-sepia":[{"backdrop-sepia":[C]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[s]}],"border-spacing-x":[{"border-spacing-x":[s]}],"border-spacing-y":[{"border-spacing-y":[s]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",ne]}],duration:[{duration:B()}],ease:[{ease:["linear","in","out","in-out",ne]}],delay:[{delay:B()}],animate:[{animate:["none","spin","ping","pulse","bounce",ne]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[S]}],"scale-x":[{"scale-x":[S]}],"scale-y":[{"scale-y":[S]}],rotate:[{rotate:[ls,ne]}],"translate-x":[{"translate-x":[T]}],"translate-y":[{"translate-y":[T]}],"skew-x":[{"skew-x":[k]}],"skew-y":[{"skew-y":[k]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",ne]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",ne]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":F()}],"scroll-mx":[{"scroll-mx":F()}],"scroll-my":[{"scroll-my":F()}],"scroll-ms":[{"scroll-ms":F()}],"scroll-me":[{"scroll-me":F()}],"scroll-mt":[{"scroll-mt":F()}],"scroll-mr":[{"scroll-mr":F()}],"scroll-mb":[{"scroll-mb":F()}],"scroll-ml":[{"scroll-ml":F()}],"scroll-p":[{"scroll-p":F()}],"scroll-px":[{"scroll-px":F()}],"scroll-py":[{"scroll-py":F()}],"scroll-ps":[{"scroll-ps":F()}],"scroll-pe":[{"scroll-pe":F()}],"scroll-pt":[{"scroll-pt":F()}],"scroll-pr":[{"scroll-pr":F()}],"scroll-pb":[{"scroll-pb":F()}],"scroll-pl":[{"scroll-pl":F()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",ne]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[Mn,or,td]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","
333none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},Q2=_2(K2);function U(...e){return Q2(t0(e))}function uv(e,t="KZT"){return new Intl.NumberFormat("kk-KZ",{style:"currency",currency:t,minimumFractionDigits:0,maximumFractionDigits:0}).format(e)}function gV(e){if(!e)return"";const t=e.replace(/\D/g,"");return t.length===11&&t.startsWith("7")?`+7 (${t.slice(1,4)}) ${t.slice(4,7)}-${t.slice(7,9)}-${t.slice(9)}`:e}const Y2=["Қаңтар","Ақпан","Наурыз","Сәуір","Мамыр","Маусым","Шілде","Тамыз","Қыркүйек","Қазан","Қараша","Желтоқсан"];function vV(e){return{kk:"kk-KZ",ru:"ru-RU",en:"en-US"}[e]??"kk-KZ"}function J2(e){const t=e.getDate(),n=Y2[e.getMonth()],r=e.getFullYear();return`${t} ${n} ${r}`}function X2(e){if(e<60){const n=e;return n<=1?"1 секунд бұрын":`${n} секунд бұрын`}if(e<3600){const n=Math.floor(e/60);return n<=1?"1 минут бұрын":`${n} минут бұрын`}if(e<86400){const n=Math.floor(e/3600);return n<=1?"1 сағат бұрын":`${n} сағат бұрын`}if(e<2592e3){const n=Math.floor(e/86400);return n<=1?"1 күн бұрын":`${n} күн бұрын`}if(e<31536e3){const n=Math.floor(e/2592e3);return n<=1?"1 ай бұрын":`${n} ай бұрын`}const t=Math.floor(e/31536e3);return t<=1?"1 жыл бұрын":`${t} жыл бұрын`}function yV(e,t="kk-KZ"){const n=typeof e=="string"?new Date(e):e;return isNaN(n.getTime())?"—":t==="kk-KZ"?J2(n):new Intl.DateTimeFormat(t,{year:"numeric",month:"long",day:"numeric"}).format(n)}function bV(e,t="kk-KZ"){if(!e)return"—";const n=typeof e=="string"?new Date(e):e;if(isNaN(n.getTime()))return"—";const o=Math.floor((new Date().getTime()-n.getTime())/1e3);if(t==="kk-KZ")return X2(o);const i=new Intl.RelativeTimeFormat(t,{numeric:"auto"});return o<60?i.format(-o,"second"):o<3600?i.format(-Math.floor(o/60),"minute"):o<86400?i.format(-Math.floor(o/3600),"hour"):o<2592e3?i.format(-Math.floor(o/86400),"day"):o<31536e3?i.format(-Math.floor(o/2592e3),"month"):i.format(-Math.floor(o/31536e3),"year")}function mc(e,t){const n=(e==null?void 0:e.charAt(0).toUpperCase())??"",r=(t==null?void 0:t.charAt(0).toUpperCase())??"";return n+r||"U"}function wV(e,t=2){return e.toFixed(t)}function xV(e){const t=e.trim(),n=t.match(/([0-9a-f]{32})/i);return(n==null?void 0:n[1])??t}const Z2=gm("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),we=m.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...o},i)=>{const s=r?f2:"button";return u.jsx(s,{className:U(Z2({variant:t,size:n,className:e})),ref:i,...o})});
vendor: 39,737 bytes, line 333
333we.displayName="Button";function G(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e==null||e(o),n===!1||!o.defaultPrevented)return t==null?void 0:t(o)}}function e_(e,t){const n=m.createContext(t),r=i=>{const{children:s,...a}=i,l=m.useMemo(()=>a,Object.values(a));return u.jsx(n.Provider,{value:l,children:s})};r.displayName=e+"Provider";function o(i){const s=m.useContext(n);if(s)return s;if(t!==void 0)return t;throw new Error(`\`${i}\` must be used within \`${e}\``)}return[r,o]}function Hr(e,t=[]){let n=[];function r(i,s){const a=m.createContext(s),l=n.length;n=[...n,s];const c=f=>{var y;const{scope:p,children:h,...g}=f,v=((y=p==null?void 0:p[e])==null?void 0:y[l])||a,b=m.useMemo(()=>g,Object.values(g));return u.jsx(v.Provider,{value:b,children:h})};c.displayName=i+"Provider";function d(f,p){var v;const h=((v=p==null?void 0:p[e])==null?void 0:v[l])||a,g=m.useContext(h);if(g)return g;if(s!==void 0)return s;throw new Error(`\`${f}\` must be used within \`${i}\``)}return[c,d]}const o=()=>{const i=n.map(s=>m.createContext(s));return function(a){const l=(a==null?void 0:a[e])||i;return m.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,t_(o,...t)]}function t_(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const s=r.reduce((a,{useScope:l,scopeName:c})=>{const f=l(i)[`__scope${c}`];return{...a,...f}},{});return m.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])}};return n.scopeName=t.scopeName,n}var Nt=globalThis!=null&&globalThis.document?m.useLayoutEffect:()=>{},n_=ha[" useInsertionEffect ".trim().toString()]||Nt;function Kc({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){const[o,i,s]=r_({defaultProp:t,onChange:n}),a=e!==void 0,l=a?e:o;{const d=m.useRef(e!==void 0);m.useEffect(()=>{const f=d.current;f!==a&&console.warn(`${r} is changing from ${f?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),d.current=a},[a,r])}const c=m.useCallback(d=>{var f;if(a){const p=o_(d)?d(e):d;p!==e&&((f=s.current)==null||f.call(s,p))}else i(d)},[a,e,i,s]);return[l,c]}function r_({defaultProp:e,onChange:t}){const[n,r]=m.useState(e),o=m.useRef(n),i=m.useRef(t);return n_(()=>{i.current=t},[t]),m.useEffect(()=>{var s;o.current!==n&&((s=i.current)==null||s.call(i,n),o.current=n)},[n,o]),[n,r,i]}function o_(e){return typeof e=="function"}function ta(e){const t=i_(e),n=m.forwardRef((r,o)=>{const{children:i,...s}=r,a=m.Children.toArray(i),l=a.find(s_);if(l){const c=l.props.children,d=a.map(f=>f===l?m.Children.count(c)>1?m.Children.only(null):m.isValidElement(c)?c.props.children:null:f);return u.jsx(t,{...s,ref:o,children:m.isValidElement(c)?m.cloneElement(c,void 0,d):null})}return u.jsx(t,{...s,ref:o,children:i})});return n.displayName=`${e}.Slot`,n}function i_(e){const t=m.forwardRef((n,r)=>{const{children:o,...i}=n;if(m.isValidElement(o)){const s=l_(o),a=a_(i,o.props);return o.type!==m.Fragment&&(a.ref=r?Sa(r,s):s),m.cloneElement(o,a)}return m.Children.count(o)>1?m.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var a0=Symbol("radix.slottable");function SV(e){const t=({children:n})=>u.jsx(u.Fragment,{children:n});return t.displayName=`${e}.Slottable`,t.__radixId=a0,t}function s_(e){return m.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===a0}function a_(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...a)=>{const l=i(...a);return o(...a),l}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}function l_(e){var r,o;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var c_=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],pe=c_.reduce((e,t)=>{const n=ta(`Primitive.${t}`),r=m.forwardRef((o,i)=>{const{asChild:s,...a}=o,l=s?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),u.jsx(l,{...a,ref:i})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function ym(e,t){e&&wa.flushSync(()=>e.dispatchEvent(t))}function bm(e){const t=e+"CollectionProvider",[n,r]=Hr(t),[o,i]=n(t,{collectionRef:{current:null},itemMap:new Map}),s=v=>{const{scope:b,children:y}=v,w=Ce.useRef(null),x=Ce.useRef(new Map).current;return u.jsx(o,{scope:b,itemMap:x,collectionRef:w,children:y})};s.displayName=t;const a=e+"CollectionSlot",l=ta(a),c=Ce.forwardRef((v,b)=>{const{scope:y,children:w}=v,x=i(a,y),S=Se(b,x.collectionRef);return u.jsx(l,{ref:S,children:w})});c.displayName=a;const d=e+"CollectionItemSlot",f="data-radix-collection-item",p=ta(d),h=Ce.forwardRef((v,b)=>{const{scope:y,children:w,...x}=v,S=Ce.useRef(null),C=Se(b,S),k=i(d,y);return Ce.useEffect(()=>(k.itemMap.set(S,{ref:S,...x}),()=>void k.itemMap.delete(S))),u.jsx(p,{[f]:"",ref:C,children:w})});h.displayName=d;function g(v){const b=i(e+"CollectionConsumer",v);return Ce.useCallback(()=>{const w=b.collectionRef.current;if(!w)return[];const x=Array.from(w.querySelectorAll(`[${f}]`));return Array.from(b.itemMap.values()).sort((k,E)=>x.indexOf(k.ref.current)-x.indexOf(E.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:s,Slot:c,ItemSlot:h},g,r]}var u_=m.createContext(void 0);function wm(e){const t=m.useContext(u_);return e||t||"ltr"}function Ne(e){const t=m.useRef(e);return m.useEffect(()=>{t.current=e}),m.useMemo(()=>(...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)},[])}function d_(e,t=globalThis==null?void 0:globalThis.document){const n=Ne(e);m.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}var f_="DismissableLayer",qf="dismissableLayer.update",p_="dismissableLayer.pointerDownOutside",m_="dismissableLayer.focusOutside",dv,l0=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Qc=m.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:i,onInteractOutside:s,onDismiss:a,...l}=e,c=m.useContext(l0),[d,f]=m.useState(null),p=(d==null?void 0:d.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,h]=m.useState({}),g=Se(t,E=>f(E)),v=Array.from(c.layers),[b]=[...c.layersWithOutsidePointerEventsDisabled].slice(-1),y=v.indexOf(b),w=d?v.indexOf(d):-1,x=c.layersWithOutsidePointerEventsDisabled.size>0,S=w>=y,C=g_(E=>{const T=E.target,j=[...c.branches].some(A=>A.contains(T));!S||j||(o==null||o(E),s==null||s(E),E.defaultPrevented||a==null||a())},p),k=v_(E=>{const T=E.target;[...c.branches].some(A=>A.contains(T))||(i==null||i(E),s==null||s(E),E.defaultPrevented||a==null||a())},p);return d_(E=>{w===c.layers.size-1&&(r==null||r(E),!E.defaultPrevented&&a&&(E.preventDefault(),a()))},p),m.useEffect(()=>{if(d)return n&&(c.layersWithOutsidePointerEventsDisabled.size===0&&(dv=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),c.layersWithOutsidePointerEventsDisabled.add(d)),c.layers.add(d),fv(),()=>{n&&c.layersWithOutsidePointerEventsDisabled.size===1&&(p.body.style.pointerEvents=dv)}},[d,p,n,c]),m.useEffect(()=>()=>{d&&(c.layers.delete(d),c.layersWithOutsidePointerEventsDisabled.delete(d),fv())},[d,c]),m.useEffect(()=>{const E=()=>h({});return document.addEventListener(qf,E),()=>document.removeEventListener(qf,E)},[]),u.jsx(pe.div,{...l,ref:g,style:{pointerEvents:x?S?"auto":"none":void 0,...e.style},onFocusCapture:G(e.onFocusCapture,k.onFocusCapture),onBlurCapture:G(e.onBlurCapture,k.onBlurCapture),onPointerDownCapture:G(e.onPointerDownCapture,C.onPointerDownCapture)})});Qc.displayName=f_;var h_="DismissableLayerBranch",c0=m.forwardRef((e,t)=>{const n=m.useContext(l0),r=m.useRef(null),o=Se(t,r);return m.useEffect(()=>{const i=r.current;if(i)return n.branches.add(i),()=>{n.branches.delete(i)}},[n.branches]),u.jsx(pe.div,{...e,ref:o})});c0.displayName=h_;function g_(e,t=globalThis==null?void 0:globalThis.document){const n=Ne(e),r=m.useRef(!1),o=m.useRef(()=>{});return m.useEffect(()=>{const i=a=>{if(a.target&&!r.current){let l=function(){u0(p_,n,c,{discrete:!0})};const c={originalEvent:a};a.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=l,t.addEventListener("click",o.current,{once:!0})):l()}else t.removeEventListener("click",o.current);r.current=!1},s=window.setTimeout(()=>{t.addEventListener("pointerdown",i)},0);return()=>{window.clearTimeout(s),t.removeEventListener("pointerdown",i),t.removeEventListener("click",o.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function v_(e,t=globalThis==null?void 0:globalThis.document){const n=Ne(e),r=m.useRef(!1);return m.useEffect(()=>{const o=i=>{i.target&&!r.current&&u0(m_,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function fv(){const e=new CustomEvent(qf);document.dispatchEvent(e)}function u0(e,t,n,{discrete:r}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?ym(o,i):o.dispatchEvent(i)}var y_=Qc,b_=c0,nd=0;function d0(){m.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??pv()),document.body.insertAdjacentElement("beforeend",e[1]??pv()),nd++,()=>{nd===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),nd--}},[])}function pv(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var rd="focusScope.autoFocusOnMount",od="focusScope.autoFocusOnUnmount",mv={bubbles:!1,cancelable:!0},w_="FocusScope",xm=m.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...s}=e,[a,l]=m.useState(null),c=Ne(o),d=Ne(i),f=m.useRef(null),p=Se(t,v=>l(v)),h=m.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;m.useEffect(()=>{if(r){let v=function(x){if(h.paused||!a)return;const S=x.target;a.contains(S)?f.current=S:ar(f.current,{select:!0})},b=function(x){if(h.paused||!a)return;const S=x.relatedTarget;S!==null&&(a.contains(S)||ar(f.current,{select:!0}))},y=function(x){if(document.activeElement===document.body)for(const C of x)C.removedNodes.length>0&&ar(a)};document.addEventListener("focusin",v),document.addEventListener("focusout",b);const w=new MutationObserver(y);return a&&w.observe(a,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",v),document.removeEventListener("focusout",b),w.disconnect()}}},[r,a,h.paused]),m.useEffect(()=>{if(a){gv.add(h);const v=document.activeElement;if(!a.contains(v)){const y=new CustomEvent(rd,mv);a.addEventListener(rd,c),a.dispatchEvent(y),y.defaultPrevented||(x_(k_(f0(a)),{select:!0}),document.activeElement===v&&ar(a))}return()=>{a.removeEventListener(rd,c),setTimeout(()=>{const y=new CustomEvent(od,mv);a.addEventListener(od,d),a.dispatchEvent(y),y.defaultPrevented||ar(v??document.body,{select:!0}),a.removeEventListener(od,d),gv.remove(h)},0)}}},[a,c,d,h]);const g=m.useCallback(v=>{if(!n&&!r||h.paused)return;const b=v.key==="Tab"&&!v.altKey&&!v.ctrlKey&&!v.metaKey,y=document.activeElement;if(b&&y){const w=v.currentTarget,[x,S]=S_(w);x&&S?!v.shiftKey&&y===S?(v.preventDefault(),n&&ar(x,{select:!0})):v.shiftKey&&y===x&&(v.preventDefault(),n&&ar(S,{select:!0})):y===w&&v.preventDefault()}},[n,r,h.paused]);return u.jsx(pe.div,{tabIndex:-1,...s,ref:p,onKeyDown:g})});xm.displayName=w_;function x_(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(ar(r,{select:t}),document.activeElement!==n)return}function S_(e){const t=f0(e),n=hv(t,e),r=hv(t.reverse(),e);return[n,r]}function f0(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function hv(e,t){for(const n of e)if(!C_(n,{upTo:t}))return n}function C_(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function P_(e){return e instanceof HTMLInputElement&&"select"in e}function ar(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&P_(e)&&t&&e.select()}}var gv=E_();function E_(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=vv(e,t),e.unshift(t)},remove(t){var n;e=vv(e,t),(n=e[0])==null||n.resume()}}}function vv(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function k_(e){return e.filter(t=>t.tagName!=="A")}var T_=ha[" useId ".trim().toString()]||(()=>{}),A_=0;function li(e){const[t,n]=m.useState(T_());return Nt(()=>{n(r=>r??String(A_++))},[e]),t?`radix-${t}`:""}const R_=["top","right","bottom","left"],Ir=Math.min,At=Math.max,hc=Math.round,el=Math.floor,Rn=e=>({x:e,y:e}),__={left:"right",right:"left",bottom:"top",top:"bottom"},D_={start:"end",end:"start"};function Bf(e,t,n){return At(e,Ir(t,n))}function Zn(e,t){return typeof e=="function"?e(t):e}function er(e){return e.split("-")[0]}function qi(e){return e.split("-")[1]}function Sm(e){return e==="x"?"y":"x"}function Cm(e){return e==="y"?"height":"width"}const j_=new Set(["top","bottom"]);function Pn(e){return j_.has(er(e))?"y":"x"}function Pm(e){return Sm(Pn(e))}function N_(e,t,n){n===void 0&&(n=!1);const r=qi(e),o=Pm(e),i=Cm(o);let s=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(s=gc(s)),[s,gc(s)]}function O_(e){const t=gc(e);return[Wf(e),t,Wf(t)]}function Wf(e){return e.replace(/start|end/g,t=>D_[t])}const yv=["left","right"],bv=["right","left"],M_=["top","bottom"],L_=["bottom","top"];function I_(e,t,n){switch(e){case"top":case"bottom":return n?t?bv:yv:t?yv:bv;case"left":case"right":return t?M_:L_;default:return[]}}function F_(e,t,n,r){const o=qi(e);let i=I_(er(e),n==="start",r);return o&&(i=i.map(s=>s+"-"+o),t&&(i=i.concat(i.map(Wf)))),i}function gc(e){return e.replace(/left|right|bottom|top/g,t=>__[t])}function U_(e){return{top:0,right:0,bottom:0,left:0,...e}}function p0(e){return typeof e!="number"?U_(e):{top:e,right:e,bottom:e,left:e}}function vc(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function wv(e,t,n){let{reference:r,floating:o}=e;const i=Pn(t),s=Pm(t),a=Cm(s),l=er(t),c=i==="y",d=r.x+r.width/2-o.width/2,f=r.y+r.height/2-o.height/2,p=r[a]/2-o[a]/2;let h;switch(l){case"top":h={x:d,y:r.y-o.height};break;case"bottom":h={x:d,y:r.y+r.height};break;case"right":h={x:r.x+r.width,y:f};break;case"left":h={x:r.x-o.width,y:f};break;default:h={x:r.x,y:r.y}}switch(qi(t)){case"start":h[s]-=p*(n&&c?-1:1);break;case"end":h[s]+=p*(n&&c?-1:1);break}return h}const $_=async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:s}=n,a=i.filter(Boolean),l=await(s.isRTL==null?void 0:s.isRTL(t));let c=await s.getElementRects({reference:e,floating:t,strategy:o}),{x:d,y:f}=wv(c,r,l),p=r,h={},g=0;for(let v=0;v<a.length;v++){const{name:b,fn:y}=a[v],{x:w,y:x,data:S,reset:C}=await y({x:d,y:f,initialPlacement:r,placement:p,strategy:o,middlewareData:h,rects:c,platform:s,elements:{reference:e,floating:t}});d=w??d,f=x??f,h={...h,[b]:{...h[b],...S}},C&&g<=50&&(g++,typeof C=="object"&&(C.placement&&(p=C.placement),C.rects&&(c=C.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:o}):C.rects),{x:d,y:f}=wv(c,p,l)),v=-1)}return{x:d,y:f,placement:p,strategy:o,middlewareData:h}};async function na(e,t){var n;t===void 0&&(t={});const{x:r,y:o,platform:i,rects:s,elements:a,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:f="floating",altBoundary:p=!1,padding:h=0}=Zn(t,e),g=p0(h),b=a[p?f==="floating"?"reference":"floating":f],y=vc(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(b)))==null||n?b:b.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(a.floating)),boundary:c,rootBoundary:d,strategy:l})),w=f==="floating"?{x:r,y:o,width:s.floating.width,height:s.floating.height}:s.reference,x=await(i.getOffsetParent==null?void 0:i.getOffsetParent(a.floating)),S=await(i.isElement==null?void 0:i.isElement(x))?await(i.getScale==null?void 0:i.getScale(x))||{x:1,y:1}:{x:1,y:1},C=vc(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:w,offsetParent:x,strategy:l}):w);return{top:(y.top-C.top+g.top)/S.y,bottom:(C.bottom-y.bottom+g.bottom)/S.y,left:(y.left-C.left+g.left)/S.x,right:(C.right-y.right+g.right)/S.x}}const z_=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:i,platform:s,elements:a,middlewareData:l}=t,{element:c,padding:d=0}=Zn(e,t)||{};if(c==null)return{};const f=p0(d),p={x:n,y:r},h=Pm(o),g=Cm(h),v=await s.getDimensions(c),b=h==="y",y=b?"top":"left",w=b?"bottom":"right",x=b?"clientHeight":"clientWidth",S=i.reference[g]+i.reference[h]-p[h]-i.floating[g],C=p[h]-i.reference[h],k=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c));let E=k?k[x]:0;(!E||!await(s.isElement==null?void 0:s.isElement(k)))&&(E=a.floating[x]||i.floating[g]);const T=S/2-C/2,j=E/2-v[g]/2-1,A=Ir(f[y],j),L=Ir(f[w],j),F=A,K=E-v[g]-L,I=E/2-v[g]/2+T,Z=Bf(F,I,K),q=!l.arrow&&qi(o)!=null&&I!==Z&&i.reference[g]/2-(I<F?A:L)-v[g]/2<0,re=q?I<F?I-F:I-K:0;return{[h]:p[h]+re,data:{[h]:Z,centerOffset:I-Z-re,...q&&{alignmentOffset:re}},reset:q}}}),V_=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:s,initialPlacement:a,platform:l,elements:c}=t,{mainAxis:d=!0,crossAxis:f=!0,fallbackPlacements:p,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:v=!0,...b}=Zn(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const y=er(o),w=Pn(a),x=er(a)===a,S=await(l.isRTL==null?void 0:l.isRTL(c.floating)),C=p||(x||!v?[gc(a)]:O_(a)),k=g!=="none";!p&&k&&C.push(...F_(a,v,g,S));const E=[a,...C],T=await na(t,b),j=[];let A=((r=i.flip)==null?void 0:r.overflows)||[];if(d&&j.push(T[y]),f){const I=N_(o,s,S);j.push(T[I[0]],T[I[1]])}if(A=[...A,{placement:o,overflows:j}],!j.every(I=>I<=0)){var L,F;const I=(((L=i.flip)==null?void 0:L.index)||0)+1,Z=E[I];if(Z&&(!(f==="alignment"?w!==Pn(Z):!1)||A.every(D=>Pn(D.placement)===w?D.overflows[0]>0:!0)))return{data:{index:I,overflows:A},reset:{placement:Z}};let q=(F=A.filter(re=>re.overflows[0]<=0).sort((re,D)=>re.overflows[1]-D.overflows[1])[0])==null?void 0:F.placement;if(!q)switch(h){case"bestFit":{var K;const re=(K=A.filter(D=>{if(k){const O=Pn(D.placement);return O===w||O==="y"}return!0}).map(D=>[D.placement,D.overflows.filter(O=>O>0).reduce((O,$)=>O+$,0)]).sort((D,O)=>D[1]-O[1])[0])==null?void 0:K[0];re&&(q=re);break}case"initialPlacement":q=a;break}if(o!==q)return{reset:{placement:q}}}return{}}}};function xv(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Sv(e){return R_.some(t=>e[t]>=0)}const H_=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...o}=Zn(e,t);switch(r){case"referenceHidden":{const i=await na(t,{...o,elementContext:"reference"}),s=xv(i,n.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:Sv(s)}}}case"escaped":{const i=await na(t,{...o,altBoundary:!0}),s=xv(i,n.floating);return{data:{escapedOffsets:s,escaped:Sv(s)}}}default:return{}}}}},m0=new Set(["left","top"]);async function q_(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),s=er(n),a=qi(n),l=Pn(n)==="y",c=m0.has(s)?-1:1,d=i&&l?-1:1,f=Zn(t,e);let{mainAxis:p,crossAxis:h,alignmentAxis:g}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return a&&typeof g=="number"&&(h=a==="end"?g*-1:g),l?{x:h*d,y:p*c}:{x:p*c,y:h*d}}const B_=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:s,middlewareData:a}=t,l=await q_(t,e);return s===((n=a.offset)==null?void 0:n.placement)&&(r=a.arrow)!=null&&r.alignmentOffset?{}:{x:o+l.x,y:i+l.y,data:{...l,placement:s}}}}},W_=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:s=!1,limiter:a={fn:b=>{let{x:y,y:w}=b;return{x:y,y:w}}},...l}=Zn(e,t),c={x:n,y:r},d=await na(t,l),f=Pn(er(o)),p=Sm(f);let h=c[p],g=c[f];if(i){const b=p==="y"?"top":"left",y=p==="y"?"bottom":"right",w=h+d[b],x=h-d[y];h=Bf(w,h,x)}if(s){const b=f==="y"?"top":"left",y=f==="y"?"bottom":"right",w=g+d[b],x=g-d[y];g=Bf(w,g,x)}const v=a.fn({...t,[p]:h,[f]:g});return{...v,data:{x:v.x-n,y:v.y-r,enabled:{[p]:i,[f]:s}}}}}},G_=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:o,rects:i,middlewareData:s}=t,{offset:a=0,mainAxis:l=!0,crossAxis:c=!0}=Zn(e,t),d={x:n,y:r},f=Pn(o),p=Sm(f);let h=d[p],g=d[f];const v=Zn(a,t),b=typeof v=="number"?{mainAxis:v,crossAxis:0}:{mainAxis:0,crossAxis:0,...v};if(l){const x=p==="y"?"height":"width",S=i.reference[p]-i.floating[x]+b.mainAxis,C=i.reference[p]+i.reference[x]-b.mainAxis;h<S?h=S:h>C&&(h=C)}if(c){var y,w;const x=p==="y"?"width":"height",S=m0.has(er(o)),C=i.reference[f]-i.floating[x]+(S&&((y=s.offset)==null?void 0:y[f])||0)+(S?0:b.crossAxis),k=i.reference[f]+i.reference[x]+(S?0:((w=s.offset)==null?void 0:w[f])||0)-(S?b.crossAxis:0);g<C?g=C:g>k&&(g=k)}return{[p]:h,[f]:g}}}},K_=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:o,rects:i,platform:s,elements:a}=t,{apply:l=()=>{},...c}=Zn(e,t),d=await na(t,c),f=er(o),p=qi(o),h=Pn(o)==="y",{width:g,height:v}=i.floating;let b,y;f==="top"||f==="bottom"?(b=f,y=p===(await(s.isRTL==null?void 0:s.isRTL(a.floating))?"start":"end")?"left":"right"):(y=f,b=p==="end"?"top":"bottom");const w=v-d.top-d.bottom,x=g-d.left-d.right,S=Ir(v-d[b],w),C=Ir(g-d[y],x),k=!t.middlewareData.shift;let E=S,T=C;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(T=x),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(E=w),k&&!p){const A=At(d.left,0),L=At(d.right,0),F=At(d.top,0),K=At(d.bottom,0);h?T=g-2*(A!==0||L!==0?A+L:At(d.left,d.right)):E=v-2*(F!==0||K!==0?F+K:At(d.top,d.bottom))}await l({...t,availableWidth:T,availableHeight:E});const j=await s.getDimensions(a.floating);return g!==j.width||v!==j.height?{reset:{rects:!0}}:{}}}};function Yc(){return typeof window<"u"}function Bi(e){return h0(e)?(e.nodeName||"").toLowerCase():"#document"}function Dt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function jn(e){var t;return(t=(h0(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function h0(e){return Yc()?e instanceof Node||e instanceof Dt(e).Node:!1}function dn(e){return Yc()?e instanceof Element||e instanceof Dt(e).Element:!1}function _n(e){return Yc()?e instanceof HTMLElement||e instanceof Dt(e).HTMLElement:!1}function Cv(e){return!Yc()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Dt(e).ShadowRoot}const Q_=new Set(["inline","contents"]);function Ca(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=fn(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!Q_.has(o)}const Y_=new Set(["table","td","th"]);function J_(e){return Y_.has(Bi(e))}const X_=[":popover-open",":modal"];function Jc(e){return X_.some(t=>{try{return e.matches(t)}catch{return!1}})}const Z_=["transform","translate","scale","rotate","perspective"],eD=["transform","translate","scale","rotate","perspective","filter"],tD=["paint","layout","strict","content"];function Em(e){const t=km(),n=dn(e)?fn(e):e;return Z_.some(r=>n[r]?n[r]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||eD.some(r=>(n.willChange||"").includes(r))||tD.some(r=>(n.contain||"").includes(r))}function nD(e){let t=Fr(e);for(;_n(t)&&!_i(t);){if(Em(t))return t;if(Jc(t))return null;t=Fr(t)}return null}function km(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const rD=new Set(["html","body","#document"]);function _i(e){return rD.has(Bi(e))}function fn(e){return Dt(e).getComputedStyle(e)}function Xc(e){return dn(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Fr(e){if(Bi(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Cv(e)&&e.host||jn(e);return Cv(t)?t.host:t}function g0(e){const t=Fr(e);return _i(t)?e.ownerDocument?e.ownerDocument.body:e.body:_n(t)&&Ca(t)?t:g0(t)}function ra(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=g0(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),s=Dt(o);if(i){const a=Gf(s);return t.concat(s,s.visualViewport||[],Ca(o)?o:[],a&&n?ra(a):[])}return t.concat(o,ra(o,[],n))}function Gf(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function v0(e){const t=fn(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=_n(e),i=o?e.offsetWidth:n,s=o?e.offsetHeight:r,a=hc(n)!==i||hc(r)!==s;return a&&(n=i,r=s),{width:n,height:r,$:a}}function Tm(e){return dn(e)?e:e.contextElement}function ci(e){const t=Tm(e);if(!_n(t))return Rn(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=v0(t);let s=(i?hc(n.width):n.width)/r,a=(i?hc(n.height):n.height)/o;return(!s||!Number.isFinite(s))&&(s=1),(!a||!Number.isFinite(a))&&(a=1),{x:s,y:a}}const oD=Rn(0);function y0(e){const t=Dt(e);return!km()||!t.visualViewport?oD:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function iD(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Dt(e)?!1:t}function xo(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=Tm(e);let s=Rn(1);t&&(r?dn(r)&&(s=ci(r)):s=ci(e));const a=iD(i,n,r)?y0(i):Rn(0);let l=(o.left+a.x)/s.x,c=(o.top+a.y)/s.y,d=o.width/s.x,f=o.height/s.y;if(i){const p=Dt(i),h=r&&dn(r)?Dt(r):r;let g=p,v=Gf(g);for(;v&&r&&h!==g;){const b=ci(v),y=v.getBoundingClientRect(),w=fn(v),x=y.left+(v.clientLeft+parseFloat(w.paddingLeft))*b.x,S=y.top+(v.clientTop+parseFloat(w.paddingTop))*b.y;l*=b.x,c*=b.y,d*=b.x,f*=b.y,l+=x,c+=S,g=Dt(v),v=Gf(g)}}return vc({width:d,height:f,x:l,y:c})}function Zc(e,t){const n=Xc(e).scrollLeft;return t?t.left+n:xo(jn(e)).left+n}function b0(e,t){const n=e.getBoundingClientRect(),r=n.left+t.scrollLeft-Zc(e,n),o=n.top+t.scrollTop;return{x:r,y:o}}function sD(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i=o==="fixed",s=jn(r),a=t?Jc(t.floating):!1;if(r===s||a&&i)return n;let l={scrollLeft:0,scrollTop:0},c=Rn(1);const d=Rn(0),f=_n(r);if((f||!f&&!i)&&((Bi(r)!=="body"||Ca(s))&&(l=Xc(r)),_n(r))){const h=xo(r);c=ci(r),d.x=h.x+r.clientLeft,d.y=h.y+r.clientTop}const p=s&&!f&&!i?b0(s,l):Rn(0);return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-l.scrollLeft*c.x+d.x+p.x,y:n.y*c.y-l.scrollTop*c.y+d.y+p.y}}function aD(e){return Array.from(e.getClientRects())}function lD(e){const t=jn(e),n=Xc(e),r=e.ownerDocument.body,o=At(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=At(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let s=-n.scrollLeft+Zc(e);const a=-n.scrollTop;return fn(r).direction==="rtl"&&(s+=At(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:s,y:a}}const Pv=25;function cD(e,t){const n=Dt(e),r=jn(e),o=n.visualViewport;let i=r.clientWidth,s=r.clientHeight,a=0,l=0;if(o){i=o.width,s=o.height;const d=km();(!d||d&&t==="fixed")&&(a=o.offsetLeft,l=o.offsetTop)}const c=Zc(r);if(c<=0){const d=r.ownerDocument,f=d.body,p=getComputedStyle(f),h=d.compatMode==="CSS1Compat"&&parseFloat(p.marginLeft)+parseFloat(p.marginRight)||0,g=Math.abs(r.clientWidth-f.clientWidth-h);g<=Pv&&(i-=g)}else c<=Pv&&(i+=c);return{width:i,height:s,x:a,y:l}}const uD=new Set(["absolute","fixed"]);function dD(e,t){const n=xo(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=_n(e)?ci(e):Rn(1),s=e.clientWidth*i.x,a=e.clientHeight*i.y,l=o*i.x,c=r*i.y;return{width:s,height:a,x:l,y:c}}function Ev(e,t,n){let r;if(t==="viewport")r=cD(e,n);else if(t==="document")r=lD(jn(e));else if(dn(t))r=dD(t,n);else{const o=y0(e);r={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return vc(r)}function w0(e,t){const n=Fr(e);return n===t||!dn(n)||_i(n)?!1:fn(n).position==="fixed"||w0(n,t)}function fD(e,t){const n=t.get(e);if(n)return n;let r=ra(e,[],!1).filter(a=>dn(a)&&Bi(a)!=="body"),o=null;const i=fn(e).position==="fixed";let s=i?Fr(e):e;for(;dn(s)&&!_i(s);){const a=fn(s),l=Em(s);!l&&a.position==="fixed"&&(o=null),(i?!l&&!o:!l&&a.position==="static"&&!!o&&uD.has(o.position)||Ca(s)&&!l&&w0(e,s))?r=r.filter(d=>d!==s):o=a,s=Fr(s)}return t.set(e,r),r}function pD(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const s=[...n==="clippingAncestors"?Jc(t)?[]:fD(t,this._c):[].concat(n),r],a=s[0],l=s.reduce((c,d)=>{const f=Ev(t,d,o);return c.top=At(f.top,c.top),c.right=Ir(f.right,c.right),c.bottom=Ir(f.bottom,c.bottom),c.left=At(f.left,c.left),c},Ev(t,a,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function mD(e){const{width:t,height:n}=v0(e);return{width:t,height:n}}function hD(e,t,n){const r=_n(t),o=jn(t),i=n==="fixed",s=xo(e,!0,i,t);let a={scrollLeft:0,scrollTop:0};const l=Rn(0);function c(){l.x=Zc(o)}if(r||!r&&!i)if((Bi(t)!=="body"||Ca(o))&&(a=Xc(t)),r){const h=xo(t,!0,i,t);l.x=h.x+t.clientLeft,l.y=h.y+t.clientTop}else o&&c();i&&!r&&o&&c();const d=o&&!r&&!i?b0(o,a):Rn(0),f=s.left+a.scrollLeft-l.x-d.x,p=s.top+a.scrollTop-l.y-d.y;return{x:f,y:p,width:s.width,height:s.height}}function id(e){return fn(e).position==="static"}function kv(e,t){if(!_n(e)||fn(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return jn(e)===n&&(n=n.ownerDocument.body),n}function x0(e,t){const n=Dt(e);if(Jc(e))return n;if(!_n(e)){let o=Fr(e);for(;o&&!_i(o);){if(dn(o)&&!id(o))return o;o=Fr(o)}return n}let r=kv(e,t);for(;r&&J_(r)&&id(r);)r=kv(r,t);return r&&_i(r)&&id(r)&&!Em(r)?n:r||nD(e)||n}const gD=async function(e){const t=this.getOffsetParent||x0,n=this.getDimensions,r=await n(e.floating);return{reference:hD(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function vD(e){return fn(e).direction==="rtl"}const yD={convertOffsetParentRelativeRectToViewportRelativeRect:sD,getDocumentElement:jn,getClippingRect:pD,getOffsetParent:x0,getElementRects:gD,getClientRects:aD,getDimensions:mD,getScale:ci,isElement:dn,isRTL:vD};function S0(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function bD(e,t){let n=null,r;const o=jn(e);function i(){var a;clearTimeout(r),(a=n)==null||a.disconnect(),n=null}function s(a,l){a===void 0&&(a=!1),l===void 0&&(l=1),i();const c=e.getBoundingClientRect(),{left:d,top:f,width:p,height:h}=c;if(a||t(),!p||!h)return;const g=el(f),v=el(o.clientWidth-(d+p)),b=el(o.clientHeight-(f+h)),y=el(d),x={rootMargin:-g+"px "+-v+"px "+-b+"px "+-y+"px",threshold:At(0,Ir(1,l))||1};let S=!0;function C(k){const E=k[0].intersectionRatio;if(E!==l){if(!S)return s();E?s(!1,E):r=setTimeout(()=>{s(!1,1e-7)},1e3)}E===1&&!S0(c,e.getBoundingClientRect())&&s(),S=!1}try{n=new IntersectionObserver(C,{...x,root:o.ownerDocument})}catch{n=new IntersectionObserver(C,x)}n.observe(e)}return s(!0),i}function wD(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,c=Tm(e),d=o||i?[...c?ra(c):[],...ra(t)]:[];d.forEach(y=>{o&&y.addEventListener("scroll",n,{passive:!0}),i&&y.addEventListener("resize",n)});const f=c&&a?bD(c,n):null;let p=-1,h=null;s&&(h=new ResizeObserver(y=>{let[w]=y;w&&w.target===c&&h&&(h.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{var x;(x=h)==null||x.observe(t)})),n()}),c&&!l&&h.observe(c),h.observe(t));let g,v=l?xo(e):null;l&&b();function b(){const y=xo(e);v&&!S0(v,y)&&n(),v=y,g=requestAnimationFrame(b)}return n(),()=>{var y;d.forEach(w=>{o&&w.removeEventListener("scroll",n),i&&w.removeEventListener("resize",n)}),f==null||f(),(y=h)==null||y.disconnect(),h=null,l&&cancelAnimationFrame(g)}}const xD=B_,SD=W_,CD=V_,PD=K_,ED=H_,Tv=z_,kD=G_,TD=(e,t,n)=>{const r=new Map,o={platform:yD,...n},i={...o.platform,_c:r};return $_(e,t,{...o,platform:i})};var AD=typeof document<"u",RD=function(){},Al=AD?m.useLayoutEffect:RD;function yc(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,o;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!yc(e[r],t[r]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,o[r]))return!1;for(r=n;r--!==0;){const i=o[r];if(!(i==="_owner"&&e.$$typeof)&&!yc(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function C0(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Av(e,t){const n=C0(e);return Math.round(t*n)/n}function sd(e){const t=m.useRef(e);return Al(()=>{t.current=e}),t}function _D(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:s}={},transform:a=!0,whileElementsMounted:l,open:c}=e,[d,f]=m.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,h]=m.useState(r);yc(p,r)||h(r);const[g,v]=m.useState(null),[b,y]=m.useState(null),w=m.useCallback(D=>{D!==k.current&&(k.current=D,v(D))},[]),x=m.useCallback(D=>{D!==E.current&&(E.current=D,y(D))},[]),S=i||g,C=s||b,k=m.useRef(null),E=m.useRef(null),T=m.useRef(d),j=l!=null,A=sd(l),L=sd(o),F=sd(c),K=m.useCallback(()=>{if(!k.current||!E.current)return;const D={placement:t,strategy:n,middleware:p};L.current&&(D.platform=L.current),TD(k.current,E.current,D).then(O=>{const $={...O,isPositioned:F.current!==!1};I.current&&!yc(T.current,$)&&(T.current=$,wa.flushSync(()=>{f($)}))})},[p,t,n,L,F]);Al(()=>{c===!1&&T.current.isPositioned&&(T.current.isPositioned=!1,f(D=>({...D,isPositioned:!1})))},[c]);const I=m.useRef(!1);Al(()=>(I.current=!0,()=>{I.current=!1}),[]),Al(()=>{if(S&&(k.current=S),C&&(E.current=C),S&&C){if(A.current)return A.current(S,C,K);K()}},[S,C,K,A,j]);const Z=m.useMemo(()=>({reference:k,floating:E,setReference:w,setFloating:x}),[w,x]),q=m.useMemo(()=>({reference:S,floating:C}),[S,C]),re=m.useMemo(()=>{const D={position:n,left:0,top:0};if(!q.floating)return D;const O=Av(q.floating,d.x),$=Av(q.floating,d.y);return a?{...D,transform:"translate("+O+"px, "+$+"px)",...C0(q.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:O,top:$}},[n,a,q.floating,d.x,d.y]);return m.useMemo(()=>({...d,update:K,refs:Z,elements:q,floatingStyles:re}),[d,K,Z,q,re])}const DD=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:o}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Tv({element:r.current,padding:o}).fn(n):{}:r?Tv({element:r,padding:o}).fn(n):{}}}},jD=(e,t)=>({...xD(e),options:[e,t]}),ND=(e,t)=>({...SD(e),options:[e,t]}),OD=(e,t)=>({...kD(e),options:[e,t]}),MD=(e,t)=>({...CD(e),options:[e,t]}),LD=(e,t)=>({...PD(e),options:[e,t]}),ID=(e,t)=>({...ED(e),options:[e,t]}),FD=(e,t)=>({...DD(e),options:[e,t]});var UD="Arrow",P0=m.forwardRef((e,t)=>{const{children:n,width:r=10,height:o=5,...i}=e;return u.jsx(pe.svg,{...i,ref:t,width:r,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:u.jsx("polygon",{points:"0,0 30,0 15,10"})})});P0.displayName=UD;var $D=P0;function zD(e){const[t,n]=m.useState(void 0);return Nt(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let s,a;if("borderBoxSize"in i){const l=i.borderBoxSize,c=Array.isArray(l)?l[0]:l;s=c.inlineSize,a=c.blockSize}else s=e.offsetWidth,a=e.offsetHeight;n({width:s,height:a})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}var Am="Popper",[E0,k0]=Hr(Am),[VD,T0]=E0(Am),A0=e=>{const{__scopePopper:t,children:n}=e,[r,o]=m.useState(null);return u.jsx(VD,{scope:t,anchor:r,onAnchorChange:o,children:n})};A0.displayName=Am;var R0="PopperAnchor",_0=m.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=T0(R0,n),s=m.useRef(null),a=Se(t,s),l=m.useRef(null);return m.useEffect(()=>{const c=l.current;l.current=(r==null?void 0:r.current)||s.current,c!==l.current&&i.onAnchorChange(l.current)}),r?null:u.jsx(pe.div,{...o,ref:a})});_0.displayName=R0;var Rm="PopperContent",[HD,qD]=E0(Rm),D0=m.forwardRef((e,t)=>{var mt,Qi,It,Yi,fh,ph;const{__scopePopper:n,side:r="bottom",sideOffset:o=0,align:i="center",alignOffset:s=0,arrowPadding:a=0,avoidCollisions:l=!0,collisionBoundary:c=[],collisionPadding:d=0,sticky:f="partial",hideWhenDetached:p=!1,updatePositionStrategy:h="optimized",onPlaced:g,...v}=e,b=T0(Rm,n),[y,w]=m.useState(null),x=Se(t,Ji=>w(Ji)),[S,C]=m.useState(null),k=zD(S),E=(k==null?void 0:k.width)??0,T=(k==null?void 0:k.height)??0,j=r+(i!=="center"?"-"+i:""),A=typeof d=="number"?d:{top:0,right:0,bottom:0,left:0,...d},L=Array.isArray(c)?c:[c],F=L.length>0,K={padding:A,boundary:L.filter(WD),altBoundary:F},{refs:I,floatingStyles:Z,placement:q,isPositioned:re,middlewareData:D}=_D({strategy:"fixed",placement:j,whileElementsMounted:(...Ji)=>wD(...Ji,{animationFrame:h==="always"}),elements:{reference:b.anchor},middleware:[jD({mainAxis:o+T,alignmentAxis:s}),l&&ND({mainAxis:!0,crossAxis:!1,limiter:f==="partial"?OD():void 0,...K}),l&&MD({...K}),LD({...K,apply:({elements:Ji,rects:mh,availableWidth:oP,availableHeight:iP})=>{const{width:sP,height:aP}=mh.reference,ja=Ji.floating.style;ja.setProperty("--radix-popper-available-width",`${oP}px`),ja.setProperty("--radix-popper-available-height",`${iP}px`),ja.setProperty("--radix-popper-anchor-width",`${sP}px`),ja.setProperty("--radix-popper-anchor-height",`${aP}px`)}}),S&&FD({element:S,padding:a}),GD({arrowWidth:E,arrowHeight:T}),p&&ID({strategy:"referenceHidden",...K})]}),[O,$]=O0(q),B=Ne(g);Nt(()=>{re&&(B==null||B())},[re,B]);const oe=(mt=D.arrow)==null?void 0:mt.x,Le=(Qi=D.arrow)==null?void 0:Qi.y,De=((It=D.arrow)==null?void 0:It.centerOffset)!==0,[Jt,nt]=m.useState();return Nt(()=>{y&&nt(window.getComputedStyle(y).zIndex)},[y]),u.jsx("div",{ref:I.setFloating,"data-radix-popper-content-wrapper":"",style:{...Z,transform:re?Z.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Jt,"--radix-popper-transform-origin":[(Yi=D.transformOrigin)==null?void 0:Yi.x,(fh=D.transformOrigin)==null?void 0:fh.y].join(" "),...((ph=D.hide)==null?void 0:ph.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:u.jsx(HD,{scope:n,placedSide:O,onArrowChange:C,arrowX:oe,arrowY:Le,shouldHideArrow:De,children:u.jsx(pe.div,{"data-side":O,"data-align":$,...v,ref:x,style:{...v.style,animation:re?void 0:"none"}})})})});D0.displayName=Rm;var j0="PopperArrow",BD={top:"bottom",right:"left",bottom:"top",left:"r
333ight"},N0=m.forwardRef(function(t,n){const{__scopePopper:r,...o}=t,i=qD(j0,r),s=BD[i.placedSide];return u.jsx("span",{ref:i.onArrowChange,style:{position:"absolute",left:i.arrowX,top:i.arrowY,[s]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[i.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[i.placedSide],visibility:i.shouldHideArrow?"hidden":void 0},children:u.jsx($D,{...o,ref:n,style:{...o.style,display:"block"}})})});N0.displayName=j0;function WD(e){return e!==null}var GD=e=>({name:"transformOrigin",options:e,fn(t){var b,y,w;const{placement:n,rects:r,middlewareData:o}=t,s=((b=o.arrow)==null?void 0:b.centerOffset)!==0,a=s?0:e.arrowWidth,l=s?0:e.arrowHeight,[c,d]=O0(n),f={start:"0%",center:"50%",end:"100%"}[d],p=(((y=o.arrow)==null?void 0:y.x)??0)+a/2,h=(((w=o.arrow)==null?void 0:w.y)??0)+l/2;let g="",v="";return c==="bottom"?(g=s?f:`${p}px`,v=`${-l}px`):c==="top"?(g=s?f:`${p}px`,v=`${r.floating.height+l}px`):c==="right"?(g=`${-l}px`,v=s?f:`${h}px`):c==="left"&&(g=`${r.floating.width+l}px`,v=s?f:`${h}px`),{data:{x:g,y:v}}}});function O0(e){const[t,n="center"]=e.split("-");return[t,n]}var KD=A0,QD=_0,YD=D0,JD=N0,XD="Portal",eu=m.forwardRef((e,t)=>{var a;const{container:n,...r}=e,[o,i]=m.useState(!1);Nt(()=>i(!0),[]);const s=n||o&&((a=globalThis==null?void 0:globalThis.document)==null?void 0:a.body);return s?nx.createPortal(u.jsx(pe.div,{...r,ref:t}),s):null});eu.displayName=XD;function ZD(e,t){return m.useReducer((n,r)=>t[n][r]??n,e)}var Lt=e=>{const{present:t,children:n}=e,r=ej(t),o=typeof n=="function"?n({present:r.isPresent}):m.Children.only(n),i=Se(r.ref,tj(o));return typeof n=="function"||r.isPresent?m.cloneElement(o,{ref:i}):null};Lt.displayName="Presence";function ej(e){const[t,n]=m.useState(),r=m.useRef(null),o=m.useRef(e),i=m.useRef("none"),s=e?"mounted":"unmounted",[a,l]=ZD(s,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return m.useEffect(()=>{const c=tl(r.current);i.current=a==="mounted"?c:"none"},[a]),Nt(()=>{const c=r.current,d=o.current;if(d!==e){const p=i.current,h=tl(c);e?l("MOUNT"):h==="none"||(c==null?void 0:c.display)==="none"?l("UNMOUNT"):l(d&&p!==h?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,l]),Nt(()=>{if(t){let c;const d=t.ownerDocument.defaultView??window,f=h=>{const v=tl(r.current).includes(CSS.escape(h.animationName));if(h.target===t&&v&&(l("ANIMATION_END"),!o.current)){const b=t.style.animationFillMode;t.style.animationFillMode="forwards",c=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=b)})}},p=h=>{h.target===t&&(i.current=tl(r.current))};return t.addEventListener("animationstart",p),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{d.clearTimeout(c),t.removeEventListener("animationstart",p),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(a),ref:m.useCallback(c=>{r.current=c?getComputedStyle(c):null,n(c)},[])}}function tl(e){return(e==null?void 0:e.animationName)||"none"}function tj(e){var r,o;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var ad="rovingFocusGroup.onEntryFocus",nj={bubbles:!1,cancelable:!0},Pa="RovingFocusGroup",[Kf,M0,rj]=bm(Pa),[oj,L0]=Hr(Pa,[rj]),[ij,sj]=oj(Pa),I0=m.forwardRef((e,t)=>u.jsx(Kf.Provider,{scope:e.__scopeRovingFocusGroup,children:u.jsx(Kf.Slot,{scope:e.__scopeRovingFocusGroup,children:u.jsx(aj,{...e,ref:t})})}));I0.displayName=Pa;var aj=m.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:o=!1,dir:i,currentTabStopId:s,defaultCurrentTabStopId:a,onCurrentTabStopIdChange:l,onEntryFocus:c,preventScrollOnEntryFocus:d=!1,...f}=e,p=m.useRef(null),h=Se(t,p),g=wm(i),[v,b]=Kc({prop:s,defaultProp:a??null,onChange:l,caller:Pa}),[y,w]=m.useState(!1),x=Ne(c),S=M0(n),C=m.useRef(!1),[k,E]=m.useState(0);return m.useEffect(()=>{const T=p.current;if(T)return T.addEventListener(ad,x),()=>T.removeEventListener(ad,x)},[x]),u.jsx(ij,{scope:n,orientation:r,dir:g,loop:o,currentTabStopId:v,onItemFocus:m.useCallback(T=>b(T),[b]),onItemShiftTab:m.useCallback(()=>w(!0),[]),onFocusableItemAdd:m.useCallback(()=>E(T=>T+1),[]),onFocusableItemRemove:m.useCallback(()=>E(T=>T-1),[]),children:u.jsx(pe.div,{tabIndex:y||k===0?-1:0,"data-orientation":r,...f,ref:h,style:{outline:"none",...e.style},onMouseDown:G(e.onMouseDown,()=>{C.current=!0}),onFocus:G(e.onFocus,T=>{const j=!C.current;if(T.target===T.currentTarget&&j&&!y){const A=new CustomEvent(ad,nj);if(T.currentTarget.dispatchEvent(A),!A.defaultPrevented){const L=S().filter(q=>q.focusable),F=L.find(q=>q.active),K=L.find(q=>
vendor: 3,904 bytes, line 333
333q.id===v),Z=[F,K,...L].filter(Boolean).map(q=>q.ref.current);$0(Z,d)}}C.current=!1}),onBlur:G(e.onBlur,()=>w(!1))})})}),F0="RovingFocusGroupItem",U0=m.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:o=!1,tabStopId:i,children:s,...a}=e,l=li(),c=i||l,d=sj(F0,n),f=d.currentTabStopId===c,p=M0(n),{onFocusableItemAdd:h,onFocusableItemRemove:g,currentTabStopId:v}=d;return m.useEffect(()=>{if(r)return h(),()=>g()},[r,h,g]),u.jsx(Kf.ItemSlot,{scope:n,id:c,focusable:r,active:o,children:u.jsx(pe.span,{tabIndex:f?0:-1,"data-orientation":d.orientation,...a,ref:t,onMouseDown:G(e.onMouseDown,b=>{r?d.onItemFocus(c):b.preventDefault()}),onFocus:G(e.onFocus,()=>d.onItemFocus(c)),onKeyDown:G(e.onKeyDown,b=>{if(b.key==="Tab"&&b.shiftKey){d.onItemShiftTab();return}if(b.target!==b.currentTarget)return;const y=uj(b,d.orientation,d.dir);if(y!==void 0){if(b.metaKey||b.ctrlKey||b.altKey||b.shiftKey)return;b.preventDefault();let x=p().filter(S=>S.focusable).map(S=>S.ref.current);if(y==="last")x.reverse();else if(y==="prev"||y==="next"){y==="prev"&&x.reverse();const S=x.indexOf(b.currentTarget);x=d.loop?dj(x,S+1):x.slice(S+1)}setTimeout(()=>$0(x))}}),children:typeof s=="function"?s({isCurrentTabStop:f,hasTabStop:v!=null}):s})})});U0.displayName=F0;var lj={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function cj(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function uj(e,t,n){const r=cj(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return lj[r]}function $0(e,t=!1){const n=document.activeElement;for(const r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function dj(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var fj=I0,pj=U0,mj=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},Oo=new WeakMap,nl=new WeakMap,rl={},ld=0,z0=function(e){return e&&(e.host||z0(e.parentNode))},hj=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=z0(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},gj=function(e,t,n,r){var o=hj(t,Array.isArray(e)?e:[e]);rl[n]||(rl[n]=new WeakMap);var i=rl[n],s=[],a=new Set,l=new Set(o),c=function(f){!f||a.has(f)||(a.add(f),c(f.parentNode))};o.forEach(c);var d=function(f){!f||l.has(f)||Array.prototype.forEach.call(f.children,function(p){if(a.has(p))d(p);else try{var h=p.getAttribute(r),g=h!==null&&h!=="false",v=(Oo.get(p)||0)+1,b=(i.get(p)||0)+1;Oo.set(p,v),i.set(p,b),s.push(p),v===1&&g&&nl.set(p,!0),b===1&&p.setAttribute(n,"true"),g||p.setAttribute(r,"true")}catch(y){console.error("aria-hidden: cannot operate on ",p,y)}})};return d(t),a.clear(),ld++,function(){s.forEach(function(f){var p=Oo.get(f)-1,h=i.get(f)-1;Oo.set(f,p),i.set(f,h),p||(nl.has(f)||f.removeAttribute(r),nl.delete(f)),h||f.removeAttribute(n)}),ld--,ld||(Oo=new WeakMap,Oo=new WeakMap,nl=new WeakMap,rl={})}},V0=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=mj(e);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),gj(r,o,n,"aria-hidden")):function(){return null}},Cn=function(){return Cn=Object.assign||function(t){for(var n,r=1,o=arguments.length;r<o;r++){n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},Cn.apply(this,arguments)};function H0(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}
vendor: 5,048 bytes, lines 333-348
333function vj(e,t,n){if(n||arguments.length===2)for(var r=0,o=t.length,i;r<o;r++)(i||!(r in t))&&(i||(i=Array.prototype.slice.call(t,0,r)),i[r]=t[r]);return e.concat(i||Array.prototype.slice.call(t))}var Rl="right-scroll-bar-position",_l="width-before-scroll-bar",yj="with-scroll-bars-hidden",bj="--removed-body-scroll-bar-size";function cd(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function wj(e,t){var n=m.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var o=n.value;o!==r&&(n.value=r,n.callback(r,o))}}}})[0];return n.callback=t,n.facade}var xj=typeof window<"u"?m.useLayoutEffect:m.useEffect,Rv=new WeakMap;function Sj(e,t){var n=wj(null,function(r){return e.forEach(function(o){return cd(o,r)})});return xj(function(){var r=Rv.get(n);if(r){var o=new Set(r),i=new Set(e),s=n.current;o.forEach(function(a){i.has(a)||cd(a,null)}),i.forEach(function(a){o.has(a)||cd(a,s)})}Rv.set(n,e)},[e]),n}function Cj(e){return e}function Pj(e,t){t===void 0&&(t=Cj);var n=[],r=!1,o={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(i){var s=t(i,r);return n.push(s),function(){n=n.filter(function(a){return a!==s})}},assignSyncMedium:function(i){for(r=!0;n.length;){var s=n;n=[],s.forEach(i)}n={push:function(a){return i(a)},filter:function(){return n}}},assignMedium:function(i){r=!0;var s=[];if(n.length){var a=n;n=[],a.forEach(i),s=n}var l=function(){var d=s;s=[],d.forEach(i)},c=function(){return Promise.resolve().then(l)};c(),n={push:function(d){s.push(d),c()},filter:function(d){return s=s.filter(d),n}}}};return o}function Ej(e){e===void 0&&(e={});var t=Pj(null);return t.options=Cn({async:!0,ssr:!1},e),t}var q0=function(e){var t=e.sideCar,n=H0(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return m.createElement(r,Cn({},n))};q0.isSideCarExport=!0;function kj(e,t){return e.useMedium(t),q0}var B0=Ej(),ud=function(){},tu=m.forwardRef(function(e,t){var n=m.useRef(null),r=m.useState({onScrollCapture:ud,onWheelCapture:ud,onTouchMoveCapture:ud}),o=r[0],i=r[1],s=e.forwardProps,a=e.children,l=e.className,c=e.removeScrollBar,d=e.enabled,f=e.shards,p=e.sideCar,h=e.noRelative,g=e.noIsolation,v=e.inert,b=e.allowPinchZoom,y=e.as,w=y===void 0?"div":y,x=e.gapMode,S=H0(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),C=p,k=Sj([n,t]),E=Cn(Cn({},S),o);return m.createElement(m.Fragment,null,d&&m.createElement(C,{sideCar:B0,removeScrollBar:c,shards:f,noRelative:h,noIsolation:g,inert:v,setCallbacks:i,allowPinchZoom:!!b,lockRef:n,gapMode:x}),s?m.cloneElement(m.Children.only(a),Cn(Cn({},E),{ref:k})):m.createElement(w,Cn({},E,{className:l,ref:k}),a))});tu.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};tu.classNames={fullWidth:_l,zeroRight:Rl};var Tj=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function Aj(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=Tj();return t&&e.setAttribute("nonce",t),e}function Rj(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function _j(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var Dj=function(){var e=0,t=null;return{add:function(n){e==0&&(t=Aj())&&(Rj(t,n),_j(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},jj=function(){var e=Dj();return function(t,n){m.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},W0=function(){var e=jj(),t=function(n){var r=n.styles,o=n.dynamic;return e(r,o),null};return t},Nj={left:0,top:0,right:0,gap:0},dd=function(e){return parseInt(e||"",10)||0},Oj=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],o=t[e==="padding"?"paddingRight":"marginRight"];return[dd(n),dd(r),dd(o)]},Mj=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return Nj;var t=Oj(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Lj=W0(),ui="data-scroll-locked",Ij=function(e,t,n,r){var o=e.left,i=e.top,s=e.right,a=e.gap;return n===void 0&&(n="margin"),`
334  .`.concat(yj,` {
335   overflow: hidden `).concat(r,`;
336   padding-right: `).concat(a,"px ").concat(r,`;
337  }
338  body[`).concat(ui,`] {
339    overflow: hidden `).concat(r,`;
340    overscroll-behavior: contain;
341    `).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&`
342    padding-left: `.concat(o,`px;
343    padding-top: `).concat(i,`px;
344    padding-right: `).concat(s,`px;
345    margin-left:0;
346    margin-top:0;
347    margin-right: `).concat(a,"px ").concat(r,`;
348    `),n==="padding"&&"padding-right: ".concat(a,"px ").concat(r,";
348")].filter(Boolean).join(""),`
349  }
350  
351  .`).concat(Rl,` {
352    right: `).concat(a,"px ").concat(r,`;
353  }
354  
355  .`).concat(_l,` {
356    margin-right: `).concat(a,"px ").concat(r,`;
357  }
358  
359  .`).concat(Rl," .").concat(Rl,` {
360    right: 0 `).concat(r,`;
361  }
362  
363  .`).concat(_l," .").concat(_l,` {
364    margin-right: 0 `).concat(r,`;
365  }
366  
367  body[`).concat(ui,`] {
368    `).concat(bj,": ").concat(a,`px;
369  }
370`)},_v=function(){var e=parseInt(document.body.getAttribute(ui)||"0",10);return isFinite(e)?e:0},Fj=function(){m.useEffect(function(){return document.body.setAttribute(ui,(_v()+1).toString()),function(){var e=_v()-1;e<=0?document.body.removeAttribute(ui):document.body.setAttribute(ui,e.toString())}},[])},Uj=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=r===void 0?"margin":r;Fj();var i=m.useMemo(function(){return Mj(o)},[o]);return m.createElement(Lj,{styles:Ij(i,!t,o,n?"":"!important")})},Qf=!1;if(typeof window<"u")try{var ol=Object.defineProperty({},"passive",{get:function(){return Qf=!0,!0}});window.addEventListener("test",ol,ol),window.removeEventListener("test",ol,ol)}catch{Qf=!1}var Mo=Qf?{passive:!1}:!1,$j=function(e){return e.tagName==="TEXTAREA"},G0=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!$j(e)&&n[t]==="visible")},zj=function(e){return G0(e,"overflowY")},Vj=function(e){return G0(e,"overflowX")},Dv=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var o=K0(e,r);if(o){var i=Q0(e,r),s=i[1],a=i[2];if(s>a)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Hj=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},qj=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},K0=function(e,t){return e==="v"?zj(t):Vj(t)},Q0=function(e,t){return e==="v"?Hj(t):qj(t)},Bj=function(e,t){return e==="h"&&t==="rtl"?-1:1},Wj=function(e,t,n,r,o){var i=Bj(e,window.getComputedStyle(t).direction),s=i*r,a=n.target,l=t.contains(a),c=!1,d=s>0,f=0,p=0;do{if(!a)break;var h=Q0(e,a),g=h[0],v=h[1],b=h[2],y=v-b-i*g;(g||y)&&K0(e,a)&&(f+=y,p+=g);var w=a.parentNode;a=w&&w.nodeType===Node.DOCUMENT_FRAGMENT_NODE?w.host:w}while(!l&&a!==document.body||l&&(t.contains(a)||t===a));return(d&&Math.abs(f)<1||!d&&Math.abs(p)<1)&&(c=!0),c},il=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},jv=function(e){return[e.deltaX,e.deltaY]},Nv=function(e){return e&&"current"in e?e.current:e},Gj=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Kj=function(e){return`
371  .block-interactivity-`.concat(e,` {pointer-events: none;}
372  .allow-interactivity-`).concat(e,` {pointer-events: all;}
373`)},Qj=0,Lo=[];function Yj(e){var t=m.useRef([]),n=m.useRef([0,0]),r=m.useRef(),o=m.useState(Qj++)[0],i=m.useState(W0)[0],s=m.useRef(e);m.useEffect(function(){s.current=e},[e]),m.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var v=vj([e.lockRef.current],(e.shards||[]).map(Nv),!0).filter(Boolean);return v.forEach(function(b){return b.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),v.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var a=m.useCallback(function(v,b){if("touches"in v&&v.touches.length===2||v.type==="wheel"&&v.ctrlKey)return!s.current.allowPinchZoom;var y=il(v),w=n.current,x="deltaX"in v?v.deltaX:w[0]-y[0],S="deltaY"in v?v.deltaY:w[1]-y[1],C,k=v.target,E=Math.abs(x)>Math.abs(S)?"h":"v";if("touches"in v&&E==="h"&&k.type==="range")return!1;var T=window.getSelection(),j=T&&T.anchorNode,A=j?j===k||j.contains(k):!1;if(A)return!1;var L=Dv(E,k);if(!L)return!0;if(L?C=E:(C=E==="v"?"h":"v",L=Dv(E,k)),!L)return!1;if(!r.current&&"changedTouches"in v&&(x||S)&&(r.current=C),!C)return!0;var F=r.current||C;return Wj(F,b,v,F==="h"?x:S)},[]),l=m.useCallback(function(v){var b=v;if(!(!Lo.length||Lo[Lo.length-1]!==i)){var y="deltaY"in b?jv(b):il(b),w=t.current.filter(function(C){return C.name===b.type&&(C.target===b.target||b.target===C.shadowParent)&&Gj(C.delta,y)})[0];if(w&&w.should){b.cancelable&&b.preventDefault();return}
vendor: 15,542 bytes, line 373
373if(!w){var x=(s.current.shards||[]).map(Nv).filter(Boolean).filter(function(C){return C.contains(b.target)}),S=x.length>0?a(b,x[0]):!s.current.noIsolation;S&&b.cancelable&&b.preventDefault()}}},[]),c=m.useCallback(function(v,b,y,w){var x={name:v,delta:b,target:y,should:w,shadowParent:Jj(y)};t.current.push(x),setTimeout(function(){t.current=t.current.filter(function(S){return S!==x})},1)},[]),d=m.useCallback(function(v){n.current=il(v),r.current=void 0},[]),f=m.useCallback(function(v){c(v.type,jv(v),v.target,a(v,e.lockRef.current))},[]),p=m.useCallback(function(v){c(v.type,il(v),v.target,a(v,e.lockRef.current))},[]);m.useEffect(function(){return Lo.push(i),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:p}),document.addEventListener("wheel",l,Mo),document.addEventListener("touchmove",l,Mo),document.addEventListener("touchstart",d,Mo),function(){Lo=Lo.filter(function(v){return v!==i}),document.removeEventListener("wheel",l,Mo),document.removeEventListener("touchmove",l,Mo),document.removeEventListener("touchstart",d,Mo)}},[]);var h=e.removeScrollBar,g=e.inert;return m.createElement(m.Fragment,null,g?m.createElement(i,{styles:Kj(o)}):null,h?m.createElement(Uj,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Jj(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const Xj=kj(B0,Yj);var _m=m.forwardRef(function(e,t){return m.createElement(tu,Cn({},e,{ref:t,sideCar:Xj}))});_m.classNames=tu.classNames;var Yf=["Enter"," "],Zj=["ArrowDown","PageUp","Home"],Y0=["ArrowUp","PageDown","End"],eN=[...Zj,...Y0],tN={ltr:[...Yf,"ArrowRight"],rtl:[...Yf,"ArrowLeft"]},nN={ltr:["ArrowLeft"],rtl:["ArrowRight"]},Ea="Menu",[oa,rN,oN]=bm(Ea),[_o,J0]=Hr(Ea,[oN,k0,L0]),nu=k0(),X0=L0(),[iN,Do]=_o(Ea),[sN,ka]=_o(Ea),Z0=e=>{const{__scopeMenu:t,open:n=!1,children:r,dir:o,onOpenChange:i,modal:s=!0}=e,a=nu(t),[l,c]=m.useState(null),d=m.useRef(!1),f=Ne(i),p=wm(o);return m.useEffect(()=>{const h=()=>{d.current=!0,document.addEventListener("pointerdown",g,{capture:!0,once:!0}),document.addEventListener("pointermove",g,{capture:!0,once:!0})},g=()=>d.current=!1;return document.addEventListener("keydown",h,{capture:!0}),()=>{document.removeEventListener("keydown",h,{capture:!0}),document.removeEventListener("pointerdown",g,{capture:!0}),document.removeEventListener("pointermove",g,{capture:!0})}},[]),u.jsx(KD,{...a,children:u.jsx(iN,{scope:t,open:n,onOpenChange:f,content:l,onContentChange:c,children:u.jsx(sN,{scope:t,onClose:m.useCallback(()=>f(!1),[f]),isUsingKeyboardRef:d,dir:p,modal:s,children:r})})})};Z0.displayName=Ea;var aN="MenuAnchor",Dm=m.forwardRef((e,t)=>{const{__scopeMenu:n,...r}=e,o=nu(n);return u.jsx(QD,{...o,...r,ref:t})});Dm.displayName=aN;var jm="MenuPortal",[lN,eS]=_o(jm,{forceMount:void 0}),tS=e=>{const{__scopeMenu:t,forceMount:n,children:r,container:o}=e,i=Do(jm,t);return u.jsx(lN,{scope:t,forceMount:n,children:u.jsx(Lt,{present:n||i.open,children:u.jsx(eu,{asChild:!0,container:o,children:r})})})};tS.displayName=jm;var Wt="MenuContent",[cN,Nm]=_o(Wt),nS=m.forwardRef((e,t)=>{const n=eS(Wt,e.__scopeMenu),{forceMount:r=n.forceMount,...o}=e,i=Do(Wt,e.__scopeMenu),s=ka(Wt,e.__scopeMenu);return u.jsx(oa.Provider,{scope:e.__scopeMenu,children:u.jsx(Lt,{present:r||i.open,children:u.jsx(oa.Slot,{scope:e.__scopeMenu,children:s.modal?u.jsx(uN,{...o,ref:t}):u.jsx(dN,{...o,ref:t})})})})}),uN=m.forwardRef((e,t)=>{const n=Do(Wt,e.__scopeMenu),r=m.useRef(null),o=Se(t,r);return m.useEffect(()=>{const i=r.current;if(i)return V0(i)},[]),u.jsx(Om,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:G(e.onFocusOutside,i=>i.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),dN=m.forwardRef((e,t)=>{const n=Do(Wt,e.__scopeMenu);return u.jsx(Om,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),fN=ta("MenuContent.ScrollLock"),Om=m.forwardRef((e,t)=>{const{__scopeMenu:n,loop:r=!1,trapFocus:o,onOpenAutoFocus:i,onCloseAutoFocus:s,disableOutsidePointerEvents:a,onEntryFocus:l,onEscapeKeyDown:c,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:p,onDismiss:h,disableOutsideScroll:g,...v}=e,b=Do(Wt,n),y=ka(Wt,n),w=nu(n),x=X0(n),S=rN(n),[C,k]=m.useState(null),E=m.useRef(null),T=Se(t,E,b.onContentChange),j=m.useRef(0),A=m.useRef(""),L=m.useRef(0),F=m.useRef(null),K=m.useRef("right"),I=m.useRef(0),Z=g?_m:m.Fragment,q=g?{as:fN,allowPinchZoom:!0}:void 0,re=O=>{var mt,Qi;const $=A.current+O,B=S().filter(It=>!It.disabled),oe=document.activeElement,Le=(mt=B.find(It=>It.ref.current===oe))==null?void 0:mt.textValue,De=B.map(It=>It.textValue),Jt=PN(De,$,Le),nt=(Qi=B.find(It=>It.textValue===Jt))==null?void 0:Qi.ref.current;(function It(Yi){A.current=Yi,window.clearTimeout(j.current),Yi!==""&&(j.current=window.setTimeout(()=>It(""),1e3))})($),nt&&setTimeout(()=>nt.focus())};m.useEffect(()=>()=>window.clearTimeout(j.current),[]),d0();const D=m.useCallback(O=>{var B,oe;return K.current===((B=F.current)==null?void 0:B.side)&&kN(O,(oe=F.current)==null?void 0:oe.area)},[]);return u.jsx(cN,{scope:n,searchRef:A,onItemEnter:m.useCallback(O=>{D(O)&&O.preventDefault()},[D]),onItemLeave:m.useCallback(O=>{var $;D(O)||(($=E.current)==null||$.focus(),k(null))},[D]),onTriggerLeave:m.useCallback(O=>{D(O)&&O.preventDefault()},[D]),pointerGraceTimerRef:L,onPointerGraceIntentChange:m.useCallback(O=>{F.current=O},[]),children:u.jsx(Z,{...q,children:u.jsx(xm,{asChild:!0,trapped:o,onMountAutoFocus:G(i,O=>{var $;O.preventDefault(),($=E.current)==null||$.focus({preventScroll:!0})}),onUnmountAutoFocus:s,children:u.jsx(Qc,{asChild:!0,disableOutsidePointerEvents:a,onEscapeKeyDown:c,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:p,onDismiss:h,children:u.jsx(fj,{asChild:!0,...x,dir:y.dir,orientation:"vertical",loop:r,currentTabStopId:C,onCurrentTabStopIdChange:k,onEntryFocus:G(l,O=>{y.isUsingKeyboardRef.current||O.preventDefault()}),preventScrollOnEntryFocus:!0,children:u.jsx(YD,{role:"menu","aria-orientation":"vertical","data-state":yS(b.open),"data-radix-menu-content":"",dir:y.dir,...w,...v,ref:T,style:{outline:"none",...v.style},onKeyDown:G(v.onKeyDown,O=>{const B=O.target.closest("[data-radix-menu-content]")===O.currentTarget,oe=O.ctrlKey||O.altKey||O.metaKey,Le=O.key.length===1;B&&(O.key==="Tab"&&O.preventDefault(),!oe&&Le&&re(O.key));const De=E.current;if(O.target!==De||!eN.includes(O.key))return;O.preventDefault();const nt=S().filter(mt=>!mt.disabled).map(mt=>mt.ref.current);Y0.includes(O.key)&&nt.reverse(),SN(nt)}),onBlur:G(e.onBlur,O=>{O.currentTarget.contains(O.target)||(window.clearTimeout(j.current),A.current="")}),onPointerMove:G(e.onPointerMove,ia(O=>{const $=O.target,B=I.current!==O.clientX;if(O.currentTarget.contains($)&&B){const oe=O.clientX>I.current?"right":"left";K.current=oe,I.current=O.clientX}}))})})})})})})});nS.displayName=Wt;var pN="MenuGroup",Mm=m.forwardRef((e,t)=>{const{__scopeMenu:n,...r}=e;return u.jsx(pe.div,{role:"group",...r,ref:t})});Mm.displayName=pN;var mN="MenuLabel",rS=m.forwardRef((e,t)=>{const{__scopeMenu:n,...r}=e;return u.jsx(pe.div,{...r,ref:t})});rS.displayName=mN;var bc="MenuItem",Ov="menu.itemSelect",ru=m.forwardRef((e,t)=>{const{disabled:n=!1,onSelect:r,...o}=e,i=m.useRef(null),s=ka(bc,e.__scopeMenu),a=Nm(bc,e.__scopeMenu),l=Se(t,i),c=m.useRef(!1),d=()=>{const f=i.current;if(!n&&f){const p=new CustomEvent(Ov,{bubbles:!0,cancelable:!0});f.addEventListener(Ov,h=>r==null?void 0:r(h),{once:!0}),ym(f,p),p.defaultPrevented?c.current=!1:s.onClose()}};return u.jsx(oS,{...o,ref:l,disabled:n,onClick:G(e.onClick,d),onPointerDown:f=>{var p;(p=e.onPointerDown)==null||p.call(e,f),c.current=!0},onPointerUp:G(e.onPointerUp,f=>{var p;c.current||(p=f.currentTarget)==null||p.click()}),onKeyDown:G(e.onKeyDown,f=>{const p=a.searchRef.current!=="";n||p&&f.key===" "||Yf.includes(f.key)&&(f.currentTarget.click(),f.preventDefault())})})});ru.displayName=bc;var oS=m.forwardRef((e,t)=>{const{__scopeMenu:n,disabled:r=!1,textValue:o,...i}=e,s=Nm(bc,n),a=X0(n),l=m.useRef(null),c=Se(t,l),[d,f]=m.useState(!1),[p,h]=m.useState("");return m.useEffect(()=>{const g=l.current;g&&h((g.textContent??"").trim())},[i.children]),u.jsx(oa.ItemSlot,{scope:n,disabled:r,textValue:o??p,children:u.jsx(pj,{asChild:!0,...a,focusable:!r,children:u.jsx(pe.div,{role:"menuitem","data-highlighted":d?"":void 0,"aria-disabled":r||void 0,"data-disabled":r?"":void 0,...i,ref:c,onPointerMove:G(e.onPointerMove,ia(g=>{r?s.onItemLeave(g):(s.onItemEnter(g),g.defaultPrevented||g.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:G(e.onPointerLeave,ia(g=>s.onItemLeave(g))),onFocus:G(e.onFocus,()=>f(!0)),onBlur:G(e.onBlur,()=>f(!1))})})})}),hN="MenuCheckboxItem",iS=m.forwardRef((e,t)=>{const{checked:n=!1,onCheckedChange:r,...o}=e;return u.jsx(uS,{scope:e.__scopeMenu,checked:n,children:u.jsx(ru,{role:"menuitemcheckbox","aria-checked":wc(n)?"mixed":n,...o,ref:t,"data-state":Im(n),onSelect:G(o.onSelect,()=>r==null?void 0:r(wc(n)?!0:!n),{checkForDefaultPrevented:!1})})})});iS.displayName=hN;var sS="MenuRadioGroup",[gN,vN]=_o(sS,{value:void 0,onValueChange:()=>{}}),aS=m.forwardRef((e,t)=>{const{value:n,onValueChange:r,...o}=e,i=Ne(r);return u.jsx(gN,{scope:e.__scopeMenu,value:n,onValueChange:i,children:u.jsx(Mm,{...o,ref:t})})});aS.displayName=sS;var lS="MenuRadioItem",cS=m.forwardRef((e,t)=>{const{value:n,...r}=e,o=vN(lS,e.__scopeMenu),i=n===o.value;return u.jsx(uS,{scope:e.__scopeMenu,checked:i,children:u.jsx(ru,{role:"menuitemradio","aria-checked":i,...r,ref:t,"data-state":Im(i),onSelect:G(r.onSelect,()=>{var s;return(s=o.onValueChange)==null?void 0:s.call(o,n)},{checkForDefaultPrevented:!1})})})});cS.displayName=lS;var Lm="MenuItemIndicator",[uS,yN]=_o(Lm,{checked:!1}),dS=m.forwardRef((e,t)=>{const{__scopeMenu:n,forceMount:r,...o}=e,i=yN(Lm,n);return u.jsx(Lt,{present:r||wc(i.checked)||i.checked===!0,children:u.jsx(pe.span,{...o,ref:t,"data-state":Im(i.checked)})})});dS.displayName=Lm;var bN="MenuSeparator",fS=m.forwardRef((e,t)=>{const{__scopeMenu:n,...r}=e;return u.jsx(pe.div,{role:"separator","aria-orientation":"horizontal",...r,ref:t})});fS.displayName=bN;var wN="MenuArrow",pS=m.forwardRef((e,t)=>{const{__scopeMenu:n,...r}=e,o=nu(n);return u.jsx(JD,{...o,...r,ref:t})});pS.displayName=wN;var xN="MenuSub",[CV,mS]=_o(xN),xs="MenuSubTrigger",hS=m.forwardRef((e,t)=>{const n=Do(xs,e.__scopeMenu),r=ka(xs,e.__scopeMenu),o=mS(xs,e.__scopeMenu),i=Nm(xs,e.__scopeMenu),s=m.useRef(null),{pointerGraceTimerRef:a,onPointerGraceIntentChange:l}=i,c={__scopeMenu:e.__scopeMenu},d=m.useCallback(()=>{s.current&&window.clearTimeout(s.current),s.current=null},[]);return m.useEffect(()=>d,[d]),m.useEffect(()=>{const f=a.current;return()=>{window.clearTimeout(f),l(null)}},[a,l]),u.jsx(Dm,{asChild:!0,...c,children:u.jsx(oS,{id:o.triggerId,"aria-haspopup":"menu","aria-expanded":n.open,"aria-controls":o.contentId,"data-state":yS(n.open),...e,ref:Sa(t,o.onTriggerChange),onClick:f=>{var p;(p=e.onClick)==null||p.call(e,f),!(e.disabled||f.defaultPrevented)&&(f.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:G(e.onPointerMove,ia(f=>{i.onItemEnter(f),!f.defaultPrevented&&!e.disabled&&!n.open&&!s.current&&(i.onPointerGraceIntentChange(null),s.current=window.setTimeout(()=>{n.onOpenChange(!0),d()},100))})),onPointerLeave:G(e.onPointerLeave,ia(f=>{var h,g;d();const p=(h=n.content)==null?void 0:h.getBoundingClientRect();if(p){const v=(g=n.content)==null?void 0:g.dataset.side,b=v==="right",y=b?-5:5,w=p[b?"left":"right"],x=p[b?"right":"left"];i.onPointerGraceIntentChange({area:[{x:f.clientX+y,y:f.clientY},{x:w,y:p.top},{x,y:p.top},{x,y:p.bottom},{x:w,y:p.bottom}],side:v}),window.clearTimeout(a.current),a.current=window.setTimeout(()=>i.onPointerGraceIntentChange(null),300)}else{if(i.onTriggerLeave(f),f.defaultPrevented)return;i.onPointerGraceIntentChange(null)}})),onKeyDown:G(e.onKeyDown,f=>{var h;const p=i.searchRef.current!=="";e.disabled||p&&f.key===" "||tN[r.dir].includes(f.key)&&(n.onOpenChange(!0),(h=n.content)==null||h.focus(),f.preventDefault())})})})});hS.displayName=xs;var gS="MenuSubContent",vS=m.forwardRef((e,t)=>{const n=eS(Wt,e.__scopeMenu),{forceMount:r=n.forceMount,...o}=e,i=Do(Wt,e.__scopeMenu),s=ka(Wt,e.__scopeMenu),a=mS(gS,e.__scopeMenu),l=m.useRef(null),c=Se(t,l);return u.jsx(oa.Provider,{scope:e.__scopeMenu,children:u.jsx(Lt,{present:r||i.open,children:u.jsx(oa.Slot,{scope:e.__scopeMenu,children:u.jsx(Om,{id:a.contentId,"aria-labelledby":a.triggerId,...o,ref:c,align:"start",side:s.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:d=>{var f;s.isUsingKeyboardRef.current&&((f=l.current)==null||f.focus()),d.preventDefault()},onCloseAutoFocus:d=>d.preventDefault(),onFocusOutside:G(e.onFocusOutside,d=>{d.target!==a.trigger&&i.onOpenChange(!1)}),onEscapeKeyDown:G(e.onEscapeKeyDown,d=>{s.onClose(),d.preventDefault()}),onKeyDown:G(e.onKeyDown,d=>{var h;const f=d.currentTarget.contains(d.target),p=nN[s.dir].includes(d.key);f&&p&&(i.onOpenChange(!1),(h=a.trigger)==null||h.focus(),d.preventDefault())})})})})})});vS.displayName=gS;function yS(e){return e?"open":"closed"}function wc(e){return e==="indeterminate"}function Im(e){return wc(e)?"indeterminate":e?"checked":"unchecked"}function SN(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function CN(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function PN(e,t,n){const o=t.length>1&&Array.from(t).every(c=>c===t[0])?t[0]:t,i=n?e.indexOf(n):-1;let s=CN(e,Math.max(i,0));o.length===1&&(s=s.filter(c=>c!==n));const l=s.find(c=>c.toLowerCase().startsWith(o.toLowerCase()));return l!==n?l:void 0}function EN(e,t){const{x:n,y:r}=e;let o=!1;for(let i=0,s=t.length-1;i<t.length;s=i++){const a=t[i],l=t[s],c=a.x,d=a.y,f=l.x,p=l.y;d>r!=p>r&&n<(f-c)*(r-d)/(p-d)+c&&(o=!o)}return o}function kN(e,t){if(!t)return!1;const n={x:e.clientX,y:e.clientY};return EN(n,t)}function ia(e){return t=>t.pointerType==="mouse"?e(t):void 0}var TN=Z0,AN=Dm,RN=tS,_N=nS,DN=Mm,jN=rS,NN=ru,ON=iS,MN=aS,LN=cS,IN=dS,FN=fS,UN=pS,$N=hS,zN=vS,ou="DropdownMenu",[VN]=Hr(ou,[J0]),pt=J0(),[HN,bS]=VN(ou),wS=e=>{const{__scopeDropdownMenu:t,children:n,dir:r,open:o,defaultOpen:i,onOpenChange:s,modal:a=!0}=e,l=pt(t),c=m.useRef(null),[d,f]=Kc({prop:o,defaultProp:i??!1,onChange:s,caller:ou});return u.jsx(HN,{scope:t,triggerId:li(),triggerRef:c,contentId:li(),open:d,onOpenChange:f,onOpenToggle:m.useCallback(()=>f(p=>!p),[f]),modal:a,children:u.jsx(TN,{...l,open:d,onOpenChange:f,dir:r,modal:a,children:n})})};wS.displayName=ou;var xS="DropdownMenuTrigger",SS=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,disabled:r=!1,...o}=e,i=bS(xS,n),s=pt(n);return u.jsx(AN,{asChild:!0,...s,children:u.jsx(pe.button,{type:"button",id:i.triggerId,"aria-haspopup":"menu","aria-expanded":i.open,"aria-controls":i.open?i.contentId:void 0,"data-state":i.open?"open":"closed","data-disabled":r?"":void 0,disabled:r,...o,ref:Sa(t,i.triggerRef),onPointerDown:G(e.onPointerDown,a=>{!r&&a.button===0&&a.ctrlKey===!1&&(i.onOpenToggle(),i.open||a.preventDefault())}),onKeyDown:G(e.onKeyDown,a=>{r||(["Enter"," "].includes(a.key)&&i.onOpenToggle(),a.key==="ArrowDown"&&i.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(a.key)&&a.preventDefault())})})})});SS.displayName=xS;var qN="DropdownMenuPortal",CS=e=>{const{__scopeDropdownMenu:t,...n}=e,r=pt(t);return u.jsx(RN,{...r,...n})};CS.displayName=qN;var PS="DropdownMenuContent",ES=m.forwardRef((e,t)=>
373{const{__scopeDropdownMenu:n,...r}=e,o=bS(PS,n),i=pt(n),s=m.useRef(!1);return u.jsx(_N,{id:o.contentId,"aria-labelledby":o.triggerId,...i,...r,ref:t,onCloseAutoFocus:G(e.onCloseAutoFocus,a=>{var l;s.current||(l=o.triggerRef.current)==null||l.focus(),s.current=!1,a.preventDefault()}),onInteractOutside:G(e.onInteractOutside,a=>{const l=a.detail.originalEvent,c=l.button===0&&l.ctrlKey===!0,d=l.button===2||c;(!o.modal||d)&&(s.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});ES.displayName=PS;var BN="DropdownMenuGroup",WN=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(DN,{...o,...r,ref:t})});WN.displayName=BN;var GN="DropdownMenuLabel",kS=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(jN,{...o,...r,ref:t})});kS.displayName=GN;var KN="DropdownMenuItem",TS=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(NN,{...o,...r,ref:t})});TS.displayName=KN;var QN="DropdownMenuCheckboxItem",AS=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(ON,{...o,...r,ref:t})});AS.displayName=QN;var YN="DropdownMenuRadioGroup",JN=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(MN,{...o,...r,ref:t})});JN.displayName=YN;var XN="DropdownMenuRadioItem",RS=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(LN,{...o,...r,ref:t})});RS.displayName=XN;var ZN="DropdownMenuItemIndicator",_S=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(IN,{...o,...r,ref:t})});_S.displayName=ZN;var eO="DropdownMenuSeparator",DS=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(FN,{...o,...r,ref:t})});DS.displayName=eO;var tO="DropdownMenuArrow",nO=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(UN,{...o,...r,ref:t})});nO.displayName=tO;var rO="DropdownMenuSubTrigger",jS=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx($N,{...o,...r,ref:t})});jS.displayName=rO;var oO="DropdownMenuSubContent",NS=m.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...r}=e,o=pt(n);return u.jsx(zN,{...o,...r,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});NS.displayName=oO;var iO=wS,sO=SS,aO=CS,OS=ES,MS=kS,LS=TS,IS=AS,FS=RS,US=_S,$S=DS,zS=jS,VS=NS;const Di=iO,ji=sO,lO=m.forwardRef(({className:e,inset:t,children:n,...r},o)=>u.jsxs(zS,{ref:o,className:U("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",t&&"pl-8",e),...r,children:[n,u.jsx(ER,{className:"ml-auto h-4 w-4"})]}));lO.displayName=zS.displayName;const cO=m.forwardRef(({className:e,...t},n)=>u.jsx(VS,{ref:n,className:U("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));cO.displayName=VS.displayName;const So=m.forwardRef(({className:e,sideOffset:t=4,...n},r)=>u.jsx(aO,{children:u.jsx(OS,{ref:r,sideOffset:t,className:U("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
373de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...n})}));So.displayName=OS.displayName;const We=m.forwardRef(({className:e,inset:t,...n},r)=>u.jsx(LS,{ref:r,className:U("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...n}));We.displayName=LS.displayName;const uO=m.forwardRef(({className:e,children:t,checked:n,...r},o)=>u.jsxs(IS,{ref:o,className:U("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:n,...r,children:[u.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:u.jsx(US,{children:u.jsx(PR,{className:"h-4 w-4"})})}),t]}));uO.displayName=IS.displayName;const dO=m.forwardRef(({className:e,children:t,...n},r)=>u.jsxs(FS,{ref:r,className:U("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...n,children:[u.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:u.jsx(US,{children:u.jsx(TR,{className:"h-2 w-2 fill-current"})})}),t]}));dO.displayName=FS.displayName;const Fm=m.forwardRef(({className:e,inset:t,...n},r)=>u.jsx(MS,{ref:r,className:U("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...n}));Fm.displayName=MS.displayName;const En=m.forwardRef(({className:e,...t},n)=>u.jsx($S,{ref:n,className:U("-mx-1 my-1 h-px bg-muted",e),...t}));En.displayName=$S.displayName;function fO(e,t=[]){let n=[];function r(i,s){const a=m.createContext(s);a.displayName=i+"Context";const l=n.length;n=[...n,s];const c=f=>{var y;const{scope:p,children:h,...g}=f,v=((y=p==null?void 0:p[e])==null?void 0:y[l])||a,b=m.useMemo(()=>g,Object.values(g));return u.jsx(v.Provider,{value:b,children:h})};c.displayName=i+"Provider";function d(f,p){var v;const h=((v=p==null?void 0:p[e])==null?void 0:v[l])||a,g=m.useContext(h);if(g)return g;if(s!==void 0)return s;throw new Error(`\`${f}\` must be used within \`${i}\``)}return[c,d]}const o=()=>{const i=n.map(s=>m.createContext(s));return function(a){const l=(a==null?void 0:a[e])||i;return m.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,pO(o,...t)]}function pO(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const s=r.reduce((a,{useScope:l,scopeName:c})=>{const f=l(i)[`__scope${c}`];return{...a,...f}},{});return m.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])}};return n.scopeName=t.scopeName,n}var mO=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],iu=mO.reduce((e,t)=>{const n=Zx(`Primitive.${t}`),r=m.forwardRef((o,i)=>{const{asChild:s,...a}=o,l=s?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),u.jsx(l,{...a,ref:i})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{}),HS={exports:{}},qS={};/**
374 * @license React
375 * use-sync-external-store-shim.production.js
376 *
377 * Copyright (c) Meta Platforms, Inc. and affiliates.
378 *
379 * This source code is licensed under the MIT license found in the
380 * LICENSE file in the root directory of this source tree.
381 */var Ni=m;function hO(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var gO=typeof Object.is=="function"?Object.is:hO,vO=Ni.useState,yO=Ni.useEffect,bO=Ni.useLayoutEffect,wO=Ni.useDebugValue;function xO(e,t){var n=t(),r=vO({inst:{value:n,getSnapshot:t}}),o=r[0].inst,i=r[1];return bO(function(){o.value=n,o.getSnapshot=t,fd(o)&&i({inst:o})},[e,n,t]),yO(function(){return fd(o)&&i({inst:o}),e(function(){fd(o)&&i({inst:o})})},[e]),wO(n),n}function fd(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!gO(e,n)}catch{return!0}}function SO(e,t){return t()}var CO=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?SO:xO;qS.useSyncExternalStore=Ni.useSyncExternalStore!==void 0?Ni.useSyncExternalStore:CO;HS.exports=qS;var BS=HS.exports;function PO(){return BS.useSyncExternalStore(EO,()=>!0,()=>!1)}function EO(){return()=>{}}var Um="Avatar",[kO]=fO(Um),[TO,WS]=kO(Um),GS=m.forwardRef((e,t)=>
vendor: 5,782 bytes, line 381
381{const{__scopeAvatar:n,...r}=e,[o,i]=m.useState("idle");return u.jsx(TO,{scope:n,imageLoadingStatus:o,onImageLoadingStatusChange:i,children:u.jsx(iu.span,{...r,ref:t})})});GS.displayName=Um;var KS="AvatarImage",QS=m.forwardRef((e,t)=>{const{__scopeAvatar:n,src:r,onLoadingStatusChange:o=()=>{},...i}=e,s=WS(KS,n),a=AO(r,i),l=Ne(c=>{o(c),s.onImageLoadingStatusChange(c)});return Nt(()=>{a!=="idle"&&l(a)},[a,l]),a==="loaded"?u.jsx(iu.img,{...i,ref:t,src:r}):null});QS.displayName=KS;var YS="AvatarFallback",JS=m.forwardRef((e,t)=>{const{__scopeAvatar:n,delayMs:r,...o}=e,i=WS(YS,n),[s,a]=m.useState(r===void 0);return m.useEffect(()=>{if(r!==void 0){const l=window.setTimeout(()=>a(!0),r);return()=>window.clearTimeout(l)}},[r]),s&&i.imageLoadingStatus!=="loaded"?u.jsx(iu.span,{...o,ref:t}):null});JS.displayName=YS;function Mv(e,t){return e?t?(e.src!==t&&(e.src=t),e.complete&&e.naturalWidth>0?"loaded":"loading"):"error":"idle"}function AO(e,{referrerPolicy:t,crossOrigin:n}){const r=PO(),o=m.useRef(null),i=r?(o.current||(o.current=new window.Image),o.current):null,[s,a]=m.useState(()=>Mv(i,e));return Nt(()=>{a(Mv(i,e))},[i,e]),Nt(()=>{const l=f=>()=>{a(f)};if(!i)return;const c=l("loaded"),d=l("error");return i.addEventListener("load",c),i.addEventListener("error",d),t&&(i.referrerPolicy=t),typeof n=="string"&&(i.crossOrigin=n),()=>{i.removeEventListener("load",c),i.removeEventListener("error",d)}},[i,n,t]),s}var XS=GS,ZS=QS,e1=JS;const sa=m.forwardRef(({className:e,...t},n)=>u.jsx(XS,{ref:n,className:U("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...t}));sa.displayName=XS.displayName;const RO=m.forwardRef(({className:e,...t},n)=>u.jsx(ZS,{ref:n,className:U("aspect-square h-full w-full",e),...t}));RO.displayName=ZS.displayName;const aa=m.forwardRef(({className:e,...t},n)=>u.jsx(e1,{ref:n,className:U("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...t}));aa.displayName=e1.displayName;var su="Dialog",[t1,PV]=Hr(su),[_O,mn]=t1(su),n1=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:i,modal:s=!0}=e,a=m.useRef(null),l=m.useRef(null),[c,d]=Kc({prop:r,defaultProp:o??!1,onChange:i,caller:su});return u.jsx(_O,{scope:t,triggerRef:a,contentRef:l,contentId:li(),titleId:li(),descriptionId:li(),open:c,onOpenChange:d,onOpenToggle:m.useCallback(()=>d(f=>!f),[d]),modal:s,children:n})};n1.displayName=su;var r1="DialogTrigger",o1=m.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=mn(r1,n),i=Se(t,o.triggerRef);return u.jsx(pe.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Vm(o.open),...r,ref:i,onClick:G(e.onClick,o.onOpenToggle)})});o1.displayName=r1;var $m="DialogPortal",[DO,i1]=t1($m,{forceMount:void 0}),s1=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:o}=e,i=mn($m,t);return u.jsx(DO,{scope:t,forceMount:n,children:m.Children.map(r,s=>u.jsx(Lt,{present:n||i.open,children:u.jsx(eu,{asChild:!0,container:o,children:s})}))})};s1.displayName=$m;var xc="DialogOverlay",a1=m.forwardRef((e,t)=>{const n=i1(xc,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=mn(xc,e.__scopeDialog);return i.modal?u.jsx(Lt,{present:r||i.open,children:u.jsx(NO,{...o,ref:t})}):null});a1.displayName=xc;var jO=ta("DialogOverlay.RemoveScroll"),NO=m.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=mn(xc,n);return u.jsx(_m,{as:jO,allowPinchZoom:!0,shards:[o.contentRef],children:u.jsx(pe.div,{"data-state":Vm(o.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),Co="DialogContent",l1=m.forwardRef((e,t)=>{const n=i1(Co,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=mn(Co,e.__scopeDialog);return u.jsx(Lt,{present:r||i.open,children:i.modal?u.jsx(OO,{...o,ref:t}):u.jsx(MO,{...o,ref:t})})});l1.displayName=Co;var OO=m.forwardRef((e,t)=>{const n=mn(Co,e.__scopeDialog),r=m.useRef(null),o=Se(t,n.contentRef,r);return m.useEffect(()=>{const i=r.current;if(i)return V0(i)},[]),u.jsx(c1,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:G(e.onCloseAutoFocus,i=>{var s;i.preventDefault(),(s=n.triggerRef.current)==null||s.focus()}),onPointerDownOutside:G(e.onPointerDownOutside,i=>{const s=i.detail.originalEvent,a=s.button===0&&s.ctrlKey===!0;(s.button===2||a)&&i.preventDefault()}),onFocusOutside:G(e.onFocusOutside,i=>i.preventDefault())})}),MO=m.forwardRef((e,t)=>{const n=mn(Co,e.__scopeDialog),r=m.useRef(!1),o=m.useRef(!1);return u.jsx(c1,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{var s,a;(s=e.onCloseAutoFocus)==null||s.call(e,i),i.defaultPrevented||(r.current||(a=n.triggerRef.current)==null||a.focus(),i.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:i=>{var l,c;(l=e.onInteractOutside)==null||l.call(e,i),i.defaultPrevented||(r.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=i.target;((c=n.triggerRef.current)==null?void 0:c.contains(s))&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}})}),c1=m.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:i,...s}=e,a=mn(Co,n),l=m.useRef(null),c=Se(t,l);return d0(),u.jsxs(u.Fragment,{children:[u.jsx(xm,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:i,children:u.jsx(Qc,{role:"dialog",id:a.contentId,"aria-describedby":a.descriptionId,"aria-labelledby":a.titleId,"data-state":Vm(a.open),...s,ref:c,onDismiss:()=>a.onOpenChange(!1)})}),u.jsxs(u.Fragment,{children:[u.jsx(LO,{titleId:a.titleId}),u.jsx(FO,{contentRef:l,descriptionId:a.descriptionId})]})]})}),zm="DialogTitle",u1=m.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=mn(zm,n);return u.jsx(pe.h2,{id:o.titleId,...r,ref:t})});u1.displayName=zm;var d1="DialogDescription",f1=m.forwardRef((e,t)=>
381{const{__scopeDialog:n,...r}=e,o=mn(d1,n);return u.jsx(pe.p,{id:o.descriptionId,...r,ref:t})});f1.displayName=d1;var p1="DialogClose",m1=m.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=mn(p1,n);return u.jsx(pe.button,{type:"button",...r,ref:t,onClick:G(e.onClick,()=>o.onOpenChange(!1))})});m1.displayName=p1;function Vm(e){return e?"open":"closed"}var h1="DialogTitleWarning",[EV,g1]=e_(h1,{contentName:Co,titleName:zm,docsSlug:"dialog"}),LO=({titleId:e})=>{const t=g1(h1),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
382
383If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
384
385For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return m.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},IO="DialogDescriptionWarning",FO=({contentRef:e,descriptionId:t})=>{const r=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${g1(IO).contentName}}.`;return m.useEffect(()=>{var i;const o=(i=e.current)==null?void 0:i.getAttribute("aria-describedby");t&&o&&(document.getElementById(t)||console.warn(r))},[r,e,t]),null},UO=n1,$O=o1,zO=s1,v1=a1,y1=l1,b1=u1,w1=f1,VO=m1;const x1=UO,HO=$O,qO=zO,S1=m.forwardRef(({className:e,...t},n)=>u.jsx(v1,{className:U("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:n}));S1.displayName=v1.displayName;const BO=gm("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),Hm=m.forwardRef(({side:e="right",className:t,children:n,...r},o)=>u.jsxs(qO,{children:[u.jsx(S1,{}),u.jsxs(y1,{ref:o,className:U(BO({side:e}),t),...r,children:[n,u.jsxs(VO,{className:"absolute right-4 top-4 roun
385ded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[u.jsx(Vi,{className:"h-4 w-4"}),u.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Hm.displayName=y1.displayName;const C1=({className:e,...t})=>u.jsx("div",{className:U("flex flex-col space-y-2 text-center sm:text-left",e),...t});C1.displayName="SheetHeader";const P1=m.forwardRef(({className:e,...t},n)=>u.jsx(b1,{ref:n,className:U("text-lg font-semibold text-foreground",e),...t}));P1.displayName=b1.displayName;const E1=m.forwardRef(({className:e,...t},n)=>u.jsx(w1,{ref:n,className:U("text-sm text-muted-foreground",e),...t}));E1.displayName=w1.displayName;const WO={theme:"system",setTheme:()=>null},k1=m.createContext(WO);function GO({children:e,defaultTheme:t="light",storageKey:n="sbschool-theme",...r}){const[o,i]=m.useState(()=>(typeof window<"u"?localStorage.getItem(n):null)||t);m.useEffect(()=>{if(typeof window>"u")return;const a=window.document.documentElement;if(a.classList.remove("light","dark"),o==="system"){const l=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";a.classList.add(l);return}a.classList.add(o)},[o]);const s={theme:o,setTheme:a=>{localStorage.setItem(n,a),i(a)}};return u.jsx(k1.Provider,{...r,value:s,children:e})}const KO=()=>{const e=m.useContext(k1);if(e===void 0)throw new Error("useTheme must be used within a ThemeProvider");return e};function au(){const{setTheme:e,theme:t}=KO(),{t:n}=J();return u.jsxs(Di,{children:[u.jsx(ji,{asChild:!0,children:u.jsxs(we,{variant:"ghost",size:"icon",className:"h-9 w-9",children:[u.jsx(tv,{className:"h-4 w-4 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0"}),u.jsx(ev,{className:"absolute h-4 w-4 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100"}),u.jsx("span",{className:"sr-only",children:n("common.theme.toggleTheme")})]})}),u.jsxs(So,{align:"end",children:[u.jsxs(We,{onClick:()=>e("light"),className:t==="light"?"bg-accent":"",children:[u.jsx(tv,{className:"mr-2 h-4 w-4"}),n("common.theme.light")]}),u.jsxs(We,{onClick:()=>e("dark"),className:t==="dark"?"bg-accent":"",children:[u.jsx(ev,{className:"mr-2 h-4 w-4"}),n("common.theme.dark")]}),u.jsxs(We,{onClick:()=>e("system"),className:t==="system"?"bg-accent":"",children:[u.jsx($R,{className:"mr-2 h-4 w-4"}),n("common.theme.system")]})]})]})}const QO={},Lv=e=>{let t;const n=new Set,r=(d,f)=>{const p=typeof d=="function"?d(t):d;if(!Object.is(p,t)){const h=t;t=f??(typeof p!="object"||p===null)?p:Object.assign({},t,p),n.forEach(g=>g(t,h))}},o=()=>t,l={setState:r,getState:o,getInitialState:()=>c,subscribe:d=>(n.add(d),()=>n.delete(d)),destroy:()=>{(QO?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},c=t=e(r,o,l);return l},YO=e=>e?Lv(e):Lv;var T1={exports:{}},A1={};/**
386 * @license React
387 * use-sync-external-store-shim/with-selector.production.js
388 *
389 * Copyright (c) Meta Platforms, Inc. and affiliates.
390 *
391 * This source code is licensed under the MIT license found in the
392 * LICENSE file in the root directory of this source tree.
393 */var lu=m,JO=BS;function XO(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var ZO=typeof Object.is=="function"?Object.is:XO,eM=JO.useSyncExternalStore,tM=lu.useRef,nM=lu.useEffect,rM=lu.useMemo,oM=lu.useDebugValue;A1.useSyncExternalStoreWithSelector=function(e,t,n,r,o){var i=tM(null);if(i.current===null){var s={hasValue:!1,value:null};i.current=s}else s=i.current;i=rM(function(){function l(h){if(!c){if(c=!0,d=h,h=r(h),o!==void 0&&s.hasValue){var g=s.value;if(o(g,h))return f=g}return f=h}if(g=f,ZO(d,h))return g;var v=r(h);return o!==void 0&&o(g,v)?(d=h,g):(d=h,f=v)}var c=!1,d,f,p=n===void 0?null:n;return[function(){return l(t())},p===null?void 0:function(){return l(p())}]},[t,n,r,o]);var a=eM(e,i[0],i[1]);return nM(function(){s.hasValue=!0,s.value=a},[a]),oM(a),a};T1.exports=A1;var iM=T1.exports;const sM=Eo(iM),R1={},{useDebugValue:aM}=Ce,{useSyncExternalStoreWithSelector:lM}=sM;let Iv=!1;const cM=e=>e;function uM(e,t=cM,n){(R1?"production":void 0)!=="production"&&n&&!Iv&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),Iv=!0);const r=lM(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return aM(r),r}const Fv=e=>{(R1?"production":void 0)!=="production"&&typeof e!="function"&&console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { use
393Store } from 'zustand'`.");const t=typeof e=="function"?YO(e):e,n=(r,o)=>uM(t,r,o);return Object.assign(n,t),n},qm=e=>e?Fv(e):Fv;function _1(e,t){return function(){return e.apply(t,arguments)}}const{toString:dM}=Object.prototype,{getPrototypeOf:Bm}=Object,{iterator:cu,toStringTag:D1}=Symbol,uu=(e=>t=>{const n=dM.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),hn=e=>(e=e.toLowerCase(),t=>uu(t)===e),du=e=>t=>typeof t===e,{isArray:Wi}=Array,Oi=du("undefined");function Ta(e){return e!==null&&!Oi(e)&&e.constructor!==null&&!Oi(e.constructor)&&St(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const j1=hn("ArrayBuffer");function fM(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&j1(e.buffer),t}const pM=du("string"),St=du("function"),N1=du("number"),Aa=e=>e!==null&&typeof e=="object",mM=e=>e===!0||e===!1,Dl=e=>{if(uu(e)!=="object")return!1;const t=Bm(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(D1 in e)&&!(cu in e)},hM=e=>{if(!Aa(e)||Ta(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},gM=hn("Date"),vM=hn("File"),yM=hn("Blob"),bM=hn("FileList"),wM=e=>Aa(e)&&St(e.pipe),xM=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||St(e.append)&&((t=uu(e))==="formdata"||t==="object"&&St(e.toString)&&e.toString()==="[object FormData]"))},SM=hn("URLSearchParams"),[CM,PM,EM,kM]=["ReadableStream","Request","Response","Headers"].map(hn),TM=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ra(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,o;if(typeof e!="object"&&(e=[e]),Wi(e))for(r=0,o=e.length;r<o;r++)t.call(null,e[r],r,e);else{if(Ta(e))return;const i=n?Object.getOwnPropertyNames(e):Object.keys(e),s=i.length;let a;for(r=0;r<s;r++)a=i[r],t.call(null,e[a],a,e)}}function O1(e,t){if(Ta(e))return null;t=t.toLowerCase();const n=Object.keys(e);let r=n.length,o;for(;r-- >0;)if(o=n[r],t===o.toLowerCase())return o;return null}const Xr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,M1=e=>!Oi(e)&&e!==Xr;function Jf(){const{caseless:e,skipUndefined:t}=M1(this)&&this||{},n={},r=(o,i)=>{const s=e&&O1(n,i)||i;Dl(n[s])&&Dl(o)?n[s]=Jf(n[s],o):Dl(o)?n[s]=Jf({},o):Wi(o)?n[s]=o.slice():(!t||!Oi(o))&&(n[s]=o)};for(let o=0,i=arguments.length;o<i;o++)arguments[o]&&Ra(arguments[o],r);return n}const AM=(e,t,n,{allOwnKeys:r}={})=>(Ra(t,(o,i)=>{n&&St(o)?e[i]=_1(o,n):e[i]=o},{allOwnKeys:r}),e),RM=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),_M=(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)},DM=(e,t,n,r)=>{let o,i,s;const a={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)s=o[i],(!r||r(s,e,t))&&!a[s]&&(t[s]=e[s],a[s]=!0);e=n!==!1&&Bm(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},jM=(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},NM=e=>{if(!e)return null;if(Wi(e))return e;let t=e.length;if(!N1(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},OM=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Bm(Uint8Array)),MM=(e,t)=>{const r=(e&&e[cu]).call(e);let o;for(;(o=r.next())&&!o.done;){const i=o.value;t.call(e,i[0],i[1])}},LM=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},IM=hn("HTMLFormElement"),FM=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,o){return r.toUpperCase()+o}),Uv=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),UM=hn("RegExp"),L1=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Ra(n,(o,i)=>{let s;(s=t(o,i,e))!==!1&&(r[i]=s||o)}),Object.defineProperties(e,r)},$M=e=>{L1(e,(t,n)=>{if(St(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(St(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+"'")})}})},zM=(e,t)=>{const n={},r=o=>{o.forEach(i=>
vendor: 4,130 bytes, line 393
393{n[i]=!0})};return Wi(e)?r(e):r(String(e).split(t)),n},VM=()=>{},HM=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function qM(e){return!!(e&&St(e.append)&&e[D1]==="FormData"&&e[cu])}const BM=e=>{const t=new Array(10),n=(r,o)=>{if(Aa(r)){if(t.indexOf(r)>=0)return;if(Ta(r))return r;if(!("toJSON"in r)){t[o]=r;const i=Wi(r)?[]:{};return Ra(r,(s,a)=>{const l=n(s,o+1);!Oi(l)&&(i[a]=l)}),t[o]=void 0,i}}return r};return n(e,0)},WM=hn("AsyncFunction"),GM=e=>e&&(Aa(e)||St(e))&&St(e.then)&&St(e.catch),I1=((e,t)=>e?setImmediate:t?((n,r)=>(Xr.addEventListener("message",({source:o,data:i})=>{o===Xr&&i===n&&r.length&&r.shift()()},!1),o=>{r.push(o),Xr.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",St(Xr.postMessage)),KM=typeof queueMicrotask<"u"?queueMicrotask.bind(Xr):typeof process<"u"&&process.nextTick||I1,QM=e=>e!=null&&St(e[cu]),R={isArray:Wi,isArrayBuffer:j1,isBuffer:Ta,isFormData:xM,isArrayBufferView:fM,isString:pM,isNumber:N1,isBoolean:mM,isObject:Aa,isPlainObject:Dl,isEmptyObject:hM,isReadableStream:CM,isRequest:PM,isResponse:EM,isHeaders:kM,isUndefined:Oi,isDate:gM,isFile:vM,isBlob:yM,isRegExp:UM,isFunction:St,isStream:wM,isURLSearchParams:SM,isTypedArray:OM,isFileList:bM,forEach:Ra,merge:Jf,extend:AM,trim:TM,stripBOM:RM,inherits:_M,toFlatObject:DM,kindOf:uu,kindOfTest:hn,endsWith:jM,toArray:NM,forEachEntry:MM,matchAll:LM,isHTMLForm:IM,hasOwnProperty:Uv,hasOwnProp:Uv,reduceDescriptors:L1,freezeMethods:$M,toObjectSet:zM,toCamelCase:FM,noop:VM,toFiniteNumber:HM,findKey:O1,global:Xr,isContextDefined:M1,isSpecCompliantForm:qM,toJSONObject:BM,isAsyncFn:WM,isThenable:GM,setImmediate:I1,asap:KM,isIterable:QM};function ee(e,t,n,r,o){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),o&&(this.response=o,this.status=o.status?o.status:null)}R.inherits(ee,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.status}}});const F1=ee.prototype,U1={};["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=>{U1[e]={value:e}});Object.defineProperties(ee,U1);Object.defineProperty(F1,"isAxiosError",{value:!0});ee.from=(e,t,n,r,o,i)=>{const s=Object.create(F1);R.toFlatObject(e,s,function(d){return d!==Error.prototype},c=>c!=="isAxiosError");const a=e&&e.message?e.message:"Error",l=t==null&&e?e.code:t;return ee.call(s,a,l,n,r,o),e&&s.cause==null&&Object.defineProperty(s,"cause",{value:e,configurable:!0}),s.name=e&&e.name||"Error",i&&Object.assign(s,i),s};const YM=null;function Xf(e){return R.isPlainObject(e)||R.isArray(e)}function $1(e){return R.endsWith(e,"[]")?e.slice(0,-2):e}function $v(e,t,n){return e?e.concat(t).map(function(o,i){return o=$1(o),!n&&i?"["+o+"]":o}).join(n?".":""):t}function JM(e){return R.isArray(e)&&!e.some(Xf)}const XM=R.toFlatObject(R,{},null,function(t){return/^is[A-Z]/.test(t)});function fu(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(v,b){return!R.isUndefined(b[v])});const r=n.metaTokens,o=n.visitor||d,i=n.dots,s=n.indexes,l=(n.Blob||typeof Blob<"u"&&Blob)&&R.isSpecCompliantForm(t);if(!R.isFunction(o))throw new TypeError("visitor must be a function");function c(g){if(g===null)return"";if(R.isDate(g))return g.toISOString();if(R.isBoolean(g))return g.toString();if(!l&&R.isBlob(g))throw new ee("Blob is not supported. Use a Buffer instead.");return R.isArrayBuffer(g)||R.isTypedArray(g)?l&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function d(g,v,b){let y=g;if(g&&!b&&typeof g=="object"){if(R.endsWith(v,"{}"))v=r?v:v.slice(0,-2),g=JSON.stringify(g);
vendor: 4,291 bytes, line 393
393else if(R.isArray(g)&&JM(g)||(R.isFileList(g)||R.endsWith(v,"[]"))&&(y=R.toArray(g)))return v=$1(v),y.forEach(function(x,S){!(R.isUndefined(x)||x===null)&&t.append(s===!0?$v([v],S,i):s===null?v:v+"[]",c(x))}),!1}return Xf(g)?!0:(t.append($v(b,v,i),c(g)),!1)}const f=[],p=Object.assign(XM,{defaultVisitor:d,convertValue:c,isVisitable:Xf});function h(g,v){if(!R.isUndefined(g)){if(f.indexOf(g)!==-1)throw Error("Circular reference detected in "+v.join("."));f.push(g),R.forEach(g,function(y,w){(!(R.isUndefined(y)||y===null)&&o.call(t,y,R.isString(w)?w.trim():w,v,p))===!0&&h(y,v?v.concat(w):[w])}),f.pop()}}if(!R.isObject(e))throw new TypeError("data must be an object");return h(e),t}function zv(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function Wm(e,t){this._pairs=[],e&&fu(e,this,t)}const z1=Wm.prototype;z1.append=function(t,n){this._pairs.push([t,n])};z1.toString=function(t){const n=t?function(r){return t.call(this,r,zv)}:zv;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};function ZM(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function V1(e,t,n){if(!t)return e;const r=n&&n.encode||ZM;R.isFunction(n)&&(n={serialize:n});const o=n&&n.serialize;let i;if(o?i=o(t,n):i=R.isURLSearchParams(t)?t.toString():new Wm(t,n).toString(r),i){const s=e.indexOf("#");s!==-1&&(e=e.slice(0,s)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class Vv{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 H1={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},eL=typeof URLSearchParams<"u"?URLSearchParams:Wm,tL=typeof FormData<"u"?FormData:null,nL=typeof Blob<"u"?Blob:null,rL={isBrowser:!0,classes:{URLSearchParams:eL,FormData:tL,Blob:nL},protocols:["http","https","file","blob","url","data"]},Gm=typeof window<"u"&&typeof document<"u",Zf=typeof navigator=="object"&&navigator||void 0,oL=Gm&&(!Zf||["ReactNative","NativeScript","NS"].indexOf(Zf.product)<0),iL=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",sL=Gm&&window.location.href||"http://localhost",aL=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Gm,hasStandardBrowserEnv:oL,hasStandardBrowserWebWorkerEnv:iL,navigator:Zf,origin:sL},Symbol.toStringTag,{value:"Module"})),et={...aL,...rL};function lL(e,t){return fu(e,new et.classes.URLSearchParams,{visitor:function(n,r,o,i){return et.isNode&&R.isBuffer(n)?(this.append(r,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}function cL(e){return R.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function uL(e){const t={},n=Object.keys(e);let r;const o=n.length;let i;for(r=0;r<o;r++)i=n[r],t[i]=e[i];return t}function q1(e){function t(n,r,o,i){let s=n[i++];if(s==="__proto__")return!0;const a=Number.isFinite(+s),l=i>=n.length;return s=!s&&R.isArray(o)?o.length:s,l?(R.hasOwnProp(o,s)?o[s]=[o[s],r]:o[s]=r,!a):((!o[s]||!R.isObject(o[s]))&&(o[s]=[]),t(n,r,o[s],i)&&R.isArray(o[s])&&(o[s]=uL(o[s])),!a)}if(R.isFormData(e)&&R.isFunction(e.entries)){const n={};return R.forEachEntry(e,(r,o)=>{t(cL(r),o,n,0)}),n}return null}function dL(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 _a={transitional:H1,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",o=r.indexOf("application/json")>-1,i=R.isObject(t);if(i&&R.isHTMLForm(t)&&(t=new FormData(t)),R.isFormData(t))return o?JSON.stringify(q1(t)):t;if(R.isArrayBuffer(t)||R.isBuffer(t)||R.isStream(t)||R.isFile(t)||R.isBlob(t)||R.isReadableStream(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(i){if(r.indexOf("application/x-www-form-urlencoded")>
vendor: 4,427 bytes, lines 393-395
393-1)return lL(t,this.formSerializer).toString();if((a=R.isFileList(t))||r.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return fu(a?{"files[]":t}:t,l&&new l,this.formSerializer)}}return i||o?(n.setContentType("application/json",!1),dL(t)):t}],transformResponse:[function(t){const n=this.transitional||_a.transitional,r=n&&n.forcedJSONParsing,o=this.responseType==="json";if(R.isResponse(t)||R.isReadableStream(t))return t;if(t&&R.isString(t)&&(r&&!this.responseType||o)){const s=!(n&&n.silentJSONParsing)&&o;try{return JSON.parse(t,this.parseReviver)}catch(a){if(s)throw a.name==="SyntaxError"?ee.from(a,ee.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:et.classes.FormData,Blob:et.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};R.forEach(["delete","get","head","post","put","patch"],e=>{_a.headers[e]={}});const fL=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"]),pL=e=>{const t={};let n,r,o;return e&&e.split(`
394`).forEach(function(s){o=s.indexOf(":"),n=s.substring(0,o).trim().toLowerCase(),r=s.substring(o+1).trim(),!(!n||t[n]&&fL[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},Hv=Symbol("internals");function us(e){return e&&String(e).trim().toLowerCase()}function jl(e){return e===!1||e==null?e:R.isArray(e)?e.map(jl):String(e)}function mL(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 hL=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function pd(e,t,n,r,o){if(R.isFunction(r))return r.call(this,t,n);if(o&&(t=n),!!R.isString(t)){if(R.isString(r))return t.indexOf(r)!==-1;if(R.isRegExp(r))return r.test(t)}}function gL(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function vL(e,t){const n=R.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(o,i,s){return this[r].call(this,t,o,i,s)},configurable:!0})})}let Ct=class{constructor(t){t&&this.set(t)}set(t,n,r){const o=this;function i(a,l,c){const d=us(l);if(!d)throw new Error("header name must be a non-empty string");const f=R.findKey(o,d);(!f||o[f]===void 0||c===!0||c===void 0&&o[f]!==!1)&&(o[f||l]=jl(a))}const s=(a,l)=>R.forEach(a,(c,d)=>i(c,d,l));if(R.isPlainObject(t)||t instanceof this.constructor)s(t,n);else if(R.isString(t)&&(t=t.trim())&&!hL(t))s(pL(t),n);else if(R.isObject(t)&&R.isIterable(t)){let a={},l,c;for(const d of t){if(!R.isArray(d))throw TypeError("Object iterator must return a key-value pair");a[c=d[0]]=(l=a[c])?R.isArray(l)?[...l,d[1]]:[l,d[1]]:d[1]}s(a,n)}else t!=null&&i(n,t,r);return this}get(t,n){if(t=us(t),t){const r=R.findKey(this,t);if(r){const o=this[r];if(!n)return o;if(n===!0)return mL(o);if(R.isFunction(n))return n.call(this,o,r);if(R.isRegExp(n))return n.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=us(t),t){const r=R.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||pd(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let o=!1;function i(s){if(s=us(s),s){const a=R.findKey(r,s);a&&(!n||pd(r,r[a],a,n))&&(delete r[a],o=!0)}}return R.isArray(t)?t.forEach(i):i(t),o}clear(t){const n=Object.keys(this);let r=n.length,o=!1;for(;r--;){const i=n[r];(!t||pd(this,this[i],i,t,!0))&&(delete this[i],o=!0)}return o}normalize(t){const n=this,r={};return R.forEach(this,(o,i)=>{const s=R.findKey(r,i);if(s){n[s]=jl(o),delete n[i];return}const a=t?gL(i):String(i).trim();a!==i&&delete n[i],n[a]=jl(o),r[a]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return R.forEach(this,(r,o)=>{r!=null&&r!==!1&&(n[o]=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(`
395`)}getSetCookie(){return this.get("set-cookie")||[]}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);
vendor: 6,553 bytes, line 395
395return n.forEach(o=>r.set(o)),r}static accessor(t){const r=(this[Hv]=this[Hv]={accessors:{}}).accessors,o=this.prototype;function i(s){const a=us(s);r[a]||(vL(o,s),r[a]=!0)}return R.isArray(t)?t.forEach(i):i(t),this}};Ct.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);R.reduceDescriptors(Ct.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});R.freezeMethods(Ct);function md(e,t){const n=this||_a,r=t||n,o=Ct.from(r.headers);let i=r.data;return R.forEach(e,function(a){i=a.call(n,i,o.normalize(),t?t.status:void 0)}),o.normalize(),i}function B1(e){return!!(e&&e.__CANCEL__)}function Gi(e,t,n){ee.call(this,e??"canceled",ee.ERR_CANCELED,t,n),this.name="CanceledError"}R.inherits(Gi,ee,{__CANCEL__:!0});function W1(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new ee("Request failed with status code "+n.status,[ee.ERR_BAD_REQUEST,ee.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function yL(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function bL(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o=0,i=0,s;return t=t!==void 0?t:1e3,function(l){const c=Date.now(),d=r[i];s||(s=c),n[o]=l,r[o]=c;let f=i,p=0;for(;f!==o;)p+=n[f++],f=f%e;if(o=(o+1)%e,o===i&&(i=(i+1)%e),c-s<t)return;const h=d&&c-d;return h?Math.round(p*1e3/h):void 0}}function wL(e,t){let n=0,r=1e3/t,o,i;const s=(c,d=Date.now())=>{n=d,o=null,i&&(clearTimeout(i),i=null),e(...c)};return[(...c)=>{const d=Date.now(),f=d-n;f>=r?s(c,d):(o=c,i||(i=setTimeout(()=>{i=null,s(o)},r-f)))},()=>o&&s(o)]}const Sc=(e,t,n=3)=>{let r=0;const o=bL(50,250);return wL(i=>{const s=i.loaded,a=i.lengthComputable?i.total:void 0,l=s-r,c=o(l),d=s<=a;r=s;const f={loaded:s,total:a,progress:a?s/a:void 0,bytes:l,rate:c||void 0,estimated:c&&a&&d?(a-s)/c:void 0,event:i,lengthComputable:a!=null,[t?"download":"upload"]:!0};e(f)},n)},qv=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},Bv=e=>(...t)=>R.asap(()=>e(...t)),xL=et.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,et.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(et.origin),et.navigator&&/(msie|trident)/i.test(et.navigator.userAgent)):()=>!0,SL=et.hasStandardBrowserEnv?{write(e,t,n,r,o,i,s){if(typeof document>"u")return;const a=[`${e}=${encodeURIComponent(t)}`];R.isNumber(n)&&a.push(`expires=${new Date(n).toUTCString()}`),R.isString(r)&&a.push(`path=${r}`),R.isString(o)&&a.push(`domain=${o}`),i===!0&&a.push("secure"),R.isString(s)&&a.push(`SameSite=${s}`),document.cookie=a.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function CL(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function PL(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function G1(e,t,n){let r=!CL(t);return e&&(r||n==!1)?PL(e,t):t}const Wv=e=>e instanceof Ct?{...e}:e;function Po(e,t){t=t||{};const n={};function r(c,d,f,p){return R.isPlainObject(c)&&R.isPlainObject(d)?R.merge.call({caseless:p},c,d):R.isPlainObject(d)?R.merge({},d):R.isArray(d)?d.slice():d}function o(c,d,f,p){if(R.isUndefined(d)){if(!R.isUndefined(c))return r(void 0,c,f,p)}else return r(c,d,f,p)}function i(c,d){if(!R.isUndefined(d))return r(void 0,d)}function s(c,d){if(R.isUndefined(d)){if(!R.isUndefined(c))return r(void 0,c)}else return r(void 0,d)}function a(c,d,f){if(f in t)return r(c,d);if(f in e)return r(void 0,c)}const l={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken: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:(c,d,f)=>o(Wv(c),Wv(d),f,!0)};return R.forEach(Object.keys({...e,...t}),function(d){const f=l[d]||o,p=f(e[d],t[d],d);R.isUndefined(p)&&f!==a||(n[d]=p)}),n}const K1=e=>{const t=Po({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:o,xsrfCookieName:i,headers:s,auth:a}=t;if(t.headers=s=Ct.from(s),t.url=V1(G1(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),a&&s.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),R.isFormData(n)){if(et.hasStandardBrowserEnv||et.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(R.isFunction(n.getHeaders)){const l=n.getHeaders(),c=["content-type","content-length"];Object.entries(l).forEach(([d,f])=>{c.includes(d.toLowerCase())&&s.set(d,f)})}}if(et.hasStandardBrowserEnv&&(r&&R.isFunction(r)&&(r=r(t)),r||r!==!1&&xL(t.url))){const l=o&&i&&SL.read(i);l&&s.set(o,l)}return t},EL=typeof XMLHttpRequest<"u",kL=EL&&function(e){return new Promise(function(n,r){const o=K1(e);let i=o.data;const s=Ct.from(o.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:c}=o,d,f,p,h,g;function v(){h&&h(),g&&g(),o.cancelToken&&o.cancelToken.unsubscribe(d),o.signal&&o.signal.removeEventListener("abort",d)}let b=new XMLHttpRequest;b.open(o.method.toUpperCase(),o.url,!0),b.timeout=o.timeout;function y(){if(!b)return;const x=Ct.from("getAllResponseHeaders"in b&&b.getAllResponseHeaders()),C={data:!a||a==="text"||a==="json"?b.responseText:b.response,status:b.status,statusText:b.statusText,headers:x,config:e,request:b};W1(function(E){n(E),v()},function(E){r(E),v()},C),b=null}"onloadend"in b?b.onloadend=y:b.onreadystatechange=function(){!b||b.readyState!==4||b.status===0&&!(b.responseURL&&b.responseURL.indexOf("file:")===0)||setTimeout(y)},b.onabort=function(){b&&(r(new ee("Request aborted",ee.ECONNABORTED,e,b)),b=null)},b.onerror=function(S){const C=S&&S.message?S.message:"Network Error",k=new ee(C,ee.ERR_NETWORK,e,b);k.event=S||null,r(k),b=null},b.ontimeout=function(){let S=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const C=o.transitional||H1;o.timeoutErrorMessage&&(S=o.timeoutErrorMessage),r(new ee(S,C.clarifyTimeoutError?ee.ETIMEDOUT:ee.ECONNABORTED,e,b)),b=null},i===void 0&&s.setContentType(null),"setRequestHeader"in b&&R.forEach(s.toJSON(),function(S,C){b.setRequestHeader(C,S)}),R.isUndefined(o.withCredentials)||(b.withCredentials=!!o.withCredentials),a&&a!=="json"&&(b.responseType=o.responseType),c&&
vendor: 5,571 bytes, lines 395-397
395([p,g]=Sc(c,!0),b.addEventListener("progress",p)),l&&b.upload&&([f,h]=Sc(l),b.upload.addEventListener("progress",f),b.upload.addEventListener("loadend",h)),(o.cancelToken||o.signal)&&(d=x=>{b&&(r(!x||x.type?new Gi(null,e,b):x),b.abort(),b=null)},o.cancelToken&&o.cancelToken.subscribe(d),o.signal&&(o.signal.aborted?d():o.signal.addEventListener("abort",d)));const w=yL(o.url);if(w&&et.protocols.indexOf(w)===-1){r(new ee("Unsupported protocol "+w+":",ee.ERR_BAD_REQUEST,e));return}b.send(i||null)})},TL=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let r=new AbortController,o;const i=function(c){if(!o){o=!0,a();const d=c instanceof Error?c:this.reason;r.abort(d instanceof ee?d:new Gi(d instanceof Error?d.message:d))}};let s=t&&setTimeout(()=>{s=null,i(new ee(`timeout ${t} of ms exceeded`,ee.ETIMEDOUT))},t);const a=()=>{e&&(s&&clearTimeout(s),s=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(i):c.removeEventListener("abort",i)}),e=null)};e.forEach(c=>c.addEventListener("abort",i));const{signal:l}=r;return l.unsubscribe=()=>R.asap(a),l}},AL=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let r=0,o;for(;r<n;)o=r+t,yield e.slice(r,o),r=o},RL=async function*(e,t){for await(const n of _L(e))yield*AL(n,t)},_L=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},Gv=(e,t,n,r)=>{const o=RL(e,t);let i=0,s,a=l=>{s||(s=!0,r&&r(l))};return new ReadableStream({async pull(l){try{const{done:c,value:d}=await o.next();if(c){a(),l.close();return}let f=d.byteLength;if(n){let p=i+=f;n(p)}l.enqueue(new Uint8Array(d))}catch(c){throw a(c),c}},cancel(l){return a(l),o.return()}},{highWaterMark:2})},Kv=64*1024,{isFunction:sl}=R,DL=(({Request:e,Response:t})=>({Request:e,Response:t}))(R.global),{ReadableStream:Qv,TextEncoder:Yv}=R.global,Jv=(e,...t)=>{try{return!!e(...t)}catch{return!1}},jL=e=>{e=R.merge.call({skipUndefined:!0},DL,e);const{fetch:t,Request:n,Response:r}=e,o=t?sl(t):typeof fetch=="function",i=sl(n),s=sl(r);if(!o)return!1;const a=o&&sl(Qv),l=o&&(typeof Yv=="function"?(g=>v=>g.encode(v))(new Yv):async g=>new Uint8Array(await new n(g).arrayBuffer())),c=i&&a&&Jv(()=>{let g=!1;const v=new n(et.origin,{body:new Qv,method:"POST",get duplex(){return g=!0,"half"}}).headers.has("Content-Type");return g&&!v}),d=s&&a&&Jv(()=>R.isReadableStream(new r("").body)),f={stream:d&&(g=>g.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(g=>{!f[g]&&(f[g]=(v,b)=>{let y=v&&v[g];if(y)return y.call(v);throw new ee(`Response type '${g}' is not supported`,ee.ERR_NOT_SUPPORT,b)})});const p=async g=>{if(g==null)return 0;if(R.isBlob(g))return g.size;if(R.isSpecCompliantForm(g))return(await new n(et.origin,{method:"POST",body:g}).arrayBuffer()).byteLength;if(R.isArrayBufferView(g)||R.isArrayBuffer(g))return g.byteLength;if(R.isURLSearchParams(g)&&(g=g+""),R.isString(g))return(await l(g)).byteLength},h=async(g,v)=>{const b=R.toFiniteNumber(g.getContentLength());return b??p(v)};return async g=>{let{url:v,method:b,data:y,signal:w,cancelToken:x,timeout:S,onDownloadProgress:C,onUploadProgress:k,responseType:E,headers:T,withCredentials:j="same-origin",fetchOptions:A}=K1(g),L=t||fetch;E=E?(E+"").toLowerCase():"text";let F=TL([w,x&&x.toAbortSignal()],S),K=null;const I=F&&F.unsubscribe&&(()=>{F.unsubscribe()});let Z;try{if(k&&c&&b!=="get"&&b!=="head"&&(Z=await h(T,y))!==0){let B=new n(v,{method:"POST",body:y,duplex:"half"}),oe;if(R.isFormData(y)&&(oe=B.headers.get("content-type"))&&T.setContentType(oe),B.body){const[Le,De]=qv(Z,Sc(Bv(k)));y=Gv(B.body,Kv,Le,De)}}R.isString(j)||(j=j?"include":"omit");const q=i&&"credentials"in n.prototype,re={...A,signal:F,method:b.toUpperCase(),headers:T.normalize().toJSON(),body:y,duplex:"half",credentials:q?j:void 0};K=i&&new n(v,re);let D=await(i?L(K,A):L(v,re));const O=d&&(E==="stream"||E==="response");if(d&&(C||O&&I)){const B={};["status","statusText","headers"].forEach(Jt=>{B[Jt]=D[Jt]});const oe=R.toFiniteNumber(D.headers.get("content-length")),[Le,De]=C&&qv(oe,Sc(Bv(C),!0))||[];D=new r(Gv(D.body,Kv,Le,()=>{De&&De(),I&&I()}),B)}E=E||"text";let $=await f[R.findKey(f,E)||"text"](D,g);return!O&&I&&I(),await new Promise((B,oe)=>{W1(B,oe,{data:$,headers:Ct.from(D.headers),status:D.status,statusText:D.statusText,config:g,request:K})})}catch(q){throw I&&I(),q&&q.name==="TypeError"&&/Load failed|fetch/i.test(q.message)?Object.assign(new ee("Network Error",ee.ERR_NETWORK,g,K),{cause:q.cause||q}):ee.from(q,q&&q.code,g,K)}}},NL=new Map,Q1=e=>{let t=e&&e.env||{};const{fetch:n,Request:r,Response:o}=t,i=[r,o,n];let s=i.length,a=s,l,c,d=NL;for(;a--;)l=i[a],c=d.get(l),c===void 0&&d.set(l,c=a?new Map:jL(t)),d=c;return c};Q1();const Km={http:YM,xhr:kL,fetch:{get:Q1}};R.forEach(Km,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Xv=e=>`- ${e}`,OL=e=>R.isFunction(e)||e===null||e===!1;function ML(e,t){e=R.isArray(e)?e:[e];const{length:n}=e;let r,o;const i={};for(let s=0;s<n;s++){r=e[s];let a;if(o=r,!OL(r)&&(o=Km[(a=String(r)).toLowerCase()],o===void 0))throw new ee(`Unknown adapter '${a}'`);if(o&&(R.isFunction(o)||(o=o.get(t))))break;i[a||"#"+s]=o}if(!o){const s=Object.entries(i).map(([l,c])=>`adapter ${l} `+(c===!1?"is not supported by the environment":"is not available in the build"));let a=n?s.length>1?`since :
396`+s.map(Xv).join(`
397`):" "+Xv(s[0]):"as no adapter specified";throw new ee("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return o}
vendor: 4,726 bytes, lines 397-398
397const Y1={getAdapter:ML,adapters:Km};function hd(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Gi(null,e)}function Zv(e){return hd(e),e.headers=Ct.from(e.headers),e.data=md.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Y1.getAdapter(e.adapter||_a.adapter,e)(e).then(function(r){return hd(e),r.data=md.call(e,e.transformResponse,r),r.headers=Ct.from(r.headers),r},function(r){return B1(r)||(hd(e),r&&r.response&&(r.response.data=md.call(e,e.transformResponse,r.response),r.response.headers=Ct.from(r.response.headers))),Promise.reject(r)})}const J1="1.13.2",pu={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{pu[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const ey={};pu.transitional=function(t,n,r){function o(i,s){return"[Axios v"+J1+"] Transitional option '"+i+"'"+s+(r?". "+r:"")}return(i,s,a)=>{if(t===!1)throw new ee(o(s," has been removed"+(n?" in "+n:"")),ee.ERR_DEPRECATED);return n&&!ey[s]&&(ey[s]=!0,console.warn(o(s," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(i,s,a):!0}};pu.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function LL(e,t,n){if(typeof e!="object")throw new ee("options must be an object",ee.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],s=t[i];if(s){const a=e[i],l=a===void 0||s(a,i,e);if(l!==!0)throw new ee("option "+i+" must be "+l,ee.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new ee("Unknown option "+i,ee.ERR_BAD_OPTION)}}const Nl={assertOptions:LL,validators:pu},vn=Nl.validators;let po=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Vv,response:new Vv}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;const i=o.stack?o.stack.replace(/^.+\n/,""):"";try{r.stack?i&&!String(r.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(r.stack+=`
398`+i):r.stack=i}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Po(this.defaults,n);const{transitional:r,paramsSerializer:o,headers:i}=n;r!==void 0&&Nl.assertOptions(r,{silentJSONParsing:vn.transitional(vn.boolean),forcedJSONParsing:vn.transitional(vn.boolean),clarifyTimeoutError:vn.transitional(vn.boolean)},!1),o!=null&&(R.isFunction(o)?n.paramsSerializer={serialize:o}:Nl.assertOptions(o,{encode:vn.function,serialize:vn.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Nl.assertOptions(n,{baseUrl:vn.spelling("baseURL"),withXsrfToken:vn.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=i&&R.merge(i.common,i[n.method]);i&&R.forEach(["delete","get","head","post","put","patch","common"],g=>{delete i[g]}),n.headers=Ct.concat(s,i);const a=[];let l=!0;this.interceptors.request.forEach(function(v){typeof v.runWhen=="function"&&v.runWhen(n)===!1||(l=l&&v.synchronous,a.unshift(v.fulfilled,v.rejected))});const c=[];this.interceptors.response.forEach(function(v){c.push(v.fulfilled,v.rejected)});let d,f=0,p;if(!l){const g=[Zv.bind(this),void 0];for(g.unshift(...a),g.push(...c),p=g.length,d=Promise.resolve(n);f<p;)d=d.then(g[f++],g[f++]);return d}p=a.length;let h=n;for(;f<p;){const g=a[f++],v=a[f++];try{h=g(h)}catch(b){v.call(this,b);break}}try{d=Zv.call(this,h)}catch(g){return Promise.reject(g)}for(f=0,p=c.length;f<p;)d=d.then(c[f++],c[f++]);return d}getUri(t){t=Po(this.defaults,t);const n=G1(t.baseURL,t.url,t.allowAbsoluteUrls);return V1(n,t.params,t.paramsSerializer)}};R.forEach(["delete","get","head","options"],function(t){po.prototype[t]=function(n,r){return this.request(Po(r||{},{method:t,url:n,data:(r||{}).data}))}});R.forEach(["post","put","patch"],function(t){function n(r){return function(i,s,a){return this.request(Po(a||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:i,data:s}))}}po.prototype[t]=n(),po.prototype[t+"Form"]=n(!0)});let IL=class X1{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i});const r=this;this.promise.then(o=>{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](o);r._listeners=null}),this.promise.then=o=>{let i;const s=new Promise(a=>{r.subscribe(a),i=a}).then(o);return s.cancel=function(){r.unsubscribe(i)},s},t(function(i,s,a){r.reason||(r.reason=new Gi(i,s,a),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}
398subscribe(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)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new X1(function(o){t=o}),cancel:t}}};function FL(e){return function(n){return e.apply(null,n)}}function UL(e){return R.isObject(e)&&e.isAxiosError===!0}const ep={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,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(ep).forEach(([e,t])=>{ep[t]=e});function Z1(e){const t=new po(e),n=_1(po.prototype.request,t);return R.extend(n,po.prototype,t,{allOwnKeys:!0}),R.extend(n,t,null,{allOwnKeys:!0}),n.create=function(o){return Z1(Po(e,o))},n}const _e=Z1(_a);_e.Axios=po;_e.CanceledError=Gi;_e.CancelToken=IL;_e.isCancel=B1;_e.VERSION=J1;_e.toFormData=fu;_e.AxiosError=ee;_e.Cancel=_e.CanceledError;_e.all=function(t){return Promise.all(t)};_e.spread=FL;_e.isAxiosError=UL;_e.mergeConfig=Po;_e.AxiosHeaders=Ct;_e.formToJSON=e=>q1(R.isHTMLForm(e)?new FormData(e):e);_e.getAdapter=Y1.getAdapter;_e.HttpStatusCode=ep;_e.default=_e;const{Axios:AV,AxiosError:$L,CanceledError:RV,isCancel:_V,CancelToken:DV,VERSION:jV,all:NV,Cancel:OV,isAxiosError:MV,spread:LV,toFormData:IV,AxiosHeaders:FV,HttpStatusCode:UV,formToJSON:$V,getAdapter:zV,mergeConfig:VV}=_e,qr={qmj:5,presentation:5,video:2},HV=["video","presentation","qmj","quiz","avatar","document","homework_check"];function qV(e,t="en"){return e?typeof e=="string"?e:e[t]||e.en||e.ru||e.kk||"":""}function zL(e){return e===-1}function VL(e){return e===0}const HL={qmj:"qmj_generate_limit",video:"video_generate_limit",avatar:"avatar_limit",presentation:"presentation_generate_limit",quiz:"quizz_generation_limit",document:"documents_limit",homework_check:"homework_check_limit"};function Gr(e,t){var o;const n=HL[t],r=e[n];return r??((o=e.config)!=null&&o[t]?e.config[t].limit:0)}function BV(e){return e==="avatar"}const qL={qmj:5,video:0,avatar:5,presentation:3,quiz:0,document:0,homework_check:5},ty={presentations:[{label:"Идеялар",prompt:"Бұл презентацияны жақсарту үшін идеялар бер"},{label:"Викторина жасау",prompt:"Осы тақырып бойынша викторина жаса"},{label:"Сурет генерациялау",prompt:"Мына тақырыпқа сурет генерацияла"}],documents:[{label:"Жақсарту ұсыныстары",prompt:"Бұл мәтінді жақсарту бойынша ұсыныстар бер"},{label:"Түсіндіру",prompt:"Бұл тұжырымдаманы қарапайым тілмен түсіндір"},{label:"Оқулықтан іздеу",prompt:"Оқулықтан мына тақырыпты іздеп бер"}],qmj:[{label:"Сабақ идеялары",prompt:"Осы сабаққа белсенділіктер ұсын"},{label:"Викторина жасау",prompt:"Осы тақырып бойынша викторина жаса"},{label:"Мазмұн іздеу",prompt:"Оқулықтан мына тақырып бойынша мазмұн тап"}],general:[{label:"Викторина жасау",prompt:"Мына тақырып бойынша викторина жаса"},{label:"Сурет генерациялау",prompt:"Білім беруге арналған сурет генерацияла"},{label:"Платформа көмегі",prompt:"Мен қалай"}]},Qm=qm()((e,t)=>({activeSubscription:null,isLoading:!1,isInitialized:!1,error:null,requiresSubscription:!1,limits:{qmj:qr.qmj,presentation:qr.presentation,video:qr.video},initialize:async()=>
398{if(!t().isInitialized){e({isLoading:!0,error:null});try{const r=await pn.getCurrentSubscription();let o={...qr};if(r&&r.is_active&&r.plan){const s=r.plan;o={qmj:Gr(s,"qmj"),presentation:Gr(s,"presentation"),video:Gr(s,"video")}}const i=!r||!r.is_active;e({activeSubscription:r,limits:o,isLoading:!1,isInitialized:!0,requiresSubscription:i})}catch(r){const o=r instanceof Error?r.message:"Failed to load subscription";console.error("[SubscriptionStore] Initialize error:",o);const i=o.includes("No active subscription");e({error:o,isLoading:!1,isInitialized:!0,requiresSubscription:i,limits:{...qr}})}}},refreshSubscription:async()=>{e({isLoading:!0,error:null});try{const n=await pn.getCurrentSubscription();let r={...qr};if(n&&n.is_active&&n.plan){const i=n.plan;r={qmj:Gr(i,"qmj"),presentation:Gr(i,"presentation"),video:Gr(i,"video")}}const o=!n||!n.is_active;e({activeSubscription:n,limits:r,isLoading:!1,requiresSubscription:o})}catch(n){const r=n instanceof Error?n.message:"Failed to refresh subscription",o=r.includes("No active subscription");e({error:r,isLoading:!1,requiresSubscription:o})}},setRequiresSubscription:n=>{e({requiresSubscription:n})},reset:()=>{e({activeSubscription:null,isLoading:!1,isInitialized:!1,error:null,requiresSubscription:!1,limits:{...qr}})}})),ny="No active subscription. Please subscribe to a plan.",BL="https://api.zerde.ai",z=_e.create({baseURL:BL,headers:{"Content-Type":"application/json"},timeout:3e5,withCredentials:!0});let gd=!1,tp=[];const ry=e=>{tp.forEach(t=>{e?t.reject(e):t.resolve(void 0)}),tp=[]};z.interceptors.response.use(e=>e,async e=>{var r,o,i,s,a,l,c,d,f,p;const t=e.config;if(((r=e.response)==null?void 0:r.status)===403){const h=((i=(o=e.response)==null?void 0:o.data)==null?void 0:i.detail)||"";if(h===ny||h.includes("No active subscription"))return Qm.getState().setRequiresSubscription(!0),Promise.reject(Object.assign(new Error(ny),{status:403}))}if(((s=e.response)==null?void 0:s.status)===401&&!t._retry){if((a=t.headers)!=null&&a["X-Assessment-Token"]||(l=t.url)!=null&&l.includes("validate-otp")||(c=t.url)!=null&&c.includes("refresh-token"))return Promise.reject(e);if(gd)return new Promise((h,g)=>{tp.push({resolve:h,reject:g})}).then(()=>z(t)).catch(h=>Promise.reject(h));t._retry=!0,gd=!0;try{return await z.post("/api/users/refresh-token",null),ry(null),z(t)}catch(h){ry(h);const g=window.location.pathname;if(g.startsWith("/admin"))["/admin/login","/admin/verify"].includes(g)||(window.location.href="/admin/login");else{const b=["/","/login","/verify","/terms","/privacy"],y=["/marketplace","/join","/sessions"];b.includes(g)||y.some(x=>g.startsWith(x))||(window.location.href="/login")}return Promise.reject(h)}finally{gd=!1}}const n=((f=(d=e.response)==null?void 0:d.data)==null?void 0:f.detail)||e.message||"An error occurred";return Promise.reject(Object.assign(new Error(n),{status:(p=e.response)==null?void 0:p.status}))});const ds={sendOtp:async e=>(await z.post("/api/users/send-otp",e)).data,validateOtp:async e=>(await z.post("/api/users/validate-otp",e)).data,refreshToken:async()=>(await z.post("/api/users/refresh-token")).data,getProfile:async()=>(await z.get("/api/users/profile")).data,logout:async()=>{try{await z.post("/api/users/logout")}catch{console.debug("[Auth] Logout request failed, clearing local state anyway")}},loginWithGoogle:()=>{const e="https://api.zerde.ai";window.location.href=`${e}/api/users/auth/google?redirect_uri=${window.location.origin}/ai-tools`},checkAuth:async()=>{try{return await z.get("/api/users/profile"),!0}catch{return!1}}},pn={getCurrentSubscription:async()=>{try{return(await z.get("/api/subscriptions/me")).data}catch{return null}},getUsageStats:async()=>(await z.get("/api/subscriptions/me/stats")).data,getSubscriptionHistory:async()=>(await z.get("/api/subscriptions/me/history")).data,subscribe:async e=>(await z.post("/api/subscriptions",e)).data,subscribeFree:async()=>(await z.post("/api/subscriptions/me/free")).data,cancelSubscription:async e=>{await z.delete(`/api/subscriptions/${e}`)},checkPermission:async e=>(await z.post("/api/subscriptions/check-permission",e)).data,recordUsage:async e=>(await z.post("/api/subscriptions/record-usage",e)).data,adminAssignPlan:async e=>(await z.post("/api/subscriptions/admin/assign",e)).data,adminAssignFree:async e=>(await z.post("/api/subscriptions/admin/assign-free",e)).data,adminGetUserSubscription:async e=>{try{return(await z.get(`/api/subscriptions/admin/users/${e}`)).data}catch{return null}},adminGetUserStats:async e=>{try{return(await z.get(`/api/subscriptions/admin/users/${e}/stats`)).data}catch{return null}},getAdminSubscriptions:async e=>(await z.get("/api/subscriptions/admin/subscriptions",{params:e})).data,getAdminSubscriptionStats:async e=>(await z.get("/api/subscriptions/admin/stats",{params:e})).data,adminCancelSubscription:async e=>{await z.delete(`/api/subscriptions/admin/subscriptions/${e}`)}},WL="https://api.zerde.ai",GL=_e.create({baseURL:WL,headers:{"Content-Type":"application/json"},timeout:3e4});GL.interceptors.response.use(e=>e,async e=>{var n,r;const t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.detail)||e.message||"An error occurred";return Promise.reject(new Error(t))});function KL(e){return{type:e.type,entity_id:e.entityId,entity_title:e.entityTitle,selected_text:e.selectedText,slide_index:e.slideIndex,block_id:e.blockId,image_url:e.imageUrl}}function QL(e){if(e)return{type:e.type,entityId:e.entity_id,entityTitle:e.entity_title,selectedText:e.selected_text,slideIndex:e.slide_index,blockId:e.block_id,imageUrl:e.image_url}}function oy(e){return{...e,context:QL(e.context)}}const mu={getConversations:async()=>(await z.get("/api/agent/conversations")).data,getMessages:async e=>(await z.get(`/api/agent/conversations/${e}/messages`)).data.map(oy),getConversation:async e=>(await z.get(`/api/agent/conversations/${e}`)).data,sendMessage:async e=>{const t={message:e.message,conversation_id:e.conversation_id,context:KL(e.context)},n=await z.post("/api/agent/chat",t);return{...n.data,message:oy(n.data.message)}},deleteConversation:async e=>{await z.delete(`/api/agent/conversations/${e}`)},executeAction:async(e,t)=>(await z.post(`/api/agent/conversations/${e}/execute`,{action:t})).data,updateConversationTitle:async(e,t)=>(await z.patch(`/api/agent/conversations/${e}`,{title:t})).data},te={createSchool:async e=>(await z.post("/api/schools",e)).data,getMySchool:async()=>(await z.get("/api/schools/mine")).data,getSchool:async e=>(await z.get(`/api/schools/${e}`)).data,listSchools:async e=>(await z.get("/api/schools",{params:e})).data,activateSchool:async e=>(await z.post(`/api/schools/${e}/activate`)).data,deactivateSchool:async e=>(await z.post(`/api/schools/${e}/deactivate`)).data,updateSchool:async(e,t)=>{const n=new FormData;return t.name!==void 0&&n.append("name",t.name),t.city!==void 0&&n.append("city",t.city||""),t.contact_email!==void 0&&n.append("contact_email",t.contact_email||""),t.contact_phone!==void 0&&n.append("contact_phone",t.contact_phone||""),t.description!==void 0&&n.append("description",t.description||""),t.logo?n.append("logo",t.logo):t.logo_url!==void 0&&n.append("logo_url",t.logo_url||""),t.founded_year!=null&&n.append("founded_year",String(t.foun
398ded_year)),t.website_url!==void 0&&n.append("website_url",t.website_url||""),t.address!==void 0&&n.append("address",t.address||""),t.latitude!=null&&n.append("latitude",String(t.latitude)),t.longitude!=null&&n.append("longitude",String(t.longitude)),(await z.patch(`/api/schools/${e}`,n,{headers:{"Content-Type":"multipart/form-data"}})).data},inviteTeacher:async(e,t)=>(await z.post(`/api/schools/${e}/invites`,t)).data,getMembers:async e=>(await z.get(`/api/schools/${e}/members`)).data,removeMember:async(e,t)=>{await z.delete(`/api/schools/${e}/members/${t}`)},updateMemberRole:async(e,t,n)=>(await z.patch(`/api/schools/${e}/members/${t}/role`,n)).data,getPendingMembers:async e=>(await z.get(`/api/schools/${e}/pending`)).data,updateMemberProfile:async(e,t,n)=>{const r=new FormData;return n.photo?r.append("photo",n.photo):n.photo_url!==void 0&&r.append("photo_url",n.photo_url||""),n.subject!==void 0&&r.append("subject",n.subject||""),n.bio!==void 0&&r.append("bio",n.bio||""),(await z.patch(`/api/schools/${e}/members/${t}/profile`,r,{headers:{"Content-Type":"multipart/form-data"}})).data},assignPlan:async(e,t)=>(await z.post(`/api/schools/${e}/plan`,t)).data,getAnalytics:async e=>(await z.get(`/api/schools/${e}/analytics`)).data,getFeaturedStudents:async e=>(await z.get(`/api/schools/${e}/featured-students`)).data,createFeaturedStudent:async(e,t)=>{const n=new FormData;return n.append("name",t.name),t.achievement!==void 0&&n.append("achievement",t.achievement||""),t.photo?n.append("photo",t.photo):t.photo_url!==void 0&&n.append("photo_url",t.photo_url||""),t.display_order!==void 0&&n.append("display_order",String(t.display_order)),(await z.post(`/api/schools/${e}/featured-students`,n,{headers:{"Content-Type":"multipart/form-data"}})).data},updateFeaturedStudent:async(e,t,n)=>{const r=new FormData;return n.name!==void 0&&r.append("name",n.name),n.achievement!==void 0&&r.append("achievement",n.achievement||""),n.photo?r.append("photo",n.photo):n.photo_url!==void 0&&r.append("photo_url",n.photo_url||""),n.display_order!==void 0&&r.append("display_order",String(n.display_order)),(await z.patch(`/api/schools/${e}/featured-students/${t}`,r,{headers:{"Content-Type":"multipart/form-data"}})).data},deleteFeaturedStudent:async(e,t)=>{await z.delete(`/api/schools/${e}/featured-students/${t}`)},getSchedule:async(e,t)=>(await z.get(`/api/schools/${e}/schedule`,{params:t!=null?{class_id:t}:void 0})).data,createScheduleEntry:async(e,t)=>(await z.post(`/api/schools/${e}/schedule`,t)).data,updateScheduleEntry:async(e,t,n)=>(await z.patch(`/api/schools/${e}/schedule/${t}`,n)).data,deleteScheduleEntry:async(e,t)=>{await z.delete(`/api/schools/${e}/schedule/${t}`)},getSchoolSubjects:async e=>(await z.get(`/api/schools/${e}/subjects`)).data,setSchoolSubjects:async(e,t)=>(await z.put(`/api/schools/${e}/subjects`,t)).data,getCustomSubjects:async e=>(await z.get(`/api/schools/${e}/custom-subjects`)).data,createCustomSubject:async(e,t)=>(await z.post(`/api/schools/${e}/custom-subjects`,t)).data,updateCustomSubject:async(e,t,n)=>(await z.patch(`/api/schools/${e}/custom-subjects/${t}`,n)).data,deleteCustomSubject:async(e,t)=>{await z.delete(`/api/schools/${e}/custom-subjects/${t}`)},getCabinets:async e=>(await z.get(`/api/schools/${e}/cabinets`)).data,createCabinet:async(e,t)=>(await z.post(`/api/schools/${e}/cabinets`,t)).data,updateCabinet:async(e,t,n)=>(await z.patch(`/api/schools/${e}/cabinets/${t}
398`,n)).data,deleteCabinet:async(e,t)=>{await z.delete(`/api/schools/${e}/cabinets/${t}`)},getClasses:async e=>(await z.get(`/api/schools/${e}/classes`)).data,createClass:async(e,t)=>(await z.post(`/api/schools/${e}/classes`,t)).data,updateClass:async(e,t,n)=>(await z.patch(`/api/schools/${e}/classes/${t}`,n)).data,deleteClass:async(e,t)=>{await z.delete(`/api/schools/${e}/classes/${t}`)},regenerateClassCode:async(e,t)=>(await z.post(`/api/schools/${e}/classes/${t}/regenerate-code`)).data,getSchoolClassStudents:async(e,t)=>(await z.get(`/api/schools/${e}/classes/${t}/students`)).data,addSchoolClassStudent:async(e,t,n)=>(await z.post(`/api/schools/${e}/classes/${t}/students`,n)).data,removeSchoolClassStudent:async(e,t,n)=>{await z.delete(`/api/schools/${e}/classes/${t}/students/${n}`)},getSchoolClassJoinPreview:async e=>(await z.get(`/api/schools/classes/join/${e}`)).data,joinSchoolClass:async e=>(await z.post("/api/schools/classes/join",e)).data},al="sbschool_user",Ln={get:()=>{if(typeof window>"u")return null;try{const e=localStorage.getItem(al);return e?JSON.parse(e):null}catch{return null}},set:e=>{if(!(typeof window>"u"))try{e?localStorage.setItem(al,JSON.stringify(e)):localStorage.removeItem(al)}catch{}},clear:()=>{if(!(typeof window>"u"))try{localStorage.removeItem(al)}catch{}}},kt=qm()((e,t)=>({user:null,isAuthenticated:!1,isLoading:!1,isInitialized:!1,error:null,setUser:n=>{e({user:n,isAuthenticated:!!n}),Ln.set(n)},login:async(n,r)=>{e({isLoading:!0,error:null});try{await ds.validateOtp({phone_number:n,otp_code:r});const o=await ds.getProfile();Ln.set(o),e({user:o,isAuthenticated:!0,isLoading:!1})}catch(o){const i=o instanceof Error?o.message:"Login failed";throw console.error("[AuthStore] Login error:",i),e({error:i,isLoading:!1}),o}},logout:async()=>{await ds.logout(),Ln.clear(),Qm.getState().reset(),e({user:null,isAuthenticated:!1,error:null})},fetchProfile:async()=>{e({isLoading:!0});try{const n=await ds.getProfile();Ln.set(n),e({user:n,isAuthenticated:!0,isLoading:!1})}catch(n){console.error("[AuthStore] fetchProfile error:",n),Ln.clear(),e({user:null,isAuthenticated:!1,isLoading:!1})}},initialize:async()=>{const n=Ln.get();n&&e({user:n,isAuthenticated:!0,isInitialized:!0});try{const r=await ds.getProfile();Ln.set(r),e({user:r,isAuthenticated:!0,isInitialized:!0,isLoading:!1})}catch{Ln.clear(),e({user:null,isAuthenticated:!1,isInitialized:!0,isLoading:!1})}},clearError:()=>e({error:null}),updateGenerations:n=>{const{user:r}=t();if(!r)return;const o={...r};switch(n){case"qmj":o.qmj_generations=(o.qmj_generations||0)+1;break;case"video":o.video_generations=(o.video_generations||0)+1;break;case"presentation":o.presentation_generations=(o.presentation_generations||0)+1;break}Ln.set(o),e({user:o})}})),YL=1,JL=1e6;let vd=0;function XL(){return vd=(vd+1)%Number.MAX_SAFE_INTEGER,vd.toString()}const yd=new Map,iy=e=>{if(yd.has(e))return;const t=setTimeout(()=>{yd.delete(e),Ds({type:"REMOVE_TOAST",toastId:e})},JL);yd.set(e,t)},ZL=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,YL)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(n=>n.id===t.toast.id?{...n,...t.toast}:n)};case"DISMISS_TOAST":{const{toastId:n}=t;return n?iy(n):e.toasts.forEach(r=>{iy(r.id)}),{...e,toasts:e.toasts.map(r=>r.id===n||n===void 0?{...r,open:!1}:r)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(n=>n.id!==t.toastId)}}},Ol=[];let Ml={toasts:[]};function Ds(e){Ml=ZL(Ml,e),Ol.forEach(t=>{t(Ml)})}function eI({...e}){const t=XL(),n=o=>Ds({type:"UPDATE_TOAST",toast:{...o,id:t}}),r=()=>Ds({type:"DISMISS_TOAST",toastId:t});return Ds({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:o=>{o||r()}}}),{id:t,dismiss:r,update:n}}function de(){const[e,t]=m.useState(Ml);return m.useEffect(()=>(Ol.push(t),()=>{const n=Ol.indexOf(t);n>-1&&Ol.splice(n,1)}),[e]),{...e,toast:eI,dismiss:n=>Ds({type:"DISMISS_TOAST",toastId:n})}}const Pt={subscription:["subscription","current"],usageStats:["subscription","stats"],history:["subscription","history"],adminUserSubscription:e=>["subscription","admin","user",e],adminUserStats:e=>["subscription","admin","user",e,"stats"]},eC=30*1e3,tC=15*1e3;function nC(e=!0){return $e({queryKey:Pt.subscription,queryFn:()=>pn.getCurrentSubscription(),staleTime:eC,retry:!1,enabled:e})}function rC(e=!0){return $e({queryKey:Pt.usageStats,queryFn:()=>pn.getUsageStats(),staleTime:tC,refetchOnWindowFocus:!0,enabled:e,retry:!1})}function tI(){const e=ue(),{toast:t}=de(),{t:n}=J();return ae({mutationFn:()=>pn.subscribeFree(),onSuccess:()=>
398{e.invalidateQueries({queryKey:Pt.subscription}),e.invalidateQueries({queryKey:Pt.usageStats}),e.invalidateQueries({queryKey:Pt.history}),t({title:n("common.success"),description:n("subscription.freeActivated")})},onError:r=>{t({title:n("common.error"),description:r.message,variant:"destructive"})}})}function nI(){return ae({mutationFn:e=>pn.checkPermission(e)})}function rI(){const e=ue();return ae({mutationFn:t=>pn.recordUsage(t),onSuccess:()=>{e.invalidateQueries({queryKey:Pt.usageStats})}})}function WV(e,t=!0){return $e({queryKey:Pt.adminUserSubscription(e),queryFn:()=>pn.adminGetUserSubscription(e),staleTime:eC,enabled:t&&e>0,retry:!1})}function GV(e,t=!0){return $e({queryKey:Pt.adminUserStats(e),queryFn:()=>pn.adminGetUserStats(e),staleTime:tC,enabled:t&&e>0,retry:!1})}function KV(){const e=ue(),{toast:t}=de(),{t:n}=J();return ae({mutationFn:r=>pn.adminAssignPlan(r),onSuccess:(r,o)=>{e.invalidateQueries({queryKey:Pt.adminUserSubscription(o.user_id)}),e.invalidateQueries({queryKey:Pt.adminUserStats(o.user_id)}),t({title:n("common.success"),description:n("admin.subscriptions.planAssigned")})},onError:r=>{t({title:n("common.error"),description:r.message,variant:"destructive"})}})}function QV(){const e=ue(),{toast:t}=de(),{t:n}=J();return ae({mutationFn:r=>pn.adminAssignFree(r),onSuccess:(r,o)=>{e.invalidateQueries({queryKey:Pt.adminUserSubscription(o.user_id)}),e.invalidateQueries({queryKey:Pt.adminUserStats(o.user_id)}),t({title:n("common.success"),description:n("admin.subscriptions.freePlanAssigned")})},onError:r=>{t({title:n("common.error"),description:r.message,variant:"destructive"})}})}function oI(){var w;const{user:e,isAuthenticated:t}=kt(),{activeSubscription:n,limits:r,isLoading:o,isInitialized:i,requiresSubscription:s,initialize:a,refreshSubscription:l,setRequiresSubscription:c}=Qm(),{data:d}=rC(t),f=rI();m.useEffect(()=>{t&&!i&&!o&&a()},[t,i,o,a]);const p=m.useCallback(x=>{var j;if((e==null?void 0:e.is_admin)===!0)return{canGenerate:!0,currentUsage:0,limit:1/0,remaining:1/0};const S=(j=d==null?void 0:d.permissions)==null?void 0:j[x];if(!S)return{canGenerate:!0,currentUsage:0,limit:r[x]??0,remaining:r[x]??0};const C=S.limit===-1,k=S.current,E=C?1/0:S.limit,T=C?1/0:Math.max(0,S.limit-k);return{canGenerate:C||k<S.limit,currentUsage:k,limit:E,remaining:T}},[e==null?void 0:e.is_admin,d,r]),h=m.useCallback(x=>{f.mutate({permission_type:x})},[f]),g=n!==null&&n.is_active,v=g?((w=n.plan)==null?void 0:w.name)??"Тегін жоспар":"Тегін жоспар",b=g?n.expires_at:null,y=(()=>{if(!b)return!1;const x=new Date(b),S=new Date,C=Math.ceil((x.getTime()-S.getTime())/(1e3*60*60*24));return C<=7&&C>0})();return{activeSubscription:n,hasPaidSubscription:g,planName:v,expiresAt:b,isExpiringSoon:y,limits:r,isLoading:o,isInitialized:i,requiresSubscription:s,canGenerate:p,incrementUsage:h,refreshSubscription:l,setRequiresSubscription:c,canGenerateQMJ:()=>p("qmj"),canGeneratePresentation:()=>p("presentation"),canGenerateVideo:()=>p("video")}}function iI(){const{user:e}=kt(),{activeSubscription:t,hasPaidSubscription:n,canGenerate:r,isLoading:o,isInitialized:i}=oI(),s=m.useMemo(()=>!n||!(t!=null&&t.plan)?null:t.plan,[n,t]),a=m.useCallback(f=>s?Gr(s,f):qL[f]??0,[s]),l=m.useCallback(f=>{var y;if((e==null?void 0:e.is_admin)===!0)return{canAccess:!0,isUnlimited:!0,isDisabled:!1,used:0,limit:-1,remaining:1/0,reason:"allowed"};const p=a(f);if(VL(p))return{canAccess:!1,isUnlimited:!1,isDisabled:!0,used:0,limit:0,remaining:0,reason:"disabled"};if(zL(p))return{canAccess:!0,isUnlimited:!0,isDisabled:!1,used:0,limit:-1,remaining:1/0,reason:"allowed"};if(f==="qmj"||f==="presentation"||f==="video"){const x=r(f);return{canAccess:x.canGenerate,isUnlimited:!1,isDisabled:!1,used:x.currentUsage,limit:x.limit,remaining:x.remaining,reason:x.canGenerate?"allowed":"limit_reached"}}const h=(y=t==null?void 0:t.usage)==null?void 0:y[f],g=(h==null?void 0:h.current)??0,v=Math.max(0,p-g),b=v>0;return{canAccess:b,isUnlimited:!1,isDisabled:!1,used:g,limit:p,remaining:v,reason:b?"allowed":"limit_reached"}},[e==null?void 0:e.is_admin,r,a,t==null?void 0:t.usage]),c=m.useCallback(f=>l(f).canAccess,[l]),d=m.useCallback((f,p)=>{const h=l(f);return h.isUnlimited?p("subscription.unlimited"):h.isDisabled?p("subscription.disabled"):p("subscription.featureGate.usageStatus",{used:h.used,limit:h.limit})},[l]);return{checkPermission:l,canPerform:c,getUsageText:d,getLimit:a,isLoading:o,isInitialized:i,hasPaidSubscription:n,currentPlan:s,canCreateQMJ:()=>c("qmj"),canCreatePresentation:()=>c("presentation"),canCreateVideo:()=>c("video"),canCreateQuiz:()=>c("quiz"),canUseAvatar:()=>c("avatar"),canAccessDocument:()=>c("document")}}function sI(){const e=nr(),{user:t}=kt(),n=(t==null?void 0:t.is_admin)===!0,{data:r,isLoading:o,error:i}=nC(!n),s=nI(),a=m.useMemo(()=>
398n?!0:r!=null,[r,n]),l=m.useMemo(()=>n?!0:a,[n,a]),c=m.useCallback(()=>{e("/subscription")},[e]),d=m.useCallback(async(p,h)=>{if(n)return{allowed:!0,remaining:1/0,limit:-1,message:void 0};if(!a)return{allowed:!1,remaining:0,limit:0,message:"No active subscription"};try{return await s.mutateAsync({permission_type:p,amount:h})}catch(g){if(g instanceof Error&&g.message.includes("403"))return{allowed:!1,remaining:0,limit:0,message:"Subscription required"};throw g}},[n,a,s]),f=m.useMemo(()=>i instanceof Error?i.message:null,[i]);return{hasActiveSubscription:a,isLoading:o,canAccessFeatures:l,isAdmin:n,subscription:r,redirectToSubscription:c,checkFeatureAccess:d,error:f}}const Q={mine:["schools","mine"],list:(e,t)=>["schools","list",e,t],listAll:["schools","list"],detail:e=>["schools",e],members:e=>["schools",e,"members"],pending:e=>["schools",e,"pending"],analytics:e=>["schools",e,"analytics"],featuredStudents:e=>["schools",e,"featured-students"],schedule:(e,t)=>["schools",e,"schedule",t??"all"],scheduleAll:e=>["schools",e,"schedule"],subjects:e=>["schools",e,"subjects"],customSubjects:e=>["schools",e,"custom-subjects"],cabinets:e=>["schools",e,"cabinets"],classes:e=>["schools",e,"classes"],classStudents:(e,t)=>["schools",e,"classes",t,"students"],classJoinPreview:e=>["schools","classes","join",e]};function ge(e,t){var n,r;if(e instanceof $L){const o=(r=(n=e.response)==null?void 0:n.data)==null?void 0:r.detail;if(typeof o=="string")return o;if(Array.isArray(o))return o.map(i=>i.msg||JSON.stringify(i)).join(", ")}return e instanceof Error?e.message:t}function aI(){return $e({queryKey:Q.mine,queryFn:te.getMySchool,staleTime:60*1e3})}function YV(e){return $e({queryKey:Q.detail(e),queryFn:()=>te.getSchool(e),enabled:e>0})}function JV(e){return $e({queryKey:Q.members(e),queryFn:()=>te.getMembers(e),enabled:e>0})}function XV(e){return $e({queryKey:Q.pending(e),queryFn:()=>te.getPendingMembers(e),enabled:e>0})}function ZV(e=0,t=100){return $e({queryKey:Q.list(e,t),queryFn:()=>te.listSchools({offset:e,limit:t})})}function eH(e){return $e({queryKey:Q.analytics(e),queryFn:()=>te.getAnalytics(e),enabled:e>0})}function tH(){const{toast:e}=de(),{t}=J();return ae({mutationFn:n=>te.createSchool(n),onError:n=>{e({title:t("common.error"),description:ge(n,t("errors.unknownError")),variant:"destructive"})}})}function nH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.updateSchool(e,o),onSuccess:o=>{t.setQueryData(Q.detail(e),o),t.invalidateQueries({queryKey:Q.mine}),n({title:r("common.success"),description:r("school.infoSaved")})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function rH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.inviteTeacher(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.members(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function oH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.removeMember(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.members(e)}),t.invalidateQueries({queryKey:Q.analytics(e)}),t.invalidateQueries({queryKey:Pt.subscription}),n({title:r("common.success"),description:r("school.memberRemoved")})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function iH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:({userId:o,data:i})=>te.updateMemberProfile(e,o,i),onSuccess:o=>{t.setQueryData(Q.members(e),i=>i==null?void 0:i.map(s=>s.user_id===o.user_id?o:s)),n({title:r("common.success"),description:r("common.saved")})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function sH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:({userId:o,data:i})=>te.updateMemberRole(e,o,i),onSuccess:o=>{t.setQueryData(Q.members(e),i=>i==null?void 0:i.map(s=>s.user_id===o.user_id?o:s)),n({title:r("common.success"),description:r("common.saved")})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function aH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.assignPlan(e,o),onSuccess:o=>{t.invalidateQueries({queryKey:Q.detail(e)}),t.invalidateQueries({queryKey:Q.mine}),t.invalidateQueries({queryKey:Pt.subscription}),n({title:r("common.success"),description:r("school.planAssigned",{count:o.members_updated})})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function lH(e){return $e({queryKey:Q.featuredStudents(e),queryFn:()=>te.getFeaturedStudents(e),enabled:e>0})}function cH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.createFeaturedStudent(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.featuredStudents(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function uH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:({studentId:o,data:i})=>te.updateFeaturedStudent(e,o,i),onSuccess:()=>{t.invalidateQueries({queryKey:Q.featuredStudents(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function dH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.deleteFeaturedStudent(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.featuredStudents(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function fH(e,t){return $e({queryKey:Q.schedule(e,t),queryFn:()=>te.getSchedule(e,t),enabled:e>0})}function pH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.createScheduleEntry(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.scheduleAll(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function mH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:({entryId:o,data:i})=>te.updateScheduleEntry(e,o,i),onSuccess:()=>{t.invalidateQueries({queryKey:Q.scheduleAll(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function hH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.deleteScheduleEntry(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.scheduleAll(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function gH(){const e=ue(),{toast:t}=de(),{t:n}=J();return ae({mutationFn:r=>te.activateSchool(r),onSuccess:r=>
398{e.setQueryData(Q.detail(r.id),r),e.invalidateQueries({queryKey:Q.listAll}),t({title:n("common.success"),description:n("school.activated")})},onError:r=>{t({title:n("common.error"),description:ge(r,n("errors.unknownError")),variant:"destructive"})}})}function vH(){const e=ue(),{toast:t}=de(),{t:n}=J();return ae({mutationFn:r=>te.deactivateSchool(r),onSuccess:r=>{e.setQueryData(Q.detail(r.id),r),e.invalidateQueries({queryKey:Q.listAll}),t({title:n("common.success"),description:n("school.deactivated")})},onError:r=>{t({title:n("common.error"),description:ge(r,n("errors.unknownError")),variant:"destructive"})}})}function yH(e){return $e({queryKey:Q.subjects(e),queryFn:()=>te.getSchoolSubjects(e),enabled:e>0})}function bH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.setSchoolSubjects(e,o),onSuccess:o=>{t.setQueryData(Q.subjects(e),o),n({title:r("common.success"),description:r("school.subjectsSaved")})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function wH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.createCustomSubject(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.customSubjects(e)}),t.invalidateQueries({queryKey:Q.subjects(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function xH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:({subjectId:o,data:i})=>te.updateCustomSubject(e,o,i),onSuccess:()=>{t.invalidateQueries({queryKey:Q.customSubjects(e)}),t.invalidateQueries({queryKey:Q.subjects(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function SH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.deleteCustomSubject(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.customSubjects(e)}),t.invalidateQueries({queryKey:Q.subjects(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function CH(e){return $e({queryKey:Q.cabinets(e),queryFn:()=>te.getCabinets(e),enabled:e>0})}function PH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.createCabinet(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.cabinets(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function EH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:({cabinetId:o,data:i})=>te.updateCabinet(e,o,i),onSuccess:()=>{t.invalidateQueries({queryKey:Q.cabinets(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function kH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.deleteCabinet(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.cabinets(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function TH(e){return $e({queryKey:Q.classes(e),queryFn:()=>te.getClasses(e),enabled:e>0})}function AH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.createClass(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.classes(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function RH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:({classId:o,data:i})=>te.updateClass(e,o,i),onSuccess:()=>{t.invalidateQueries({queryKey:Q.classes(e)}),t.invalidateQueries({queryKey:Q.scheduleAll(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function _H(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.deleteClass(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.classes(e)}),t.invalidateQueries({queryKey:Q.scheduleAll(e)})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function DH(e){const t=ue(),{toast:n}=de(),{t:r}=J();return ae({mutationFn:o=>te.regenerateClassCode(e,o),onSuccess:()=>{t.invalidateQueries({queryKey:Q.classes(e)}),n({title:r("common.success"),description:r("school.codeRegenerated")})},onError:o=>{n({title:r("common.error"),description:ge(o,r("errors.unknownError")),variant:"destructive"})}})}function jH(e,t){return $e({queryKey:Q.classStudents(e,t),queryFn:()=>te.getSchoolClassStudents(e,t),enabled:e>0&&t>0})}
398function NH(e,t){const n=ue(),{toast:r}=de(),{t:o}=J();return ae({mutationFn:i=>te.addSchoolClassStudent(e,t,i),onSuccess:()=>{n.invalidateQueries({queryKey:Q.classStudents(e,t)})},onError:i=>{r({title:o("common.error"),description:ge(i,o("errors.unknownError")),variant:"destructive"})}})}function OH(e,t){const n=ue(),{toast:r}=de(),{t:o}=J();return ae({mutationFn:i=>te.removeSchoolClassStudent(e,t,i),onSuccess:()=>{n.invalidateQueries({queryKey:Q.classStudents(e,t)})},onError:i=>{r({title:o("common.error"),description:ge(i,o("errors.unknownError")),variant:"destructive"})}})}function MH(e){return $e({queryKey:Q.classJoinPreview(e),queryFn:()=>te.getSchoolClassJoinPreview(e),enabled:e.length>0,retry:!1})}function LH(){const{toast:e}=de(),{t}=J();return ae({mutationFn:n=>te.joinSchoolClass(n),onError:n=>{e({title:t("common.error"),description:ge(n,t("errors.unknownError")),variant:"destructive"})}})}const sy={type:"general"},Qt=qm()((e,t)=>({isOpen:!1,isMinimized:!1,showConversationList:!1,currentContext:sy,conversations:[],currentConversationId:null,messages:[],isLoadingConversations:!1,isLoadingMessages:!1,isSending:!1,isUploadingImage:!1,selectedText:null,selectionRange:null,attachedImageUrl:null,attachedImagePreview:null,setOpen:n=>{e({isOpen:n}),n&&e({isMinimized:!1})},toggle:()=>{const{isOpen:n,isMinimized:r}=t();e(r?{isMinimized:!1}:{isOpen:!n})},setMinimized:n=>e({isMinimized:n}),toggleConversationList:()=>e(n=>({showConversationList:!n.showConversationList})),setContext:n=>e({currentContext:n}),setContextType:n=>e(r=>({currentContext:{...r.currentContext,type:n}})),setContextEntityId:(n,r)=>e(o=>({currentContext:{...o.currentContext,entityId:n,entityTitle:r}})),setSelectedText:(n,r)=>e({selectedText:n,selectionRange:r||null}),clearSelectedText:()=>e({selectedText:null,selectionRange:null}),setAttachedImage:(n,r)=>e({attachedImageUrl:n,attachedImagePreview:r||n}),clearAttachedImage:()=>e({attachedImageUrl:null,attachedImagePreview:null}),setUploadingImage:n=>e({isUploadingImage:n}),setConversations:n=>e({conversations:n}),setCurrentConversation:n=>{e({currentConversationId:n}),n===null&&e({messages:[]})},addConversation:n=>e(r=>({conversations:[n,...r.conversations]})),removeConversation:n=>e(r=>({conversations:r.conversations.filter(o=>o.id!==n),currentConversationId:r.currentConversationId===n?null:r.currentConversationId,messages:r.currentConversationId===n?[]:r.messages})),setMessages:n=>e({messages:n}),addMessage:n=>e(r=>({messages:[...r.messages,n]})),updateMessage:(n,r)=>e(o=>({messages:o.messages.map(i=>i.id===n?{...i,...r}:i)})),clearMessages:()=>e({messages:[]}),setLoadingConversations:n=>e({isLoadingConversations:n}),setLoadingMessages:n=>e({isLoadingMessages:n}),setSending:n=>e({isSending:n}),reset:()=>e({isOpen:!1,isMinimized:!1,showConversationList:!1,currentContext:sy,conversations:[],currentConversationId:null,messages:[],isLoadingConversations:!1,isLoadingMessages:!1,isSending:!1,isUploadingImage:!1,selectedText:null,selectionRange:null,attachedImageUrl:null,attachedImagePreview:null}),startNewConversation:()=>e({currentConversationId:null,messages:[],showConversationList:!1})})),hu={conversations:["agent-conversations"],messages:e=>["agent-messages",e],conversation:e=>["agent-conversation",e]},oC={staleTime:60*1e3,gcTime:10*60*1e3,refetchOnWindowFocus:!1};function Ym(){const e=Et(),{selectedText:t}=Qt();return m.useMemo(()=>{const r=e.pathname,o=r.match(/^\/presentations\/(\d+)/);if(o&&o[1])return{type:"presentations",entityId:parseInt(o[1],10)};if(r==="/presentations/create"||r.startsWith("/presentations/new"))return{type:"presentations"};const i=r.match(/^\/documents\/(\d+)/);if(i&&i[1])return{type:"documents",entityId:parseInt(i[1],10),selectedText:t||void 0};if(r==="/qmj/create")return{type:"qmj"};const s=r.match(/^\/qmj\/(\d+)\/edit/);if(s&&s[1])return{type:"qmj",entityId:parseInt(s[1],10)};const a=r.match(/^\/qmj\/(\d+)\/?$/);return a&&a[1]?{type:"qmj",entityId:parseInt(a[1],10)}:{type:"general"}},[e.pathname,t])}function lI(){return $e({queryKey:hu.conversations,queryFn:mu.getConversations,...oC})}function cI(e){return $e({queryKey:hu.messages(e||""),queryFn:()=>mu.getMessages(e),enabled:!!e,...oC})}function uI(){const e=ue(),{toast:t}=de(),{t:n}=J(),{addMessage:r,setCurrentConversation:o,setSending:i}=Qt();return ae({mutationFn:s=>mu.sendMessage(s),onMutate:()=>{i(!0)},onSuccess:s=>{var l;
398r(s.message),s.conversation_id&&(o(s.conversation_id),e.invalidateQueries({queryKey:hu.conversations}));const a=(l=s.message)==null?void 0:l.action;a&&a.status==="completed"&&(a.type==="update_qmj"?(e.invalidateQueries({queryKey:["qmj"]}),e.invalidateQueries({queryKey:["qmjs"]}),t({title:n("common.success"),description:n("agent.qmjUpdated","QMJ updated successfully")})):a.type==="create_quiz"?(e.invalidateQueries({queryKey:["quizzes"]}),e.invalidateQueries({queryKey:["victorina"]}),t({title:n("common.success"),description:n("agent.quizCreated","Quiz created successfully")})):a.type==="add_slide"&&(e.invalidateQueries({queryKey:["presentation"]}),e.invalidateQueries({queryKey:["presentations"]}))),i(!1)},onError:s=>{i(!1),t({title:n("common.error"),description:s.message||n("agent.sendError"),variant:"destructive"})}})}function dI(){const e=ue(),{toast:t}=de(),{t:n}=J(),{removeConversation:r}=Qt();return ae({mutationFn:o=>mu.deleteConversation(o),onSuccess:(o,i)=>{r(i),e.invalidateQueries({queryKey:hu.conversations}),t({title:n("common.success"),description:n("agent.conversationDeleted")})},onError:o=>{t({title:n("common.error"),description:o.message,variant:"destructive"})}})}function fI(e,[t,n]){return Math.min(n,Math.max(t,e))}function pI(e,t){return m.useReducer((n,r)=>t[n][r]??n,e)}var Jm="ScrollArea",[iC]=Hr(Jm),[mI,Yt]=iC(Jm),sC=m.forwardRef((e,t)=>{const{__scopeScrollArea:n,type:r="hover",dir:o,scrollHideDelay:i=600,...s}=e,[a,l]=m.useState(null),[c,d]=m.useState(null),[f,p]=m.useState(null),[h,g]=m.useState(null),[v,b]=m.useState(null),[y,w]=m.useState(0),[x,S]=m.useState(0),[C,k]=m.useState(!1),[E,T]=m.useState(!1),j=Se(t,L=>l(L)),A=wm(o);return u.jsx(mI,{scope:n,type:r,dir:A,scrollHideDelay:i,scrollArea:a,viewport:c,onViewportChange:d,content:f,onContentChange:p,scrollbarX:h,onScrollbarXChange:g,scrollbarXEnabled:C,onScrollbarXEnabledChange:k,scrollbarY:v,onScrollbarYChange:b,scrollbarYEnabled:E,onScrollbarYEnabledChange:T,onCornerWidthChange:w,onCornerHeightChange:S,children:u.jsx(pe.div,{dir:A,...s,ref:j,style:{position:"relative","--radix-scroll-area-corner-width":y+"px","--radix-scroll-area-corner-height":x+"px",...e.style}})})});sC.displayName=Jm;var aC="ScrollAreaViewport",lC=m.forwardRef((e,t)=>{const{__scopeScrollArea:n,children:r,nonce:o,...i}=e,s=Yt(aC,n),a=m.useRef(null),l=Se(t,a,s.onViewportChange);return u.jsxs(u.Fragment,{children:[u.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),u.jsx(pe.div,{"data-radix-scroll-area-viewport":"",...i,ref:l,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...e.style},children:u.jsx("div",{ref:s.onContentChange,style:{minWidth:"100%",display:"table"},children:r})})]})});lC.displayName=aC;var Nn="ScrollAreaScrollbar",Xm=m.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Yt(Nn,e.__scopeScrollArea),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:s}=o,a=e.orientation==="horizontal";return m.useEffect(()=>(a?i(!0):s(!0),()=>{a?i(!1):s(!1)}),[a,i,s]),o.type==="hover"?u.jsx(hI,{...r,ref:t,forceMount:n}):o.type==="scroll"?u.jsx(gI,{...r,ref:t,forceMount:n}):o.type==="auto"?u.jsx(cC,{...r,ref:t,forceMount:n}):o.type==="always"?u.jsx(Zm,{...r,ref:t}):null});Xm.displayName=Nn;var hI=m.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Yt(Nn,e.__scopeScrollArea),[i,s]=m.useState(!1);return m.useEffect(()=>{const a=o.scrollArea;let l=0;if(a){const c=()=>{window.clearTimeout(l),s(!0)},d=()=>{l=window.setTimeout(()=>s(!1),o.scrollHideDelay)};return a.addEventListener("pointerenter",c),a.addEventListener("pointerleave",d),()=>{window.clearTimeout(l),a.removeEventListener("pointerenter",c),a.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),u.jsx(Lt,{present:n||i,children:u.jsx(cC,{"data-state":i?"visible":"hidden",...r,ref:t})})}),gI=m.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Yt(Nn,e.__scopeScrollArea),i=e.orientation==="horizontal",s=vu(()=>
vendor: 4,182 bytes, line 398
398l("SCROLL_END"),100),[a,l]=pI("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return m.useEffect(()=>{if(a==="idle"){const c=window.setTimeout(()=>l("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(c)}},[a,o.scrollHideDelay,l]),m.useEffect(()=>{const c=o.viewport,d=i?"scrollLeft":"scrollTop";if(c){let f=c[d];const p=()=>{const h=c[d];f!==h&&(l("SCROLL"),s()),f=h};return c.addEventListener("scroll",p),()=>c.removeEventListener("scroll",p)}},[o.viewport,i,l,s]),u.jsx(Lt,{present:n||a!=="hidden",children:u.jsx(Zm,{"data-state":a==="hidden"?"hidden":"visible",...r,ref:t,onPointerEnter:G(e.onPointerEnter,()=>l("POINTER_ENTER")),onPointerLeave:G(e.onPointerLeave,()=>l("POINTER_LEAVE"))})})}),cC=m.forwardRef((e,t)=>{const n=Yt(Nn,e.__scopeScrollArea),{forceMount:r,...o}=e,[i,s]=m.useState(!1),a=e.orientation==="horizontal",l=vu(()=>{if(n.viewport){const c=n.viewport.offsetWidth<n.viewport.scrollWidth,d=n.viewport.offsetHeight<n.viewport.scrollHeight;s(a?c:d)}},10);return Mi(n.viewport,l),Mi(n.content,l),u.jsx(Lt,{present:r||i,children:u.jsx(Zm,{"data-state":i?"visible":"hidden",...o,ref:t})})}),Zm=m.forwardRef((e,t)=>{const{orientation:n="vertical",...r}=e,o=Yt(Nn,e.__scopeScrollArea),i=m.useRef(null),s=m.useRef(0),[a,l]=m.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),c=mC(a.viewport,a.content),d={...r,sizes:a,onSizesChange:l,hasThumb:c>0&&c<1,onThumbChange:p=>i.current=p,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:p=>s.current=p};function f(p,h){return SI(p,s.current,a,h)}return n==="horizontal"?u.jsx(vI,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&i.current){const p=o.viewport.scrollLeft,h=ay(p,a,o.dir);i.current.style.transform=`translate3d(${h}px, 0, 0)`}},onWheelScroll:p=>{o.viewport&&(o.viewport.scrollLeft=p)},onDragScroll:p=>{o.viewport&&(o.viewport.scrollLeft=f(p,o.dir))}}):n==="vertical"?u.jsx(yI,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&i.current){const p=o.viewport.scrollTop,h=ay(p,a);i.current.style.transform=`translate3d(0, ${h}px, 0)`}},onWheelScroll:p=>{o.viewport&&(o.viewport.scrollTop=p)},onDragScroll:p=>{o.viewport&&(o.viewport.scrollTop=f(p))}}):null}),vI=m.forwardRef((e,t)=>{const{sizes:n,onSizesChange:r,...o}=e,i=Yt(Nn,e.__scopeScrollArea),[s,a]=m.useState(),l=m.useRef(null),c=Se(t,l,i.onScrollbarXChange);return m.useEffect(()=>{l.current&&a(getComputedStyle(l.current))},[l]),u.jsx(dC,{"data-orientation":"horizontal",...o,ref:c,sizes:n,style:{bottom:0,left:i.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:i.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":gu(n)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,f)=>{if(i.viewport){const p=i.viewport.scrollLeft+d.deltaX;e.onWheelScroll(p),gC(p,f)&&d.preventDefault()}},onResize:()=>{l.current&&i.viewport&&s&&r({content:i.viewport.scrollWidth,viewport:i.viewport.offsetWidth,scrollbar:{size:l.current.clientWidth,paddingStart:Pc(s.paddingLeft),paddingEnd:Pc(s.paddingRight)}})}})}),yI=m.forwardRef((e,t)=>{const{sizes:n,onSizesChange:r,...o}=e,i=Yt(Nn,e.__scopeScrollArea),[s,a]=m.useState(),l=m.useRef(null),c=Se(t,l,i.onScrollbarYChange);return m.useEffect(()=>{l.current&&a(getComputedStyle(l.current))},[l]),u.jsx(dC,{"data-orientation":"vertical",...o,ref:c,sizes:n,style:{top:0,right:i.dir==="ltr"?0:void 0,left:i.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":gu(n)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,f)=>{if(i.viewport){const p=i.viewport.scrollTop+d.deltaY;e.onWheelScroll(p),gC(p,f)&&d.preventDefault()}},onResize:()=>{l.current&&i.viewport&&s&&r({content:i.viewport.scrollHeight,viewport:i.viewport.offsetHeight,scrollbar:{size:l.current.clientHeight,paddingStart:Pc(s.paddingTop),paddingEnd:Pc(s.paddingBottom)}})}})}),[bI,uC]=iC(Nn),dC=m.forwardRef((e,t)=>
vendor: 5,830 bytes, line 398
398{const{__scopeScrollArea:n,sizes:r,hasThumb:o,onThumbChange:i,onThumbPointerUp:s,onThumbPointerDown:a,onThumbPositionChange:l,onDragScroll:c,onWheelScroll:d,onResize:f,...p}=e,h=Yt(Nn,n),[g,v]=m.useState(null),b=Se(t,j=>v(j)),y=m.useRef(null),w=m.useRef(""),x=h.viewport,S=r.content-r.viewport,C=Ne(d),k=Ne(l),E=vu(f,10);function T(j){if(y.current){const A=j.clientX-y.current.left,L=j.clientY-y.current.top;c({x:A,y:L})}}return m.useEffect(()=>{const j=A=>{const L=A.target;(g==null?void 0:g.contains(L))&&C(A,S)};return document.addEventListener("wheel",j,{passive:!1}),()=>document.removeEventListener("wheel",j,{passive:!1})},[x,g,S,C]),m.useEffect(k,[r,k]),Mi(g,E),Mi(h.content,E),u.jsx(bI,{scope:n,scrollbar:g,hasThumb:o,onThumbChange:Ne(i),onThumbPointerUp:Ne(s),onThumbPositionChange:k,onThumbPointerDown:Ne(a),children:u.jsx(pe.div,{...p,ref:b,style:{position:"absolute",...p.style},onPointerDown:G(e.onPointerDown,j=>{j.button===0&&(j.target.setPointerCapture(j.pointerId),y.current=g.getBoundingClientRect(),w.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",h.viewport&&(h.viewport.style.scrollBehavior="auto"),T(j))}),onPointerMove:G(e.onPointerMove,T),onPointerUp:G(e.onPointerUp,j=>{const A=j.target;A.hasPointerCapture(j.pointerId)&&A.releasePointerCapture(j.pointerId),document.body.style.webkitUserSelect=w.current,h.viewport&&(h.viewport.style.scrollBehavior=""),y.current=null})})})}),Cc="ScrollAreaThumb",fC=m.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=uC(Cc,e.__scopeScrollArea);return u.jsx(Lt,{present:n||o.hasThumb,children:u.jsx(wI,{ref:t,...r})})}),wI=m.forwardRef((e,t)=>{const{__scopeScrollArea:n,style:r,...o}=e,i=Yt(Cc,n),s=uC(Cc,n),{onThumbPositionChange:a}=s,l=Se(t,f=>s.onThumbChange(f)),c=m.useRef(void 0),d=vu(()=>{c.current&&(c.current(),c.current=void 0)},100);return m.useEffect(()=>{const f=i.viewport;if(f){const p=()=>{if(d(),!c.current){const h=CI(f,a);c.current=h,a()}};return a(),f.addEventListener("scroll",p),()=>f.removeEventListener("scroll",p)}},[i.viewport,d,a]),u.jsx(pe.div,{"data-state":s.hasThumb?"visible":"hidden",...o,ref:l,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...r},onPointerDownCapture:G(e.onPointerDownCapture,f=>{const h=f.target.getBoundingClientRect(),g=f.clientX-h.left,v=f.clientY-h.top;s.onThumbPointerDown({x:g,y:v})}),onPointerUp:G(e.onPointerUp,s.onThumbPointerUp)})});fC.displayName=Cc;var eh="ScrollAreaCorner",pC=m.forwardRef((e,t)=>{const n=Yt(eh,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&r?u.jsx(xI,{...e,ref:t}):null});pC.displayName=eh;var xI=m.forwardRef((e,t)=>{const{__scopeScrollArea:n,...r}=e,o=Yt(eh,n),[i,s]=m.useState(0),[a,l]=m.useState(0),c=!!(i&&a);return Mi(o.scrollbarX,()=>{var f;const d=((f=o.scrollbarX)==null?void 0:f.offsetHeight)||0;o.onCornerHeightChange(d),l(d)}),Mi(o.scrollbarY,()=>{var f;const d=((f=o.scrollbarY)==null?void 0:f.offsetWidth)||0;o.onCornerWidthChange(d),s(d)}),c?u.jsx(pe.div,{...r,ref:t,style:{width:i,height:a,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function Pc(e){return e?parseInt(e,10):0}function mC(e,t){const n=e/t;return isNaN(n)?0:n}function gu(e){const t=mC(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function SI(e,t,n,r="ltr"){const o=gu(n),i=o/2,s=t||i,a=o-s,l=n.scrollbar.paddingStart+s,c=n.scrollbar.size-n.scrollbar.paddingEnd-a,d=n.content-n.viewport,f=r==="ltr"?[0,d]:[d*-1,0];return hC([l,c],f)(e)}function ay(e,t,n="ltr"){const r=gu(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,i=t.scrollbar.size-o,s=t.content-t.viewport,a=i-r,l=n==="ltr"?[0,s]:[s*-1,0],c=fI(e,l);return hC([0,s],[0,a])(c)}function hC(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function gC(e,t){return e>0&&e<t}var CI=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return function o(){const i={left:e.scrollLeft,top:e.scrollTop},s=n.left!==i.left,a=n.top!==i.top;(s||a)&&t(),n=i,r=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(r)};function vu(e,t){const n=Ne(e),r=m.useRef(0);return m.useEffect(()=>()=>window.clearTimeout(r.current),[]),m.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}function Mi(e,t){const n=Ne(t);Nt(()=>{let r=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(n)});return o.observe(e),()=>{window.cancelAnimationFrame(r),o.unobserve(e)}}},[e,n])}var vC=sC,PI=lC,EI=pC;const yu=m.forwardRef(({className:e,children:t,...n},r)=>u.jsxs(vC,{ref:r,className:U("relative overflow-hidden",e),...n,children:[u.jsx(PI,{className:"h-full w-full rounded-[inherit]",children:t}),u.jsx(yC,{}),u.jsx(EI,{})]}));yu.displayName=vC.displayName;const yC=m.forwardRef(({className:e,orientation:t="vertical",...n},r)=>u.jsx(Xm,{ref:r,orientation:t,className:U("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...n,children:u.jsx(fC,{className:"relative flex-1 rounded-full bg-border"})}));yC.displayName=Xm.displayName;function np({className:e,onNavigate:t,collapsed:n=!1}){const{t:r}=J(),o=nr(),i=Et(),{logout:s}=kt(),[a,l]=m.useState(!1),[c,d]=m.useState(!1),{data:f}=aI(),p=!!f,h=[{title:r("nav.quizzes"),href:"/quizzes",icon:AR},{title:r("nav.avatar"),href:"/avatar",icon:kR},{title:r("nav.games"),href:"/games",icon:jR},{title:r("nav.classrooms"),href:"/classrooms",icon:qR},{title:"Көрнекіліктер",href:"/helpers",icon:LR},{title:r("models3d.title"),href:"/3d-models",icon:Vx}
398,{title:"Сергіту сәті",href:"/brain-breaks",icon:zR},{title:r("nav.telegram"),href:"/telegram",icon:Wx},{title:r("nav.subscription"),href:"/subscription",icon:qx}],g=[{title:"Видео генерация",href:"/videos"},{title:"ҚМЖ генераторы",href:"/qmj"},{title:"Ресурстар",href:"/resources"},{title:"Құжаттар",href:"/documents"},{title:"Презентация",href:"/presentations"}],v=[{title:r("nav.schoolTeachers"),href:"/school/teachers"},{title:r("nav.schoolStudents"),href:"/school/students"},{title:r("nav.schoolAdministration"),href:"/school/administration"},{title:r("nav.schoolClasses"),href:"/school/classes"},{title:r("nav.schoolSubjects"),href:"/school/subjects"},{title:r("nav.schoolCabinets"),href:"/school/cabinets"},{title:r("nav.schoolSchedule"),href:"/school/schedule"}],b=j=>i.pathname===j||i.pathname.startsWith(j+"/"),y=()=>i.pathname.startsWith("/ai-tools")||i.pathname.startsWith("/videos")||i.pathname.startsWith("/qmj")||i.pathname.startsWith("/resources")||i.pathname.startsWith("/documents")||i.pathname.startsWith("/quizzes/create")||i.pathname.startsWith("/presentations"),w=()=>i.pathname.startsWith("/school");m.useEffect(()=>{y()&&l(!0),w()&&d(!0)},[i.pathname]);const x=({item:j})=>{const A=j.icon;return u.jsxs(on,{to:j.href,onClick:()=>{l(!1),d(!1),t==null||t()},className:U("flex h-12 items-center rounded-[14px] text-base font-medium tracking-[-0.3125px] transition-colors",n?"justify-center px-2":"gap-3 pl-4 pr-3",b(j.href)?"bg-[#4A98FC] text-white":"text-[#364153] hover:bg-slate-100"),title:n?j.title:void 0,children:[u.jsx(A,{className:"h-6 w-6 shrink-0"}),!n&&j.title]})},S=async()=>{t==null||t(),await s(),o("/login")},C=()=>
398{l(j=>!j),y()||o("/ai-tools"),t==null||t()},k=()=>{d(j=>!j),w()||o("/school"),t==null||t()},E=y(),T=w();return u.jsxs("div",{className:U("flex h-full flex-col border-r bg-white pt-3",e),children:[u.jsx("div",{className:U("pt-5 pb-3",n?"px-2 flex justify-center":"px-5"),children:u.jsxs(on,{to:"/ai-tools",onClick:t,className:U("inline-flex items-center",n?"":"gap-2.5"),children:[u.jsx("img",{src:"/Logo.svg",alt:"Zerde logo",className:"h-8 w-8 shrink-0 object-contain"}),!n&&u.jsx("img",{src:"/LogoText.svg",alt:"Zerde AI",className:"h-7 w-auto object-contain"})]})}),u.jsx(yu,{className:U("flex-1 py-4",n?"px-2":"px-2.5"),children:u.jsxs("nav",{className:"space-y-3","aria-label":r("nav.dashboard"),children:[u.jsxs("div",{className:"space-y-2",children:[u.jsxs("button",{type:"button",onClick:C,className:U("w-full flex h-12 items-center rounded-[14px] text-base font-medium tracking-[-0.3125px] transition-colors",n?"justify-center px-2":"gap-3 pl-4 pr-3",E?"bg-[#4A98FC] text-white":"text-[#364153] hover:bg-slate-100"),title:n?r("nav.tools"):void 0,children:[u.jsx(ea,{className:"h-6 w-6 shrink-0"}),!n&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"flex-1 text-left",children:r("nav.tools")}),u.jsx(Ff,{className:U("h-4 w-4 transition-transform",a&&"rotate-180")})]})]}),!n&&u.jsx("div",{className:U("grid transition-all duration-300",a?"grid-rows-[1fr] opacity-100":"grid-rows-[0fr] opacity-0"),children:u.jsx("div",{className:"overflow-hidden",children:u.jsx("div",{className:"ml-4 mt-1 space-y-1 border-l border-slate-200 pl-3",children:g.map(j=>u.jsx(on,{to:j.href,onClick:t,className:U("block rounded-lg px-3 py-2 text-sm transition-colors",b(j.href)?"bg-sky-50 text-sky-700 font-medium":"text-slate-600 hover:bg-slate-100"),children:j.title},j.title))})})})]}),p&&u.jsxs("div",{className:"space-y-2",children:[u.jsxs("button",{type:"button",onClick:k,className:U("w-full flex h-12 items-center rounded-[14px] text-base font-medium tracking-[-0.3125px] transition-colors",n?"justify-center px-2":"gap-3 pl-4 pr-3",T?"bg-[#4A98FC] text-white":"text-[#364153] hover:bg-slate-100"),title:n?r("nav.school"):void 0,children:[u.jsx(Hx,{className:"h-6 w-6 shrink-0"}),!n&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"flex-1 text-left",children:r("nav.school")}),u.jsx(Ff,{className:U("h-4 w-4 transition-transform",c&&"rotate-180")})]})]}),!n&&u.jsx("div",{className:U("grid transition-all duration-300",c?"grid-rows-[1fr] opacity-100":"grid-rows-[0fr] opacity-0"),children:u.jsx("div",{className:"overflow-hidden",children:u.jsx("div",{className:"ml-4 mt-1 space-y-1 border-l border-slate-200 pl-3",children:v.map(j=>u.jsx(on,{to:j.href,onClick:t,className:U("block rounded-lg px-3 py-2 text-sm transition-colors",b(j.href)?"bg-sky-50 text-sky-700 font-medium":"text-slate-600 hover:bg-slate-100"),children:j.title},j.title))})})})]}),u.jsx("div",{className:"space-y-2",children:h.map(j=>u.jsx(x,{item:j},j.href))})]})}),u.jsxs("div",{className:U("pb-4 pt-3 border-t",n?"px-2":"px-4"),children:[!n&&u.jsx("p",{className:"px-2 pb-2 text-xs font-semibold uppercase tracking-wider text-slate-500",children:"SETTINGS"}),u.jsxs("div",{className:"space-y-1.5",children:[u.jsxs(on,{to:"/profile",onClick:()=>{l(!1),t==null||t()},className:U("rounded-xl py-2.5 text-sm text-slate-700 hover:bg-slate-100 transition-colors",n?"flex justify-center px-2":"flex items-center gap-3 px-3"),title:n?"Баптаулар":void 0,children:[u.jsx(BR,{className:"h-4 w-4"}),!n&&u.jsx("span",{children:"Баптаулар"})]}),u.jsxs(we,{variant:"ghost",className:U("w-full rounded-xl py-2.5 text-sm text-red-500 hover:bg-red-50 hover:text-red-600",n?"justify-center px-2":"justify-start gap-3 px-3"),onClick:S,title:n?r("nav.logout"):void 0,children:[u.jsx(Zs,{className:"h-4 w-4"}),!n&&u.jsx("span",{children:r("nav.logout")})]})]})]})]})}function Ec({size:e=32,className:t,showText:n=!1,text:r="zerde.ai"}){return u.jsxs("div",{className:U("flex items-center gap-2",t),children:[u.jsxs("svg",{width:e,height:e,viewBox:"0 0 29 29",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"shrink-0",children:[u.jsx("path",{d:"M17.9524 0C16.425 0 15.1905 1.23457 15.1905 2.7619V9.66667C15.1905 11.
398194 16.425 12.4286 17.9524 12.4286C19.4797 12.4286 20.7143 11.194 20.7143 9.66667V2.7619C20.7143 1.23457 19.4797 0 17.9524 0ZM26.2381 6.90476C24.7108 6.90476 23.4762 8.13933 23.4762 9.66667V11.7381C23.4762 11.9212 23.5489 12.0968 23.6784 12.2263C23.8079 12.3558 23.9835 12.4286 24.1667 12.4286H26.2381C27.7654 12.4286 29 11.194 29 9.66667C29 8.13933 27.7654 6.90476 26.2381 6.90476ZM11.0476 16.5714C9.52029 16.5714 8.28571 17.806 8.28571 19.3333V26.2381C8.28571 27.7654 9.52029 29 11.0476 29C12.575 29 13.8095 27.7654 13.8095 26.2381V19.3333C13.8095 17.806 12.575 16.5714 11.0476 16.5714ZM2.7619 16.5714C1.23457 16.5714 0 17.806 0 19.3333C0 20.8607 1.23457 22.0952 2.7619 22.0952C4.28924 22.0952 5.52381 20.8607 5.52381 19.3333V17.2619C5.52381 17.0788 5.45106 16.9032 5.32157 16.7737C5.19208 16.6442 5.01646 16.5714 4.83333 16.5714H2.7619ZM19.3333 15.1905C17.806 15.1905 16.5714 16.425 16.5714 17.9524C16.5714 19.4797 17.806 20.7143 19.3333 20.7143H26.2381C27.7654 20.7143 29 19.4797 29 17.9524C29 16.425 27.7654 15.1905 26.2381 15.1905H19.3333ZM17.2619 23.4762C17.0788 23.4762 16.9032 23.5489 16.7737 23.6784C16.6442 23.8079 16.5714 23.9835 16.5714 24.1667V26.2381C16.5714 27.7654 17.806 29 19.3333 29C20.8607 29 22.0952 27.7654 22.0952 26.2381C22.0952 24.7108 20.8607 23.4762 19.3333 23.4762H17.2619ZM2.7619 8.28571C1.23457 8.28571 0 9.52029 0 11.0476C0 12.575 1.23457 13.8095 2.7619 13.8095H9.66667C11.194 13.8095 12.4286 12.575 12.4286 11.0476C12.4286 9.52029 11.194 8.28571 9.66667 8.28571H2.7619ZM9.66667 0C8.13933 0 6.90476 1.23457 6.90476 2.7619C6.90476 4.28924 8.13933 5.52381 9.66667 5.52381H11.7381C11.9212 5.52381 12.0968 5.45106 12.2263 5.32157C12.3558 5.19208 12.4286 5.01646 12.4286 4.83333V2.7619C12.4286 1.23457 11.194 0 9.66667 0Z",fill:"url(#zerde-mark-gradient)"}),u.jsx("defs",{children:u.jsxs("linearGradient",{id:"zerde-mark-gradient",x1:"0",y1:"14.5",x2:"29",y2:"14.5",gradientUnits:"userSpaceOnUse",children:[u.jsx("stop",{stopColor:"#00D2FF"}),u.jsx("stop",{offset:"1",stopColor:"#3A7BD5"})]})})]}),n&&u.jsx("span",{className:"font-semibold tracking-tight",children:r})]})}function kI({showAuth:e=!0}){const{t}=J(),n=nr(),r=Et(),{user:o,isAuthenticated:i,logout:s}=kt(),[a,l]=m.useState(!1),c="77761826500",d=(o==null?void 0:o.email)??"Көрсетілмеген",f=(()=>{const g=["Сәлем!","Платформа туралы айтқым келеді.","",`Gmail: ${d}`].join(`
399`);return`https://wa.me/${c}?text=${encodeURIComponent(g)}`})();m.useEffect(()=>{l(!1)},[r.pathname]),m.useEffect(()=>{const g=window.matchMedia("(min-width: 1024px)"),v=b=>{b.matches&&l(!1)};return g.addEventListener("change",v),()=>g.removeEventListener("change",v)},[]);const p=m.useCallback(()=>l(!1),[]),h=async()=>{l(!1),await s(),n("/")};return u.jsxs("header",{className:"sticky top-0 z-50 w-full border-b bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60",children:[u.jsxs("div",{className:"container flex h-16 items-center justify-between",children:[u.jsxs(on,{to:i?"/ai-tools":"/",className:"flex items-center",children:[u.jsx(Ec,{showText:!0,className:"hidden sm:flex"}),u.jsx(Ec,{className:"sm:hidden"})]}),u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx(we,{asChild:!0,variant:"outline",size:"sm",className:"hidden sm:inline-flex",children:u.jsxs("a",{href:f,target:"_blank",rel:"noopener noreferrer","aria-label":"WhatsApp арқылы жазу",children:[u.jsx(Uf,{className:"mr-2 h-4 w-4"}),"WhatsApp"]})}),u.jsx(we,{asChild:!0,variant:"ghost",size:"icon",className:"sm:hidden",children:u.jsx("a",{href:f,target:"_blank",rel:"noopener noreferrer","aria-label":"WhatsApp арқылы жазу",children:u.jsx(Uf,{className:"h-5 w-5"})})}),u.jsx(au,{}),e&&u.jsx(u.Fragment,{children:i&&o?u.jsxs(Di,{children:[u.jsx(ji,{asChild:!0,children:u.jsx(we,{variant:"ghost",className:"relative h-9 w-9 rounded-full",children:u.jsx(sa,{className:"h-9 w-9",children:u.jsx(aa,{className:"bg-primary text-primary-foreground",children:mc(o.first_name??void 0,o.last_name??void 0)})})})}),u.jsxs(So,{className:"w-56",align:"end",forceMount:!0,children:[u.jsx(Fm,{className:"font-normal",children:u.jsxs("div",{className:"flex flex-col space-y-1",children:[u.jsx("p",{className:"text-sm font-medium leading-none",children:o.first_name||o.last_name?`${o.first_name||""} ${o.last_name||""}`.trim():t("profile.title")}),u.jsx("p",{className:"text-xs leading-none text-muted-foreground",children:o.phone_number})]})}),u.jsx(En,{}),o.wallet&&u.jsxs(u.Fragment,{children:[u.jsxs(We,{disabled:!0,children:[u.jsx(nv,{className:"mr-2 h-4 w-4"}),uv(o.wallet.amount)]}),u.jsx(En,{})]}),u.jsxs(We,{onClick:()=>n("/ai-tools"),children:[u.jsx(mm,{className:"mr-2 h-4 w-4"}),t("nav.dashboard")]}),u.jsxs(We,{onClick:()=>
399n("/profile"),children:[u.jsx(xa,{className:"mr-2 h-4 w-4"}),t("nav.profile")]}),o.is_admin&&u.jsxs(u.Fragment,{children:[u.jsx(En,{}),u.jsxs(We,{onClick:()=>n("/admin/dashboard"),children:[u.jsx(Gx,{className:"mr-2 h-4 w-4"}),t("nav.admin")]})]}),u.jsx(En,{}),u.jsxs(We,{onClick:h,children:[u.jsx(Zs,{className:"mr-2 h-4 w-4"}),t("nav.logout")]})]})]}):u.jsx(we,{onClick:()=>n("/login"),children:t("nav.login")})}),i&&u.jsx(we,{variant:"ghost",size:"icon",className:"lg:hidden",onClick:()=>l(!0),"aria-label":t("nav.openMenu")??"Open menu",children:u.jsx(hm,{className:"h-5 w-5"})})]})]}),i&&u.jsx(x1,{open:a,onOpenChange:l,children:u.jsxs(Hm,{side:"right",className:"flex w-[300px] flex-col gap-0 p-0",children:[u.jsxs(C1,{className:"border-b px-4 py-4 text-left",children:[u.jsxs("div",{className:"flex items-center gap-3",children:[u.jsx(sa,{className:"h-10 w-10 shrink-0",children:u.jsx(aa,{className:"bg-primary text-primary-foreground text-sm",children:mc((o==null?void 0:o.first_name)??void 0,(o==null?void 0:o.last_name)??void 0)})}),u.jsxs("div",{className:"min-w-0 flex-1",children:[u.jsx(P1,{className:"truncate text-sm",children:o!=null&&o.first_name||o!=null&&o.last_name?`${(o==null?void 0:o.first_name)||""} ${(o==null?void 0:o.last_name)||""}`.trim():t("profile.title")}),u.jsx(E1,{className:"truncate text-xs",children:o==null?void 0:o.phone_number})]})]}),(o==null?void 0:o.wallet)&&u.jsxs("div",{className:"mt-2 flex items-center gap-2 rounded-md bg-muted/50 px-3 py-1.5 text-xs text-muted-foreground",children:[u.jsx(nv,{className:"h-3.5 w-3.5 shrink-0"}),u.jsx("span",{children:uv(o.wallet.amount)})]})]}),u.jsx(np,{className:"flex-1 border-none",onNavigate:p}),u.jsx("div",{className:"border-t px-4 py-3",children:u.jsxs(we,{variant:"ghost",className:"w-full justify-start gap-3 text-destructive hover:bg-destructive/10 hover:text-destructive min-h-[44px]",onClick:h,children:[u.jsx(Zs,{className:"h-4 w-4"}),t("nav.logout")]})})]})})]})}const TI=[{icon:IR,text:"[email protected]"},{icon:VR,text:"+7 776 283 8451"},{icon:FR,text:"Алматы, Қазақстан"}];function AI(){const{t:e}=J(),t=[{label:"Мүмкіндіктер",href:"#features"},{label:"Тарифтер",to:"/subscription"},{label:"Кіру",to:"/login"},{label:"ҚМЖ жасау",to:"/qmj"},{label:"Бейне сабақ",to:"/videos"},{label:e("footer.privacy"),to:"/privacy"},{label:e("footer.terms"),to:"/terms"}];return u.jsxs("footer",{className:"bg-[#E4F0FC] dark:bg-sky-950/30",children:[u.jsx("div",{className:"container py-12",children:u.jsxs("div",{className:"flex flex-col gap-10 md:flex-row md:items-start md:justify-between",children:[u.jsxs("div",{className:"max-w-xs",children:[u.jsx("div",{className:"mb-3",children:u.jsx(Ec,{showText:!0,text:"Zerde AI"})}),u.jsx("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"Қазақстан мұғалімдеріне арналған AI платформасы."})]}),u.jsx("nav",{className:"flex flex-wrap gap-x-8 gap-y-2",children:t.map(n=>n.to?u.jsx(on,{to:n.to,className:"text-sm text-muted-foreground transition-colors hover:text-foreground",children:n.label},n.label):u.jsx("a",{href:n.href,className:"text-sm text-muted-foreground transition-colors hover:text-foreground",children:n.label},n.label))}),u.jsx("div",{className:"flex flex-col gap-2.5",children:TI.map((n,r)=>{const o=n.icon;return u.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[u.jsx(o,{className:"h-3.5 w-3.5"}),n.text]},r)})})]})}),u.jsx("div",{className:"border-t border-sky-200/60 dark:border-border",children:u.jsxs("div",{className:"container flex items-center justify-between py-5",children:[u.jsxs("p",{className:"text-xs text-muted-foreground/60",children:["© ",new Date().getFullYear()," Zerde AI"]}),u.jsx("p",{className:"text-xs text-muted-foreground/60",children:"Барлық құқықтар қорғалған"})]})})]})}function RI(){const t=Et().pathname==="/";return u.jsxs("div",{className:"flex min-h-screen flex-col",children:[u.jsx(kI,{showLanguageSwitcher:!t}),u.jsx("main",{id:"main-content",className:"flex-1",tabIndex:-1,
399children:u.jsx(Ao,{})}),u.jsx(AI,{})]})}function bC(){return u.jsxs("div",{className:"flex min-h-screen flex-col",children:[u.jsx("header",{className:"flex h-14 items-center justify-end px-6",children:u.jsx(au,{})}),u.jsx("main",{id:"main-content",className:"flex flex-1 items-center justify-center p-6",tabIndex:-1,children:u.jsx("div",{className:"w-full max-w-sm",children:u.jsx(Ao,{})})}),u.jsxs("footer",{className:"py-4 text-center text-xs text-muted-foreground",children:["© ",new Date().getFullYear()," Zerde AI. Барлық құқықтар қорғалған."]})]})}function _I({children:e}){const{isLoading:t,isInitialized:n}=kt();return!n||t?u.jsx(Ro,{}):u.jsx(u.Fragment,{children:e})}const th=m.forwardRef(({className:e,...t},n)=>u.jsx("div",{ref:n,className:U("rounded-lg border bg-card text-card-foreground shadow-sm",e),...t}));th.displayName="Card";const nh=m.forwardRef(({className:e,...t},n)=>u.jsx("div",{ref:n,className:U("flex flex-col space-y-1.5 p-6",e),...t}));nh.displayName="CardHeader";const rh=m.forwardRef(({className:e,...t},n)=>u.jsx("h3",{ref:n,className:U("text-2xl font-semibold leading-none tracking-tight",e),...t}));rh.displayName="CardTitle";const oh=m.forwardRef(({className:e,...t},n)=>u.jsx("p",{ref:n,className:U("text-sm text-muted-foreground",e),...t}));oh.displayName="CardDescription";const ih=m.forwardRef(({className:e,...t},n)=>u.jsx("div",{ref:n,className:U("p-6 pt-0",e),...t}));ih.displayName="CardContent";const DI=m.forwardRef(({className:e,...t},n)=>u.jsx("div",{ref:n,className:U("flex items-center p-6 pt-0",e),...t}));DI.displayName="CardFooter";function wC({children:e}){const{t}=J(),n=Et(),{isAuthenticated:r,isLoading:o,isInitialized:i}=kt(),{hasActiveSubscription:s,isLoading:a,isAdmin:l,canAccessFeatures:c}=sI(),d=tI();return!i||o||a?u.jsx(Ro,{}):r?l?u.jsx(u.Fragment,{children:e}):c&&s?u.jsx(u.Fragment,{children:e}):u.jsx("div",{className:"flex items-center justify-center min-h-[60vh] p-4",children:u.jsxs(th,{className:"max-w-md w-full",children:[u.jsxs(nh,{className:"text-center",children:[u.jsx("div",{className:"mx-auto mb-4 flex h-16 w-16 items-center justify-center rounded-full bg-primary/10",children:u.jsx(qx,{className:"h-8 w-8 text-primary"})}),u.jsx(rh,{className:"text-2xl",children:t("subscription.required.title")}),u.jsx(oh,{className:"text-base",children:t("subscription.required.description")})]}),u.jsxs(ih,{className:"space-y-4",children:[u.jsx("p",{className:"text-sm text-muted-foreground text-center",children:t("subscription.required.benefits")}),u.jsxs("ul",{className:"space-y-2 text-sm",children:[u.jsxs("li",{className:"flex items-center gap-2",children:[u.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-primary"}),t("subscription.required.benefit1")]}),u.jsxs("li",{className:"flex items-center gap-2",children:[u.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-primary"}),t("subscription.required.benefit2")]}),u.jsxs("li",{className:"flex items-center gap-2",children:[u.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-primary"}),t("subscription.required.benefit3")]})]}),u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsxs(we,{onClick:()=>d.mutate(),disabled:d.isPending,className:"w-full bg-green-600 hover:bg-green-700",children:[d.isPending?u.jsx(Lr,{className:"mr-2 h-4 w-4 animate-spin"}):u.jsx(NR,{className:"mr-2 h-4 w-4"}),t("subscription.subscribeFree")]}),u.jsx(we,{asChild:!0,variant:"outline",className:"w-full",children:u.jsxs(on,{to:"/subscription",children:[t("subscription.required.viewPlans"),u.jsx(Ux,{className:"ml-2 h-4 w-4"})]})})]})]})]})}):u.jsx(Mr,{to:"/login",state:{from:n},replace:!0})}function jI({children:e}){const{user:t}=kt(),{data:n,isLoading:r}=rC();return r?u.jsx(Ro,{}):t!=null&&t.is_admin?u.jsx(u.Fragment,{children:e}):n!=null&&n.helpers?u.jsx(u.Fragment,{children:e}):u.jsx(Mr,{to:"/helpers",replace:!0})}function NI({children:e}){const t=Et(),{isAuthenticated:n,isLoading:r,isInitialized:o,user:i}=kt(),{checkPermission:s,isLoading:a,isInitialized:l}=iI();if(!o||r||a||!l)return u.jsx(Ro,{});if(!n)return u.jsx(Mr,{to:"/login",state:{from:t},replace:!0});if(i!=null&&i.is_admin)return u.jsx(u.Fragment,{children:e});const c=s("video");return c.canAccess?u.jsx(u.Fragment,{children:e}):u.jsx("div",{className:"flex items-center justify-center min-h-[60vh] p-4",children:u.jsxs(th,{className:"max-w-md w-full",children:[u.jsxs(nh,{className:"text-center",children:[u.jsx("div",{className:"mx-auto mb-4 flex h-14 w-14 items-center justify-center rounded-full bg-primary/10",children:u.jsx(Kx,{className:"h-7 w-7 text-primary"})}),u.jsx(rh,{children:"Видео генерация қолжетімсіз"}),u.jsx(oh,{children:c.reason==="limit_reached"?"Видео генерация лимитіңіз аяқталды. Жазылымыңызды жаңартыңыз.":"Видео генерация үшін жазылым қажет."})]}),u.jsx(ih,{className:"space-y-3",children:u.jsx(we,{asChild:!0,className:"w-full",children:u.jsxs(on,{to:"/subscription",children:[u.jsx(Ux,{className:"mr-2 h-4 w-4"}),"Жазылым жоспарларын көру"]})})})]})})}function OI({children:e}){const{user:t,isLoading:n,isInitialized:r,isAuthenticated:o}=kt();return!r||n?u.jsx(Ro,{}):o?(t==null?void 0:t.is_admin)===!0?u.jsx(u.Fragment,{children:e}):u.jsx(Mr,{to:"/dashboard",replace:!0}):u.jsx(Mr,{to:"/admin/login",replace:!0})}const X=e=>typeof e=="string",fs=()=>{let e,t;const n=new Promise((r,o)=>{e=r,t=o});return n.resolve=e,n.reject=t,n},ly=e=>e==null?"":""+e,MI=(e,t,n)=>{e.forEach(r=>{t[r]&&(n[r]=t[r])})},LI=/###/g,cy=e=>e&&e.indexOf("###")>-1?e.replace(LI,"."):e,uy=e=>!e||X(e),js=(e,t,n)=>{const r=X(t)?t.split("."):t;let o=0;for(;o<r.length-1;){if(uy(e))return{};const i=cy(r[o]);!e[i]&&n&&(e[i]=new n),Object.prototype.hasOwnProperty.call(e,i)?e=e[i]:e={},++o}return uy(e)?{}:{obj:e,k:cy(r[o])}},dy=(e,t,n)=>{const{obj:r,k:o}=js(e,t,Object);if(r!==void 0||t.length===1){r[o]=n;return}let i=t[t.length-1],s=t.slice(0,t.length-1),a=js(e,s,Object);for(;a.obj===void 0&&s.length;)i=`${s[s.length-1]}.${i}`,s=s.slice(0,s.length-1),a=js(e,s,Object),a&&a.obj&&typeof a.obj[`${a.k}.${i}`]<"u"&&(a.obj=void 0);a.obj[`${a.k}.${i}`]=n},II=(e,t,n,r)=>{const{obj:o,k:i}=js(e,t,Object);o[i]=o[i]||[],o[i].push(n)},kc=(e,t)=>{const{obj:n,k:r}=js(e,t);if(n)return n[r]},FI=(e,t,n)=>{const r=kc(e,n);return r!==void 0?r:kc(t,n)},xC=(e,t,n)=>{for(const r in t)r!=="__proto__"&&r!=="constructor"&&(r in e?X(e[r])||e[r]instanceof String||X(t[r])||t[r]instanceof String?n&&(e[r]=t[r]):xC(e[r],t[r],n):e[r]=t[r]);return e},Io=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var UI={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};const $I=e=>X(e)?e.replace(/[&<>
399"'\/]/g,t=>UI[t]):e;class zI{constructor(t){this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(t){const n=this.regExpMap.get(t);if(n!==void 0)return n;const r=new RegExp(t);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(t,r),this.regExpQueue.push(t),r}}const VI=[" ",",","?","!",";"],HI=new zI(20),qI=(e,t,n)=>{t=t||"",n=n||"";const r=VI.filter(s=>t.indexOf(s)<0&&n.indexOf(s)<0);if(r.length===0)return!0;const o=HI.getRegExp(`(${r.map(s=>s==="?"?"\\?":s).join("|")})`);let i=!o.test(e);if(!i){const s=e.indexOf(n);s>0&&!o.test(e.substring(0,s))&&(i=!0)}return i},rp=function(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];const r=t.split(n);let o=e;for(let i=0;i<r.length;){if(!o||typeof o!="object")return;let s,a="";for(let l=i;l<r.length;++l)if(l!==i&&(a+=n),a+=r[l],s=o[a],s!==void 0){if(["string","number","boolean"].indexOf(typeof s)>-1&&l<r.length-1)continue;i+=l-i+1;break}o=s}return o},Tc=e=>e&&e.replace("_","-"),BI={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class Ac{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,n)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=t||BI,this.options=n,this.debug=n.debug}log(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"log","",!0)}warn(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"warn","",!0)}error(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"error","")}deprecate(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"warn","WARNING DEPRECATED: ",!0)}forward(t,n,r,o){return o&&!this.debug?null:(X(t[0])&&(t[0]=`${r}${this.prefix} ${t[0]}`),this.logger[n](t))}create(t){return new Ac(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new Ac(this.logger,t)}}var kn=new Ac;class bu{constructor(){this.observers={}}on(t,n){return t.split(" ").forEach(r=>{this.observers[r]||(this.observers[r]=new Map);const o=this.observers[r].get(n)||0;this.observers[r].set(n,o+1)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t].delete(n)}}emit(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];this.observers[t]&&Array.from(this.observers[t].entries()).forEach(s=>{let[a,l]=s;for(let c=0;c<l;c++)a(...r)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(s=>{let[a,l]=s;for(let c=0;c<l;c++)a.apply(a,[t,...r])})}}class fy extends bu{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const n=this.options.ns.indexOf(t);n>-1&&this.options.ns.splice(n,1)}getResource(t,n,r){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const i=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,s=o.ignoreJSONStructure!==void 0?o.ignoreJSONStructure:this.options.ignoreJSONStructure;let a;t.indexOf(".")>-1?a=t.split("."):(a=[t,n],r&&(Array.isArray(r)?a.push(...r):X(r)&&i?a.push(...r.split(i)):a.push(r)));const l=kc(this.data,a);return!l&&!n&&!r&&t.indexOf(".")>-1&&(t=a[0],n=a[1],r=a.slice(2).join(".")),l||!s||!X(r)?l:rp(this.data&&this.data[t]&&this.data[t][n],r,i)}addResource(t,n,r,o){let i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const s=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator;let a=[t,n];r&&(a=a.concat(s?r.split(s):r)),t.indexOf(".")>-1&&(a=t.split("."),o=n,n=a[1]),this.addNamespaces(n),dy(this.data,a,o),i.silent||this.emit
vendor: 1,505 bytes, line 399
399("added",t,n,r,o)}addResources(t,n,r){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const i in r)(X(r[i])||Array.isArray(r[i]))&&this.addResource(t,n,i,r[i],{silent:!0});o.silent||this.emit("added",t,n,r)}addResourceBundle(t,n,r,o,i){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1,skipCopy:!1},a=[t,n];t.indexOf(".")>-1&&(a=t.split("."),o=r,r=n,n=a[1]),this.addNamespaces(n);let l=kc(this.data,a)||{};s.skipCopy||(r=JSON.parse(JSON.stringify(r))),o?xC(l,r,i):l={...l,...r},dy(this.data,a,l),s.silent||this.emit("added",t,n,r)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,n)}:this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(o=>n[o]&&Object.keys(n[o]).length>0)}toJSON(){return this.data}}var SC={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,o){return e.forEach(i=>{this.processors[i]&&(t=this.processors[i].process(t,n,r,o))}),t}};const py={};class Rc extends bu{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),MI(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","
399i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=kn.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;const r=this.resolve(t,n);return r&&r.res!==void 0}extractFromKey(t,n){let r=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const o=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let i=n.ns||this.options.defaultNS||[];const s=r&&t.indexOf(r)>-1,a=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!qI(t,r,o);if(s&&!a){const l=t.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:t,namespaces:X(i)?[i]:i};const c=t.split(r);(r!==o||r===o&&this.options.ns.indexOf(c[0])>-1)&&(i=c.shift()),t=c.join(o)}return{key:t,namespaces:X(i)?[i]:i}}translate(t,n,r){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n={...n}),n||(n={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);const o=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,i=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:s,namespaces:a}=this.extractFromKey(t[t.length-1],n),l=a[a.length-1],c=n.lng||this.language,d=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(c&&c.toLowerCase()==="cimode"){if(d){const S=n.nsSeparator||this.options.nsSeparator;return o?{res:`${l}${S}${s}`,usedKey:s,exactUsedKey:s,usedLng:c,usedNS:l,usedParams:this.getUsedParamsDetails(n)}:`${l}${S}${s}`}return o?{res:s,usedKey:s,exactUsedKey:s,usedLng:c,usedNS:l,usedParams:this.getUsedParamsDetails(n)}:s}const f=this.resolve(t,n);let p=f&&f.res;const h=f&&f.usedKey||s,g=f&&f.exactUsedKey||s,v=Object.prototype.toString.apply(p),b=["[object Number]","[object Function]","[object RegExp]"],y=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,w=!this.i18nFormat||this.i18nFormat.handleAsObject,x=!X(p)&&typeof p!="boolean"&&typeof p!="number";if(w&&p&&x&&b.indexOf(v)<0&&!(X(y)&&Array.isArray(p))){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const S=this.options.returnedObjectHandler?this.options.returnedObjectHandler(h,p,{...n,ns:a}):`key '${s} (${this.language})' returned an object instead of string.`;return o?(f.res=S,f.usedParams=this.getUsedParamsDetails(n),f):S}if(i){const S=Array.isArray(p),C=S?[]:{},k=S?g:h;for(const E in p)if(Object.prototype.hasOwnProperty.call(p,E)){const T=`${k}${i}${E}`;C[E]=this.translate(T,{...n,joinArrays:!1,ns:a}),C[E]===T&&(C[E]=p[E])}p=C}}else if(w&&X(y)&&Array.isArray(p))p=p.join(y),p&&(p=this.extendTranslation(p,t,n,r));else{let S=!1,C=!1;const k=n.count!==void 0&&!X(n.count),E=Rc.hasDefaultValue(n),T=k?this.pluralResolver.getSuffix(c,n.count,n):"",j=n.ordinal&&k?this.pluralResolver.getSuffix(c,n.count,{ordinal:!1}):"",A=k&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),L=A&&n[`defaultValue${this.options.pluralSeparator}zero`]||n[`defaultValue${T}`]||n[`defaultValue${j}`]||n.defaultValue;!this.isValidLookup(p)&&E&&(S=!0,p=L),this.isValidLookup(p)||(C=!0,p=s);const K=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&C?void 0:p,I=E&&L!==p&&this.options.updateMissing;if(C||S||I){if(this.logger.log(I?"updateKey":"missingKey",c,l,s,I?L:p),i){const D=this.resolve(s,{...n,keySeparator:!1});D&&D.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let Z=[];const q=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&q&&q[0])for(let D=0;D<q.length;D++)Z.push(q[D]);else this.options.saveMissingTo==="all"?Z=this.languageUtils.toResolveHierarchy(n.lng||this.language):Z.push(n.lng||this.language);const re=(D,O,$)=>{const B=E&&$!==p?$:K;this.options.missingKeyHandler?this.options.missingKeyHandler(D,l,O,B,I,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(D,l,O,B,I,n),this.emit
vendor: 11,994 bytes, line 399
399("missingKey",D,l,O,p)};this.options.saveMissing&&(this.options.saveMissingPlurals&&k?Z.forEach(D=>{const O=this.pluralResolver.getSuffixes(D,n);A&&n[`defaultValue${this.options.pluralSeparator}zero`]&&O.indexOf(`${this.options.pluralSeparator}zero`)<0&&O.push(`${this.options.pluralSeparator}zero`),O.forEach($=>{re([D],s+$,n[`defaultValue${$}`]||L)})}):re(Z,s,L))}p=this.extendTranslation(p,t,n,f,r),C&&p===s&&this.options.appendNamespaceToMissingKey&&(p=`${l}:${s}`),(C||S)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?p=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${s}`:s,S?p:void 0):p=this.options.parseMissingKeyHandler(p))}return o?(f.res=p,f.usedParams=this.getUsedParamsDetails(n),f):p}extendTranslation(t,n,r,o,i){var s=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...r},r.lng||this.language||o.usedLng,o.usedNS,o.usedKey,{resolved:o});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const c=X(t)&&(r&&r.interpolation&&r.interpolation.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let d;if(c){const p=t.match(this.interpolator.nestingRegexp);d=p&&p.length}let f=r.replace&&!X(r.replace)?r.replace:r;if(this.options.interpolation.defaultVariables&&(f={...this.options.interpolation.defaultVariables,...f}),t=this.interpolator.interpolate(t,f,r.lng||this.language||o.usedLng,r),c){const p=t.match(this.interpolator.nestingRegexp),h=p&&p.length;d<h&&(r.nest=!1)}!r.lng&&this.options.compatibilityAPI!=="v1"&&o&&o.res&&(r.lng=this.language||o.usedLng),r.nest!==!1&&(t=this.interpolator.nest(t,function(){for(var p=arguments.length,h=new Array(p),g=0;g<p;g++)h[g]=arguments[g];return i&&i[0]===h[0]&&!r.context?(s.logger.warn(`It seems you are nesting recursively key: ${h[0]} in key: ${n[0]}`),null):s.translate(...h,n)},r)),r.interpolation&&this.interpolator.reset()}const a=r.postProcess||this.options.postProcess,l=X(a)?[a]:a;return t!=null&&l&&l.length&&r.applyPostProcessor!==!1&&(t=SC.handle(l,t,n,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...o,usedParams:this.getUsedParamsDetails(r)},...r}:r,this)),t}resolve(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r,o,i,s,a;return X(t)&&(t=[t]),t.forEach(l=>{if(this.isValidLookup(r))return;const c=this.extractFromKey(l,n),d=c.key;o=d;let f=c.namespaces;this.options.fallbackNS&&(f=f.concat(this.options.fallbackNS));const p=n.count!==void 0&&!X(n.count),h=p&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),g=n.context!==void 0&&(X(n.context)||typeof n.context=="number")&&n.context!=="",v=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);f.forEach(b=>{this.isValidLookup(r)||(a=b,!py[`${v[0]}-${b}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(a)&&(py[`${v[0]}-${b}`]=!0,this.logger.warn(`key "${o}" for languages "${v.join(", ")}" won't get resolved as namespace "${a}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),v.forEach(y=>{if(this.isValidLookup(r))return;s=y;const w=[d];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(w,d,y,b,n);else{let S;p&&(S=this.pluralResolver.getSuffix(y,n.count,n));const C=`${this.options.pluralSeparator}zero`,k=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(p&&(w.push(d+S),n.ordinal&&S.indexOf(k)===0&&w.push(d+S.replace(k,this.options.pluralSeparator)),h&&w.push(d+C)),g){const E=`${d}${this.options.contextSeparator}${n.context}`;w.push(E),p&&(w.push(E+S),n.ordinal&&S.indexOf(k)===0&&w.push(E+S.replace(k,this.options.pluralSeparator)),h&&w.push(E+C))}}let x;for(;x=w.pop();)this.isValidLookup(r)||(i=x,r=this.getResource(y,b,x,n))}))})}),{res:r,usedKey:o,exactUsedKey:i,usedLng:s,usedNS:a}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,r){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,n,r,o):this.resourceStore.getResource(t,n,r,o)}getUsedParamsDetails(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],r=t.replace&&!X(t.replace);let o=r?t.replace:t;if(r&&typeof t.count<"u"&&(o.count=t.count),this.options.interpolation.defaultVariables&&(o={...this.options.interpolation.defaultVariables,...o}),!r){o={...o};for(const i of n)delete o[i]}return o}static hasDefaultValue(t){const n="defaultValue";for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&n===r.substring(0,n.length)&&t[r]!==void 0)return!0;return!1}}const bd=e=>e.charAt(0).toUpperCase()+e.slice(1);class my{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=kn.create("languageUtils")}getScriptPartFromCode(t){if(t=Tc(t),!t||t.indexOf("-")<0)return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=Tc(t),!t||t.indexOf("-")<0)return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(X(t)&&t.indexOf("-")>-1){if(typeof Intl<"u"&&typeof Intl.getCanonicalLocales<"u")try{let o=Intl.getCanonicalLocales(t)[0];if(o&&this.options.lowerCaseLng&&(o=o.toLowerCase()),o)return o}catch{}const n=["hans","hant","latn","cyrl","cans","mong","arab"];let r=t.split("-");return this.options.lowerCaseLng?r=r.map(o=>o.toLowerCase()):r.length===2?(r[0]=r[0].toLowerCase(),r[1]=r[1].toUpperCase(),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=bd(r[1].toLowerCase()))):r.length===3&&(r[0]=r[0].toLowerCase(),r[1].length===2&&(r[1]=r[1].toUpperCase()),r[0]!=="sgn"&&r[2].length===2&&(r[2]=r[2].toUpperCase()),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=bd(r[1].toLowerCase())),n.indexOf(r[2].toLowerCase())>-1&&(r[2]=bd(r[2].toLowerCase()))),r.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(r=>{if(n)return;const o=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(o))&&(n=o)}),!n&&this.options.supportedLngs&&t.forEach(r=>{if(n)return;const o=this.getLanguagePartFromCode(r);if(this.isSupportedCode(o))return n=o;n=this.options.supportedLngs.find(i=>{if(i===o)return i;if(!(i.indexOf("-")<0&&o.indexOf("-")<0)&&(i.indexOf("-")>0&&o.indexOf("-")<0&&i.substring(0,i.indexOf("-"))===o||i.indexOf(o)===0&&o.length>1))return i})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),X(t)&&(t=[t]),Array.isArray(t))return t;if(!n)return t.default||[];let r=t[n];return r||(r=t[this.getScriptPartFromCode(n)]),r||(r=t[this.formatLanguageCode(n)]),r||(r=t[this.getLanguagePartFromCode(n)]),r||(r=t.default),r||[]}toResolveHierarchy(t,n){const r=this.getFallbackCodes(n||this.options.fallbackLng||[],t),o=[],i=s=>{s&&(this.isSupportedCode(s)?o.push(s):this.logger.warn(`rejecting language code not found in supportedLngs: ${s}`))};return X(t)&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&i(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&i(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&i(this.getLanguagePartFromCode(t))):X(t)&&i(this.formatLanguageCode(t)),r.forEach(s=>{o.indexOf(s)<0&&i(this.formatLanguageCode(s))}),o}}let WI=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],GI={1:e=>+(e>1),2:e=>+(e!=1),3:e=>0,4:e=>e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2,5:e=>e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5,6:e=>e==1?0:e>=2&&e<=4?1:2,7:e=>e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2,8:e=>e==1?0:e==2?1:e!=8&&e!=11?2:3,9:e=>+(e>=2),10:e=>e==1?0:e==2?1:e<7?2:e<11?3:4,11:e=>e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3,12:e=>+(e%10!=1||e%100==11),13:e=>+(e!==0),14:e=>e==1?0:e==2?1:e==3?2:3,15:e=>e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2,16:e=>e%10==1&&e%100!=11?0:e!==0?1:2,17:e=>e==1||e%10==1&&e%100!=11?0:1,18:e=>e==0?0:e==1?1:2,19:e=>e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3,20:e=>e==1?0:e==0||e%100>0&&e%100<20?1:2,21:e=>e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0,22:e=>e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3};const KI=["v1","v2","v3"],QI=["v4"],hy={zero:0,one:1,two:2,few:3,many:4,other:5},YI=()=>{const e={};return WI.forEach(t=>{t.lngs.forEach(n=>{e[n]={numbers:t.nr,plurals:GI[t.fc]}})}),e};class JI{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=n,this.logger=kn.create("pluralResolver"),(!this.options.compatibilityJSON||QI.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=YI(),this.pluralRulesCache={}}addRule(t,n){this.rules[t]=n}clearCache(){this.pluralRulesCache={}}getRule(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi()){const r=Tc(t==="dev"?"en":t),o=n.ordinal?"ordinal":"cardinal",i=JSON.stringify({cleanedCode:r,type:o});if(i in this.pluralRulesCache)return this.pluralRulesCache[i];let s;try{s=new Intl.PluralRules(r,{type:o})}catch{if(!t.match(/-|_/))return;const l=this.languageUtils.getLanguagePartFromCode(t);s=this.getRule(l,n)}return this.pluralRulesCache[i]=s,s}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return this.shouldUseIntlApi()?r&&r.resolvedOptions().pluralCategories.length>1:r&&r.numbers.length>1}getPluralFormsOfKey(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};
vendor: 1,299 bytes, line 399
399return this.getSuffixes(t,r).map(o=>`${n}${o}`)}getSuffixes(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((o,i)=>hy[o]-hy[i]).map(o=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${o}`):r.numbers.map(o=>this.getSuffix(t,o,n)):[]}getSuffix(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const o=this.getRule(t,r);return o?this.shouldUseIntlApi()?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${o.select(n)}`:this.getSuffixRetroCompatible(o,n):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,n){const r=t.noAbs?t.plurals(n):t.plurals(Math.abs(n));let o=t.numbers[r];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(o===2?o="plural":o===1&&(o=""));const i=()=>this.options.prepend&&o.toString()?this.options.prepend+o.toString():o.toString();return this.options.compatibilityJSON==="v1"?o===1?"":typeof o=="number"?`_plural_${o.toString()}`:i():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?i():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}
vendor: 4,290 bytes, line 399
399shouldUseIntlApi(){return!KI.includes(this.options.compatibilityJSON)}}const gy=function(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,i=FI(e,t,n);return!i&&o&&X(n)&&(i=rp(e,n,r),i===void 0&&(i=rp(t,n,r))),i},wd=e=>e.replace(/\$/g,"$$$$");class XI{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=kn.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(n=>n),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const{escape:n,escapeValue:r,useRawValueToEscape:o,prefix:i,prefixEscaped:s,suffix:a,suffixEscaped:l,formatSeparator:c,unescapeSuffix:d,unescapePrefix:f,nestingPrefix:p,nestingPrefixEscaped:h,nestingSuffix:g,nestingSuffixEscaped:v,nestingOptionsSeparator:b,maxReplaces:y,alwaysFormat:w}=t.interpolation;this.escape=n!==void 0?n:$I,this.escapeValue=r!==void 0?r:!0,this.useRawValueToEscape=o!==void 0?o:!1,this.prefix=i?Io(i):s||"{{",this.suffix=a?Io(a):l||"}}",this.formatSeparator=c||",",this.unescapePrefix=d?"":f||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=p?Io(p):h||Io("$t("),this.nestingSuffix=g?Io(g):v||Io(")"),this.nestingOptionsSeparator=b||",",this.maxReplaces=y||1e3,this.alwaysFormat=w!==void 0?w:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=(n,r)=>n&&n.source===r?(n.lastIndex=0,n):new RegExp(r,"g");this.regexp=t(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=t(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=t(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(t,n,r,o){let i,s,a;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},c=h=>{if(h.indexOf(this.formatSeparator)<0){const y=gy(n,l,h,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(y,void 0,r,{...o,...n,interpolationkey:h}):y}const g=h.split(this.formatSeparator),v=g.shift().trim(),b=g.join(this.formatSeparator).trim();return this.format(gy(n,l,v,this.options.keySeparator,this.options.ignoreJSONStructure),b,r,{...o,...n,interpolationkey:v})};this.resetRegExp();const d=o&&o.missingInterpolationHandler||this.options.missingInterpolationHandler,f=o&&o.interpolation&&o.interpolation.skipOnVariables!==void 0?o.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:h=>wd(h)},{regex:this.regexp,safeValue:h=>this.escapeValue?wd(this.escape(h)):wd(h)}].forEach(h=>{for(a=0;i=h.regex.exec(t);){const g=i[1].trim();if(s=c(g),s===void 0)if(typeof d=="function"){const b=d(t,i,o);s=X(b)?b:""}else if(o&&Object.prototype.hasOwnProperty.call(o,g))s="";else if(f){s=i[0];continue}else this.logger.warn(`missed to pass in variable ${g} for interpolating ${t}`),s="";else!X(s)&&!this.useRawValueToEscape&&(s=ly(s));const v=h.safeValue(s);if(t=t.replace(i[0],v),f?(h.regex.lastIndex+=s.length,h.regex.lastIndex-=i[0].length):h.regex.lastIndex=0,a++,a>=this.maxReplaces)break}}),t}nest(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o,i,s;const a=(l,c)=>{const d=this.nestingOptionsSeparator;if(l.indexOf(d)<0)return l;const f=l.split(new RegExp(`${d}[ ]*{`));let p=`{${f[1]}`;l=f[0],p=this.interpolate(p,s);const h=p.match(/'/g),g=p.match(/"/g);(h&&h.length%2===0&&!g||g.length%2!==0)&&(p=p.replace(/'/g,'"'));try{s=JSON.parse(p),c&&(s={...c,...s})}catch(v){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,v),`${l}${d}${p}`}return s.defaultValue&&s.defaultValue.indexOf(this.prefix)>-1&&delete s.defaultValue,l};for(;o=this.nestingRegexp.exec(t);){let l=[];s={...r},s=s.replace&&!X(s.replace)?s.replace:s,s.applyPostProcessor=!1,delete s.defaultValue;let c=!1;if(o[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(o[1])){const d=o[1].split(this.formatSeparator).map(f=>f.trim());o[1]=d.shift(),l=d,c=!0}if(i=n(a.call(this,o[1].trim(),s),s),i&&o[0]===t&&!X(i))return i;X(i)||(i=ly(i)),i||(this.logger.warn(`missed to resolve ${o[1]} for nesting ${t}
399`),i=""),c&&(i=l.reduce((d,f)=>this.format(d,f,r.lng,{...r,interpolationkey:o[1].trim()}),i.trim())),t=t.replace(o[0],i),this.regexp.lastIndex=0}return t}}const ZI=e=>{let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const o=r[1].substring(0,r[1].length-1);t==="currency"&&o.indexOf(":")<0?n.currency||(n.currency=o.trim()):t==="relativetime"&&o.indexOf(":")<0?n.range||(n.range=o.trim()):o.split(";").forEach(s=>{if(s){const[a,...l]=s.split(":"),c=l.join(":").trim().replace(/^'+|'+$/g,""),d=a.trim();n[d]||(n[d]=c),c==="false"&&(n[d]=!1),c==="true"&&(n[d]=!0),isNaN(c)||(n[d]=parseInt(c,10))}})}return{formatName:t,formatOptions:n}},Fo=e=>{const t={};return(n,r,o)=>{let i=o;o&&o.interpolationkey&&o.formatParams&&o.formatParams[o.interpolationkey]&&o[o.interpolationkey]&&(i={...i,[o.interpolationkey]:void 0});const s=r+JSON.stringify(i);let a=t[s];return a||(a=e(Tc(r),o),t[s]=a),a(n)}};class eF{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=kn.create("formatter"),this.options=t,this.formats={number:Fo((n,r)=>{const o=new Intl.NumberFormat(n,{...r});return i=>o.format(i)}),currency:Fo((n,r)=>{const o=new Intl.NumberFormat(n,{...r,style:"currency"});return i=>o.format(i)}),datetime:Fo((n,r)=>{const o=new Intl.DateTimeFormat(n,{...r});return i=>o.format(i)}),relativetime:Fo((n,r)=>{const o=new Intl.RelativeTimeFormat(n,{...r});return i=>o.format(i,r.range||"day")}),list:Fo((n,r)=>{const o=new Intl.ListFormat(n,{...r});return i=>o.format(i)})},this.init(t)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};this.formatSeparator=n.interpolation.formatSeparator||","}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=Fo(n)}format(t,n,r){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const i=n.split(this.formatSeparator);if(i.length>1&&i[0].indexOf("(")>1&&i[0].indexOf(")")<0&&i.find(a=>a.indexOf(")")>-1)){const a=i.findIndex(l=>l.indexOf(")")>-1);i[0]=[i[0],...i.splice(1,a)].join(this.formatSeparator)}return i.reduce((a,l)=>{const{formatName:c,formatOptions:d}=ZI(l);if(this.formats[c]){let f=a;try{const p=o&&o.formatParams&&o.formatParams[o.interpolationkey]||{},h=p.locale||p.lng||o.locale||o.lng||r;f=this.formats[c](a,h,{...d,...o,...p})}catch(p){this.logger.warn(p)}return f}else this.logger.warn(`there was no format function for ${c}`);return a},t)}}const tF=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)};class nF extends bu{constructor(t,n,r){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=n,this.services=r,this.languageUtils=r.languageUtils,this.options=o,this.logger=kn.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=o.maxParallelReads||10,this.readingCalls=0,this.maxRetries=o.maxRetries>=0?o.maxRetries:5,this.retryTimeout=o.retryTimeout>=1?o.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(r,o.backend,o)}queueLoad(t,n,r,o){const i={},s={},a={},l={};return t.forEach(c=>{let d=!0;n.forEach(f=>{const p=`${c}|${f}`;!r.reload&&this.store.hasResourceBundle(c,f)?this.state[p]=2:this.state[p]<0||(this.state[p]===1?s[p]===void 0&&(s[p]=!0):(this.state[p]=1,d=!1,s[p]===void 0&&(s[p]=!0),i[p]===void 0&&(i[p]=!0),l[f]===void 0&&(l[f]=!0)))}),d||(a[c]=!0)}),(Object.keys(i).length||Object.keys(s).length)&&this.queue.push({pending:s,pendingCount:Object.keys(s).length,loaded:{},errors:[],callback:o}),{toLoad:Object.keys(i),pending:Object.keys(s),toLoadLanguages:Object.keys(a),toLoadNamespaces:Object.keys(l)}}loaded(t,n,r){const o=t.split("|"),i=o[0],s=o[1];n&&this.emit("failedLoading",i,s,n),!n&&r&&this.store.addResourceBundle(i,s,r,void 0,void 0,{skipCopy:!0}),this.state[t]=n?-1:2,n&&r&&(this.state[t]=0);const a={};this.queue.forEach(l=>{II(l.loaded,[i],s),tF(l,t),n&&l.errors.push(n),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(c=>{a[c]||(a[c]={});const d=l.loaded[c];d.length&&d.forEach(f=>{a[c][f]===void 0&&(a[c][f]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}
vendor: 15,500 bytes, line 399
399),this.emit("loaded",a),this.queue=this.queue.filter(l=>!l.done)}read(t,n,r){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,s=arguments.length>5?arguments[5]:void 0;if(!t.length)return s(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:r,tried:o,wait:i,callback:s});return}this.readingCalls++;const a=(c,d)=>{if(this.readingCalls--,this.waitingReads.length>0){const f=this.waitingReads.shift();this.read(f.lng,f.ns,f.fcName,f.tried,f.wait,f.callback)}if(c&&d&&o<this.maxRetries){setTimeout(()=>{this.read.call(this,t,n,r,o+1,i*2,s)},i);return}s(c,d)},l=this.backend[r].bind(this.backend);if(l.length===2){try{const c=l(t,n);c&&typeof c.then=="function"?c.then(d=>a(null,d)).catch(a):a(null,c)}catch(c){a(c)}return}return l(t,n,a)}prepareLoading(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();X(t)&&(t=this.languageUtils.toResolveHierarchy(t)),X(n)&&(n=[n]);const i=this.queueLoad(t,n,r,o);if(!i.toLoad.length)return i.pending.length||o(),null;i.toLoad.forEach(s=>{this.loadOne(s)})}load(t,n,r){this.prepareLoading(t,n,{},r)}reload(t,n,r){this.prepareLoading(t,n,{reload:!0},r)}loadOne(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const r=t.split("|"),o=r[0],i=r[1];this.read(o,i,"read",void 0,void 0,(s,a)=>{s&&this.logger.warn(`${n}loading namespace ${i} for language ${o} failed`,s),!s&&a&&this.logger.log(`${n}loaded namespace ${i} for language ${o}`,a),this.loaded(t,s,a)})}saveMissing(t,n,r,o,i){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${r}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend&&this.backend.create){const l={...s,isUpdate:i},c=this.backend.create.bind(this.backend);if(c.length<6)try{let d;c.length===5?d=c(t,n,r,o,l):d=c(t,n,r,o),d&&typeof d.then=="function"?d.then(f=>a(null,f)).catch(a):a(null,d)}catch(d){a(d)}else c(t,n,r,o,a,l)}!t||!t[0]||this.store.addResource(t[0],n,r,o)}}}const vy=()=>({debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]=="object"&&(t=e[1]),X(e[1])&&(t.defaultValue=e[1]),X(e[2])&&(t.tDescription=e[2]),typeof e[2]=="object"||typeof e[3]=="object"){const n=e[3]||e[2];Object.keys(n).forEach(r=>{t[r]=n[r]})}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}),yy=e=>(X(e.ns)&&(e.ns=[e.ns]),X(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),X(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e),ll=()=>{},rF=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})};class la extends bu{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=yy(t),this.services={},this.logger=kn,this.modules={external:[]},rF(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(){var t=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,typeof n=="function"&&(r=n,n={}),!n.defaultNS&&n.defaultNS!==!1&&n.ns&&(X(n.ns)?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const o=vy();this.options={...o,...this.options,...yy(n)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...o.interpolation,...this.options.interpolation}),n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);const i=d=>d?typeof d=="function"?new d:d:null;if(!this.options.isClone){this.modules.logger?kn.init(i(this.modules.logger),this.options):kn.init(null,this.options);let d;this.modules.formatter?d=this.modules.formatter:typeof Intl<"u"&&(d=eF);const f=new my(this.options);this.store=new fy(this.options.resources,this.options);const p=this.services;p.logger=kn,p.resourceStore=this.store,p.languageUtils=f,p.pluralResolver=new JI(f,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),d&&(!this.options.interpolation.format||this.options.interpolation.format===o.interpolation.format)&&(p.formatter=i(d),p.formatter.init(p,this.options),this.options.interpolation.format=p.formatter.format.bind(p.formatter)),p.interpolator=new XI(this.options),p.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},p.backendConnector=new nF(i(this.modules.backend),p.resourceStore,p,this.options),p.backendConnector.on("*",function(h){for(var g=arguments.length,v=new Array(g>1?g-1:0),b=1;b<g;b++)v[b-1]=arguments[b];t.emit(h,...v)}),this.modules.languageDetector&&(p.languageDetector=i(this.modules.languageDetector),p.languageDetector.init&&p.languageDetector.init(p,this.options.detection,this.options)),this.modules.i18nFormat&&(p.i18nFormat=i(this.modules.i18nFormat),p.i18nFormat.init&&p.i18nFormat.init(this)),this.translator=new Rc(this.services,this.options),this.translator.on("*",function(h){for(var g=arguments.length,v=new Array(g>1?g-1:0),b=1;b<g;b++)v[b-1]=arguments[b];t.emit(h,...v)}),this.modules.external.forEach(h=>{h.init&&h.init(this)})}if(this.format=this.options.interpolation.format,r||(r=ll),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const d=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);d.length>0&&d[0]!=="dev"&&(this.options.lng=d[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(d=>{this[d]=function(){return t.store[d](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(d=>{this[d]=function(){return t.store[d](...arguments),t}});const l=fs(),c=()=>{const d=(f,p)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(p),r(f,p)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return d(null,this.t.bind(this));this.changeLanguage(this.options.lng,d)};return this.options.resources||!this.options.initImmediate?c():setTimeout(c,0),l}loadResources(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ll;const o=X(t)?t:this.language;if(typeof t=="function"&&(r=t),!this.options.resources||this.options.partialBundledLanguages){if(o&&o.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return r();const i=[],s=a=>{if(!a||a==="cimode")return;this.services.languageUtils.toResolveHierarchy(a).forEach(c=>{c!=="cimode"&&i.indexOf(c)<0&&i.push(c)})};o?s(o):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>s(l)),this.options.preload&&this.options.preload.forEach(a=>s(a)),this.services.backendConnector.load(i,this.options.ns,a=>{!a&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(a)})}else r(null)}reloadResources(t,n,r){const o=fs();return typeof t=="function"&&(r=t,t=void 0),typeof n=="function"&&(r=n,n=void 0),t||(t=this.languages),n||(n=this.options.ns),r||(r=ll),this.services.backendConnector.reload(t,n,i=>{o.resolve(),r(i)}),o}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&SC.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let n=0;n<this.languages.length;n++){const r=this.languages[n];if(!(["cimode","dev"].indexOf(r)>-1)&&this.store.hasLanguageSomeTranslations(r)){this.resolvedLanguage=r;break}}}changeLanguage(t,n){var r=this;this.isLanguageChangingTo=t;const o=fs();this.emit("languageChanging",t);const i=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},s=(l,c)=>{c?(i(c),this.translator.changeLanguage(c),this.isLanguageChangingTo=void 0,this.emit("languageChanged",c),this.logger.log("languageChanged",c)):this.isLanguageChangingTo=void 0,o.resolve(function(){return r.t(...arguments)}),n&&n(l,function(){return r.t(...arguments)})},a=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);const c=X(l)?l:this.services.languageUtils.getBestMatchFromCodes(l);c&&(this.language||i(c),this.translator.language||this.translator.changeLanguage(c),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(c)),this.loadResources(c,d=>{s(d,c)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?a(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(t),o}getFixedT(t,n,r){var o=this;const i=function(s,a){let l;if(typeof a!="object"){for(var c=arguments.length,d=new Array(c>2?c-2:0),f=2;f<c;f++)d[f-2]=arguments[f];l=o.options.overloadTranslationOptionHandler([s,a].concat(d))}else l={...a};l.lng=l.lng||i.lng,l.lngs=l.lngs||i.lngs,l.ns=l.ns||i.ns,l.keyPrefix!==""&&(l.keyPrefix=l.keyPrefix||r||i.keyPrefix);const p=o.options.keySeparator||".";let h;return l.keyPrefix&&Array.isArray(s)?h=s.map(g=>`${l.keyPrefix}${p}${g}`):h=l.keyPrefix?`${l.keyPrefix}${p}${s}`:s,o.t(h,l)};return X(t)?i.lng=t:i.lngs=t,i.ns=n,i.keyPrefix=r,i}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=n.lng||this.resolvedLanguage||this.languages[0],o=this.options?this.options.fallbackLng:!1,i=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const s=(a,l)=>{const c=this.services.backendConnector.state[`${a}|${l}`];return c===-1||c===0||c===2};if(n.precheck){const a=n.precheck(this,s);if(a!==void 0)return a}return!!(this.hasResourceBundle(r,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||s(r,t)&&(!o||s(i,t)))}loadNamespaces(t,n){const r=fs();return this.options.ns?(X(t)&&(t=[t]),t.forEach(o=>{this.options.ns.indexOf(o)<0&&this.options.ns.push(o)}),this.loadResources(o=>{r.resolve(),n&&n(o)}),r):(n&&n(),Promise.resolve())}loadLanguages(t,n){const r=fs();X(t)&&(t=[t]);const o=this.options.preload||[],i=t.filter(s=>o.indexOf(s)<0&&this.services.languageUtils.isSupportedCode(s));return i.length?(this.options.preload=o.concat(i),this.loadResources(s=>{r.resolve(),n&&n(s)}),r):(n&&n(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services&&this.services.languageUtils||new my(vy());return n.indexOf(r.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new la(t,n)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ll;const r=t.forkResourceStore;r&&delete t.forkResourceStore;const o={...this.options,...t,isClone:!0},i=new la(o);return(t.debug!==void 0||t.prefix!==void 0)&&(i.logger=i.logger.clone(t)),["store","services","language"].forEach(a=>{i[a]=this[a]}),i.services={...this.services},i.services.utils={hasLoadedNamespace:i.hasLoadedNamespace.bind(i)},r&&(i.store=new fy(this.store.data,o),i.services.resourceStore=i.store),i.translator=new Rc(i.services,o),i.translator.on("*",function(a){for(var l=arguments.length,c=new Array(l>1?l-1:0),d=1;d<l;d++)c[d-1]=arguments[d];i.emit(a,...c)}),i.init(o,n),i.translator.options=o,i.translator.backendConnector.services.utils={hasLoadedNamespace:i.hasLoadedNamespace.bind(i)},i}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Ye=la.createInstance();Ye.createInstance=la.createInstance;Ye.createInstance;Ye.dir;Ye.init;Ye.loadResources;Ye.reloadResources;Ye.use;Ye.changeLanguage;Ye.getFixedT;Ye.t;Ye.exists;Ye.setDefaultNamespace;Ye.hasLoadedNamespace;Ye.loadNamespaces;Ye.loadLanguages;const{slice:oF,forEach:iF}=[];function sF(e){return iF.call(oF.call(arguments,1),t=>{if(t)for(const n in t)e[n]===void 0&&(e[n]=t[n])}),e}
vendor: 6,367 bytes, line 399
399function aF(e){return typeof e!="string"?!1:[/<\s*script.*?>/i,/<\s*\/\s*script\s*>/i,/<\s*img.*?on\w+\s*=/i,/<\s*\w+\s*on\w+\s*=.*?>/i,/javascript\s*:/i,/vbscript\s*:/i,/expression\s*\(/i,/eval\s*\(/i,/alert\s*\(/i,/document\.cookie/i,/document\.write\s*\(/i,/window\.location/i,/innerHTML/i].some(n=>n.test(e))}const by=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,lF=function(e,t){const r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{path:"/"},o=encodeURIComponent(t);let i=`${e}=${o}`;if(r.maxAge>0){const s=r.maxAge-0;if(Number.isNaN(s))throw new Error("maxAge should be a Number");i+=`; Max-Age=${Math.floor(s)}`}if(r.domain){if(!by.test(r.domain))throw new TypeError("option domain is invalid");i+=`; Domain=${r.domain}`}if(r.path){if(!by.test(r.path))throw new TypeError("option path is invalid");i+=`; Path=${r.path}`}if(r.expires){if(typeof r.expires.toUTCString!="function")throw new TypeError("option expires is invalid");i+=`; Expires=${r.expires.toUTCString()}`}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.sameSite)switch(typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}return r.partitioned&&(i+="; Partitioned"),i},wy={create(e,t,n,r){let o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};n&&(o.expires=new Date,o.expires.setTime(o.expires.getTime()+n*60*1e3)),r&&(o.domain=r),document.cookie=lF(e,t,o)},read(e){const t=`${e}=`,n=document.cookie.split(";");for(let r=0;r<n.length;r++){let o=n[r];for(;o.charAt(0)===" ";)o=o.substring(1,o.length);if(o.indexOf(t)===0)return o.substring(t.length,o.length)}return null},remove(e,t){this.create(e,"",-1,t)}};var cF={name:"cookie",lookup(e){let{lookupCookie:t}=e;if(t&&typeof document<"u")return wy.read(t)||void 0},cacheUserLanguage(e,t){let{lookupCookie:n,cookieMinutes:r,cookieDomain:o,cookieOptions:i}=t;n&&typeof document<"u"&&wy.create(n,e,r,o,i)}},uF={name:"querystring",lookup(e){var r;let{lookupQuerystring:t}=e,n;if(typeof window<"u"){let{search:o}=window.location;!window.location.search&&((r=window.location.hash)==null?void 0:r.indexOf("?"))>-1&&(o=window.location.hash.substring(window.location.hash.indexOf("?")));const s=o.substring(1).split("&");for(let a=0;a<s.length;a++){const l=s[a].indexOf("=");l>0&&s[a].substring(0,l)===t&&(n=s[a].substring(l+1))}}return n}},dF={name:"hash",lookup(e){var o;let{lookupHash:t,lookupFromHashIndex:n}=e,r;if(typeof window<"u"){const{hash:i}=window.location;if(i&&i.length>2){const s=i.substring(1);if(t){const a=s.split("&");for(let l=0;l<a.length;l++){const c=a[l].indexOf("=");c>0&&a[l].substring(0,c)===t&&(r=a[l].substring(c+1))}}if(r)return r;if(!r&&n>-1){const a=i.match(/\/([a-zA-Z-]*)/g);return Array.isArray(a)?(o=a[typeof n=="number"?n:0])==null?void 0:o.replace("/",""):void 0}}}return r}};let Uo=null;const xy=()=>{if(Uo!==null)return Uo;try{if(Uo=typeof window<"u"&&window.localStorage!==null,!Uo)return!1;const e="i18next.translate.boo";window.localStorage.setItem(e,"foo"),window.localStorage.removeItem(e)}catch{Uo=!1}return Uo};var fF={name:"localStorage",lookup(e){let{lookupLocalStorage:t}=e;if(t&&xy())return window.localStorage.getItem(t)||void 0},cacheUserLanguage(e,t){let{lookupLocalStorage:n}=t;n&&xy()&&window.localStorage.setItem(n,e)}};let $o=null;const Sy=()=>{if($o!==null)return $o;try{if($o=typeof window<"u"&&window.sessionStorage!==null,!$o)return!1;const e="i18next.translate.boo";window.sessionStorage.setItem(e,"foo"),window.sessionStorage.removeItem(e)}catch{$o=!1}return $o};var pF={name:"sessionStorage",lookup(e){let{lookupSessionStorage:t}=e;if(t&&Sy())return window.sessionStorage.getItem(t)||void 0},cacheUserLanguage(e,t){let{lookupSessionStorage:n}=t;n&&Sy()&&window.sessionStorage.setItem(n,e)}},mF={name:"navigator",lookup(e){const t=[];if(typeof navigator<"u"){const{languages:n,userLanguage:r,language:o}=navigator;if(n)for(let i=0;i<n.length;i++)t.push(n[i]);r&&t.push(r),o&&t.push(o)}return t.length>0?t:void 0}},hF={name:"htmlTag",lookup(e){let{htmlTag:t}=e,n;const r=t||(typeof document<"u"?document.documentElement:null);return r&&typeof r.getAttribute=="function"&&(n=r.getAttribute("lang")),n}},gF={name:"path",lookup(e){var o;let{lookupFromPathIndex:t}=e;if(typeof window>"u")return;const n=window.location.pathname.match(/\/([a-zA-Z-]*)/g);return Array.isArray(n)?(o=n[typeof t=="number"?t:0])==null?void 0:o.replace("/",""):void 0}},vF={name:"subdomain",lookup(e){var o,i;let{lookupFromSubdomainIndex:t}=e;const n=typeof t=="number"?t+1:1,r=typeof window<"u"&&((i=(o=window.location)==null?void 0:o.hostname)==null?void 0:i.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i));if(r)return r[n]}};let CC=!1;try{document.cookie,CC=!0}catch{}const PC=["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"];CC||PC.splice(1,1);const yF=()=>({order:PC,lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:e=>e});class EC{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.type="languageDetector",this.detectors={},this.init(t,n)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{languageUtils:{}},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=t,this.options=sF(n,this.options||{},yF()),typeof this.options.convertDetectedLanguage=="string"&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=o=>o.replace("-","_")),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=r,this.addDetector(cF),this.addDetector(uF),this.addDetector(fF),this.addDetector(pF),this.addDetector(mF),this.addDetector(hF),this.addDetector(gF),this.addDetector(vF),this.addDetector(dF)}addDetector(t){return this.detectors[t.name]=t,this}detect(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.order,n=[];return t.forEach(r=>{if(this.detectors[r]){let o=this.detectors[r].lookup(this.options);
399o&&typeof o=="string"&&(o=[o]),o&&(n=n.concat(o))}}),n=n.filter(r=>r!=null&&!aF(r)).map(r=>this.options.convertDetectedLanguage(r)),this.services&&this.services.languageUtils&&this.services.languageUtils.getBestMatchFromCodes?n:n.length>0?n[0]:null}cacheUserLanguage(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.caches;n&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(t)>-1||n.forEach(r=>{this.detectors[r]&&this.detectors[r].cacheUserLanguage(t,this.options)}))}}EC.type="languageDetector";const bF={loading:"Жүктелуде...",error:"Қате",success:"Сәтті",save:"Сақтау",saving:"Сақталуда...",saved:"Сақталды",cancel:"Болдырмау",export:"Экспорттау",delete:"Жою",edit:"Өңдеу",create:"Жасау",search:"Іздеу",clear:"Тазалау",filter:"Сүзу",sort:"Сұрыптау",back:"Артқа",share:"Бөлісу",next:"Келесі",previous:"Алдыңғы",submit:"Жіберу",confirm:"Растау",close:"Жабу",view:"Қарау",download:"Жүктеп алу",upload:"Жүктеу",noData:"Деректер жоқ",required:"Міндетті",optional:"Міндетті емес",all:"Барлығы",yes:"Иә",no:"Жоқ",or:"немесе",manage:"Басқару",copied:"Көшірілді",retry:"Қайталау",new:"Жаңа",actions:"Әрекеттер",add:"Қосу",minutes:"минут",min:"мин",preview:"Алдын ала қарау",generating:"Генерация...",showLess:"Азырақ көрсету",showMore:"Көбірек көрсету",questions:"сұрақ",creating:"Жасалуда...",true:"Дұрыс",false:"Бұрыс",typeMessage:"Хабарлама жазыңыз...",aiThinking:"AI ойланып жатыр...",description:"Сипаттама",theme:{light:"Ашық",dark:"Күңгірт",system:"Жүйелік",toggleTheme:"Тақырыпты ауыстыру"},allRightsReserved:"Барлық құқықтар қорғалған",toggleMenu:"Мәзірді ашу/жабу"},wF={dashboard:"Басқару тақтасы",qmj:"ҚМЖ",presentations:"Презентациялар",videos:"Бейнелер",quizzes:"Викториналар",games:"Ойындар",profile:"Профиль",admin:"Әкімші",logout:"Шығу",login:"Кіру",subscription:"Жазылым",tools:"Құралдар",documents:"Құжаттар",avatar:"AI Аватар",classrooms:"Сыныптар",helpers:"Көмекшілер",arGlobe:"AR Географиялық глобус",telegram:"Telegram бот",school:"Менің мектебім",schoolTeachers:"Мұғалімдер",schoolStudents:"Үздік оқушылар",schoolAdministration:"Мектеп әкімшілігі",schoolClasses:"Сыныптар",schoolSubjects:"Пәндер",schoolCabinets:"Кабинеттер",schoolSchedule:"Сабақ кестесі"},xF={login:"Кіру",logout:"Шығу",phoneNumber:"Телефон нөмірі",enterPhone:"Телефон нөміріңізді енгізіңіз",sendOtp:"Код жіберу",sending:"Жіберілуде...",otpSent:"Код жіберілді",enterOtp:"WhatsApp-қа жіберілген кодты енгізіңіз",verifyOtp:"Кодты растау",invalidOtp:"Қате код",otpExpired:"Код мерзімі өтіп кетті",resendOtp:"Кодты қайта жіберу",welcomeBack:"Қош келдіңіз!",termsAgreement:"Жалғастыра отырып, сіз Қызмет келісімі мен Құпиялылық саясатына келісесіз",googleLogin:"Google арқылы кіру",orContinueWith:"немесе"},SF={hero:{title:"Қазақстандық мұғалімдерге арналған AI платформасы",subtitle:"Сабақ жоспарларын, презентацияларды және бейнелерді жасаңыз - барлығы қазақ тілінде",cta:"Тегін бастау",secondaryCta:"Көбірек білу"},comparison:{qmj:"ҚМЖ жасау",presentation:"Презентация жасау",video:"Бейне сабақ жасау"},features:{title:"Мүмкіндіктер",qmj:{title:"ҚМЖ генерациясы",description:"AI көмегімен сабақ жоспарларын бірнеше минутта жасаңыз"},presentations:{title:"Презентациялар",description:"Кәсіби презентацияларды автоматты түрде жасаңыз"},videos:{title:"Бейне контент",description:"Оқу бейнелерін AI көмегімен жасаңыз"}},pricing:{title:"Тарифтер",free:{title:"Тегін",price:"₸0",period:"ай",features:["3 ҚМЖ генерациясы","1 презентация","Дүкенге қол жетімділік"]},basic:{title:"Базалық",price:"₸2,990",period:"ай",features:["30 ҚМЖ генерациясы","20 презентация","5 бейне","Материалдарды сату"]},pro:{title:"PRO",price:"₸5,990",period:"ай",features:["Шексіз ҚМЖ","Шексіз презентация","20 бейне","Басым қолдау"]}},testimonials:{title:"Пайдаланушылар пікірлері"},cta:{title:"Бүгін бастаңыз",description:"Мыңдаған мұғалімдерге қосылыңыз",button:"Тегін тіркелу"}}
399,CF={welcome:"Қош келдіңіз",overview:"Шолу",usageOverview:"Қолдану шолуы",stats:{qmjGenerated:"Жасалған ҚМЖ",presentationsCreated:"Презентациялар",videosCreated:"Бейнелер",walletBalance:"Әмиян балансы"},recentActivity:"Соңғы белсенділік",quickActions:"Жылдам әрекеттер",subscription:{title:"Жазылым",current:"Ағымдағы тариф",expires:"Аяқталады",upgrade:"Жаңарту",remaining:"Қалды"},explore3d:"3D-де зерттеу"},PF={title:"Қысқа мерзімді жоспар (ҚМЖ)",list:"Барлық ҚМЖ",create:"Жаңа ҚМЖ жасау",generate:"ҚМЖ генерациялау",form:{topic:"Сабақ тақырыбы",topicPlaceholder:"Мысалы: Абай Құнанбаев өмірбаяны",subject:"Пән",grade:"Сынып",duration:"Ұзақтығы (минут)",quarter:"Тоқсан",lessonNumber:"Сабақ нөмірі",lessonType:"Сабақ түрі",language:"Генерация тілі"},lessonTypes:{standard:"Стандартты",interactive:"Интерактивті",project:"Жобалық",assessment:"Бағалау",review:"Қайталау"},sections:{objectives:"Сабақ мақсаттары",materials:"Қажетті материалдар",introduction:"Кіріспе",mainActivity:"Негізгі бөлім",conclusion:"Қорытынды",assessment:"Бағалау",homework:"Үй тапсырмасы"},generating:"ҚМЖ генерациялануда...",generated:"ҚМЖ сәтті жасалды",limitReached:"Генерация лимитіне жеттіңіз.",upgradePrompt:"Көбірек генерация үшін тарифті жаңартыңыз.",thisMonth:"осы айда",remaining:"қалды",gradeUnit:"сынып",actions:{edit:"Өңдеу"},presentation:{create:"Презентация жасау",open:"Презентацияны ашу",generating:"Жасалуда...",startingGeneration:"Презентация жасалуда...",willNotify:"Дайын болғанда хабарлаймыз.",successTitle:"Презентация дайын!",successDescription:"Презентацияңыз сәтті жасалды.",checkList:"Презентацияларды тізімнен қараңыз.",openPresentation:"Ашу",errorTitle:"Қате орын алды",genericError:"Презентация жасау сәтсіз аяқталды.",timeout:"Генерация уақыты аяқталды.",submitError:"Генерацияны бастау сәтсіз."}},EF={title:"Презентациялар",list:"Барлық презентациялар",create:"Жаңа презентация жасау",form:{title:"Тақырып",titlePlaceholder:"Презентация тақырыбы",outline:"Жоспар",outlinePlaceholder:"Презентация құрылымы",style:"Стиль",content:"Мазмұн"},styles:{professional:"Кәсіби",creative:"Шығармашылық",minimalist:"Минималист",educational:"Білім беру",corporate:"Корпоративті"},thisMonth:"осы айда",remaining:"қалды",noSlides:"Бұл презентацияда слайд жоқ",detail:{exit:"Шығу",navigate:"Навигация",showSidebar:"Бүйір панельді көрсету",hideSidebar:"Бүйір панельді жасыру",unsavedChanges:"Сақталмаған өзгерістер",saved:"Сақталды!",cancel:"Болдырмау",save:"Сақтау",edit:"Өңдеу",download:"Жүктеп алу",exporting:"Экспортталуда...",exportingTitle:"Презентацияны экспорттау",preparingExport:"Экспортқа дайындалуда...",downloadComplete:"Жүктеу аяқталды!",exportFailed:"Экспорт сәтсіз аяқталды. Қайта көріңіз.",slidesCount:"{{count}} слайд",addSlide:"Слайд қосу",duplicate:"Көшіру",editModeHint:"Өңдеу режимі — мәтінді өңдеу үшін басыңыз, слайдтарды басқару үшін бүйір панельді пайдаланыңыз",cancelConfirm:"Сізде сақталмаған өзгерістер бар. Болдырмағыңыз келетініне сенімдісіз бе?",powerpoint:"PowerPoint",pptxFormat:".pptx форматы",pdfDocument:"PDF құжат",pdfFormat:".pdf форматы",present:"Көрсету"},generator:{pageTitle:"AI көмегімен презентация жасау",pageSubtitle:"Тақырыпты сипаттаңыз, AI бір минутта кәсіби презентация жасайды",topicPlaceholder:"Мысалы: Қазақстанның тәуелсіздік жолы...",slides:"слайд",generateOutline:"Құрылым жасау",generating:"Жасалуда...",exampleTopics:"Тақырып үлгілері",moreExamples:"Тағы үлгілер",back:"Артқа",regenerate:"Қайта жасау",generate:"Презентация жасау",structure:"Презентация құрылымы",dragHint:"Ретін өзгерту үшін сүйреңіз",presentationName:"Презентация атауы",addSlide:"Слайд қосу",addPoint:"Тармақ қосу",settings:"Баптаулар",textDensity:"Мәтін тығыздығы",textDensityHint:"Бір слайдтағы мәтін көлемі",density:{minimal:"Минимум",brief:"Қысқаша",detailed:"Толық",extensive:"Кеңейтілген"},theme:"Безендіру тақырыбы",preview:"Алдын ала қарау",creatingPresentation:"Презентация жасалуда",slideOf:"Слайд {{current}} / {{total}}:",progress:"Прогресс",generatingNow:"Жасалуда...",completedSlides:"Дайын слайдтар",cancel:"Болдырмау",presentationReady:"Презентация дайын!",slidesCreated:'"{{topic}}" тақырыбы бойынша {{count}} слайд жасалды',createAnother:"Тағы жасау",openPresentation:"Презентацияны ашу",newSlide:"Жаңа слайд",keyPoint1:"Негізгі тармақ 1",keyPoint2:"Негізгі тармақ 2",newPoint:"Жаңа тармақ",examples:{abai:"Абай Құнанбайұлы өмірі мен шығармашылығы",independence:"Қазақстанның тәуелсіздік алу тарихы",nature:"Қазақстан табиғаты мен экологиясы",math:"Алгебрадағы квадрат теңдеулер",physics:"Ньютон заңдары және механика негіздері",chemistry:"Периодтық жүйе және химиялық элементтер",biology:"Адам организмінің құрылысы",geography:"Қазақстанның географиялық орны",literature:"Мұхтар Әуезов шығармашылығы"},visualMedia:{title:"Көрнекі медиа",more:"Тағы",theme:"Тақырып",themeDescription:"Төмендегі танымал тақырыптардың бірін пайдаланыңыз немесе көбірек қараңыз",imageSource:"Сурет көзі",imageSourceAi:"AI суреттер",imageSourceUnsplash:"Стоктық фотосуреттер",imageSourceNone:"Суреттер жоқ",aiImageModel:"Суреттер үшін AI моделі",aiModelAuto:"Автоматты таңдау",aiModelDalle:"DALL-E 3",aiModelMidjourney:"Midjourney",aiModelStable:"Stable Diffusion",imageArtStyle:"Сурет стилі",additionalKeywords:"Қосымша кілт сөздер",keywordsDescription:"Суреттердің бірдей стилін сақтау үшін кілт сөздерді қосыңыз",addKeywordPlaceholder:"Кілт сөз қосу...",previewTitle:"Презентация тақырыбы",previewKeyPoint1:"Негізгі тармақ бір",previewKeyPoint2:"Негізгі тармақ екі",previewKeyPoint3:"Негізгі тармақ үш",previewImageLabel:"+ Сурет",aiWriting:"AI контент жазуда...",slideNumber:"Слайд {{number}}",themes:{midnightAurora:"Түнгі сия",oceanBreeze:"Мұхит желі",sunsetGlow:"Күн бату шағы",forestDeep:"Терең орман",arcticSnow:"Арктикалық қар",charcoalElite:"Көмір элит",royalPurple:"Корольдік күлгін",goldenHour:"Алтын сағат",nordicFrost:"Солтүстік аяз"}}
399,stages:{analyzing:"Тақырыпты талдаудамыз...",structuring:"Құрылым жасаудамыз...",writing:"Контент жазудамыз...",images:"Суреттер генерациялаудамыз...",finalizing:"Аяқтаудамыз..."},useBookSource:"Оқулықтан ақпарат алу",useBookSourceHint:"Оқулықтардан сәйкес мазмұнды іздеу",suggestedThemes:"Ұсынылған тақырыптар",noSuggestedThemes:"Ұсынылған тақырыптар табылмады",selectedThemesCount:"{{count}} тақырып таңдалды",enterTopicForSuggestions:"Ұсынылған тақырыптарды алу үшін төменде тақырыпты жазыңыз"}},kF={title:"Бейнелер",list:"Барлық бейнелер",create:"Жаңа бейне жасау",generateOutline:"Жоспар жасау",generateVideo:"Бейне генерациялау",form:{topic:"Тақырып",topicPlaceholder:"Бейне тақырыбы",duration:"Ұзақтығы (минут)",language:"Тіл"},status:{pending:"Күтуде",generating_outline:"Жоспар жасалуда",generating_video:"Бейне жасалуда",processing:"Өңделуде",completed:"Дайын",failed:"Қате"},progress:"Прогресс",thisMonth:"осы айда",remaining:"қалды"},TF={title:"Оқу материалдары дүкені",browse:"Материалдарды қарау",myMaterials:"Менің материалдарым",upload:"Материал жүктеу",tabs:{bundled:"Жинақталған",individual:"Жеке"},qmjCount:"ҚМЖ саны",subject:"Пән",allSubjects:"Барлығы",viewSample:"Үлгісін көру",noMaterials:"Материалдар табылмады",tryDifferentFilters:"Басқа сүзгілерді қолданып көріңіз",filters:{subject:"Пән",grade:"Сынып",price:"Баға",sortBy:"Сұрыптау"},material:{price:"Баға",downloads:"Жүктеулер",seller:"Сатушы",buy:"Сатып алу",preview:"Алдын ала қарау",hot:"Танымал"},seller:{dashboard:"Сатушы панелі",earnings:"Табыс",sales:"Сатылымдар",uploadNew:"Жаңа материал жүктеу"},purchase:{confirm:"Сатып алуды растаңыз",success:"Сәтті сатып алынды",insufficientFunds:"Балансыңыз жеткіліксіз"}},AF={title:"Әкімші",subtitle:"Басқару панелі",goToMainApp:"Негізгі қосымшаға өту",dashboard:"Басқару панелі",overview:"Жүйеге шолу",quickActions:"Жылдам әрекеттер",platformSummary:"Платформа туралы қысқаша",platformSummaryDescription:"Негізгі көрсеткіштер",stats:{totalUsers:"Барлық пайдаланушылар",activeSubscriptions:"Белсенді жазылымдар",totalRevenue:"Жалпы табыс"},subjects:{title:"Пәндер",description:"Оқу пәндерін басқару",add:"Пән қосу",addDescription:"Жаңа оқу пәнін жасау",edit:"Пәнді өңдеу",editDescription:"Пән ақпаратын жаңарту",delete:"Пәнді жою",deleteConfirm:'"{{name}}" пәнін жойғыңыз келе ме? Бұл әрекетті қайтару мүмкін емес.',list:"Барлық пәндер",total:"пән",noSubjects:"Пәндер табылмады",created:"Пән сәтті жасалды",updated:"Пән сәтті жаңартылды",deleted:"Пән сәтті жойылды",form:{name:"Атауы",namePlaceholder:"Пән атауын енгізіңіз",description:"Сипаттама",descriptionPlaceholder:"Пән сипаттамасын енгізіңіз (міндетті емес)"}},subscriptions:{title:"Жазылым тарифтері",description:"Тарифтік жоспарларды басқару",add:"Тариф қосу",edit:"Тарифті өңдеу"},materials:{title:"Материалдарды басқару",description:"Материалдарды тексеру",review:"Тексеру",approve:"Бекіту",reject:"Қабылдамау"},users:{title:"Пайдаланушылар",description:"Пайдаланушылар мен рұқсаттарды басқару",searchPlaceholder:"Аты немесе телефон бойынша іздеу...",noName:"Аты жоқ",noUsers:"Пайдаланушылар табылмады",usersCount:"пайдаланушы",admins:"Әкімшілер",regularUsers:"Пайдаланушылар",admin:"Әкімші",user:"Пайдаланушы",name:"Аты",phone:"Телефон",status:"Күйі",generations:"Генерациялар",wallet:"Әмиян",joined:"Тіркелген күні",video:"Видео",pres:"Презент",editTitle:"Пайдаланушыны өңдеу",deleteTitle:"Пайдаланушыны жою?",deleteDescription:"Бұл әрекетті қайтару мүмкін емес. Аккаунт біржола жойылады.",adminAccess:"Әкімші құқықтары",adminAccessDesc:"Пайдаланушыға толық әкімші құқықтарын беру",qmjLimit:"QMJ лимиті",videoLimit:"Видео лимиті",presLimit:"Презент. лимиті"},templates:{title:"Үлгілер",slides:"Слайдтар",layouts:"Макеттер",exported:"Үлгі экспортталды",saved:"Үлгі сақталды",updated:"Үлгі жаңартылды",layoutGenerated:"Макет AI көмегімен сәтті жасалды"},plans:{title:"Тарифтер",description:"Жазылым тарифтерін басқару",add:"Тариф қосу",addDescription:"Жаңа жазылым тарифін жасау",edit:"Тарифті өңдеу",editDescription:"Тариф мәліметтерін жаңарту",delete:"Тарифті жою",deleteConfirm:'"{{name}}" тарифін өшіргіңіз келе ме? Бар жазылушылар әсер етпейді.',noPlans:"Тарифтер табылмады",created:"Тариф сәтті жасалды",updated:"Тариф сәтті жаңартылды",deleted:"Тариф сәтті өшірілді",active:"Белсенді",inactive:"Белсенді емес",free:"Тегін",autoRenew:"Автожаңарту",status:"Күйі",preview:"Алдын ала қарау",days:"Ð
399ºÒ¯Ð½",filters:{all:"Барлық тарифтер"},form:{basicInfo:"Негізгі ақпарат",name:"Тариф атауы",namePlaceholder:"Тариф атауын енгізіңіз",description:"Сипаттама",descriptionPlaceholder:"Тариф туралы қысқаша сипаттама",duration:"Ұзақтығы (күн)",price:"Бағасы",currency:"Валюта",isActive:"Белсенді",isFree:"Тегін тариф",autoRenew:"Автожаңарту",classrooms:"Сыныптар (тапсырмалар, бағалау)",limits:"Функция лимиттері",limitsHint:"-1 = шексіз, 0 = өшірілген, >0 = нақты лимит",features:"Ерекшеліктер",featuresPlaceholder:"Әр жолға бір ерекшелік енгізіңіз",featuresHint:"Әр жол тізім пункті ретінде көрсетіледі",permissions:"Рұқсаттар",permissionNames:"Көрсету атаулары"},permissions:{video:"Видео генерациясы",presentation:"Презентация генерациясы",qmj:"Сабақ жоспары (ҚМЖ)",quiz:"Тест құру",avatar:"AI аватары (мин)",conversation:"AI сұхбаты",documents:"Құжаттар",homework_check:"AI тапсырма бағалау"},limits:{unlimited:"Шексіз",disabled:"Өшірілген",custom:"Лимит",uses:"{{count}} рет",minutes:"{{count}} минут",usesLabel:"рет"},validation:{nameRequired:"Тариф атауы қажет",nameUnique:"Тариф атауы бірегей болуы керек",durationMin:"Ұзақтығы кем дегенде 1 күн болуы керек",priceMin:"Баға теріс болмауы керек",atLeastOnePermission:"Кем дегенде бір рұқсат қосылуы керек"}},analytics:{title:"Аналитика",description:"Жазылым статистикасы мен пайдаланушы аналитикасы",totalActive:"Барлық белсенді",revenueThisMonth:"Осы айдағы табыс",mostPopularPlan:"Ең танымал тариф",expiringSoon:"Жақында аяқталады",subscribers:"жазылушы",inNext7Days:"келесі 7 күнде",subscriptions:"Жазылымдар",subscriptionsDescription:"Пайдаланушы жазылымдарын қарау және басқару",noSubscriptions:"Жазылымдар табылмады",noData:"Деректер жоқ",charts:{subscriptionsOverTime:"Уақыт бойынша жазылымдар",revenueByPlan:"Тариф бойынша табыс",featureUsage:"Функция қолданылуы"},table:{user:"Пайдаланушы",plan:"Тариф",startDate:"Басталу күні",expiryDate:"Аяқталу күні",status:"Күйі",usage:"Қолдану",actions:"Әрекеттер"},status:{active:"Белсенді",expired:"Мерзімі өткен",cancelled:"Тоқтатылған"},filters:{allPlans:"Барлық тарифтер",allStatuses:"Барлық күйлер",dateRange:"Күн аралығы",searchPlaceholder:"Аты немесе телефон бойынша іздеу..."},viewDetails:"Толығырақ",cancelSubscription:"Жазылымды тоқтату",cancelConfirm:"{{user}} үшін жазылымды тоқтатқыңыз келе ме?",subscriptionCancelled:"Жазылым сәтті тоқтатылды",userDetails:"Пайдаланушы жазылымы",usageBreakdown:"Қолдану толығырақ",totalUsed:"Барлық қолданылған",avgPerUser:"Пайдаланушыға орташа",ai:{title:"AI шығын аналитикасы",description:"AI провайдерлері бойынша шығын, токен және жүйе шығынын бақылау",periodMonth:"Ай бойынша",periodYear:"Жыл бойынша",totalCost:"Жалпы шығын (USD)",requests:"Сұраныстар",totalTokens:"Жалпы токен",usageUnits:"Қолдану бірлігі",costTrend:"Шығын динамикасы",providers:"Провайдерлер",systems:"Жүйелер",unpricedTitle:"Жалпы шығын толық есептелмеген",unpricedRequests:"Бағасы бапталмаған сұраныстар",unpricedDescription:"Олар жалпы шығынға кірмейді; $0 сұраныстар тегін дегенді білдірмейді."}},avatars:{title:"Аватарлар",description:"AI аватарларын басқару",add:"Аватар қосу",addDescription:"Жаңа AI аватар жасау",edit:"Аватарды өңдеу",editDescription:"Аватар ақпаратын жаңарту",deleteConfirm:'"{{name}}" жойғыңыз келетініне сенімдісіз бе?',noAvatars:"Аватарлар табылмады",filters:{all:"Барлық аватарлар",active:"Белсенді",inactive:"Белсенді емес"}},schools:{title:"Мектептер",description:"B2B мектептерін қосу және олардың директорларын тағайындау",createTitle:"Мектеп құру",createHint:"Мектепті және он
399ың бірінші директорын email арқылы тағайындайды.",name:"Мектеп атауы",directorEmail:"Директордың email-і",city:"Қала",contactPhone:"Байланыс телефоны",create:"Мектеп құру",directorActive:"Директор белсендірілді",directorActiveHint:"Бұл аккаунт бұрыннан бар болатын — оның директор құқығы қазірден бар.",directorPending:"Директор күтуде",directorPendingHint:"Бұл email-де Zerde аккаунты әлі жоқ — ол осы email-мен тіркелген сәтте автоматты түрде директор құқығын алады.",schoolIdLabel:"Мектеп ID",directoryTitle:"Барлық мектептер",directoryHint:"Қосылған барлық мектептер. Белсенді еместендіру — жай ғана белгі, басқа ештеңе өзгермейді.",activate:"Белсендіру",deactivate:"Белсенді еместендіру",noSchools:"Әзірге мектеп жоқ",pageLabel:"{{from}}–{{to}} көрсетілуде",lookupTitle:"Мектепті басқару",lookupHint:"Қолдау көрсету үшін кез келген мектепті ID арқылы табыңыз — платформа әкімшілері сол мектептің директоры ретінде әрекет ете алады."},tutorials:{title:"Видео нұсқаулықтар",description:"Видео нұсқаулықтарды басқару",add:"Нұсқаулық қосу",addDescription:"Жаңа видео нұсқаулық жасау",edit:"Нұсқаулықты өңдеу",editDescription:"Видео нұсқаулық мәліметтерін жаңарту",list:"Барлық нұсқаулықтар",total:"жалпы нұсқаулық",noVideos:"Видео нұсқаулықтар жоқ",deleteConfirm:'"{{name}}" жойғыңыз келетініне сенімдісіз бе?',form:{title:"Тақырып",titlePlaceholder:"Тақырыпты енгізіңіз...",videoUrl:"Видео сілтемесі",description:"Сипаттама",descriptionPlaceholder:"Сипаттаманы енгізіңіз...",savedTime:"Үнемделетін уақыт",actualTime:"Ұзақтығы (секунд)"}},models3d:{title:"3D модельдер",description:"Пәндер бойынша Sketchfab 3D модельдерін басқару",selectSubject:"Пәнді таңдаңыз",selectSubjectPlaceholder:"Пәнді таңдаңыз...",list:"Модельдер",total:"барлық модельдер",noModels:"Бұл пән үшін әзірге модельдер жоқ",addModel:"Модель қосу",addModelDescription:"Sketchfab моделінің сілтемесін немесе UID-ін қойыңыз, алдын ала қарап, пәнге қосыңыз",pasteLabel:"Sketchfab сілтемесі немесе UID",pastePlaceholder:"https://sketchfab.com/3d-models/... немесе UID қойыңыз",preview:"Алдын ала қарау",confirmAdd:"Пәнге қосу",created:"Модель қосылды",updated:"Модель жаңартылды",deleted:"Модель жойылды",deleteConfirm:"«{{title}}» жойылсын ба? Бұл әрекетті қайтару мүмкін емес.",edit:"Модельді өңдеу",editDescription:"Модель деректерін жаңарту",active:"Белсенді",inactive:"Белсенді емес",form:{title:"Атауы",description:"Сипаттама",thumbnailUrl:"Мұқаба URL",authorName:"Автордың аты",authorUrl:"Автор сілтемесі",license:"Лицензия",sortOrder:"Реттеу тәртібі"}}},RF={title:"Профиль",personalInfo:"Жеке ақпарат",firstName:"Аты",lastName:"Тегі",phone:"Телефон",subscription:"Жазылым",wallet:{title:"Әмиян",balance:"Баланс",deposit:"Толтыру",withdraw:"Шығару",history:"Транзакциялар тарихы"},updateSuccess:"Профиль сәтті жаңартылды"},_F={1:"1 сынып",2:"2 сынып",3:"3 сынып",4:"4 сынып",5:"5 сынып",6:"6 сынып",7:"7 сынып",8:"8 сынып",9:"9 сынып",10:"10 сынып",11:"11 сынып",12:"12 сынып"},DF={generic:"Бірдеңе дұрыс болмады",network:"Желі қатесі",networkError:"Желі қатесі. Қосылымды тексеріңіз.",unauthorized:"Қол жетімділік жоқ. Жүйеге қайта кіріңіз.",forbidden:"Қол жетімділік жоқ. Сізде құқық жоқ.",notFound:"Табылмады",validation:"Деректер қатесі",validationError:"Деректерді тексеріп, қайта көріңіз.",serverError:"Сервер қатесі. Кейінірек көріңіз.",fileTooLarge:"Файл өте үлкен. Максимум 100МБ.",unknownError:"Күтпеген қате орын алды.",notFoundDescription:"Бұл бет табылмады немесе жылжытылды.",goBack:"Артқа қайту",tryAgain:"Қайталап көру"},jF={about:"Біз туралы",contact:"Байланыс",privacy:"Құпиялылық",terms:"Қызмет шарттары",copyright:"© 2024 Zerde AI. Барлық құқықтар қорғалған."},NF={title:"Қызмет көрсету шарттары",effectiveDateLabel:"Күшіне ену күні",effectiveDate:"2026 жылғы 21 ақпан",subtitle:"Бұл Қызмет көрсету шарттары Zerde AI платформасын пайдалануды реттейді.",sections:{acceptance:{title:"1. Шарттарды қабылдау",p1:"Zerde AI платформасын пайдалану арқылы сіз осы Қызмет көрсету шарттарына келісесіз. Егер шарттардың кейбірі сізге сәйкес келмесе, платформаны пайдалануды тоқтата аласыз.",p2:"Егер платформаны ұйым атынан пайдалансаңыз, сол ұйым атынан осы шарттарды қабылдауға уәкілетті екеніңізді растайсыз."},serviceDescription:{title:"2. Қызмет сипаттамасы",p1:"Zerde AI білім беру құралдарын ұсынады: AI көмегімен сабақ жоспарлау, бағалау және сыныпқа қолдау функциялары.",p2:"Кейбір ф
399ункциялар белсенді жазылымды талап етуі мүмкін. Қолжетімді функциялар уақыт өте өзгеруі мүмкін."},accounts:{title:"3. Аккаунт және қолжетімділік",p1:"Аккаунтыңыз бен құрылғыларыңыздың қауіпсіздігіне өзіңіз жауап бересіз.",p2:"Сіз нақты мәлімет беруге және аккаунт деректерін уақтылы жаңартып отыруға міндеттісіз.",p3:"Аккаунт қауіпсіздігін сақтау үшін рұқсатсыз кіру белгілерін мүмкіндігінше ертерек хабарлауыңызды сұраймыз; аккаунт арқылы жасалған әрекеттер үшін жауапкершілік қолданушыда болады."},payments:{title:"4. Төлемдер және жазылым",p1:"Ақылы функциялар таңдалған тариф пен сатып алу сәтіндегі баға бойынша төленеді.",p2:"Егер бөлек көрсетілмесе, есептік кезең басталғаннан кейін жазылым төлемі қайтарылмайды.",p3:"Келесі есептік кезеңдер үшін бағаны алдын ала ескерту арқылы өзгертуіміз мүмкін."},acceptableUse:{title:"5. Рұқсат етілген пайдалану",p1:"Платформаны заңсыз, зиян келтіретін немесе өзге тұлғалардың құқықтарын бұзатын мақсаттарда қолданбауыңызды сұраймыз.",p2:"Қызмет жұмысына кедергі келтіретін әрекеттерден, қауіпсіздік шараларын айналып өтуден және деректерге рұқсатсыз қол жеткізу әрекеттерінен бас тартуыңызды сұраймыз.",p3:"Сіз білім беру, құпиялылық және зияткерлік меншікке қатысты қолданыстағы заңнаманы сақтауға міндеттісіз."},ip:{title:"6. Контент және зияткерлік меншік",p1:"Платформаға жүктеген контентке меншік құқығы өзіңізде қалады.",p2:"Сіз Zerde AI-ға контентті тек қызметті ұсыну, қолдау және жақсарту мақсатында өңдеуге шектеулі лицензия бересіз.",p3:"Платформа бағдарламалық жасақтамасы, бренд және соған қатысты материалдар Zerde AI немесе оның лицензиарларына тиесілі."},privacy:{title:"7. Құпиялылық",p1:"Қызметті пайдалану Құпиялылық саясатымен де реттеледі.",p2:"Платформаны қолданудың ұйымыңыздағы деректерді өңдеу талаптарына сәйкес болуын өзіңіз қамтамасыз етесіз."},availability:{title:"8. Қызметтің қолжетімділігі",p1:"Біз тұрақты жұмысты қамтамасыз етуге тырысамыз, бірақ үздіксіз және қатесіз қолжетімділікке кепілдік бермейміз.",p2:"Техникалық қызмет, жаңарту және өзгерістер уақытша қолжетімділікке әсер етуі мүмкін."},liability:{title:"9. Жауапкершілікті шектеу",p1:"Қолданыстағы заңнама шеңберінде Zerde AI жанама, кездейсоқ, арнайы немесе салдарлы шығындар үшін жауапкершілікті өз мойнына алмайды.",p2:"Қызметке байланысты кез келген талап бойынша жалпы жауапкершілік талап қойылғанға дейінгі 12 айда сіз төлеген сомамен шектеледі."},termination:{title:"10. Қолдануды тоқтату",p1:"Сіз қызметті пайдалануды кез келген уақытта тоқтата аласыз.",p2:"Шарттардың елеулі бұзылуы немесе платформаны теріс пайдалану анықталса, біз қолжетімділікті уақытша шектеу немесе тоқтату шараларын қолдануымыз мүмкін."},changes:{title:"11. Шарттарға өзгерістер",p1:"Біз бұл Қызмет көрсету шарттарын мерзімді түрде жаңарта аламыз. Жаңартылған нұсқа осы бетте жаңа күшіне ену күнімен жарияланады.",p2:"Өзгерістер күшіне енгеннен кейін платформаны пайдалануды жалғастыру жаңартылған шарттармен келісетініңізді білдіреді."},contact:{title:"12. Байланыс",p1:"Заңдық және шарттарға қатысты сұрақтар бойынша: [email protected] "}}},OF={title:"Құпиялылық саясаты",effectiveDateLabel:"Күшіне ену күні",effectiveDate:"2026 жылғы 21 ақпан",subtitle:"Бұл Құпиялылық саясаты Zerde AI жеке деректерді қалай жинайтынын, пайдаланатынын, сақтайтынын және қорғайтынын түсіндіреді.",sections:{overview:{title:"1. Жалпы ережелер",p1:"Zerde AI — мұғалімдер мен мектептерге арналған білім беру платформасы. Біз платформаның негізгі функцияларын ұсыну үшін жеке деректерді өңдейміз.",p2:"Платформаны пайдалану арқылы сіз осы Құпиялылық саясатына келісетініңізді растайсыз."},dataWeCollect:{title:"2. Қандай деректерді жинаймыз",p1:"Аккаунт және профиль деректері: мысаÐ
399»Ñ‹, телефон нөмірі, аты-жөні және сіз ұсынған басқа мәліметтер.",p2:"Пайдалану деректері: функциялармен әрекеттесу, жасалған контент метадеректері және қызметті іске қосу мен жақсартуға қажет техникалық диагностика.",p3:"Қолдау деректері: қолдау қызметіне жүгінгенде жіберетін хабарламалар мен тіркемелер."},howWeUseData:{title:"3. Деректерді қалай пайдаланамыз",p1:"Пайдаланушыны аутентификациялау, платформа функцияларын ұсыну және аккаунт қауіпсіздігін қамтамасыз ету үшін.",p2:"Аналитика және диагностика арқылы өнім сапасын, тұрақтылығын және пайдаланушы тәжірибесін жақсарту үшін.",p3:"Қызмет жаңартулары, қауіпсіздік хабарламалары және қолдау жауаптары туралы хабарлау үшін."},legalBasis:{title:"4. Өңдеудің құқықтық негіздері",p1:"Біз деректерді пайдаланушымен жасалған шартты орындау, заң талаптарын сақтау және қызмет қауіпсіздігі сияқты заңды мүдделерді қорғау үшін өңдейміз.",p2:"Заң талап еткен жағдайда, белгілі бір өңдеу әрекеттері үшін келісімге сүйенеміз."},sharing:{title:"5. Деректерді бөлісу",p1:"Біз жеке деректерді сатпаймыз.",p2:"Деректерді сенімді сервистік серіктестермен (хостинг, аналитика, коммуникация) құпиялылық және қауіпсіздік талаптары бар шарттар негізінде бөлісуіміз мүмкін.",p3:"Заң талап еткенде немесе құқықтарды, қауіпсіздікті және платформа тұтастығын қорғау үшін деректерді жариялауымыз мүмкін."},retention:{title:"6. Деректерді сақтау мерзімі",p1:"Жеке деректерді осы саясатта көрсетілген мақсаттарға қажет болғанша немесе заң талап ететін мерзімде ғана сақтаймыз.",p2:"Сақтау қажеттілігі жойылған кезде деректер өшіріледі немесе дербестендірілмейді."},security:{title:"7. Қауіпсіздік",p1:"Деректерді рұқсатсыз қол жеткізуден, жоғалтудан және теріс пайдаланудан қорғау үшін техникалық және ұйымдастырушылық шаралар қолданамыз.",p2:"Абсолютті қауіпсіз жүйе жоқ, бірақ біз қорғаныс пен мониторингті тұрақты түрде жақсартып отырамыз."},children:{title:"8. Балалар және білім беру контексті",p1:"Қызмет білім беру мақсатында уәкілетті пайдаланушыларға арналған. Қолданыстағы заңнамаға сай оқушылар деректерін дұрыс пайдалануға мектептер мен педагогтер жауапты.",p2:"Егер деректер орынсыз берілді деп ойласаңыз, тексеру және жою үшін бізге хабарласыңыз."},rights:{title:"9. Сіздің құқықтарыңыз",p1:"Қолданыстағы заңнамаға қарай сіз жеке деректерге қол жеткізуді, түзетуді, жоюды, өңдеуді шектеуді немесе тасымалдауды сұрай аласыз.",p2:"Сондай-ақ кейбір өңдеу түрлеріне қарсылық білдіруге немесе өңдеу келісімге негізделсе, келісімді қайтарып алуға құқылысыз.",p3:"Осы құқықтарды іске асыру үшін төмендегі байланыс арналары арқылы хабарласыңыз."},internationalTransfers:{title:"10. Халықаралық деректер тасымалы",p1:"Егер деректер шекарааралық өңделсе, біз қолданыстағы заң талаптарына сәйкес тиісті қорғаныс шараларын қолданамыз.",p2:"Мұндай шараларға шарттық кепілдіктер мен техникалық қауіп
399сіздік бақылаулары кіруі мүмкін."},changes:{title:"11. Саясатқа өзгерістер",p1:"Біз осы Құпиялылық саясатын мерзімді түрде жаңарта аламыз.",p2:"Маңызды өзгерістер осы бетте жаңа күшіне ену күнімен жарияланады."},contact:{title:"12. Байланыс",p1:"Құпиялылыққа қатысты сұрақтар бойынша: [email protected] i"}}},MF={title:"Жазылым",description:"Жазылымды басқару және қолдануды көру",currentPlan:"Ағымдағы тариф",freePlan:"Сіз тегін тарифтесіз",freeLabel:"Тегін",activeSubscription:"Белсенді жазылым",noPlanSelected:"Тариф таңдалмаған",noPlanDescription:"Сіз әлі ешқандай тариф таңдамадыңыз. Барлық мүмкіндіктерді пайдалану үшін тарифті таңдаңыз.",selectPlanPrompt:"Жалғастыру үшін тарифті таңдаңыз",choosePlan:"Тарифті таңдау",choosePlanDescription:"Барлық мүмкіндіктерді ашу және жасауды бастау үшін тарифті таңдаңыз",welcomeTitle:"Zerde AI-ға қош келдіңіз!",welcomeDescription:"Сабақ жоспарлары, презентациялар және т.б. жасауды бастау үшін тарифті таңдаңыз",continueWithFree:"Тегін тарифпен жалғастыру",skipForNow:"Әзірге өткізіп жіберу",warningNoPlan:"Сіз әлі тариф таңдамадыңыз",warningNoPlanDescription:"Сабақ жоспарлары, презентациялар және т.б. жасауды бастау үшін тарифті таңдаңыз.",selectPlanNow:"Тариф таңдау",daysLeft:"күн қалды",usageOverview:"Қолдану шолуы",availablePlans:"Қолжетімді тарифтер",upgradeNow:"Қазір жаңарту",unlimited:"Шексіз",disabled:"Өшірілген",notAvailable:"Қолжетімсіз",remaining:"қалды",days:"күн",current:"Ағымдағы",subscribe:"Жазылу",expiringSoonTitle:"Жазылым жақында аяқталады",expiringSoonDescription:"Жазылымыңыз {{days}} күнде аяқталады. Жалғастыру үшін жаңартыңыз.",expiresAt:"Аяқталу уақыты",managePlan:"Тарифті басқару",noPlansAvailable:"Қолжетімді тарифтер жоқ",checkBackLater:"Кейінірек тексеріңіз",howItWorks:"Қалай жұмыс істейді",step1Title:"Тарифті таңдаңыз",step1Description:"Сізге ең қолайлы тарифті таңдаңыз",step2Title:"WhatsApp арқылы хабарласыңыз",step2Description:"Бізбен байланысу үшін жазылу батырмасын басыңыз",step3Title:"Қол жетімділік алыңыз",step3Description:"Төлем расталғаннан кейін тарифіңіз іске қосылады",confirmSubscription:"Жазылымды растау",confirmDescription:"Сіз {{plan}} тарифіне жазылғыңыз келеді",whatsappRedirect:"WhatsApp-қа өту",whatsappRedirectDescription:"Жазылымды аяқтау үшін WhatsApp-қа бағытталасыз",openWhatsApp:"WhatsApp ашу",subscribeFree:"Тегін тарифті бастау",freeActivated:"Тегін тариф сәтті қосылды!",subscribed:"Тарифке сәтті жазылдыңыз!",cancelled:"Жазылым тоқтатылды",expired:"Мерзімі өткен",resetsMonthly:"Ай сайын жаңарады",resetsOn:"{{date}} жаңарады",monthlyUsage:"Айлық қолдану",myPlan:"Менің тарифім",recommended:"Ұсынылады",featureGate:{limitReached:"Лимит таусылды",limitReachedDescription:"Сіз осы кезеңдегі барлық {{feature}} генерацияларын қолдандыңыз",featureDisabled:"Функция қолжетімсіз",featureDisabledDescription:"{{feature}} сіздің ағымдағы тарифіңізге кірмейді",upgradeToAccess:"Қол жетімділік үшін жаңартыңыз",upgradeDescription:"Бұл функцияны ашу үшін тарифті жаңартыңыз",viewPlans:"Тарифтерді көру",usageStatus:"{{limit}} ішінен {{used}} қолданылды",remainingCredits:"{{remaining}} қалды"}
399,required:{title:"Жазылым қажет",description:"Бұл мүмкіндікке қол жеткізу үшін белсенді жазылым қажет.",benefits:"Жазылыммен сіз мыналарға қол жеткізесіз:",benefit1:"Сабақ жоспарлары, презентациялар және видеолар жасау",benefit2:"Интерактивті оқыту үшін AI аватарын пайдалану",benefit3:"Тесттер мен бағалаулар құру",viewPlans:"Тарифтерді көру"}},LF={title:"Викториналар",list:"Барлық викториналар",create:"Викторина жасау",createDescription:"Сұрақтар мен жауаптары бар жаңа викторина жасаңыз",editQuiz:"Викторинаны өңдеу",editDescription:"Сұрақтар мен жауап нұсқаларын өзгертіңіз",basicInfo:"Негізгі ақпарат",questionsSection:"Сұрақтар",questions:"сұрақ",addQuestion:"Сұрақ қосу",addOption:"Нұсқа қосу",questionNumber:"{{number}}-сұрақ",correctOptionHint:"Дұрыс жауаптарды белгілеңіз",deleteConfirm:"Бұл викторинаны жойғыңыз келетініне сенімдісіз бе?",deleteQuestionConfirm:"Бұл сұрақты жойғыңыз келетініне сенімдісіз бе?",noQuestions:"Сұрақтар жоқ",preview:"Алдын ала қарау",previewMode:"Алдын ала қарау режимі",form:{title:"Атауы",titlePlaceholder:"Викторина атауын енгізіңіз",description:"Сипаттама",descriptionPlaceholder:"Викторина сипаттамасын енгізіңіз",questionText:"Сұрақ мәтіні",questionPlaceholder:"Сұрақ мәтінін енгізіңіз",options:"Жауап нұсқалары",optionPlaceholder:"{{number}}-нұсқа",assets:"Материалдар"},uploadAsset:"Файл жүктеу",assetHint:"Сұраққа суреттер немесе PDF файлдарын қосыңыз",sessions:"Сессиялар",startSession:"Сессия бастау",startNewSession:"Жаңа сессия бастау",startSessionDescription:"Осы викторина үшін жаңа сессия жасаңыз. Қатысушылар сілтеме арқылы қосыла алады.",startFirstSession:"Бірінші сессияны бастау",activeSessions:"Белсенді сессиялар",closedSessions:"Аяқталған сессиялар",noSessions:"Белсенді сессиялар жоқ",active:"Белсенді",closed:"Аяқталған",expiresAt:"Аяқталу уақыты",copyLink:"Сілтемені көшіру",viewResults:"Нәтижелер",closeSession:"Аяқтау",openSessionPage:"Сессия бетін ашу",sessionDuration:"Сессия ұзақтығы",selectDuration:"Ұзақтығын таңдаңыз",durationHint:"Қатысушылар осы уақыт ішінде қосылып, викторинадан өте алады",duration15min:"15 минут",duration30min:"30 минут",duration45min:"45 минут",duration1hour:"1 сағат",duration2hours:"2 сағат",duration1day:"1 күн",createManually:"Қолмен жасау",generateWithAI:"AI арқылы жасау",aiGeneration:"AI генерациясы",aiGenerationDescription:"Құжатты жүктеңіз (PDF, Word немесе мәтін файлы), AI автоматты түрде мазмұнға негізделген сұрақтар жасайды.",uploadDocument:"Құжатты жүктеу",dropDocument:"Жүктеу үшін басыңыз немесе файлды сүйреңіз",supportedFormats:"PDF, Word немесе TXT файлдары",selectFile:"Файлды таңдау",generating:"Жасалуда...",generateQuiz:"Викторина жасау",generatedWithAI:"Викторина AI арқылы сәтті жасалды",questionCount:"Сұрақтар саны",questionCountHint:"AI қанша сұрақ жасау керек (1-50)",additionalPrompt:"Қосымша нұсқаулар",additionalPromptPlaceholder:"Мысалы: 3-тарауға назар аударыңыз, сұрақтарды қиындатыңыз, анықтамаларды қосыңыз...",sessionActiveResults:"СессиÑ
399 белсенді - нәтижелер нақты уақытта жаңартылады",sessionClosedResults:"Сессия аяқталды",showQR:"QR кодын көрсету",qrCode:"QR код",qrCodeDescription:"Оқушылар бұл QR кодын сканерлеп викторинаға қосыла алады",sessionLink:"Сессия сілтемесі",downloadQR:"QR жүктеу"},IF={notFound:"Сессия табылмады",notFoundDescription:"Бұл сессия жоқ немесе жойылған",closed:"Сессия аяқталды",closedDescription:"Бұл сессия қатысушыларды қабылдамайды",questionsCount:"сұрақ",question:"Сұрақ",enterName:"Атыңызды енгізіңіз",namePlaceholder:"Сіздің атыңыз",joining:"Қосылу...",joinQuiz:"Қосылу",joinQuizSession:"Викторинаға қосылу",enterNameToJoin:"Бастау үшін атыңызды енгізіңіз",joinDisclaimer:"Сіздің атыңыз нәтижелер кестесінде көрсетіледі",quizCompleted:"Викторина аяқталды!",answersSubmitted:"Жауаптарыңыз жіберілді",viewResults:"Нәтижелерді көру",submitting:"Жіберілуде...",submitAnswers:"Жауаптарды жіберу",resultsNotFound:"Нәтижелер табылмады",quizResults:"Викторина нәтижелері",questionsNotAvailable:"Сұрақтар қолжетімді емес. Викторина жасаушыға хабарласыңыз.",participants:"қатысушы",participant:"Қатысушы",score:"Ұпайлар",refreshResults:"Жаңарту",leaderboard:"Көшбасшылар кестесі",points:"ұпай",noParticipants:"Әзірше қатысушылар жоқ",backToHome:"Басты бетке оралу"},FF={draft:"Жоба",published:"Жарияланған",in_progress:"Орындалуда",completed:"Аяқталған",pending:"Күтуде",in_review:"Тексерілуде",approved:"Бекітілген"},UF={title:"Құжаттар",description:"Формулалар, кестелер және т.б. бар құжаттарды жасаңыз және өңдеңіз",create:"Жаңа құжат",search:"Құжаттарды іздеу...",starred:"Таңдаулылар",recent:"Жақында",empty:"Құжаттар жоқ",emptyDescription:"Бастау үшін алғашқы құжатыңызды жасаңыз",createFirst:"Алғашқы құжатты жасау",star:"Таңдаулыға қосу",unstar:"Таңдаулыдан алып тастау",untitled:"Атаусыз құжат",words:"сөз",public:"Жалпыға қолжетімді",newDocument:"Жаңа құжат",createNew:"Жаңа құжат жасау",selectCategory:"Құжат түрін таңдаңыз",generate:"Генерациялау",createSuccess:"Құжат жасалды",deleteSuccess:"Құжат жойылды",generateSuccess:"Құжат генерацияланды",notFound:"Құжат табылмады",backToList:"Тізімге оралу",creating:"Құжат жасалуда...",importAsAssessment:"Бағалау жұмыс кеңістігін жасау",assessmentGeneratedDescription:"Бағалау дайын. Оны құрылымдалған сұрақтар түрінде өңдеңіз немесе әдеттегі құжат редакторында ашыңыз.",openInDocumentEditor:"Құжат редакторында ашу",editAssessment:"Бағалауды өңдеу",hasAssessmentWorkspace:"Бұл құжаттың құрылымдалған сұрақтары бар бағалау редакторы бар — мұндағы мәтін өзгерістері оған әсер етпейді.",looksLikeAssessment:"Бұл БЖБ/ТЖБ бағалауына ұқсайды. Оны жай мәтін емес, құрылымдалған сұрақтар түрінде өңдеңіз.",openAssessmentEditor:"Бағалау редакторын ашу",categories:{empty:{title:"Бос құжат",description:"Таза беттен бастау"},assessment:{title:"БЖБ / ТЖБ",description:"Жиынтық бағалау генераторы"},"author-program":{title:"Авторлық бағдарлама",description:"Авторлық оқу бағдарламасын жасау"},"scientific-project":{title:"Ғылыми жоба",description:"Ғылыми жоба генераторы"}},forms:{assessmentType:"Бағалау түрі",language:"Тіл",subject:"Пән",subjectPlaceholder:"Мысалы: Математика",grade:"Сынып",gradeLabel:"сынып",topic:"Тақырып",topicPlaceholder:"Бөлім тақырыбын енгізіңіз",duration:"Ұзақтығы",programName:"Бағдарлама атауы",programNamePlaceholder:"Бағдарлама атауын енгізіңіз",totalHours:"Жалпы сағат саны",targetAudience:"Мақсатты аудитория",targetAudiencePlaceholder:"Мысалы: 7-9 сынып оқушылары",projectTitle:"Жоба атауы",projectTitlePlaceholder:"Ғылыми жоба атауын енгізіңіз",projectTopic:"Зерттеу тақырыбы",projectTopicPlaceholder:"Зерттеу тақырыбын енгізіңіз"}},$F={taskTypes:{short_answer:"Қысқа жауап",multiple_choice:"Таңдау жауабы",matching:"Сәйкестендіру",open_ended:"Толық жауап"},gradingModes:{manual:"Қолмен тексеру",choice:"Авто (таңдау)",exact:"Авто (дәл сәйкестік)"},editor:{notFound:"Бағалау табылмады",unsaved:"Сақталмаған өзгерістер бар",s
399aved:"Сақталды",titlePlaceholder:"Бағалау атауы",durationMinutes:"Ұзақтығы (мин)",instructions:"Оқушыларға арналған нұсқаулар",addInstruction:"Нұсқау жолын қосу",tasks:"Тапсырмалар",totalPoints:"Барлығы {{points}} балл",addTask:"Тапсырма қосу",points:"Балл",duplicate:"Көшірмелеу",delete:"Жою",promptPlaceholder:"Тапсырма мәтіні",optionPlaceholder:"Нұсқа мәтіні",addOption:"Нұсқа қосу",acceptedAnswerPlaceholder:"Қабылданатын жауап",addAcceptedAnswer:"Қабылданатын жауап қосу",referenceAnswerPlaceholder:"Анықтамалық жауап (міндетті емес, тек мұғалім үшін)",matchingNote:"Бұл нұсқада сәйкестендіру тапсырмалары еркін мәтін ретінде қабылданады және қолмен тексеріледі.",rubricPlaceholder:"Бағалау критерийлері",descriptorPlaceholder:"Дескриптор",addDescriptor:"Дескриптор қосу",descriptorSumMismatch:"Дескрипторлар қосындысы {{sum}}, тапсырма {{points}} балл тұрады",regenerate:"Қайта жасау",regenerateInstructionPlaceholder:"мысалы: мысалды жеңілдетіңіз",regenerateConfirm:"Қайта жасау",saveBeforeRegenerate:"Алдымен өзгерістерді сақтаңыз",conflictTitle:"Бұл бағалау басқа жерде өзгертілді",conflictDescription:"Біреу (мүмкін, сіз басқа қойындыда) неғұрлым жаңа нұсқаны сақтады. Соңғы нұсқаны жүктеңіз немесе өңдеуді жалғастырып, кейінірек қайта сақтаңыз — ағымдағы өзгерістеріңіз жоғалмайды.",keepEditing:"Өңдеуді жалғастыру",reloadLatest:"Соңғы нұсқаны жүктеу",printStudent:"Оқушы нұсқасын басып шығару",printTeacher:"Мұғалім нұсқасын басып шығару",saveBeforePrint:"Соңғы нұсқаны басып шығару үшін өзгерістерді сақтаңыз",popupBlocked:"Браузер баспаға алдын ала қарау терезесін блоктады. Осы сайт үшін қалқымалы терезелерге рұқсат беріп, қайталап көріңіз.",assignOnline:"Онлайн тағайындау",saveBeforePublish:"Онлайн тағайындау алдында өзгерістерді сақтаңыз"},publish:{newPublication:"Сыныпқа тағайындау",classroom:"Сынып",selectClassroom:"Сыныпты таңдаңыз...",opensAt:"Ашылу уақыты",closesAt:"Жабылу уақыты",timeLimitMinutes:"Оқушыға арналған таймер (минут)",timeLimitPlaceholder:"Таймерсіз",timeLimitHint:"Міндетті емес. Қағаз нұсқасының ұзақтығы осында таймер қоймайынша онлайн қолданылмайды.",publish:"Жариялау",history:"Жіберілімдер",open:"Ашық",closed:"Жабық",timerSummary:"{{minutes}} мин таймер",noTimer:"Таймерсіз",manageAccess:"Қолжетімділікті басқару",noPublications:"Әзірге ешбір сыныпқа тағайындалмаған",codesShownOnce:"Бұл кодтар тек бір рет көрсетіледі — қазір көшіріңіз немесе жіберіңіз.",accessCode:"Қолжетімділік коды",resetAccess:"Қолжетімділік кодын қалпына келтіру",resetConfirmTitle:"Осы оқушының қолжетімділік кодын қалпына келтіру керек пе?",resetConfirmDescription:"{{name}} үшін ескі сілтеме дереу жұмыс істемей қалады. Сақталған жауаптар мен үлгерім сақталады.",issueSelected:"Қолжетімділік беру ({{count}})",status:{not_started:"Басталмаған",in_progress:"Орындалуда",submitted:"Тапсырылған"},conflictDescription:"Бұл бет ашылғаннан кейін бағалау басқа жерде өзгертілді. Соңғы сақталған нұсқаны жариялау үшін оны жүктеңіз."},take:{points:"{{points}} ұпай",answerPlaceholder:"Жауабыңызды енгізіңіз...",markScore:"{{score}} / {{max}}
399",invalidTitle:"Бұл сілтеме жарамсыз",invalidDescription:"Қолжетімділік сілтемесі жоқ, мерзімі өткен немесе қалпына келтірілген болуы мүмкін. Мұғалімнен жаңа сілтеме сұраңыз.",greeting:"Сәлем, {{name}}",closedByTeacher:"Мұғалім бұл бағалауды жапты.",notYetOpen:"Бұл бағалау әлі ашылмаған. Кейінірек қайталап көріңіз.",alreadyClosed:"Бұл бағалаудың мерзімі өтіп кетті.",start:"Бастау",submittedTitle:"Жауаптарыңыз тапсырылды",scoreSummary:"Нәтиже: {{score}} / {{total}}",awaitingRelease:"Мұғалім нәтижелерді әлі жарияламады.",checkResults:"Нәтижелерді тексеру",saving:"Сақталуда...",saved:"Сақталды",offline:"Байланыс жоқ, сақталмады",readyToSave:"Жауаптарыңыз автоматты түрде сақталады",offlineWarning:"Сіз желіден тыссыз (немесе сақтау сәтсіз аяқталды). Жұмысты жалғастырыңыз — біз қайта сақтап көреміз, бірақ «Сақталды» деп көрсетілгенше осы қойындыны жаппаңыз.",timeUp:"Уақыт бітті. Сақталған жауаптарды бекіту үшін қазір тапсырыңыз.",submit:"Тапсыру",conflictTitle:"Жауаптарыңыз басқа қойындыдан немесе құрылғыдан сақталды",conflictDescription:"Жалғастырмас бұрын соңғы сақталған жауаптарды жүктеңіз."}},zF={levels:{remember:"Есте сақтау",understand:"Түсіну",apply:"Қолдану",analyze:"Талдау",evaluate:"Бағалау",create:"Жасау"},categories:{low:"Төмен",medium:"Орта",high:"Жоғары"},levelDescriptions:{remember:"Фактілер мен негізгі ұғымдарды еске түсіру",understand:"Идеялар мен ұғымдарды түсіндіру",apply:"Ақпаратты жаңа жағдайларда қолдану",analyze:"Идеялар арасындағы байланыстарды анықтау",evaluate:"Шешім немесе әрекетті негіздеу",create:"Жаңа немесе түпнұсқа жұмыс жасау"}},VF={title:"Ғылыми жобалар",description:"AI көмегімен оқушыларды ғылыми зерттеуге бағыттаңыз",create:"Жоба жасау",createNew:"Жаңа жоба жасау",createDescription:"Жаңа ғылыми зерттеу жобасын бастаңыз",createFirst:"Алғашқы жобаңызды жасаңыз",createAndStart:"Жасау және бастау",deleteConfirm:"Бұл жобаны жоюға сенімдісіз бе?",grade:"Сынып",gradeUnit:"сынып",subject:"Пән",selectSubject:"Пәнді таңдаңыз",selectGrade:"Сыныпты таңдаңыз",continueWork:"Жұмысты жалғастыру",projectInfo:"Жоба ақпараты",projectInfoDescription:"Жобаның негізгі мәліметтерін енгізіңіз",titleLabel:"Жоба атауы",titlePlaceholder:"Мысалы: Жарықтың өсімдік өсуіне әсері",studentName:"Оқушы аты",studentNamePlaceholder:"Оқушының атын енгізіңіз",studentNameHint:"Міндетті емес - бақылау үшін",researchInfo:"Зерттеу ақпараты",researchInfoDescription:"Зерттеу бағытын анықтаңыз",researchTopic:"Зерттеу тақырыбы",researchTopicPlaceholder:"Нені зерттейсіз?",researchTopicHint:"Кезеңдер бойынша нақтылауға болады",descriptionPlaceholder:"Жоба туралы қысқаша сипаттама",researchStages:"Зерттеу кезеңдері",stagesPreviewDescription:"Жобаңыз осы 8 ғылыми зерттеу кезеңін басынан өтеді",stage:"Кезең",stages:{problem_identification:"Мәселені анықтау",hypothesis_formulation:"Гипотеза қою",literature_review:"Әдебиеттерге шолу",methodology_design:"Әдістеме жобаÐ
399»Ð°Ñƒ",experiment_modeling:"Эксперимент модельдеу",data_analysis:"Деректерді талдау",conclusions:"Қорытынды жасау",virtual_defense:"Виртуалды қорғау"},current:"Ағымдағы",advanceToNext:"Келесі кезеңге өту",aiGuidanceDescription:"AI көмекшісінен кеңес алыңыз",startConversation:"Кеңес алу үшін әңгіме бастаңыз",aiThinking:"AI ойланып жатыр...",askQuestion:"Осы кезең туралы сұрақ қойыңыз...",projectContent:"Жоба мазмұны",content:"Мазмұны",experiment:"Эксперимент",noContentYet:"Мазмұн жоқ. AI көмекшісімен сөйлесуден бастаңыз.",selectStageToSeeContent:"Мазмұнын көру үшін кезеңді таңдаңыз",editSection:"Бөлімді өңдеу",enterContent:"Мазмұнды осы жерге енгізіңіз...",experimentData:"Эксперимент деректері",experimentDataDescription:"Бақылау және эксперименттік топтар үшін өлшемдерді жазыңыз",variable:"Айнымалы",addVariable:"Айнымалы қосу",addFirstVariable:"Алғашқы айнымалыны қосу",controlGroup:"Бақылау тобы",experimentGroup:"Эксперименттік топ",difference:"Айырмашылық",noExperimentData:"Эксперимент деректері жоқ",analyze:"Талдау",analysisResults:"Талдау нәтижелері",mean:"Орта",standardDeviation:"Ст. ауытқу",significant:"Маңызды",startDefense:"Виртуалды қорғауды бастау",virtualDefense:"Виртуалды қорғау",defenseDescription:"Зерттеуіңізді қорғау үшін AI комиссиясының сұрақтарына жауап беріңіз",defenseCompleted:"Құттықтаймыз! Сіз қорғауды сәтті аяқтадыңыз.",preparingDefense:"Қорғау сұрақтары дайындалуда...",question:"Сұрақ",enterAnswer:"Жауабыңызды енгізіңіз...",answerHint:"Зерттеуіңізге негізделген толық жауап беріңіз",submitAnswer:"Жауапты жіберу",nextQuestion:"Келесі сұрақ",seeResults:"Нәтижелерді көру",questionBreakdown:"Сұрақтар бойынша бөлу",overallFeedback:"Жалпы пікір",outOf:"ішінен",excellent:"Тамаша!",good:"Жақсы",needsImprovement:"Жақсартуды қажет етеді"},HF={title:"Авторлық бағдарламалар",description:"Backward Design әдістемесін қолдана отырып арнайы оқу бағдарламаларын жасаңыз",create:"Бағдарлама жасау",createNew:"Жаңа бағдарлама жасау",createDescription:"Арнайы оқу бағдарламасын жобалаңыз",createFirst:"Алғашқы бағдарламаңызды жасаңыз",createAndContinue:"Жасау және жалғастыру",deleteConfirm:"Бұл бағдарламаны жоюға сенімдісіз бе?",continueEditing:"Өңдеуді жалғастыру",grade:"Сынып",gradeUnit:"сынып",subject:"Пән",selectSubject:"Пәнді таңдаңыз",selectGrade:"Сыныпты таңдаңыз",outcomes:"нәтиже",topics:"тақырып",contentBalance:"Мазмұн теңгерімі",reviewScore:"Бағалау ұпайы",backwardDesign:"Backward Design әдістемесі",backwardDesignDescription:"Оқу нәтижелерінен бастап, мазмұнды жобалап, сапаны тексеріңіз",step1Outcomes:"Нәтижелер",step2Content:"Мазмұн",step3Review:"Тексеру",programInfo:"Бағдарлама ақпараты",programInfoDescription:"Бағдарламаның негізгі мәліметтерін енгізіңіз",titleLabel:"Бағдарлама атауы",titlePlaceholder:"Мысалы: 7-сынып математикасы",totalHours:"Жалпы сағат саны",totalHoursHint:"Бағдарлама бойынша оқу сағаттарының жалпы саны",additionalInfo:"Қосымша ақпарат",descriptionPlaceholder:"Бағдарлама сипаттамасы мен мақсаттары",targetAudience:"Мақсатты аудитория",targetAudiencePlaceholder:"Мақсатты оқушыларды сипаттаңыз",targetAudienceHint:"Бұл бағдарлама кімдерге арналған?",learningOutcomes:"Оқу нәтижелері",outcomesDescription:"Бағдарламаны аяқтағаннан кейін оқушылар нені істей алатынын анықтаңыз",addOutcome:"Нәтиже қосу",addFirstOutcome:"Алғашқы нәтижені қосу",noOutcomes:"Оқу нәтижелері жоқ",generateWithAI:"AI арқылы жасау",suggestWithAI:"AI арқылы ұсыну",outcomeDescription:"Нәтиже сипаттамасы",outcomePlaceholder:"Оқушылар ... істей алады",bloomLevel:"Bloom деңгейі",add:"Қосу",aiSuggestions:"AI ұсыныстары",
399suggestionsDescription:"Ұсынылған нәтижелерді бағдарламаңызға қосыңыз",allSuggestionsAdded:"Барлық ұсыныстар қосылды",topicsContent:"Тақырыптар мен мазмұн",topicsDescription:"Мазмұнды тақырыптар мен іс-шараларға ұйымдастырыңыз",addTopic:"Тақырып қосу",addFirstTopic:"Алғашқы тақырыпты қосу",noTopics:"Тақырыптар жоқ",topicTitle:"Тақырып атауы",topicTitlePlaceholder:"Тақырып атауын енгізіңіз",contentType:"Мазмұн түрі",contentTypes:{theory:"Теория",practice:"Практика",project:"Жоба",discussion:"Талқылау",case_study:"Кейс зерттеу",assessment:"Бағалау",presentation:"Презентация",group_work:"Топтық жұмыс"},hours:"Сағат",linkOutcomes:"Нәтижелермен байланыстыру",linkedOutcomes:"Байланысқан нәтижелер",noLinkedOutcomes:"Байланысқан нәтижелер жоқ",reviewAudit:"Тексеру және аудит",aiAssistant:"AI көмекшісі",aiAssistantDescription:"Бағдарламаңыз бойынша AI көмекшісінен көмек алыңыз",startAIConversation:"Бағдарлама бойынша көмек алу үшін әңгіме бастаңыз",aiThinking:"AI ойланып жатыр...",askAI:"AI көмекшісіне сұрақ қойыңыз...",requestReview:"Тексеруді сұрау",refreshReview:"Тексеруді жаңарту",noReviewYet:"Тексеру жоқ",noReviewDescription:"Бағдарлама сапасы туралы пікір алу үшін AI тексеруін сұраңыз",analyzing:"Талдануда...",criteriaScores:"Критерийлер бойынша ұпайлар",strengths:"Күшті жақтары",weaknesses:"Жақсартуды қажет ететін аймақтар",suggestions:"Ұсыныстар",lastReviewed:"Соңғы тексерілген",quickPrompts:{title:"Жылдам сұраулар",description:"Жиі қойылатын сұрақтар мен сұраныстар",suggestOutcomes:"Оқу нәтижелерін ұсыну",improveTopics:"Тақырып құрылымын жақсарту",alignCurriculum:"Оқу бағдарламасына сәйкестікті тексеру",teachingMethods:"Оқыту әдістерін ұсыну"},contextInfo:"Бағдарлама контексі"},qF={title:"AI Аватар",description:"AI аватарларымен сөйлесіңіз",availableAvatars:"Қол жетімді аватарлар",history:"Әңгіме тарихы",startSession:"Сессияны бастау",viewConversation:"Әңгімені көру",conversation:"Әңгіме",noAvatars:"Қол жетімді аватарлар жоқ",noAvatarsDescription:"Аватарлар қол жетімді болғанда осында пайда болады",noHistory:"Әзірге әңгімелер жоқ",noHistoryDescription:"Тарихты көру үшін аватармен әңгіме бастаңыз",minutesRemaining:"минут қалды",minutesUsed:"минут пайдаланылды",connected:"Қосылды",disconnected:"Ажыратылды",endSession:"Сессияны аяқтау",sessionEnded:"Сессия аяқталды",sessionEndedDescription:"Сіздің әңгімеңіз аяқталды",startConversation:"Сөйлеу үшін микрофонды басыңыз",typeMessage:"Хабарлама жазыңыз...",recording:"Жазылуда...",thinking:"Ойлануда...",holdToSpeak:"Жазу үшін басыңыз, жіберу үшін қайта басыңыз",audioNotSupported:"Браузеріңізде дыбыс жазу қолдаланбайды",recordingError:"Жазу қатесі орын алды",error:"Қате орын алды",assistant:"AI Көмекші",connectionError:"Қосылу қатесі. Қайта көріңіз.",microphoneError:"Микрофонға қол жеткізу мүмкін болмады",created:"Аватар сәтті жасалды",movementAdded:"Қозғалыс қосылды",movementRemoved:"Қозғалыс жойылды",movementGenerated:"Қозғалыс жасалды",movements:"қозғалыс",manageMovements:"Қозғалыстарды басқару",manageMovementsDescription:"{{name}} үшін қозғалыстарды басқару",currentMovements:"Ағымдағы қозғалыстар",noMovements:"Қосылған қозғалыстар жоқ",addMovement:"Қозғалыс қосу",movementNamePlaceholder:"Қозғалыс атауын енгізіңіз",movementVideoPlaceholder:"Бейне URL енгізіңіз",generateMovement:"Қозғалыс жасау",generatePromptPlaceholder:"Қозғалысты сипаттаңыз (міндетті емес)",greeting:"Сәлемдесу",listening:"Тыңдау",speaking:"Сөйлеу",limitReached:"Лимит біткен",upgradeToConinue:"AI Аватарды пайдалануды жалғастыру үшін тарифті жаңартыңыз",voiceOnly:"Тек дауыспен",voiceOnlyDescription:"Аватармен сөйлесу үшін микрофонды пайдаланыңыз",listeningMovement:"Күту қозғалысы",listeningMovementHint:"Пайдаланушы енгізуін күту кезінде ойнатылатын бейне",greetingMovement:"Сәлемдесу қозғалысы",greetingMovementHint:"Әңгіме басталғанда ойнатылатын бейне",selectMovement:"Қозғалысты таңдаңыз",slotRequired:"Бұл өріс міндетті",fillRequiredSlots:"Барлық міндетті қозғалыс слоттарын толтырыңыз",movementsSaved:"Қозғалыстар сәтті сақталды",movementsSaveError:"Қозғалыстарды сақтау сәтсіз аяқталды",requiredSlotsHint:"Бұл қозғалыстар толтырылуы керек",optionalSlotsHint:"Бұл қозғалыстар міндетті емес",slots:{listening:"Тыңдау",greeting_1:"Сәлемдесу 1",speak_neutral:"Бейтарап сөйлеу",greeting_2:"Сәлемдесу 2",think:"Ойлану",nod_yes:"Иә деп бас изеу",shake_no:"Жоқ деп бас шайқау",idle:"Күту",smile:"Күлімсіреу",farewell:"Қоштасу"},form:{name:"Атауы",namePlaceholder:"Аватар атауын енгізіңіз",voiceId:"Дауыс ID",voiceIdPlaceholder:"Дауыс ID енгізіңіз",provider:"TTS Провайдер",providerPlaceholder:"Провайдерді таңдаңыз",sttProvider:"STT Провайдер",sttProviderPlaceholder:"Сөзді тану провайдерін таңдаңыз",sttProviderHint:"Осы аватардың дауыстық енгізуін тануға пайдаланылатын STT жүйесін ауыстырады. Әдепкі мәнді пайдалану үшін «Авто» күйінде қалдырыңыз.",avatarFile:"Аватар файлы",avatarFileHint:"Аватар үшін сурет жүктеңіз",avatarFileOptional:"Ағымдағы файлды сақтау үшін бос қалдырыңыз",avatarImageHint:"Сурет жүктеңіз (JPEG, PNG, WebP)"},uploadFile:"Жүктеу",pasteUrl:"URL",uploading:"Жүктелуде...",uploadNotAvailable:"Бейне жүктеу қолжетімді емес. URL енгізуді пайдаланыңыз.",uploadEndpointMissing:"Бейне жүктеу нүÐ
399ºÑ‚есі жоқ. Компьютерден әлі жүктеу мүмкін емес. URL қоюды пайдаланыңыз.",fileUploaded:"Файл сәтті жүктелді",uploadFailed:"Файлды жүктеу сәтсіз аяқталды",invalidFileType:"Файл түрі жарамсыз. MP4 немесе WebM бейне жүктеңіз.",fileTooLarge:"Файл өте үлкен. Максималды өлшем 100MB.",waitForUpload:"Жүктеулер аяқталғанша күтіңіз",listeningRequired:"«Тыңдау» қимылы міндетті",videoRequired:"Бейне URL міндетті",nameRequired:"Қимыл атауы міндетті",duplicateName:"Қимыл атаулары бірегей болуы керек",validationFailed:"Сақтамас бұрын қателерді түзетіңіз",listeningRequiredHint:"Аватар жұмыс істеуі үшін қажет",movementDeleteError:"Қимылды жою сәтсіз аяқталды",addNewMovement:"Қимыл қосу",removeMovement:"Жою",movementName:"Қимыл атауы",enterMovementName:"Қимыл атауын енгізіңіз",basicInfo:"Негізгі ақпарат",movementVideos:"Қозғалыс бейнелері",movementVideosHint:"Міндетті емес. Бейнесіз аватар суреті жауап дыбысына сай браузерде қозғалады — бейне жасау шығыны жоқ.",greetingVideo:"Сәлемдесу бейнесі",speakingVideo:"Сөйлеу бейнесі",thinkingVideo:"Ойлану бейнесі",listeningVideo:"Тыңдау бейнесі",speakingRequired:"Сөйлеу бейнесі міндетті",invalidVideoUrl:"Дұрыс жалпыға қолжетімді HTTPS бейне мекенжайын енгізіңіз",invali
399dAvatarImage:"10 МБ-қа дейін JPEG, PNG немесе WebP суретін жүктеңіз",imageOnly:"Жанды сурет",speakingVideos:"Сөйлеу бейнелері",speakingVideosHint:"Әртүрлі көңіл-күймен сөйлеу бейнелерін қосыңыз",addSpeaking:"Сөйлеу бейнесін қосу",speakingNamePlaceholder:"мысалы, түсіндіру",selectImpression:"Көңіл-күйді таңдаңыз",videoUrlPlaceholder:"Бейне URL енгізіңіз",videos:"Бейнелер",greetingRequired:"Сәлемдесу бейнесі міндетті",thinkingRequired:"Ойлану бейнесі міндетті",impressionRequired:"Көңіл-күй міндетті",atLeastOneSpeakingRequired:"Кем дегенде бір сөйлеу бейнесі қажет",duplicateSpeakingNames:"Сөйлеу атаулары бірегей болуы керек",avatarImageRequired:"Аватар суреті міндетті",creatingAvatar:"Аватар жасалуда...",uploadingVideos:"Бейнелер жүктелуде...",orTypeMessage:"Немесе төменде хабарлама теріп жіберіңіз",noMessagesYet:"Әлі хабарлама жоқ",deleteConversation:"Әңгімені жою",deleteConversationConfirm:"Бұл әңгімені жойғыңыз келе ме? Бұл әрекетті болдырмауға болмайды.",loadError:"Аватарларды жүктеу мүмкін болмады",loadErrorDescription:"Сервермен байланыс орнату кезінде қате шықты. Қайталап көріңіз.",endSessionConfirm:"Сессияны аяқтағыңыз келе ме?",endSessionConfirmDescription:"Ағымдағы әңгіме тарихта сақталады.",helpTitle:"Қалай сөйлесу керек?"},BF={deleted:"Әңгіме жойылды",deleteConfirm:"Бұл әңгімені жойғыңыз келетініне сенімдісіз бе?"},WF={title:"Zerde AI",subtitle:"Сіздің AI көмекшіңіз",welcome:"Қалай көмектесе аламын?",welcomeDescription:"Мен сабақ идеяларымен, викторина құрумен, сурет генерациясымен және платформа туралы сұрақтарға жауап беруге көмектесе аламын.",placeholder:"Кез келген сұрақ қойыңыз...",placeholderWithSelection:"Белгіленген мәтін туралы сұраңыз...",placeholderWithImage:"Бұл сурет туралы сұраңыз...",thinking:"Ойланып жатырмын...",keyboardHint:"Enter - жіберу, Shift+Enter - жаңа жол",newConversation:"Жаңа әңгіме",history:"Тарих",noConversations:"Әзірге әңгімелер жоқ",selectedText:"Белгіленген мәтін",askAI:"AI-дан сұрау",sendError:"Хабарламаны жіберу сәтсіз аяқталды",actionExecuted:"Әрекет орындалды",actionFailed:"Әрекет орындалмады",conversationDeleted:"Әңгіме жойылды",qmjUpdated:"Сабақ жоспары сәтті жаңартылды",quizCreated:"Викторина сәтті құрылды",searchingTextbook:"Оқулықтан іздеу...",attachImage:"Сурет тіркеу",analyzeImage:"Бұл не?",invalidImageType:"Сурет файлын таңдаңыз",imageTooLarge:"Сурет 5 МБ-тан кіші болуы керек",uploadFailed:"Суретті жүктеу сәтсіз аяқталды",imageGenerated:"Сурет сәтті жасалды",context:{presentations:"Презентация",documents:"Құжат",qmj:"Сабақ жоспары",general:"Жалпы"}},GF={title:"Сыныптар",description:"Сыныптар мен оқушыларды басқару",list:"Менің сыныптарым",create:"Сынып құру",created:"Сынып сәтті құрылды",updated:"Сынып сәтті жаңартылды",deleted:"Сынып сәтті жойылды",codeRegenerated:"Қосылу коды сәтті жаңартылды",studentAdded:"Оқушы сәтті қосылды",studentRemoved:"Оқушы сәтті жойылды",noClassrooms:"Сыныптар әзірге жоқ",noClassroomsDescription:"Оқушыларды басқаруды бастау үшін бірінші сыныпты құрыңыз",createFirst:"Бірінші сыныпты құру",activeClassrooms:"Белсенді сыныптар",inactiveClassrooms:"Белсенді емес сыныптар",students:"Оқушылар",studentsCount:"{{count}} оқушы",noStudents:"Оқушылар әзірге жоқ",noStudents
399Description:"QR-кодты бөлісіңіз немесе оқушыларды қолмен қосыңыз",form:{name:"Сынып атауы",namePlaceholder:"мысалы, Математика 7А",nameRequired:"Атау міндетті",nameMaxLength:"Атау 255 таңбадан аз болуы керек",description:"Сипаттама",descriptionPlaceholder:"Сынып үшін қосымша сипаттама",descriptionMaxLength:"Сипаттама 1000 таңбадан аз болуы керек",schoolClass:"Мектеп сыныбына тіркеу",noSchoolClass:"Жоқ",schoolClassHint:"Сол сыныптың ағымдағы құрамын бірден мұраға алады және синхронда қалады — бөлек қосылу кодтары қажет емес."},attachSchoolClass:"Мектеп сыныбына тіркеу",attachSchoolClassHint:"Сол сыныптың ағымдағы құрамын бірден мұраға алады және синхронда қалады.",detachSchoolClass:"Ажырату",detachSchoolClassConfirm:"Бұл сыныпты (classroom) мектеп сыныбынан ажырату керек пе? Көшірілген оқушылар classroom-да қалады — тек синхрондау тоқтайды.",schoolClassAttached:"Мектеп сыныбына тіркелді",schoolClassDetached:"Мектеп сыныбынан ажыратылды",syncedWithClass:"{{name}} синхрондалды",syncedWithClassGeneric:"Мектеп сыныбымен синхрондалды",syncedClass:"Синхрондалған сынып",syncedCardTitle:"Құрам мектеп сыныбымен синхрондалды",syncedCardDescription:"Бұл classroom {{name}} сыныбының құрамын көрсетеді — оның өз коды/QR-ы енді жұмыс істемейді.",syncedCardDescriptionGeneric:"Бұл classroom мектеп сыныбының құрамын көрсетеді — оның өз коды/QR-ы енді жұмыс істемейді.",syncedCardDirectorHint:"Осы сыныптың кодын Мектеп → Сыныптар бөлімінен бөлісіңіз.",syncedCardTeacherHint:"Осы сыныптың кодын мектеп директорынан сұраңыз.",goToSchoolClasses:"Мектеп → Сыныптарға өту",joinCode:"Қосылу коды",qrCode:"QR-код",qrCodeDescription:"Оқушылар сыныпқа қосылу үшін осы QR-кодты сканерлей алады",shareLink:"Сілтемені бөлісу",copyLink:"Сілтемені көшіру",linkCopied:"Сілтеме көшірілді",regenerateCode:"Кодты жаңарту",regenerateCodeConfirm:"Бұл ағымдағы QR-кодты жарамсыз етеді. Ескі сілтемесі бар оқушылар қосыла алмайды. Жалғастыру керек пе?",downloadQR:"QR жүктеу",status:{active:"Белсенді",inactive:"Белсенді емес"},addStudent:"Оқушы қосу",addStudentDescription:"Оқушыны осы сыныпқа қолмен қосу",editStudent:"Оқушыны өңдеу",removeStudent:"Оқушыны жою",removeStudentConfirm:"{{name}} осы сыныптан жойғыңыз келетініне сенімдісіз бе?",studentForm:{firstName:"Аты",firstNamePlaceholder:"Атын енгізіңіз",lastName:"Тегі",lastNamePlaceholder:"Тегін енгізіңіз"},notFoundHint:"Сынып табылмады немесе сізде қол жетімділік жоқ.",backToList:"Сыныптар тізіміне",deleteConfirm:"Бұл сыныпты жойғыңыз келетініне сенімдісіз бе? Барлық оқушылар жойылады.",deactivateConfirm:"Сыныпты белсенді емес ету жаңа оқушылардың қосылуына жол бермейді. Жалғастыру керек пе?",join:{title:"Сыныпқа қосылу",subtitle:"Қосылу үшін атыңызды енгізіңіз",classroomName:"Сіз қосылып жатырсыз",firstName:"Аты",firstNamePlaceholder:"Атыңызды енгізіңіз",firstNameRequired:"Аты міндетті",firstNameMaxLength:"Аты 100 таңбадан аз болуы керек",lastName:"Тегі",lastNamePlaceholder:"Тегіңізді енгізіңіз",lastNameRequired:"Тегі міндетті",lastNameMaxLength:"Тегі 100 таңбадан аз болуы керек",submit:"Қосылу",joining:"Қосылу...",invalidCode:"Жарамсыз немесе мерзімі өткен қосылу коды",classroomInactive:"Бұл сынып жаңа оқушыларды қабылдамайды",success:"Сіз сыныпқа сәтті қосылдыңыз!",successTitle:"Қош келдіңіз!",successDescription:"Сіз {{classroom}} сәтті қосылдыңыз",backToHome:"Басты бетке",scanAnother:"Басқа кодты сканерлеу",studentName:"Сіз қосылдыңыз"},tabs:{overview:"Шолу",students:"Оқушылар",groups:"Топтар",picker:"Кездейсоқ таңдау",tools:"Құралдар"},quickStats:"Жылдам статистика",quickActions:"Жылдам әрекеттер",picker:{title:"Кездейсоқ оқушы таңдау",description:"Камераны сыныпқа бағыттап, кездейсоқ бетті таңдаңыз.",pick:"Таңдау",spinning:"Таңдалуда...",selectedStudent:"Таңдалған оқушы",studentsAvailable:"{{count}} оқушы қол жетімді",modes:{wheel:"Дөңгелек",cards:"Карталар",slot:"Слот",lightning:"Найзағай"},noStudents:"Кездейсоқ таңдауды пайдалану үшін оқушыларды қосыңыз",clickToPick:"Кездейсоқ оқушыны таңдау үшін басыңыз",camera:{start:"Камераны қосу",stop:"Өшіру",pick:"Таңдау",picking:"Таңдалып жатыр…",requesting:"Рұқсат сұралуда…",hint:"Камераны сыныпқа бағыттап, «Таңдау» басыңыз.",offTitle:"Кездейсоқ бет таңдау",offBody:"Камераны сыныпқа бағыттаңыз. Бет тану тек осы құрылғыда жұмыс істейді — бейне ешқайда жіберілмейді.",noFace
399s:"Бет табылмады. Бәрінен камераға қарауды сұрап, қайта көріңіз.",retry:"Қайталау",youArePicked:"Сенің кезегің!",faceCount:"{{faces}} бет табылды",consent:{title:"Камераны пайдалану керек пе?",body:"Камера таңдауды қызықты ету үшін қажет. Беттер тек осы құрылғыда өңделеді — ешнәрсе жүктелмейді.",accept:"Камераны қосу"},errors:{denied:"Камераға рұқсат берілмеді. Браузер параметрлерінде қосыңыз.",noDevice:"Бұл құрылғыда камера табылмады.",models:"Бет тану модельдерін жүктеу мүмкін болмады. Желіңізді тексеріп, қайта көріңіз.",unknown:"Камераны қосу мүмкін болмады."}}},groups:{title:"Оқушы топтары",addGroup:"Топ қосу",autoGenerate:"Автогенерация",numberOfGroups:"Топтар саны",ungrouped:"Топсыз",dragHere:"Оқушыларды осында сүйреңіз",team1:"Альфа тобы",team2:"Бета тобы",team3:"Гамма тобы",team4:"Дельта тобы",team5:"Эпсилон тобы",team6:"Зета тобы",team7:"Эта тобы",team8:"Тета тобы",groupN:"{{n}} топ"},scoreboard:{title:"Команда ұпайлары",description:"Ұпайларды қадағалаңыз және сабақ кезінде топтарды ынталандырыңыз",reset:"Ұпайларды қалпына келтіру",noGroups:"Ұпай тақтасын пайдалану үшін топтар құрыңыз",quickAdd:"Жылдам ұпай қосу"},attendance:{title:"Жылдам қатысу",description:"Оқушыларды қатысты, қатыспаған, кешігіп келген немесе босатылған деп белгілеңіз",reset:"Қалпына келтіру",dayNight:"Күн/Түн циклі",present:"Қатысты",absent:"Қатыспады",late:"Кешікті",excused:"Себепті",unmarked:"Белгіленбеген",rate:"Қатысу пайызы",markAs:"Белгілеу",markAllPresent:"Барлығы қатысты",markAllAbsent:"Барлығы қатыспады"}},KF={title:"Көрнекіліктер",subtitle:"Сабақтарға көмектесетін интерактивті құралдар",open:"Ашу",tags:{ar:"AR",geography:"География",interactive:"Интерактивті",biology:"Биология",anatomy:"Анатомия",physics:"Физика",chemistry:"Химия",simulation:"Симуляция"},arGlobe:{title:"AR Географиялық глобус",description:"3D Жер шары — климат, халық, тектоникалық плиталар, сауда жолдары және көші-қон қабаттары. Уақыт сырғытпасы арқылы тарихи шекара өзгерістерін көріңіз.",subtitle:"Интерактивті 3D глобус — қабаттар мен уақыт сырғытпасымен зерттеңіз",layersTitle:"Қабаттар",timeSlider:"Уақыт сырғытпасы",howToUse:"Қалай қолдану",tip1:"Глобусты айналдыру үшін басқару түймелерін пайдаланыңыз",tip2:"Қабаттарды қосып/өшіріп, әр түрлі деректерді көріңіз",tip3:"Уақыт сырғытпасын жылжытып, тарихи өзгерістерді бақылаңыз",layers:{climate:"Климат",population:"Халық саны",tectonic:"Тектоникалық плиталар",trade:"Сауда жолдары",migration:"Көші-қон",countries:"Елдер",dayNight:"Күн / Түн"},controls:{rotateLeft:"Солға бұру",rotateRight:"Оңға бұру",pause:"Тоқтату",play:"Ойнату",zoomIn:"Үлкейту",zoomOut:"Кішірейту",reset:"Қалпына келтіру",dayNight:"Күн/Түн циклі"},eras:{ancientCivilizations:"Ежелгі өркениеттер: Мысыр, Месопотамия, Үнді алқабы",classicalAge:"Классикалық дәуір: Грекия, Персия, Қытай империялары",romanEmpire:"Рим империясы мен Хань әулеті дәуірі",middleAges:"Орта ғасырлар: Византия, Ислам алтын ғасыры",medievalPeriod:"Ортағасырлық кезең: Крест жорықтары, Жібек жолы",ageOfDiscovery:"Ұлы географиялық ашулар дәуірі",industrialRevolution:"Өнеркәсіптік революция және отаршылдық",modernEra:"Заманауи дәуір: Дүниежүзілік соғыстар",postWar:"Соғыстан кейінгі кезең: Суық соғыс, деколонизация",contemporary:"Қазіргі заман: жаһандану, интернет",present:"Бүгінгі күн"}},shapeSculpt:{title:"3D мүсіндеу",subtitle:"Камера арқылы қолыңмен 3D пішін мүсіндеу — шымшу бұрышты ұстайды, жұдырық айналдырады.",cardDescription:"Камераның алдына шығып, бұрыштарын шымшып ілмекті кубты өзгертіңіз. Геометрия сабағына арналған қолмен 3D модельдеу.",tag3D:"3D",tagGesture:"Қол қимылдары",enableCamera:"Камераны қосу",stop:"Тоқтату",reset:"Қалпына келтіру",retry:"Қайталау",loadingModel:"Қол моделі жүктелуде… (~4МБ, тек алғашқы рет)",modelError:"Модельді жүктеу мүмкін болмады. Желіні тексеріп, бетті жаңартыңыз.",introTitle:"Қолмен 3D",introBody:"Камераны қосып, екі қолыңмен кубты мүсіндеңіз:",rightHand:"Оң қол",leftHand:"Сол қол",rightHandInstruction:"бас бармақ пен сұқ саусақты шымшып бұрышты ұста.",leftHandInstruction:"жұдырық жасап қозғал — пішін айналады.",pinchHint:"ашық",pinchActive:"шымшу",fistHint:"ашық",fistActive:"жұдырық",hintIdle:"«Қосу» басып, екі қолыңды кадрға кіргіз.",hintPlaying:"Оң қолмен бұрышты шымшы · жұдырық + қозғалыс = айналдыру",consent:{title:"Камераны пайдалану керек пе?",body:"Камера екі қолды бақылау үшін қажет. Бәрі осы құрылғыда жұмыс істейді — бейне ешқайда жіберілмейді.",accept:"Камераны қосу"},errors:{denied:"Камераға рұқсат берілмеді. Браузер параметрÐ
399»ÐµÑ€Ñ–нде қосыңыз.",noDevice:"Бұл құрылғыда камера табылмады.",unknown:"Камераны қосу мүмкін болмады."}},poseMatch:{title:"Іс-қимылды қайталау",subtitle:"5 минуттық сергіту — экрандағы позаны денеңізбен қайталаңыз.",cardDescription:"Камера алдына тұрып, позаны қайталаңыз. Сабақ арасындағы керемет сергіту.",tagBrainBreak:"Сергіту",tagMovement:"Қозғалыс",start:"Бастау",stop:"Тоқтату",playing:"Ойнаудамыз…",playAgain:"Қайта ойнау",requesting:"Камера сұралуда…",loadingModel:"Поза моделі жүктелуде… (~6МБ, тек алғашқы рет)",modelError:"Поза моделін жүктеу мүмкін болмады. Желіні тексеріп, бетті жаңартыңыз.",introTitle:"Сергуге дайынбыз ба?",introBody:"Камера бүкіл денеңізді көретіндей кері тұрып, «Бастау» басыңыз.",startHint:"Бастау үшін «Бастау» басыңыз.",holdHint:"Позаны бір секунд ұстап тұрсаңыз есептеледі.",holdIt:"Ұстап тұр!",greatJob:"Тамаша!",allDone:"{{count}} поза қайталандыңыз.",targetPose:"Осы позаны қайтала",targetWaiting:"Келесі поза",poseLabel:"{{total}} ішінен {{n}} поза",poses:{handsUp:"Қолдар жоғары!",tPose:"Т-поза",rightHandUp:"Оң қол жоғары",star:"Жұлдыз",flex:"Бұлшық еттеріңді көрсет",squat:"Отырып тұр",leftHandUp:"Сол қол жоғары",cactus:"Кактус",yPose:"Аспанға созыл",warrior:"Аспанды көрсет"},consent:{title:"Камераны пайдалану керек пе?",body:"Камера дене позасын оқу үшін қажет. Бәрі осы құрылғыда жұмыс істейді — бейне ешқайда жіберілмейді.",accept:"Камераны қосу"},errors:{denied:"Камераға рұқсат берілмеді. Браузер параметрлерінде қосыңыз.",noDevice:"Бұл құрылғыда камера табылмады.",unknown:"Камераны қосу мүмкін болмады."}},fruitNinja:{title:"Fruit Ninja",subtitle:"Ұшып келе жатқан жемістерді қолыңмен турай. 60 секундтық раунд, 3 өмір.",cardDescription:"Қолыңды сермеп, экрандағы жемістерді тура — бірақ бомбадан сақтан! Қуатты 60 секундтық сергіту.",tagGame:"Ойын",start:"Бастау",stop:"Тоқтату",playing:"Турап жатырмыз!",playAgain:"Қайта ойнау",requesting:"Камера сұралуда…",loadingModel:"Қол моделі жүктелуде… (~6МБ, тек алғашқы рет)",modelError:"Модельді жүктеу мүмкін болмады. Желіні тексеріп, бетті жаңартыңыз.",introTitle:"Жемістерді тура!",introBody:"Камера қолыңды көретіндей кері тұрып, қолыңмен сермеп жемістерді тура. Бомбаға тиме!",hintIdle:"«Бастау» басып, қолыңмен жемістерді тура.",hintPlaying:"Жемістерді тура, бомбадан сақтан!",lives:"Өмірлер",gameOver:"Уақыт бітті!",newBest:"Жаңа рекорд!",best:"Рекорд: {{best}}",consent:{title:"Камераны пайдалану керек пе?",body:"Камера қолыңды бақылау үшін қажет. Бәрі осы құрылғыда жұмыс істейді — бейне ешқайда жіберілмейді.",accept:"Камераны қосу"},errors:{denied:"Камераға рұқсат берілмеді. Браузер параметрÐ
399»ÐµÑ€Ñ–нде қосыңыз.",noDevice:"Бұл құрылғыда камера табылмады.",unknown:"Камераны қосу мүмкін болмады."}},statueFreeze:{title:"Қатып қал",subtitle:"Музыка ойнайды, балалар билейді — музыка тоқтады, қатып қал! Камера қозғалғанды көреді.",cardDescription:"Классикалық «музыкалық мүсіндер» ойыны CV-төреші арқылы. Кадрда 6 балаға дейін.",tagMultiplayer:"6 балаға дейін",freeze:"ҚАТЫП ҚАЛ!",enableCamera:"Камераны қосу",startRound:"Раундты бастау",nextRound:"Келесі раунд",cancelRound:"Болдырмау",stop:"Тоқтату",playing:"Бие!",judging:"Тексеруде…",requesting:"Камера сұралуда…",loadingModel:"Тану моделі жүктелуде… (~6МБ, тек алғашқы рет)",modelError:"Модельді жүктеу мүмкін болмады. Желіні тексеріп, бетті жаңартыңыз.",silentMode:"(музыка әзірге жоқ — үнсіз режим)",introTitle:"Қатып қал",introBody:"Балаларды камера алдына қойып, «Қосу» басыңыз да раунд бастаңыз. Музыка тоқтаған кезде қозғалғандар — ойыннан шығады!",hintIdle:"Бастау үшін камераны қосыңыз.",hintReady:"{{round}}-раунд дайын. Музыканы қосу үшін «Старт» басыңыз.",hintPlaying:"Музыка ойнап тұр — тоқтағанша билеңдер!",hintFreeze:"Қозғалма!",hintResults:"{{still}} қатып қалды · {{moved}} қозғалды",consent:{title:"Камераны пайдалану керек пе?",body:"Камера кімнің қозғалғанын көру үшін қажет. Бәрі осы құрылғыда жұмыс істейді — бейне ешқайда жіберілмейді.",accept:"Камераны қосу"},errors:{denied:"Камераға рұқсат берілмеді. Браузер параметрлерінде қосыңыз.",noDevice:"Бұл құрылғыда камера табылмады.",unknown:"Камераны қосу мүмкін болмады."}},balloonPop:{title:"Шарларды жару",cardDescription:"Қолыңды сермеп, шарларды жар."},reactionDash:{title:"Реакция жарысы",cardDescription:"Экрандағы белгі шыға салысымен қимылда."},jumpJack:{title:"Секіріп жаттығу",cardDescription:"Секіріп, қол-аяғыңды жай — ырғаққа сай орында."},zonePunch:{title:"Аймақты ұр",cardDescription:"Жарқыраған аймақты сермеп ұр."},squatCount:{title:"Отырып-тұру",cardDescription:"Төмен → жоғары сериясын сана."},balanceHold:{title:"Тепе-теңдік",cardDescription:"Т-позаны ұстап тұр."},breathBubble:{title:"Тыныш тыныс",cardDescription:"Бағытталған тыныс циклі."},colorRush:{title:"Түс жарысы",cardDescription:"Түске тез бас."},memoryFlash:{title:"Жад жарқылы",cardDescription:"Ретті есте сақта да қайтала."},rhythmTap:{title:"Ритм соққысы",cardDescription:"Соққыда бас — ритмді ұста."},stroop:{title:"Струп сынағы",cardDescription:"Сөзге қарама — сия түсін таңда."},numberOrder:{title:"Сан реті",cardDescription:"1 → 2 → 3… ретімен бас."},mathPop:{title:"Математика жарылысы",cardDescription:"Жылдам +, × есептерін шеш."},redLight:{title:"Бағдаршам",cardDescription:"Жасылда қозғал, қызылда тоқта."},bubbleWrap:{title:"Көпіршік жару",cardDescription:"Стресті жар — бәрін жарып шық."},oddOne:{title:"Басқасын тап",cardDescription:"Бөтен эмодзиді тап."},humanBody:{title:"Адам денесін зерттеу",description:"Интерактивті анатомия — ағза жүйелерін қосу/өшіру және диагноз қою режимі.",subt
399itle:"Адам денесін зерттеңіз — жүйелерді ауыстырып, ағзаларды басыңыз",layersTitle:"Дене жүйелері",howToUse:"Қалай қолдану",tip1:"Дене жүйелерін қосып/өшіріп, әр түрлі қабаттарды көріңіз",tip2:"Кез келген ағзаны басып, оның атауы, қызметі және қызық фактілерін көріңіз",tip3:"Интерактивті тапсырма үшін Диагноз режиміне ауысыңыз",controls:{explore:"Зерттеу",diagnose:"Диагноз",reset:"Қалпына келтіру",submitDiagnosis:"Диагнозды жіберу",nextScenario:"Келесі жағдай"},layers:{skeletal:"Сүйек жүйесі",muscular:"Бұлшықет жүйесі",circulatory:"Қан айналым жүйесі",nervous:"Жүйке жүйесі",digestive:"Ас қорыту жүйесі",respiratory:"Тыныс алу жүйесі",urinary:"Зәр шығару жүйесі"},organInfo:{title:"Ағза туралы",function:"Қызметі",funFact:"Қызық факт",selectOrgan:"Мәліметтерді көру үшін ағзаны басыңыз"},organs:{skull:{name:"Бас сүйек",function:"Миды қорғайды және бет құрылымын қолдайды.",funFact:"Бас сүйек бір-бірімен біріккен 22 сүйектен тұрады."},clavicle:{name:"Бұғана сүйегі",function:"Қолды денеге жалғайды және иықты тұрақтандырады.",funFact:"Бұғана — адам денесінде ең жиі сынатын сүйек."},ribcage:{name:"Қабырға торы",function:"Жүрек пен өкпені қорғайды.",funFact:"Көпшілік адамдарда 12 жұп қабырға болады."},spine:{name:"Омыртқа",function:"Денені тірейді және жұлынды қорғайды.",funFact:"Таңертең сіз биіктау боласыз — дисктер күндіз қысылады."},scapula:{name:"Жауырын",function:"Қолды қозғайтын бұлшықеттерді бекітеді.",funFact:"Жауырынға 17 түрлі бұлшықет бекітілген."},pelvis:{name:"Жамбас",function:"Дененің жоғарғы бөлігінің салмағын көтереді.",funFact:"Жамбас — денедегі ең мықты сүйек құрылымдарының бірі."},femur:{name:"Сан сүйегі",function:"Денедегі ең ұзын және ең мықты сүйек.",funFact:"Сан сүйегі дене салмағынан 30 есе көп салмақ көтере алады."},tibia:{name:"Жіліншік сүйегі",function:"Тізе мен тобық арасында дене салмағын көтереді.",funFact:"Бұл сан сүйегінен кейінгі екінші ұзын сүйек."},humerus:{name:"Иық сүйегі",function:"Иықты шынтаққа жалғайтын жоғарғы қол сүйегі.",funFact:'"Күлкілі сүйек" сезімі иық сүйегі жанындағы шынтақ жүйкесінен болады.'},radius:{name:"Білек сүйектері",function:"Білек сүйектері білекті бұруға мүмкіндік береді.",funFact:"Шынтақ және кәрі жілік сүйектері алақанды төмен бұрғанда қиылысады."},deltoid:{name:"Дельта бұлшықеті",function:"Қолды барлық бағытта көтереді.",funFact:"Дельта бұлшықеті үшбұрыш тәрізді пішініне байланысты аталған."},pectorals:{name:"Кеуде бұлшықеттері",function:"Қолдарды қозғайды және тыныс алуға көмектеседі.",funFact:"Үлкен кеуде бұлшықеті — кеудедегі ең ірі бұлшықет."},biceps:{name:"Бицепс",function:"Қолды шынтақтан бүгеді.",funFact:"Бицепс «екі бас» дегенді білдіреді — оның екі бекіту нүÐ
399ºÑ‚есі бар."},triceps:{name:"Трицепс",function:"Қолды шынтақтан жазады — негізгі итеру бұлшықеті.",funFact:"Трицепс жоғарғы қол массасының үштен екісін құрайды."},trapezius:{name:"Трапеция бұлшықеті",function:"Жауырындарды қозғайды және тұрақтандырады, мойынды қолдайды.",funFact:"Трапеция — арқадағы ең кең бұлшықеттердің бірі."},abdominals:{name:"Құрсақ бұлшықеттері",function:"Дене корпусын тұрақтандырады және ішкі ағзаларды қорғайды.",funFact:"Барлық адамда пресс бар — көпшілігінде ол жасырын."},gluteus:{name:"Бөкселік бұлшықет",function:"Жамбас жазылуы үшін ең қуатты бұлшықет тобы.",funFact:"Үлкен бөкселік бұлшықет — адам денесіндегі ең ірі бұлшықет."},quadriceps:{name:"Төртбасты бұлшықет",function:"Тізені жазады, жүруге, жүгіруге көмектеседі.",funFact:"Төртбасты бұлшықет — денедегі ең күшті бұлшықет тобы."},hamstring:{name:"Сан артқы бұлшықеті",function:"Тізені бүгеді және жүру кезінде жамбасты жазады.",funFact:"Сан артқы бұлшықетінің жарақаты — ең жиі кездесетін спорт жарақаты."},calf:{name:"Балтыр бұлшықеті",function:"Аяқты итереді — жүру, жүгіру және секіру үшін қажет.",funFact:"Балтыр бұлшықеті дене салмағынан 3 есе көп күш түзе алады."},heart:{name:"Жүрек",function:"Қанды бүкіл дене бойынша айдайды.",funFact:"Жүрек тәулігіне шамамен 100 000 рет соғады."},aorta:{name:"Аорта",function:"Ең ірі артерия — жүректен денеге қан тасиды.",funFact:"Аортаның диаметрі бақша шлангі секілді."},venaCava:{name:"Қуыс вена",function:"Ең ірі вена — оттегісізденген қанды жүрекке қайтарады.",funFact:"Қуыс вена жүрекке қайтатын қанның 70%-ын тасиды."},carotid:{name:"Ұйқы артериясы",function:"Миға және басқа оттегіге бай қан жеткізеді.",funFact:"Мойыныңыздан ұйқы артериясының соғуын сезуге болады."},femoral:{name:"Сан артериясы",function:"Аяқтарға қан жеткізетін негізгі артерия.",funFact:"Сан артериясы — сандағы ең ірі артерия."},lungLeft:{name:"Сол өкпе",function:"Қандағы оттегі мен көмірқышқыл газын алмастырады.",funFact:"Сол өкпе жүрекке орын беру үшін сәл кішірек."},lungRight:{name:"Оң өкпе",function:"Қандағы оттегі мен көмірқышқыл газын алмастырады.",funFact:"Өкпе бетін жайсақ, ол теннис кортына тең."},trachea:{name:"Кеңірдек",function:"Ауаны тамақтан өкпеге тасиды.",funFact:"Кеңірдек С-тәрізді шеміршек сақиналармен нығайтылған."},bronchi:{name:"Бронхтар",function:"Кеңірдектен тарамдалып, әр өкпеге ауа жеткізеді.",funFact:"Оң бронх сол бронхқа қарағанда кеңірек және қысқарақ."},diaphragm:{name:"Диафрагма",function:"Тыныс алудың негізгі бұлшықеті.",funFact:"Ықылық — диафрагманың еріксіз спазмдарынан болады."},esophagus:{name:"Өңеш",function:"Тамақты тамақтан асқазанға тасиды.",funFact:"Тамақ асқазанға құламайды — бұлшықеттер оны итереді."},stomach:{name:"Асқазан",function:"Тамақты қышқыл мен ферменттермен ыдыратады.",funFact:"Асқазан әр 3-4 күнде жаңа қабықша шығарады."},liver:{name:"Бауыр",function:"Қанды сүзеді, өт шығарады, қоректік заттарды өңдейді.",funFact:"Бауыр 75% алынса да қайта қалпына келе алады."},gallbladder:{name:"Өт қабы",function:"Бауыр шығарған өтті сақтайды және шоғырландырады.",funFact:"Өт қабысыз өмір сүруге болады — өт тікелей бауырдан келеді."},pancreas:{name:"Ұйқы безі",function:"Ас қорыту ферменттерін шығарады және инсулинмен қан қантын реттейді.",funFact:"Ұйқы безі тәулігіне 1,5 литрге жуық ас қорыту сөлін шығарады."},smallIntestine:{name:"Жіңішке ішек",function:"Қорытылған тамақтан қоректік заттардың көпшілігін сіңіреді.",funFact:"Жіңішке ішектің ұзындығы шамамен 6 метр."},colon:{name:"Тоқ ішек",function:"Суды сіңіреді және қалдықтарды қатты түрге келтіреді.",funFact:"Тоқ ішекте ас қорыту мен иммунитетке көмектесетін триллиондаған бактериялар бар."},appendix:{name:"Аппендикс",function:"Ішек пайдалы бактерияларының қоймасы болуы мүмкін.",funFact:"Аппендикс ұзақ уақыт пайдасыз деп есептелді, бірақ ішек микрофлорасын қалпына келтіруге көмектесуі мүмкін."},brain:{name:"Ми",function:"Дененің барлық қызметтерін, ойлар мен эмоцияларды басқарады.",funFact:"Ми дененің жалпы энергиясының 20%-ын пайдаланады."},cerebellum:{name:"Мишық",function:"Қозғалысты, тепе-теңдікті және моторлық оқуды үйлестіреді.",funFact:"Мишықта мидың қалған бөлігіне қарағанда көбірек нейрон бар."},spinalCord:{name:"Жұлын",function:"Ми мен дене арасында жүйке сигналдарын тасиды.",funFact:"Жұлын 4-5 жаста өсуін тоқтатады."},nerves:{name:"Жүйке желісі",function:"Бүкіл дене бойынша электр сигналдарын тасиды.",funFact:"Жүйке импульстері секундына 120 метрге дейін жылдамдықпен жүреді."},kidneyLeft:{name:"Сол бүйрек",function:"Қанды сүзіп, қалдықтар мен артық сұйықтықты зәр ретінде шығарады.",funFact:"Әр бүйректе шамамен 1 миллион нефрон деп аталатын сүзгілеу бірліктері бар."},kidneyRight:{name:"Оң бүйрек",function:"Қанды сүзіп, қалдықтар мен артық сұйықтықты зәр ретінде шығарады.",funFact:"Оң бүйрек бауырға байланысты сол бүйректен сәл төмен орналасқан."},ureter:{name:"Несеп өзегі",function:"Зәрді бүйректен қуыққа тасиды.",funFact:"Несеп өзектері зәрді толқын тәрізді қысқарулармен итереді."},bladder:{name:"Қуық",function:"Зәрді организмнен шығарылғанға дейін сақтайды.",funFact:"Қуық толық болғанда 400-600 мл зәр сыйдыра алады."}},diagnose:{title:"Диагноз режимі",selectSymptoms:"Науқастың белгілерін таңдаңыз:",chooseDiagnosis:"Диагнозыңызды таңдаңыз:",correct:"Дұрыс! Жарайсыз!",incorrect:"Дұрыс емес.",symptoms:{chestPain:"Кеуде ауырсынуы",shortnessOfBreath:"Тыныс қысылуы",leftArmNumbness:"Сол қолдың жансыздануы",abdominalPain:"Іш ауырсынуы",nausea:"Жүрек айну",bloating:"Іш кебуі",headache:"Бас ауырсынуы",dizziness:"Бас айналуы",blurredVision:"Көздің бұлдырлауы",wheezing:"Сырылдау",tightChest:"Кеуденің қысылуы",frequentCoughing:"Жиі жөтелу",flankPain:"Бел мен бүйір ауырсынуы",painfulUrination:"Ауырсынумен зәр шығару",fever:"Қызба және дірілдеу",legPain:"Жаттығудан кейінгі аяқ ауырсынуы",swelling:"Сан аймағындағы ісіну",limitedMotion:"Қозғалыстың шектелуі"},scenarios:{chestPain:{title:"Кеуде ауырсынуы",description:"45 жастағы науқас кеуде ауырсынуы мен сол қолға таралатын ауырсынуды хабарлайды."},stomachAche:{title:"Іш ауырсынуы",description:"30 жастағы науқаста тұрақты жоғарғы іш ауырсынуы, жүрек айну және тамақтан кейін кебу бар."},headache:{title:"Қатты бас ауырсынуы",description:"25 жастағы студент қатты бас ауырсынуы, бас айналуы және кейде көздің бұлдырлауын сезінеді."},breathingDifficulty:{title:"Тыныс алу қиындығы",description:"12 жастағы балада, әсіресе жаттығу кезінде, сырылдау, кеуде қысылуы және жөтел қайталанады."},kidneyPain:{title:"Бүйрек ауырсынуы",description:"35 жастағы әйел бел мен бүйірдегі қатты ауырсыну, ауырсынумен зәр шығару және қызба мен дірілдеумен келді."},muscleInjury:{title:"Бұлшықет жарақаты",description:"20 жастағы спортшы спринттен кейін оң санда өткір ауырсынуды, ісінуді және тізені бүгу қиындығын хабарлайды."}},diagnoses:{heartAttack:{name:"Жүрек ұстамасы",explanation:"Сол қолға таралатын кеуде ауырсынуы — миоÐ
399ºÐ°Ñ€Ð´ инфарктысының классикалық белгісі."},pneumonia:{name:"Пневмония",explanation:"Пневмония кеуде ауырсынуы мен тыныс қысылуын тудырады, бірақ қол жансыздануын тудырмайды."},ribFracture:{name:"Қабырға сынығы",explanation:"Қабырға сынығы жергілікті ауырсыну тудырады, бірақ қолға немесе тыныс алуға әсер етпейді."},gastritis:{name:"Гастрит",explanation:"Гастрит — асқазан қабығының қабынуы, жоғарғы іш ауырсынуы, жүрек айну және кебу тудырады."},appendicitis:{name:"Аппендицит",explanation:"Аппендицит әдетте оң жақ төменгі іш ауырсынуын тудырады."},foodPoisoning:{name:"Тамақтан уланУ",explanation:"Тамақтан улану кенет құсу мен диарея тудырады, тұрақты ауырсыну емес."},migraine:{name:"Мигрень",explanation:"Мигрень соқпалы бас ауырсынуын, көру бұзылыстарын және бас айналуын тудырады."},concussion:{name:"Ми шайқалуы",explanation:"Ми шайқалуы бас жарақатын қажет етеді. Жарақатсыз қайталанатын бас ауырсынуы мигреньге сілтейді."},hypertension:{name:"Гипертензия",explanation:"Жоғары қан қысымы бас ауырсынуын тудыруы мүмкін, бірақ әдетте егде адамдарда."},asthma:{name:"Астма",explanation:"Жаттығу кезінде қайталанатын сырылдау, кеуде қысылуы және жөтел — балалардағы астманың белгілері."},bronchitis:{name:"Бронхит",explanation:"Бронхит әдетте бір реттік инфекция, жаттығумен байланысты қайталанбайды."},heartFailure:{name:"Жүрек жеткіліксіздігі",explanation:"Жүрек жеткіліксіздігі балаларда өте сирек кездеседі."},kidneyInfection:{name:"Бүйрек инфекциясы (пиелонефрит)",explanation:"Бел ауырсынуы, қызба, дірілдеу және ауырсынумен зәр шығару — бүйрек инфекциясының классикалық үштігі."},kidneyStone:{name:"Бүйрек тасы",explanation:"Бүйрек тастары қатты ауырсыну тудырады, бірақ әдетте қызбасыз. Ауырсыну толқындармен келеді."},uti:{name:"Зәр жолдарының инфекциясы",explanation:"ЗЖИ ауырсынумен зәр шығаруды тудырады, бірақ әдетте бел ауырсынуы мен жоғары температура болмайды."},muscleStrain:{name:"Бұлшықет созылуы (төртбасты)",explanation:"Спринт кезіндегі өткір ауырсыну, ісіну және шектелген қозғалыс — классикалық төртбасты бұлшықет созылуы."},fracture:{name:"Сан сүйегі сынығы",explanation:"Сан сүйегі сынығы үлкен күш қажет етеді және аяққа мүлдем тірелу мүмкін емес болады."},deepVeinThrombosis:{name:"Терең вена тромбозы",explanation:"ТВТ ісіну мен ауырсыну тудырады, бірақ бірте-бірте дамиды, жаттығу кезінде емес."}}}},physicsLab:{title:"Виртуалды физика зертханасы",description:"Сабақта көрсету үшін интерактивті 2D физика симуляциялары",subtitle:"Нақты уақыттағы 2D симуляциялармен физика тұжырымдамаларын зерттеңіз",pickSimulation:"Симуляцияны таңдаңыз",parameters:"ПараметрÐ
399»ÐµÑ€",readouts:"Көрсеткіштер",howToUse:"Қалай қолдану",tip1:"Бүйір панелінен симуляцияны таңдаңыз",tip2:"Жүгірткілер арқылы параметрлерді реттеңіз",tip3:"Анимацияны бастау үшін «Іске қосу» түймесін басыңыз",tip4:"Көрсеткіштердің нақты уақытта жаңаруын бақылаңыз",controls:{play:"Іске қосу",pause:"Кідірту",reset:"Қалпына келтіру",speed:"Жылдамдық"},simulations:{projectile:{name:"Снаряд қозғалысы",description:"Допты лақтырып, параболалық траекторияны бақылаңыз"},pendulum:{name:"Қарапайым маятник",description:"Тербелісті, периодты және энергия алмасуын бақылаңыз"},inclinedPlane:{name:"Көлбеу жазықтық",description:"Көлбеу жазықтықта блокқа әсер ететін күштерді зерттеңіз"},springOscillator:{name:"Серіппелі осциллятор",description:"Сөну және ығысу графигі бар масса-серіппе жүйесі"},freeFall:{name:"Еркін құлау",description:"Вакуум мен ауадағы заттардың құлауын салыстырыңыз"},collision:{name:"Соқтығыс",description:"Серпімді және серпімсіз соқтығыстар, импульстің сақталуы"},waveInterference:{name:"Толқын интерференциясы",description:"Екі көзден шыққан толқын интерференциясы"},buoyancy:{name:"Қалқымалылық (Архимед)",description:"Сұйықтықтағы заттың қалқуы немесе батуы"},lever:{name:"Иінтірек және айналу моменті",description:"Реттелетін массалар мен қашықтықтары бар таразы"},circularMotion:{name:"Шеңберлік қозғалыс",description:"Жіпке байланған зат, центрге тартқыш күш"}},params:{velocity:"Бастапқы жылдамдық",angle:"Лақтыру бұрышы",gravity:"Гравитация",length:"Маятник ұзындығы",mass:"Масса",damping:"Сөну",initialAngle:"Бастапқы бұрыш",rampAngle:"Көлбеу бұрышы",friction:"Үйкеліс коэффициенті",springConstant:"Серіппе қаттылығы",initialDisplacement:"Бастапқы ығысу",massA:"Масса A",massB:"Масса B",height:"Құлау биіктігі",airResistance:"Ауа кедергісі",dragCoefficient:"Кедергі коэффициенті",velocityA:"Жылдамдық A",velocityB:"Жылдамдық B",elasticCollision:"Серпімді соқтығыс",wavelength:"Толқын ұзындығы",separation:"Көздер арасы",amplitude:"Амплитуда",objectDensity:"Зат тығыздығы",fluidDensity:"Сұйықтық тығыздығы",objectSize:"Зат өлшемі",massLeft:"Сол жақ массасы",massRight:"Оң жақ массасы",distLeft:"Сол жақ қашықтығы",distRight:"Оң жақ қашықтығы",radius:"Радиус",angularVelocity:"Бұрыштық жылдамдық",tensionLimit:"Керілу шегі"},readoutLabels:{time:"Уақыт",maxHeight:"Макс. биіктік",range:"Қашықтық",flightTime:"Ұшу уақыты",currentVelocity:"Жылдамдық",positionX:"Орын X",positionY:"Орын Y",period:"Период",kineticEnergy:"Кинетикалық энергия",potentialEnergy:"Потенциалдық энергия",totalEnergy:"Толық энергия",currentAngle:"Бұрыш",acceleration:"Үдеу",position:"Орын",netForce:"Нәтижелік күш",normalForce:"Қалыпты реакция күші",frictionForce:"Үйкеліс күші",displacement:"Ығысу",frequency:"Жиілік",amplitude:"Амплитуда",velocityA:"Жылдамдық A",velocityB:"Жылдамдық B",heightA:"Биіктік A",heightB:"Биіктік B",timeDifference:"Уақыт айырмашылығы",momentumBefore:"Импульс (дейін)",momentumAfter:"Импульс (кейін)",keBefore:"КЭ (дейін)",keAfter:"КЭ (кейін)",wavelengthVal:"Толқын ұзындығы",separationVal:"Қашықтық",objectWeight:"Зат салмағы",buoyantForce:"Архимед күші",submergedFraction:"Батырылу",torqueLeft:"Сол жақ моменті",torqueRight:"Оң жақ моменті",netTorque:"Нәтижелік момент",balanced:"Тепе-теңдік",centripetalForce:"Центрге тартқыш күш",angularVelocityVal:"Бұрыштық жылдамдық",tensionStatus:"Керілу жағдайы"}},chemLab:{title:"Виртуалды химия зертханасы",description:"Сабақта көрсету үшін интерактивті 2D химия симуляциялары",
399subtitle:"Нақты уақыттағы 2D симуляциялармен химия тұжырымдамаларын зерттеңіз",pickSimulation:"Симуляцияны таңдаңыз",parameters:"Параметрлер",readouts:"Көрсеткіштер",howToUse:"Қалай қолдану",tip1:"Бүйір панелінен симуляцияны таңдаңыз",tip2:"Жүгірткілер арқылы параметрлерді реттеңіз",tip3:"Анимацияны бастау үшін «Іске қосу» түймесін басыңыз",tip4:"Көрсеткіштердің нақты уақытта жаңаруын бақылаңыз",controls:{play:"Іске қосу",pause:"Кідірту",reset:"Қалпына келтіру",speed:"Жылдамдық"},simulations:{gasLaws:{name:"Газ заңдары",description:"Контейнердегі анимациялық бөлшектер — PV=nRT зерттеңіз"},statesOfMatter:{name:"Заттың агрегаттық күйлері",description:"Фазалық ауысулар: қатты, сұйық, газ"},acidBase:{name:"Қышқыл-негіз / pH шкаласы",description:"Қышқыл мен негізді араластырып, pH мен түс өзгерісін бақылаңыз"},atomicStructure:{name:"Атом құрылысы",description:"1-18 элементтердің электрон қабықшаларын зерттеңіз"},reactionRate:{name:"Реакция жылдамдығы",description:"Температура мен концентрация соқтығыс жылдамдығына әсер етеді"}},params:{temperature:"Температура",volume:"Көлем",particleCount:"Бөлшектер саны",acidDrops:"Қышқыл тамшылары",baseDrops:"Негіз тамшылары",acidStrength:"Қышқыл күші",baseStrength:"Негіз күші",atomicNumber:"Атом нөмірі (Z)",concentration:"Концентрация",activationEnergy:"Активтендіру энергиясы"},readoutLabels:{time:"Уақыт",pressure:"Қысым",volume:"Көлем",temperature:"Температура",particles:"Бөлшектер",pvnrt:"PV/nRT",phase:"Фаза",avgSpeed:"Орта жылдамдық",phValue:"pH",hConcentration:"[H⁺]",ohConcentration:"[OH⁻]",solutionType:"Ерітінді түрі",acidDrops:"Қышқыл тамшылары",baseDrops:"Негіз тамшылары",element:"Элемент",atomicNumber:"Атом нөмірі",massNumber:"Масса саны",electronConfig:"Электрон конфигурациясы",valenceElectrons:"Валенттік электрондар",reactantsA:"Реагент A",reactantsB:"Реагент B",productsFormed:"Түзілген өнімдер",reactionRateVal:"Реакция жылдамдығы",collisions:"Сәтті соқтығыстар"}}},QF={title:"Сергіту сәті",description:"19 сергіту: камералы қозғалыс ойындары және камерасыз ми мен назар ойындары.",start:"Бастау",subscribeRequired:"Жазылу қажет",badgeCv:"CV",badgeNoCamera:"КАМЕРАСЫЗ"},YF={graded:"Жұмыс сәтті бағаланды",allGraded:"Барлық жұмыстар сәтті бағаланды",gradeWithAI:"AI бағалау",gradeAll:"Барлығын бағалау",ungraded:"Тексерілмеген",quotaLabel:"AI бағалау лимиті",quotaExhausted:"AI бағалау лимиті аяқталды. Тарифті жаңартыңыз.",upgradePlan:"Тарифті жаңарту",assignmentsLocked:"Тапсырмалар тек ақылы тарифтерде қолжетімді",createAssignment:"Тапсырма құру"},JF={quotaLabel:"AI бағалау лимиті",quotaExhausted:"AI бағалау лимиті аяқталды. Тарифті жаңартыңыз."},XF={title:"Презентация V2",beta:"БЕТА",createNew:"Жаңа құру",noPresentation:"Презентация жоқ",noPresentationDesc:"Бірінші V2 презентацияңызды жасаңыз",deleteConfirm:"Бұл презентацияны жойғыңыз келетініне сенімдісіз бе? Бұл әрекетті кері қайтара алмайсыз.",search:"Презентация іздеу...",slides:"слайд",delete:"Жою",cancel:"Болдырмау",generateOutline:"Жоспар құру",viewSample:"Үлгі көру",outline:"Жоспар",back:"Артқа",regenerate:"Қайта жасау",generate:"Презентация құру",addSlide:"Слайд қосу",addPoint:"Пункт қосу",generating:"AI презентация жасап жатыр...",created:"Презентация жасалды!",createAnother:"Тағы бірін жасау",viewPresentation:"Презентацияны көру",present:"Көрсету",exportPptx:"PPTX жүктеу",exportPdf:"PDF жүктеу",previous:"Алдыңғы",next:"Келесі"},ZF={title:"Telegram бот",description:"Zerde Telegram ботын аккаунтыңызбен байланыстырыңыз",connect:"Telegram-ды байланыстыру",connectHint:"Ботқа хабарлама жіберіп, аккаунтыңызды байланыстырыңыз. Код 5 минут жарамды.",openBot:"Telegram-ды ашу",openInTelegram:"Telegram-да ашыңыз",scanOrOpen:"QR кодты телефонмен сканерлеңіз немесе төмендегі батырманы басыңыз",qrAlt:"Telegram байланыстыру QR коды",waitingConfirm:"Telegram-да растау күтілуде…",codeExpired:"Кодтың мерзімі өтті. Жаңа код алу үшін қайталап көріңіз.",tryAgain:"Қайта байлау",connected:"Байланыстырылған ✅",disconnect:"Ажырату",linkedAt:"Байланыстырылған: {{date}}",yourAccount:"сіздің аккаунтыңыз",alreadyLinked:"Telegram байланыстырылған: {{username}}"},e3={title:"Менің мектебім",noSchoolTitle:"Әзірге мектеп жоқ",noSchoolHint:"Сіз мектепке мүше емессіз. Егер директор сізді email арқылы қосса, келесі кіргенде автоматты түрде қосыласыз.",notFound:"Мектеп табылмады",noCity:"Қала көрсетілмеген",noPlan:"Тариф әлі тағайындалмаған",info:"Мектеп туралы ақпарат",infoHint:"Мектептің жария профиль бетінде көрсетіледі.",infoSaved:"Мектеп туралы ақпарат сақталды",contactEmail:"Байланыс email-і",websiteUrl:"Веб-сайт",logoUrl:"Логотип URL",foundedYear:"Құрылған жылы",address:"Мекенжайы",description:"Сипаттама",location:"Орналасқан жері",locationHint:"Белгіні қою үшін картаның кез келген жеріне басыңыз немесе оны сүйреңіз — төмендегі координаттар автоматты түрде жаңарады. Оларды қолмен де енгізуге болады.",latitude:"Ендік",longitude:"Бойлық",statusActive:"Белсенді",statusInactive:"Белсенді емес",statusRevoked:"Күші жойылған",roleDirector:"Директор",roleTeacher:"Мұғалім",currentPlan:"Ағымдағы тариф",plan:"Мектеп тарифі",planHint:"Тарифті өзгерту қазір белсенді барлық мүшеге бірден қолданылады.",selectPlan:"Тарифті таңдаңыз",assignPlan:"Тарифті тағайындау",planAssigned:"Тариф {{count}} мүшеге қолданылды",addTeacher:"Мұғалім қосу",addTeacherHint:"Email арқылы қосыңыз — аккаунты бұрыннан бар болса, қолжетімділік бірден пайда болады.",teacherEmailPlaceholder:"[email protected]",sendInvite:"Мұғалімді қосу",teacherAdded:"✅ {{email}} қосылды — қолжетімділік бар.",teacherPending:"{{email}} үшін Zerde аккаунты әлі жоқ — ол осы email-мен тіркелген сәтте автоматты түрде қосылады.",members:"Мүшелер",membersHint:"Осы мектепке бұрын-соңды қосылған барлық адамдар — белсенді және күші жойылған.",member:"Мүше",role:"Рөлі",status:"Күйі",joinedAt:"Қосылған күні",noMembers:"Әзірге мүше жоқ",removeMemberConfirm:'"{{name}}" мектептен шығарылсын ба? Мектеп берген тарифі де күшін жояды.',makeDirector:"Директор ету",makeTeacher:"Мұғалім ету",pending:"Күтуде",noPending:"Күтудегі қосулар жоқ — қосылған барлық адамдардың аккаунты бар.",activated:"Мектеп белсендірілді",deactivated:"Мектеп белсенді емес етілді",memberRemoved:"Мүше шығарылды",editProfile:"Профильді өңдеу",memberPhoto:"Фото URL",memberSubject:"Пән",memberBio:"Өзі туралы",analytics:"Осы айдағы қолданыс",noAnalytics:"Бұл айда әлі қолданыс тіркелмеген",bestStudents:"Үздік оқушылар",bestStudentsHint:"Мектеп профилінде үздік оқушыларды көрсетіңіз.",addStudent:"Оқушы қосу",editStudent:"Оқушыны өңдеу",studentName:"Аты-жөні",studentAchievement:"Жетістігі",displayOrder:"Көрсету реті",removeStudentConfirm:'"{{name}}" үздік оқушылардан алынсын ба?',noStudents:"Әзірге үздік оқушы жоқ",dayOfWeek:"Күні",startTime:"Басталу уақыты",endTime:"Аяқталу уақыты",entryTitle:"Атауы",room:"Кабинет",teacher:"Мұғалім",noTeacher:"Мұғалім тағайындалмаған",addScheduleEntry:"Сабақ қосу",editScheduleEntry:"Сабақты өңдеу",removeScheduleEntryConfirm:'"{{title}}
399" сабақ кестесінен алынсын ба?',schedule:{title:"Апталық сабақ кестесі",hint:"Сынып апталығы — сабақ қосу үшін бос ұяшықтағы + белгісін басыңыз.",pickClassHint:"Апталық кестесін көру немесе өзгерту үшін сыныпты таңдаңыз.",empty:"Әзірге сабақ кестесі жоқ",days:{mon:"Дүйсенбі",tue:"Сейсенбі",wed:"Сәрсенбі",thu:"Бейсенбі",fri:"Жұма",sat:"Сенбі",sun:"Жексенбі"}},subjects:"Пәндер",subjectsHint:"Бұл мектеп қандай пәндерді оқытады — сабақ кестесіндегі пән таңдауын қамтамасыз етеді.",subjectsSaved:"Пәндер сақталды",useAllSubjects:"Платформаның барлық пәндерін пайдалану",useAllSubjectsHint:"Белгілі бір пәндер жиынтығын таңдау үшін өшіріңіз.",emptySelectionHint:"Ешнәрсе белгіленбесе, платформаның барлық пәндері қайта пайдаланылады.",customSubjects:"Өз пәндері",customSubjectsHint:"Платформа каталогында жоқ мектепке тән пәндер.",noCustomSubjects:"Әзірге өз пәндері жоқ",customSubjectPlaceholder:"мысалы, Робототехника",addCustomSubject:"Пән қосу",removeCustomSubjectConfirm:'"{{name}}" алынсын ба?',cabinets:"Кабинеттер",cabinetsHint:"Мектеп сабақ өтетін бөлмелер — сабақ кестесін құрастыруда пайдаланылады.",cabinetNumber:"Нөмірі",cabinetTitle:"Атауы (міндетті емес)",cabinetTitlePlaceholder:"мысалы, Химия кабинеті",addCabinet:"Кабинет қосу",noCabinets:"Әзірге кабинет жоқ",removeCabinetConfirm:'"{{name}}" алынсын ба?',classes:"Сыныптар",classesHint:"Сынып/топ (мысалы, «7А») — сабақ кестесін құрастыруда пайдаланылады.",classNumber:"Нөмірі",classTitle:"Атауы (міндетті емес)",classTitlePlaceholder:"мысалы, Физика-математика бағыты",addClass:"Сынып қосу",noClasses:"Әзірге сынып жоқ",noClassesForSchedule:"Әзірге сынып жоқ — алдымен «Сыныптар» бөлімінде сынып қосыңыз.",removeClassConfirm:'"{{name}}" алынсын ба?',manageClassHint:"Осы сыныптың қосылу коды және құрамы.",joinCode:"Қосылу коды",generateJoinCode:"Қосылу кодын жасау",regenerateJoinCode:"Кодты жаңарту",regenerateJoinCodeConfirm:"Жаңа код беріледі — ескісі бірден жұмыс істемей қалады, тіпті оны бұрыннан білетін оқушылар үшін де.",joinCodeHiddenHint:"Бұл терезені жапқаннан кейін код көрсетілмейді — оны қайта көру және бөлісу үшін кез келген уақытта жаңасын жасаңыз.",classRoster:"Сынып құрамы",noRosterStudents:"Бұл сыныптың құрамында әзірге оқушы жоқ",subject:"Пән",noSubject:"Пәнсіз",noCabinet:"Кабинетсіз"},t3={title:"3D модельдер",subtitle:"Сабақтарыңызға арналған интерактивті 3D модельдер — айналдырыңыз, жақындатыңыз, зерттеңіз",selectSubject:"Модельдерін көру үшін пәнді таңдаңыз",noSubjects:"Әзірге ешбір пәнде 3D модель жоқ",noModels:"Бұл пән үшін әзірге 3D модельдер жоқ",searchPlaceholder:"Модельдерді іздеу...",noSearchResults:"Сұранысқа сәйкес модель табылмады",poweredBy:"Sketchfab негізінде жұмыс істейді",viewOnSketchfab:"Sketchfab-та ашу",modelBy:"Модель авторы: {{name}}",attributionPrefix:"Модель авторы:"},n3={common:bF,nav:wF,auth:xF,landing:SF,dashboard:CF,qmj:PF,presentations:EF,videos:kF,marketplace:TF,admin:AF,profile:RF,grades:_F,errors:DF,footer:jF,termsPage:NF,privacyPage:OF,subscription:MF,quizzes:LF,sessions:IF,status:FF,documents:UF,assessments:$F,bloom:zF,scientificProjects:VF,authorPrograms:HF,avatar:qF,conversation:BF,agent:WF,classroom:GF,helpers:KF,brainBreaksList:QF,assignments:YF,homeworkCheck:JF,presentationsV2:XF,telegram:ZF,school:e3,models3d:t3},r3={loading:"Загрузка...",error:"Ошибка",success:"Успешно",save:"Сохранить",saving:"Сохранение...",saved:"Сохранено",cancel:"Отмена",export:"Экспорт",delete:"Удалить",edit:"Редактировать",create:"Создать",search:"Поиск",clear:"Очистить",filter:"Фильтр",sort:"Сортировка",back:"Назад",share:"Поделиться",next:"Далее",previous:"Назад",submit:"Отправить",confirm:"Подтвердить",close:"Закрыть",view:"Просмотр",download:"Скачать",upload:"Загрузить",noData:"Нет данных",required:"Обязательно",optional:"Необязательно",all:"Все",yes:"Да",no:"Нет",or:"или",manage:"Управление",copied:"Скопировано",retry:"Повторить",new:"Новый",actions:"Действия",add:"Добавить",minutes:"минут",min:"мин",preview:"Предпросмотр",generating:"Генерация...",showLess:"Показать меньше",showMore:"Показать больше",questions:"вопросов",creating:"Создание...",true:"Верно",false:"Неверно",typeMessage:"Введите сообщение...",aiThinking:"ИИ думает...",description:"Описание",theme:{light:"Светлая",dark:"Тёмная",system:"Системная",toggleTheme:"Сменить тему"}},o3={home:"Главная",dashboard:"Панель управления",qmj:"КСП",presentations:"Презентации",videos:"Видео",quizzes:"Викторины",games:"Игры",marketplace:"МагаÐ
399·Ð¸Ð½",profile:"Профиль",admin:"Админ",logout:"Выйти",login:"Войти",subscription:"Подписка",tools:"Инструменты",documents:"Документы",avatar:"AI Аватар",classrooms:"Классы",helpers:"Помощники",arGlobe:"AR Географический глобус",telegram:"Telegram бот",school:"Моя школа",schoolTeachers:"Учителя",schoolStudents:"Лучшие ученики",schoolAdministration:"Администрация школы",schoolClasses:"Классы",schoolSubjects:"Предметы",schoolCabinets:"Кабинеты",schoolSchedule:"Расписание"},i3={login:"Вход",logout:"Выход",phoneNumber:"Номер телефона",enterPhone:"Введите номер телефона",sendOtp:"Отправить код",sending:"Отправка...",otpSent:"Код отправлен",enterOtp:"Введите код из WhatsApp",verifyOtp:"Подтвердить код",invalidOtp:"Неверный код",otpExpired:"Код истёк",resendOtp:"Отправить повторно",welcomeBack:"С возвращением!",termsAgreement:"Продолжая, вы соглашаетесь с нашими Условиями использования и Политикой конфиденциальности"},s3={hero:{title:"AI платформа для учителей Казахстана",subtitle:"Создавайте планы уроков, презентации и видео - всё на казахском языке",cta:"Начать бесплатно",secondaryCta:"Узнать больше"},features:{title:"Возможности",qmj:{title:"Генерация КСП",description:"Создавайте планы уроков за несколько минут с помощью AI"},presentations:{title:"Презентации",description:"Автоматическое создание профессиональных презентаций"},videos:{title:"Видео контент",description:"Создавайте обучающие видео с помощью AI"},marketplace:{title:"Учебные материалы",description:"Покупайте готовые материалы или продавайте свои"}},pricing:{title:"Тарифы",free:{title:"Бесплатный",price:"₸0",period:"месяц",features:["5 генераций КСП","3 презентации","Доступ к магазину"]},basic:{title:"Базовый",price:"₸2,990",period:"месяц",features:["30 генераций КСП","20 презентаций","5 видео","Продажа материалов"]},pro:{title:"PRO",price:"₸5,990",period:"месяц",features:["Безлимит КСП","Безлимит презентаций","20 видео","Приоритетная поддержка"]}},testimonials:{title:"Отзывы пользователей"},cta:{title:"Начните сегодня",description:"Присоединяйтесь к тысячам учителей",button:"Бесплатная регистрация"}},a3={welcome:"Добро пожаловать",overview:"Обзор",usageOverview:"Обзор использования",stats:{qmjGenerated:"Создано КСП",presentationsCreated:"Презентаций",videosCreated:"Видео",walletBalance:"Баланс кошелька"},recentActivity:"Последняя активность",quickActions:"Быстрые действия",subscription:{title:"Подписка",current:"Текущий тариф",expires:"Истекает",upgrade:"Улучшить",remaining:"Осталось"},explore3d:"Исследуйте в 3D"},l3={title:"Краткосрочный план (КСП)",list:"Все КСП",create:"Создать КСП",generate:"Сгенерировать КСП",form:{topic:"Тема урока",topicPlaceholder:"Например: Биография Абая Кунанбаева",subject:"Предмет",grade:"Класс",duration:"Длительность (минуты)",quarter:"Четверть",lessonNumber:"Номер урока",lessonType:"Тип урока",language:"Язык генерации"},lessonTypes:{standard:"Стандартный",interactive:"Интерактивный",project:"Проектный",assessment:"Оценочный",review:"Повторение"},sections:{objectives:"Цели урока",materials:"Необходимые материалы",introduction:"Введение",mainActivity:"Основная часть",conclusion:"Заключение",assessment:"Оценивание",homework:"Домашнее задание"},generating:"Генерация КСП...",generated:"КСП успешно создан",limitReached:"Достигнут лимит генераций",gradeUnit:"класс",actions:{edit:"Редактировать"},presentation:{create:"Создать презентацию",open:"Открыть презентацию",generating:"Создание...",startingGeneration:"Создание презентации...",willNotify:"Уведомим когда будет готово.",successTitle:"Презентация готова!",successDescription:"Ваша презентация успешно создана.",checkList:"Посмотрите список презентаций.",openPresentation:"Открыть",errorTitle:"Произошла ошибка",genericError:"Не удалось создать презентацию.",timeout:"В
399ремя генерации истекло.",submitError:"Не удалось запустить генерацию."}},c3={title:"Открытый урок",list:"Все открытые уроки",create:"Создать открытый урок",generate:"Сгенерировать открытый урок",generating:"Генерация открытого урока...",generated:"Открытый урок успешно создан",presentationSaved:"Презентация сохранена в урок",deleteConfirm:"Вы уверены, что хотите удалить этот урок? Это действие нельзя отменить.",form:{topic:"Тема урока",topicPlaceholder:"Например: Циклы в Python: for и while",grade:"Класс",subject:"Предмет",studyPurpose:"Цель обучения (ОБ)",studyPurposePlaceholder:"Например: 7.2.3.1 Понимать и применять циклические алгоритмы",lessonPurpose:"Цель урока (SMART)",lessonPurposePlaceholder:"Например: Учащиеся сравнят циклы for и while и решат 3 задачи"},limitReached:"Достигнут лимит генераций.",upgradePrompt:"Обновите план для большего количества генераций.",thisMonth:"в этом месяце",remaining:"осталось",progress:{starting:"Запуск генерации...",analyzing:"Анализ данных...",creatingPlan:"Создание плана урока...",generatingContent:"Генерация контента...",preparingPresentation:"Подготовка презентации...",finalizing:"Завершение...",almostDone:"Почти готово..."},editPresentation:"Редактировать презентацию",unsavedChanges:"У вас есть несохраненные изменения. Вы уверены, что хотите отменить?",tabs:{plan:"План",presentation:"Презентация",materials:"Материалы",video:"Видео"},materials:"Материалы",noMaterials:"Материалы отсутствуют",planContent:"План урока",editPlan:"Редактировать план",planContentPlaceholder:"Введите содержание плана урока здесь...",qmjInfo:"Информация о КМЖ",qmjTitle:"Название",viewQMJ:"Просмотреть КМЖ",noSlides:"В презентации нет слайдов",slides:"Слайды",video:"Видео",videoTitle:"Название",viewVideo:"Просмотреть видео",export:{preparing:"Подготовка...",failed:"Экспорт не удался",plan:"Экспорт плана",presentation:"Экспорт презентации",all:"Скачать все материалы",word:"Word (.docx)",pdf:"PDF (.pdf)",pptx:"PowerPoint (.pptx)",exportingPlan:"Экспорт плана...",exportingPresentation:"Экспорт презентации..."},noPresentation:"У вас нет презентации",noPresentationDescription:"Нажмите кнопку ниже, чтобы создать презентацию для этого урока",createPresentation:"Создать презентацию"},u3={title:"Презентации",list:"Все презентации",create:"Создать презентацию",form:{title:"Название",titlePlaceholder:"Название презентации",outline:"План",outlinePlaceholder:"Структура презентации",style:"Стиль",content:"Содержание"},styles:{professional:"Профессиональный",creative:"Творческий",minimalist:"Минималистичный",educational:"Образовательный",corporate:"Корпоративный"},noSlides:"В этой презентации нет слайдов",detail:{exit:"Выход",navigate:"Навигация",showSidebar:"Показать панель",hideSidebar:"Скрыть панель",unsavedChanges:"Несохранённые изменения",saved:"Сохранено!",cancel:"Отмена",save:"Сохранить",edit:"Редактировать",download:"Скачать",exporting:"Экспорт...",exportingTitle:"Экспорт презентации",preparingExport:"Подготовка к экспорту...",downloadComplete:"Загрузка завершена!",exportFailed:"Ошибка экспорта. Попробуйте снова.",slidesCount:"{{count}} слайдов",addSlide:"Добавить слайд",duplicate:"Дублировать",editModeHint:"Режим редактирования — нажмите на текст для редактирования, используйте панель для управления слайдами",cancelConfirm:"У вас есть несохранённые изменения. Вы уверены, что хотите отменить?",powerpoint:"PowerPoint",pptxFormat:"формат .pptx",pdfDocument:"PDF документ",pdfFormat:"формат .pdf",present:"Показ"},generator:{pageTitle:"Создайте презентацию с ИИ",pageSubtitle:"Опишите тему, и AI создаст профессиональную презентацию за минуту",topicPlaceholder:"Например: История независимости Казахстана...",slides:"слайдов",generateOutline:"Создать структуру",generating:"Генерация...",exampleTopics:"Примеры тем",moreExamples:"Ещё примеры",back:"Назад",regenerate:"Перегенерировать",generate:"Сгенерировать",structure:"Структура презентации",dragHint:"перетащите для изменения порядка",presentationName:"Название презентации",addSlide:"Добавить слайд",addPoint:"Добавить пункт",settings:"Настройки",textDensity:"Плотность текста",textDensityHint:"Количество текста на слайде",density:{minimal:"Минимум",brief:"Кратко",detailed:"Подробно",extensive:"Обширно"},theme:"Тема оформления",preview:"Предпросмотр",creatingPresentation:"Создаём вашу презентацию",slideOf:"Слайд {{current}} из {{total}}:",progress:"Прогресс",generatingNow:"Генерируется...",completedSlides:"Готовые слайды",cancel:"Отменить",presentationReady:"Презентация готова!",slidesCreated:'Создано {{count}} слайдов по теме "{{topic}}"',createAnother:"Создать ещё",openPresentation:"Открыть презентацию",newSlide:"Новый слайд",keyPoint1:"Ключевой пункт 1",keyPoint2:"Ключевой пункт 2",newPoint:"Новый пункт",examples:{abai:"Жизнь и творчество Абая Кунанбаева",independence:"История независимости Казахстана",nature:"Природа и экология Казахстана",math:"Квадратные уравнения в алгебре",physics:"Законы Ньютона и основы механики",chemistry:"Периодическая система химических элементов",biology:"Строение организма человека",geography:"Географическое положение Казахстана",literature:"Творчество Мухтара Ауэзова"},visualMedia:{title:"Визуальные медиа",more:"Ещё",theme:"Тема",themeDescription:"Используйте одну из популярных тем ниже или просмотрите больше",imageSource:"Источник изображений",imageSourceAi:"AI изображения",imageSourceUnsplash:"Стоковые фото",imageSourceNone:"Без изображений",aiImageModel:"AI модель для изображений",aiModelAuto:"Автовыбор",aiModelDalle:"DALL-E 3",aiModelMidjourney:"Midjourney",aiModelStable:"Stable Diffusion",imageArtStyle:"Стиль изображений",additionalKeywords:"Дополнительные ключевые слова",keywordsDescription:"Добавьте ключевые слова для поддержания единого стиля изображений",addKeywordPlaceholder:"Добавить ключевое слово...",previewTitle:"Название презентации",previewKeyPoint1:"Ключевой пункт один",previewKeyPoint2:"Ключевой пункт два",previewKeyPoint3:"Ключевой пункт три",previewImageLabel:"+ Изображение",aiWriting:"AI пишет контент...",slideNumber:"Слайд {{number}}",themes:{midnightAurora:"Полуночное сияние",oceanBreeze:"Океанский бриз",sunsetGlow:"Закатное сияние",forestDeep:"Глубокий лес",arcticSnow:"Арктический снег",charcoalElite:"Угольный элит",royalPurple:"Королевский фиолетовый",goldenHour:"Золотой час",nordicFrost:"Северный иней"}}
399,stages:{analyzing:"Анализируем тему...",structuring:"Создаём структуру...",writing:"Пишем контент...",images:"Генерируем изображения...",finalizing:"Завершаем..."},useBookSource:"Получить информацию из учебника",useBookSourceHint:"Поиск соответствующего контента в учебниках",suggestedThemes:"Рекомендуемые темы",noSuggestedThemes:"Рекомендуемых тем не найдено",selectedThemesCount:"Выбрано {{count}} тем",enterTopicForSuggestions:"Введите тему ниже, чтобы получить рекомендуемые темы"}},d3={title:"Видео",list:"Все видео",create:"Создать видео",generateOutline:"Создать план",generateVideo:"Сгенерировать видео",form:{topic:"Тема",topicPlaceholder:"Тема видео",duration:"Длительность (минуты)",language:"Язык"},status:{pending:"Ожидание",generating_outline:"Создание плана",generating_video:"Создание видео",processing:"Обработка",completed:"Готово",failed:"Ошибка"},progress:"Прогресс"}
399,f3={title:"Магазин учебных материалов",browse:"Просмотр материалов",myMaterials:"Мои материалы",upload:"Загрузить материал",tabs:{bundled:"Комплекты",individual:"Отдельные"},qmjCount:"Количество КТП",subject:"Предмет",allSubjects:"Все",viewSample:"Посмотреть пример",noMaterials:"Материалы не найдены",tryDifferentFilters:"Попробуйте другие фильтры",filters:{subject:"Предмет",grade:"Класс",price:"Цена",sortBy:"Сортировка"},material:{price:"Цена",downloads:"Скачиваний",seller:"Продавец",buy:"Купить",preview:"Предпросмотр",hot:"Популярное"},seller:{dashboard:"Панель продавца",earnings:"Заработок",sales:"Продажи",uploadNew:"Загрузить новый материал"},purchase:{confirm:"Подтвердите покупку",success:"Покупка успешна",insufficientFunds:"Недостаточно средств"}},p3={title:"Админ",subtitle:"Панель управления",goToMainApp:"Перейти в основное приложение",dashboard:"Панель управления",overview:"Обзор системы",quickActions:"Быстрые действия",platformSummary:"Сводка платформы",platformSummaryDescription:"Ключевые показатели",stats:{totalUsers:"Всего пользователей",activeSubscriptions:"Активные подписки",totalRevenue:"Общий доход"},subjects:{title:"Предметы",description:"Управление учебными предметами",add:"Добавить предмет",addDescription:"Создать новый учебный предмет",edit:"Редактировать предмет",editDescription:"Обновить информацию о предмете",delete:"Удалить предмет",deleteConfirm:'Вы уверены, что хотите удалить "{{name}}"? Это действие нельзя отменить.',list:"Все предметы",total:"предметов",noSubjects:"Предметы не найдены",created:"Предмет успешно создан",updated:"Предмет успешно обновлён",deleted:"Предмет успешно удалён",form:{name:"Название",namePlaceholder:"Введите название предмета",description:"Описание",descriptionPlaceholder:"Введите описание предмета (необязательно)"}},subscriptions:{title:"Тарифные планы",description:"Управление тарифными планами",add:"Добавить тариф",edit:"Редактировать тариф"},materials:{title:"Управление материалами",description:"Проверка материалов",review:"Проверка",approve:"Одобрить",reject:"Отклонить"},users:{title:"Пользователи",description:"Управление пользователями и правами доступа",searchPlaceholder:"Поиск по имени или телефону...",noName:"Без имени",noUsers:"Пользователи не найдены",usersCount:"пользователей",admins:"Админы",regularUsers:"Пользователи",admin:"Админ",user:"Пользователь",name:"Имя",phone:"Телефон",status:"Статус",generations:"Генерации",wallet:"Кошелёк",joined:"Дата регистрации",video:"Видео",pres:"Презент",editTitle:"Редактировать пользователя",deleteTitle:"Удалить пользователя?",deleteDescription:"Это действие нельзя отменить. Аккаунт будет удалён навсегда.",adminAccess:"Права администратора",adminAccessDesc:"Дать пользователю полные права администратора",qmjLimit:"Лимит QMJ",videoLimit:"Лимит видео",presLimit:"Лимит презент."},templates:{title:"Шаблоны",slides:"Слайды",layouts:"Макеты",exported:"Шаблон экспортирован",saved:"Шаблон сохранён",updated:"Шаблон обновлён",layoutGenerated:"Макет успешно сгенерирован с помощью ИИ"},plans:{title:"Тарифы",description:"Управление тарифами подписок",add:"Добавить тариф",addDescription:"Создать новый тариф подписки",edit:"Редактировать тариф",editDescription:"Обновить данные тарифа",delete:"Удалить тариф",deleteConfirm:'Вы уверены, что хотите деактивировать "{{name}}"? Существующие подписчики не пострадают.',noPlans:"Тарифы не найдены",created:"Тариф успешно создан",updated:"Тариф успешно обновлён",deleted:"Тариф успешно деактивирован",active:"Активный",inactive:"Неактивный",free:"Бесплатный",autoRenew:"Автопродление",status:"Статус",preview:"Предпросмотр",days:"дней",filters:{all:"Все тарифы"},form:{basicInfo:"Основная информация",name:"Название тарифа",namePlaceholder:"Введите название тарифа",description:"Описание",de
399scriptionPlaceholder:"Краткое описание тарифа",duration:"Длительность (дней)",price:"Цена",currency:"Валюта",isActive:"Активный",isFree:"Бесплатный тариф",autoRenew:"Автопродление",classrooms:"Классы (задания, оценка)",limits:"Лимиты функций",limitsHint:"-1 = безлимитно, 0 = отключено, >0 = конкретный лимит",features:"Особенности",featuresPlaceholder:"Введите по одной особенности на строку",featuresHint:"Каждая строка будет показана как пункт списка",permissions:"Разрешения",permissionNames:"Отображаемые названия"},permissions:{video:"Генерация видео",presentation:"Генерация презентаций",qmj:"План урока (КСП)",quiz:"Создание тестов",avatar:"ИИ аватар (мин)",conversation:"ИИ диалог",documents:"Документы",homework_check:"AI проверка ДЗ"},limits:{unlimited:"Безлимитно",disabled:"Отключено",custom:"Свой лимит",uses:"{{count}} раз",minutes:"{{count}} минут",usesLabel:"раз"},validation:{nameRequired:"Название тарифа обязательно",nameUnique:"Название тарифа должно быть уникальным",durationMin:"Длительность должна быть не менее 1 дня",priceMin:"Цена не может быть отрицательной",atLeastOnePermission:"Должно быть включено хотя бы одно разрешение"}},analytics:{title:"Аналитика",description:"Статистика подписок и аналитика пользователей",totalActive:"Всего активных",revenueThisMonth:"Доход за месяц",mostPopularPlan:"Самый популярный тариф",expiringSoon:"Скоро истекают",subscribers:"подписчиков",inNext7Days:"в ближайшие 7 дней",subscriptions:"Подписки",subscriptionsDescription:"Просмотр и управление подписками пользователей",noSubscriptions:"Подписки не найдены",noData:"Нет данных",charts:{subscriptionsOverTime:"Подписки по времени",revenueByPlan:"Доход по тарифам",featureUsage:"Использование функций"},table:{user:"Пользователь",plan:"Тариф",startDate:"Дата начала",expiryDate:"Дата окончания",status:"Статус",usage:"Использование",actions:"Действия"},status:{active:"Активная",expired:"Истекла",cancelled:"Отменена"},filters:{allPlans:"Все тарифы",allStatuses:"Все статусы",dateRange:"Период",searchPlaceholder:"Поиск по имени или телефону..."},viewDetails:"Подробнее",cancelSubscription:"Отменить подписку",cancelConfirm:"Вы уверены, что хотите отменить подписку для {{user}}?",subscriptionCancelled:"Подписка успешно отменена",userDetails:"Подписка пользователя",usageBreakdown:"Детали использования",totalUsed:"Всего использовано",avgPerUser:"Среднее на пользователя",ai:{title:"Аналитика затрат AI",description:"Отслеживание расходов по AI-провайдерам, токенов и затрат по системам",periodMonth:"По месяцам",periodYear:"По годам",totalCost:"Общая стоимость (USD)",requests:"Запросы",totalTokens:"Всего токенов",usageUnits:"Единицы использования",costTrend:"Динамика стоимости",providers:"Провайдеры",systems:"Системы",unpricedTitle:"Общая стоимость рассчитана не полностью",unpricedRequests:"Запросов без настроенной цены",unpricedDescription:"Они не включены в общую стоимость; $0 не означает, что запросы бесплатны."}},avatars:{title:"Аватары",description:"Управление ИИ аватарами",add:"Добавить аватара",addDescription:"Создать нового ИИ аватара",edit:"Редактировать аватара",editDescription:"Обновить информацию об аватаре",deleteConfirm:'Вы уверены, что хотите удалить "{{name}}"?',noAvatars:"Аватары не найдены",filters:{all:"Все аватары",active:"Активные",inactive:"Неактивные"}},schools:{title:"Школы",description:"Подключение школ B2B и наÐ
399·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ их директоров",createTitle:"Создать школу",createHint:"Создаёт школу и назначает её первого директора по email.",name:"Название школы",directorEmail:"Email директора",city:"Город",contactPhone:"Контактный телефон",create:"Создать школу",directorActive:"Директор активирован",directorActiveHint:"Такой аккаунт уже существовал — у него уже есть доступ директора.",directorPending:"Директор ожидает",directorPendingHint:"У этого email ещё нет аккаунта Zerde — он получит доступ директора автоматически, как только зарегистрируется с этим email.",schoolIdLabel:"ID школы",directoryTitle:"Все школы",directoryHint:"Все подключённые школы. Деактивация — это просто флаг, больше ничего не меняется.",activate:"Активировать",deactivate:"Деактивировать",noSchools:"Школ пока нет",pageLabel:"Показаны {{from}}–{{to}}",lookupTitle:"Управление школой",lookupHint:"Найдите любую школу по ID для поддержки — администраторы платформы могут действовать как директор этой школы."},tutorials:{title:"Видеоуроки",description:"Управление видеоуроками",add:"Добавить урок",addDescription:"Создать новый видеоурок",edit:"Редактировать урок",editDescription:"Обновить данные видеоурока",list:"Все уроки",total:"всего уроков",noVideos:"Видеоуроков пока нет",deleteConfirm:'Вы уверены, что хотите удалить "{{name}}"?',form:{title:"Название",titlePlaceholder:"Введите название...",videoUrl:"Ссылка на видео",description:"Описание",descriptionPlaceholder:"Введите описание...",savedTime:"Экономия времени",actualTime:"Длительность (секунды)"}},models3d:{title:"3D модели",description:"Управление 3D моделями Sketchfab по предметам",selectSubject:"Выберите предмет",selectSubjectPlaceholder:"Выберите предмет...",list:"Модели",total:"всего моделей",noModels:"Для этого предмета пока нет моделей",addModel:"Добавить модель",addModelDescription:"Вставьте ссылку на модель Sketchfab или её UID, предпросмотрите и добавьте к предмету",pasteLabel:"Ссылка на Sketchfab или UID",pastePlaceholder:"https://sketchfab.com/3d-models/... или вставьте UID",preview:"Предпросмотр",confirmAdd:"Добавить к предмету",created:"Модель добавлена",updated:"Модель обновлена",deleted:"Модель удалена",deleteConfirm:"Удалить «{{title}}»? Это действие необратимо.",edit:"Редактировать модель",editDescription:"Обновить данные модели",active:"Активна",inactive:"Неактивна",form:{title:"Название",description:"Описание",thumbnailUrl:"URL превью",authorName:"Имя автора",authorUrl:"Ссылка на автора",license:"Лицензия",sortOrder:"Порядок сортировки"}}},m3={title:"Профиль",personalInfo:"Личная информация",firstName:"Имя",lastName:"Фамилия",phone:"Телефон",subscription:"Подписка",wallet:{title:"Кошелёк",balance:"Баланс",deposit:"Пополнить",withdraw:"Вывести",history:"История транзакций"},updateSuccess:"Профиль успешно обновлён"},h3={1:"1 класс",2:"2 класс",3:"3 класс",4:"4 класс",5:"5 класс",6:"6 класс",7:"7 класс",8:"8 класс",9:"9 класс",10:"10 класс",11:"11 класс",12:"12 класс"}
399,g3={generic:"Что-то пошло не так",network:"Ошибка сети",networkError:"Ошибка сети. Проверьте подключение.",unauthorized:"Нет доступа. Войдите в систему снова.",forbidden:"Доступ запрещён. У вас нет прав.",notFound:"Не найдено",validation:"Ошибка данных",validationError:"Проверьте введённые данные и попробуйте снова.",serverError:"Ошибка сервера. Попробуйте позже.",fileTooLarge:"Файл слишком большой. Максимум 100МБ.",unknownError:"Произошла непредвиденная ошибка."},v3={about:"О нас",contact:"Контакты",privacy:"Конфиденциальность",terms:"Условия использования",copyright:"© 2024 Zerde AI. Все права защищены."},y3={title:"Условия использования",effectiveDateLabel:"Дата вступления в силу",effectiveDate:"21 февраля 2026",subtitle:"Эти Условия использования регулируют работу с платформой Zerde AI.",sections:{acceptance:{title:"1. Принятие условий",p1:"Используя Zerde AI, вы соглашаетесь с настоящими Условиями использования. Если какие-либо положения вам не подходят, вы можете прекратить использование платформы.",p2:"Если вы используете платформу от имени организации, вы подтверждаете, что имеете право принимать эти условия от ее имени."},serviceDescription:{title:"2. Описание сервиса",p1:"Zerde AI предоставляет образовательные инструменты, включая AI-помощь для планирования уроков, оценивания и поддержки занятий.",p2:"Некоторые функции доступны только по подписке. Доступность функций может меняться."},accounts:{title:"3. Аккаунт и доступ",p1:"Вы несете ответственность за безопасность своего аккаунта и устройств.",p2:"Вы обязаны предоставлять корректные данные и поддерживать их актуальность.",p3:"Для безопасности аккаунта просим как можно раньше сообщать о признаках несанкционированного доступа; действия в аккаунте остаются ответственностью пользователя."},payments:{title:"4. Оплата и подписки",p1:"Платные функции оплачиваются по выбранному тарифу и цене, указанной на момент покупки.",p2:"Если иное не указано, платежи за подписку не возвращаются после начала расчетного периода.",p3:"Мы можем изменять цены для будущих периодов с предварительным уведомлением."},acceptableUse:{title:"5. Допустимое использование",p1:"Пожалуйста, не используйте платформу для незаконной, вредоносной, оскорбительной или нарушающей права деятельности.",p2:"Просим воздерживаться от попыток нарушить работу сервиса, обойти меры безопасности или получить несанкционированный доступ к данным.",p3:"Вы обязаны соблюдать применимое законодательство в сфере образования, конфиденциальности и интеллектуальной собственности."},ip:{title:"6. Контент и интеллектуальная собственность",p1:"Вы сохраняете права на контент, который загружаете на платформу.",p2:"Вы предоставляете Zerde AI ограниченную лицензию Ð
399½Ð° обработку этого контента только для предоставления, поддержки и улучшения сервиса.",p3:"Программное обеспечение платформы, бренд и сопутствующие материалы принадлежат Zerde AI или его лицензиарам."},privacy:{title:"7. Конфиденциальность",p1:"Использование сервиса также регулируется нашей Политикой конфиденциальности.",p2:"Вы самостоятельно обеспечиваете соответствие использования платформы внутренним требованиям вашей организации по обработке данных."},availability:{title:"8. Доступность сервиса",p1:"Мы стремимся к стабильной работе, но не гарантируем бесперебойную и безошибочную доступность сервиса.",p2:"Мы можем проводить обслуживание, обновления и изменения, которые временно влияют на доступ."},liability:{title:"9. Ограничение ответственности",p1:"В максимально допустимой законом степени Zerde AI не принимает на себя ответственность за косвенные, случайные, специальные, последующие или штрафные убытки.",p2:"Общая ответственность по любым требованиям, связанным с сервисом, ограничена суммой, уплаченной вами за сервис за 12 месяцев до предъявления требования."},termination:{title:"10. Прекращение использования",p1:"Вы можете прекратить использование сервиса в любое время.",p2:"При существенном нарушении условий или злоупотреблении платформой мы можем временно ограничить или прекратить доступ."},changes:{title:"11. Изменения условий",p1:"Мы можем периодически обновлять Условия использования. Обновленная версия публикуется на этой странице с новой датой вступления в силу.",p2:"Продолжение использования платформы после вступления изменений в силу означает принятие обновленных условий."},contact:{title:"12. Контакты",p1:"По юридическим вопросам и вопросам условий: [email protected]"}}},b3={title:"Политика конфиденциальности",effectiveDateLabel:"Дата вступления в силу",effectiveDate:"21 февраля 2026",subtitle:"Эта Политика конфиденциальности объясняет, как Zerde AI собирает, использует, хранит и защищает персональные данные.",sections:{overview:{title:"1. Общие положения",p1:"Zerde AI — образовательная платформа для учителей и школ. Мы обрабатываем персональные данные для предоставления основных функций платформы.",p2:"Используя платформу, вы подтверждаете ознакомление с этой Политикой конфиденциальности."},dataWeCollect:{title:"2. Какие данные мы собираем",p1:"Данные аккаунта и профиля: например, номер телефона, имя и иные данные, которые вы указ
399ываете.",p2:"Данные использования: взаимодействие с функциями, метаданные сгенерированного контента и технические диагностические данные для работы и улучшения сервиса.",p3:"Данные поддержки: сообщения и вложения, которые вы отправляете при обращении в поддержку."},howWeUseData:{title:"3. Как мы используем данные",p1:"Для аутентификации пользователей, предоставления функций платформы и обеспечения безопасности аккаунтов.",p2:"Для улучшения качества продукта, надежности и пользовательского опыта с помощью аналитики и диагностики.",p3:"Для коммуникации по обновлениям сервиса, уведомлениям безопасности и ответам поддержки."},legalBasis:{title:"4. Правовые основания обработки",p1:"Мы обрабатываем данные для исполнения договора с пользователем, соблюдения юридических обязательств и защиты законных интересов, включая безопасность сервиса.",p2:"Если это требуется законом, для отдельных операций мы запрашиваем согласие."},sharing:{title:"5. Передача данных",p1:"Мы не продаем персональные данные.",p2:"Мы можем передавать данные проверенным поставщикам услуг (хостинг, аналитика, коммуникации) на основании договорных обязательств по конфиденциальности и безопасности.",p3:"Мы можем раскрывать данные, если это требуется законом или необходимо для защиты прав, безопасности и целостности платформы."},retention:{title:"6. Сроки хранения",p1:"Мы храним персональные данные только в течение срока, необходимого для целей, указанных в этой политике, либо в течение срока, установленного законом.",p2:"Когда хранение больше не требуется, данные удаляются или обезличиваются."},security:{title:"7. Безопасность",p1:"Мы применяем технические и организационные меры для защиты данных от несанкционированного доступа, утраты и неправомерного использования.",p2:"Абсолютной безопасности не существует, но мы постоянно улучшаем меры защиты и мониторинг."},children:{title:"8. Дети и образовательный контекст",p1:"Сервис предназначен для образовательного использования уполномоченными пользователями. Школы и педагоги отвечают за законное использование данных учащихся в соответствии с применимым законодательством.",p2:"Если вы считаете, что данные были предоставлены некорректно, свяжитесь с нами для проверки и удаления."},rights:{title:"9. Ваши права",p1:"В зависимости от применимого законодательства вы можете запросить доступ, исправление, удаление, ограничение обработки или переносимость персональных данных.",p2:"Вы также можете возражать против отдельных видов обработки или отозвать согласие, если обработка основана на согласии.",p3:"Для реализации прав свяжитесь с нами по контактам ниже."},internationalTransfers:{title:"10. Международная передача данных",p1:"Если данные обрабатываются за пределами вашей страны, мы применяем соответствующие меры защиты, предусмотренные законодательством.",p2:"Такие меры могут включать договорные гарантии и технические механизмы безопасности."}
399,changes:{title:"11. Изменения политики",p1:"Мы можем периодически обновлять эту Политику конфиденциальности.",p2:"Существенные изменения публикуются на этой странице с обновленной датой вступления в силу."},contact:{title:"12. Контакты",p1:"По вопросам конфиденциальности: [email protected]"}}},w3={title:"Подписка",description:"Управление подпиской и просмотр использования",currentPlan:"Текущий тариф",freePlan:"Вы на бесплатном тарифе",freeLabel:"Бесплатно",activeSubscription:"Активная подписка",noPlanSelected:"Тариф не выбран",noPlanDescription:"Вы ещё не выбрали тариф. Выберите тариф, чтобы использовать все возможности.",selectPlanPrompt:"Выберите тариф для продолжения",choosePlan:"Выберите тариф",choosePlanDescription:"Выберите тариф, чтобы разблокировать все функции и начать создавать",welcomeTitle:"Добро пожаловать в Zerde AI!",welcomeDescription:"Выберите тариф, чтобы начать создавать планы уроков, презентации и многое другое",continueWithFree:"Продолжить с бесплатным тарифом",skipForNow:"Пропустить",warningNoPlan:"Вы ещё не выбрали тариф",warningNoPlanDescription:"Выберите тариф, чтобы начать создавать планы уроков, презентации и многое другое.",selectPlanNow:"Выбрать тариф",daysLeft:"дней осталось",usageOverview:"Обзор использования",availablePlans:"Доступные тарифы",upgradeNow:"Обновить сейчас",unlimited:"Безлимитно",disabled:"Отключено",notAvailable:"Недоступно",remaining:"осталось",days:"дней",current:"Текущий",subscribe:"Подписаться",expiringSoonTitle:"Подписка скоро истекает",expiringSoonDescription:"Ваша подписка истекает через {{days}} дней. Продлите для продолжения использования.",expiresAt:"Истекает",managePlan:"Управление тарифом",noPlansAvailable:"Нет доступных тарифов",checkBackLater:"Пожалуйста, проверьте позже",howItWorks:"Как это работает",step1Title:"Выберите тариф",step1Description:"Выберите тариф, который лучше всего подходит вам",step2Title:"Свяжитесь через WhatsApp",step2Description:"Нажмите кнопку подписки для связи с нами",step3Title:"Получите доступ",step3Description:"После подтверждения оплаты ваш тариф активируется",confirmSubscription:"Подтвердить подписку",confirmDescription:"Вы собираетесь подписаться на тариф {{plan}}",whatsappRedirect:"Переход в WhatsApp",whatsappRedirectDescription:"Вы будете перенаправлены в WhatsApp для завершения оформления подписки",openWhatsApp:"Открыть WhatsApp",subscribeFree:"Начать бесплатный тариф",freeActivated:"Бесплатный тариф успешно активирован!",subscribed:"Вы успешно подписались на тариф!",cancelled:"Подписка отменена",expired:"Истекла",resetsMonthly:"Сбрасывается ежемесячно",resetsOn:"Обновится {{date}}",monthlyUsage:"Месячное использование",myPlan:"Мой тариф",recommended:"Рекомендуемый",featureGate:{limitReached:"Лимит исчерпан",limitReachedDescription:"Вы использовали все генерации {{feature}} за этот период",featureDisabled:"Функция недоступна",featureDisabledDescription:"{{feature}} не включена в ваш текущий тариф",upgradeToAccess:"Обновите для доступа",upgradeDescription:"Обновите тариф, чтобы разблокировать эту функцию",viewPlans:"Смотреть тарифы",usageStatus:"Использовано {{used}} из {{limit}}",remainingCredits:"Осталось {{remaining}}"},required:{title:"Требуется подписка",description:"ДÐ
399»Ñ доступа к этой функции необходима активная подписка.",benefits:"С подпиской вы получите доступ к:",benefit1:"Генерация планов уроков, презентаций и видео",benefit2:"Использование AI аватара для интерактивного обучения",benefit3:"Создание тестов и оценок",viewPlans:"Смотреть тарифы"}},x3={title:"Викторины",list:"Все викторины",create:"Создать викторину",createDescription:"Создайте новую викторину с вопросами и вариантами ответов",editQuiz:"Редактировать викторину",editDescription:"Измените вопросы и варианты ответов",basicInfo:"Основная информация",questionsSection:"Вопросы",questions:"вопросов",addQuestion:"Добавить вопрос",addOption:"Добавить вариант",questionNumber:"Вопрос {{number}}",correctOptionHint:"Отметьте правильные варианты ответов",deleteConfirm:"Вы уверены, что хотите удалить эту викторину?",deleteQuestionConfirm:"Вы уверены, что хотите удалить этот вопрос?",noQuestions:"Нет вопросов",preview:"Предпросмотр",previewMode:"Режим предпросмотра",form:{title:"Название",titlePlaceholder:"Введите название викторины",description:"Описание",descriptionPlaceholder:"Введите описание викторины",questionText:"Текст вопроса",questionPlaceholder:"Введите текст вопроса",options:"Варианты ответов",optionPlaceholder:"Вариант {{number}}",assets:"Материалы"},uploadAsset:"Загрузить файл",assetHint:"Добавьте изображения или PDF файлы к вопросу",sessions:"Сессии",startSession:"Начать сессию",startNewSession:"Начать новую сессию",startSessionDescription:"Создайте новую сессию для этой викторины. Участники смогут присоединиться по ссылке.",startFirstSession:"Начать первую сессию",activeSessions:"Активные сессии",closedSessions:"Завершённые сессии",noSessions:"Нет активных сессий",active:"Активна",closed:"Завершена",expiresAt:"Истекает",copyLink:"Копировать ссылку",viewResults:"Результаты",closeSession:"Завершить",openSessionPage:"Открыть страницу сессии",sessionDuration:"Длительность сессии",selectDuration:"Выберите длительность",durationHint:"Участники смогут присоединиться и пройти викторину в течение этого времени",duration15min:"15 минут",duration30min:"30 минут",duration45min:"45 минут",duration1hour:"1 час",duration2hours:"2 часа",duration1day:"1 день",createManually:"Создать вручную",generateWithAI:"Сгенерировать с AI",aiGeneration:"Генерация с AI",aiGenerationDescription:"Загрузите документ (PDF, Word или текстовый файл), и наш AI автоматически создаст вопросы на основе содержимого.",uploadDocument:"Загрузить документ",dropDocument:"Нажмите для загрузки или перетащите файл",supportedFormats:"PDF, Word или TXT файлы",selectFile:"Выбрать файл",generating:"Генерация...",generateQuiz:"Сгенерировать викторину",generatedWithAI:"Викторина успешно сгенерирована с AI",questionCount:"Количество вопросов",questionCountHint:"Сколько вопросов должен сгенерировать AI (1-50)",additionalPrompt:"Дополнительные инструкции",additionalPromptPlaceholder:"Например: сфокусируйся на главе 3, сделай вопросы сложнее, включи определения...",sessionActiveResults:"СессиÑ
399 активна - результаты обновляются в реальном времени",sessionClosedResults:"Сессия завершена",showQR:"Показать QR код",qrCode:"QR код",qrCodeDescription:"Ученики могут отсканировать этот QR код, чтобы присоединиться к викторине",sessionLink:"Ссылка на сессию",downloadQR:"Скачать QR"},S3={notFound:"Сессия не найдена",notFoundDescription:"Эта сессия не существует или была удалена",closed:"Сессия завершена",closedDescription:"Эта сессия больше не принимает участников",questionsCount:"вопросов",question:"Вопрос",enterName:"Введите ваше имя",namePlaceholder:"Ваше имя",joining:"Подключение...",joinQuiz:"Присоединиться",joinQuizSession:"Присоединиться к викторине",enterNameToJoin:"Введите своё имя, чтобы начать",joinDisclaimer:"Ваше имя будет видно в таблице результатов",quizCompleted:"Викторина завершена!",answersSubmitted:"Ваши ответы отправлены",viewResults:"Посмотреть результаты",submitting:"Отправка...",submitAnswers:"Отправить ответы",resultsNotFound:"Результаты не найдены",quizResults:"Результаты викторины",questionsNotAvailable:"Вопросы недоступны. Обратитесь к создателю викторины.",participants:"участников",participant:"Участник",score:"Баллы",refreshResults:"Обновить",leaderboard:"Таблица лидеров",points:"баллов",noParticipants:"Пока нет участников",backToHome:"Вернуться на главную"},C3={draft:"Черновик",in_progress:"В процессе",completed:"Завершено",archived:"В архиве",pending_review:"На проверке",approved:"Одобрено"},P3={title:"Документы",description:"Создавайте и редактируйте документы с формулами, таблицами и многим другим",create:"Новый документ",search:"Поиск документов...",starred:"Избранное",recent:"Недавние",empty:"Документов нет",emptyDescription:"Создайте свой первый документ",createFirst:"Создать первый документ",star:"В избранное",unstar:"Из избранного",untitled:"Документ без названия",words:"слов",public:"Публичный",newDocument:"Новый документ",createNew:"Создать новый документ",selectCategory:"Выберите тип документа",generate:"Сгенерировать",createSuccess:"Документ создан",deleteSuccess:"Документ удалён",generateSuccess:"Документ сгенерирован",notFound:"Документ не найден",backToList:"Вернуться к списку",creating:"Создание документа...",importAsAssessment:"Создать рабочую версию оценивания",assessmentGeneratedDescription:"Оценивание готово. Отредактируйте его как структурированные вопросы или откройте в обычном редакторе документов.",openInDocumentEditor:"Открыть в редакторе документов",editAssessment:"Редактировать оценивание",hasAssessmentWorkspace:"У этого документа есть редактор оценивания со структурированными вопросами — изменения текста здесь на него не повлияют.",looksLikeAssessment:"Похоже, это оценивание БЖБ/ТЖБ. Редактируйте его как структурированные вопросы, а не как обычный текст.",openAssessmentEditor:"Открыть редактор оценивания",categories:{empty:{title:"Пустой документ",description:"Начните с чистого листа"},assessment:{title:"БЖБ / ТЖБ",description:"Генератор суммативного оценивания"},"author-program":{title:"Авторская программа",description:"Создание авторской учебной программы"},"scientific-project":{title:"Научный проект",description:"Генератор научного проекта"}},forms:{assessmentType:"Тип оценивания",language:"Язык",subject:"Предмет",subjectPlaceholder:"Например: Математика",grade:"Класс",gradeLabel:"класс",topic:"Тема",topicPlaceholder:"Введите тему раздела",duration:"Продолжительность",programName:"Название программы",programNamePlaceholder:"Введите название программы",totalHours:"Общее количество часов",targetAudience:"Целевая аудитория",targetAudiencePlaceholder:"Например: ученики 7-9 классов",projectTitle:"Название проекта",projectTitlePlaceholder:"Введите название научного проекта",projectTopic:"Тема исследования",projectTopicPlaceholder:"Введите тему исследования"}},E3={taskTypes:{short_answer:"Короткий ответ",multiple_choice:"В
399ыбор ответа",matching:"Соответствие",open_ended:"Развёрнутый ответ"},gradingModes:{manual:"Проверка вручную",choice:"Авто (выбор)",exact:"Авто (точное совпадение)"},editor:{notFound:"Оценивание не найдено",unsaved:"Есть несохранённые изменения",saved:"Сохранено",titlePlaceholder:"Название оценивания",durationMinutes:"Длительность (мин)",instructions:"Инструкции для учеников",addInstruction:"Добавить строку инструкции",tasks:"Задания",totalPoints:"Всего баллов: {{points}}",addTask:"Добавить задание",points:"Баллы",duplicate:"Дублировать",delete:"Удалить",promptPlaceholder:"Текст задания",optionPlaceholder:"Текст варианта",addOption:"Добавить вариант",acceptedAnswerPlaceholder:"Допустимый ответ",addAcceptedAnswer:"Добавить допустимый ответ",referenceAnswerPlaceholder:"Ответ для справки (необязательно, только для учителя)",matchingNote:"В этой версии задания на соответствие принимаются как свободный текст и проверяются вручную.",rubricPlaceholder:"Критерии оценивания",descriptorPlaceholder:"Дескриптор",addDescriptor:"Добавить дескриптор",descriptorSumMismatch:"Сумма дескрипторов {{sum}}, а задание оценено в {{points}}",regenerate:"Пересоздать",regenerateInstructionPlaceholder:"например: сделайте пример проще",regenerateConfirm:"Пересоздать",saveBeforeRegenerate:"Сначала сохраните изменения",conflictTitle:"Оценивание изменили в другом месте",conflictDescription:"Кто-то (возможно, вы в другой вкладке) сохранил более новую версию. Загрузите её, чтобы увидеть изменения, либо продолжайте редактировать и сохраните позже — текущие изменения не потеряются.",keepEditing:"Продолжить редактирование",reloadLatest:"Загрузить последнюю версию",printStudent:"Печать варианта ученика",printTeacher:"Печать варианта учителя",saveBeforePrint:"Сохраните изменения, чтобы напечатать последнюю версию",popupBlocked:"Браузер заблокировал окно предпросмотра печати. Разрешите всплывающие окна для этого сайта и попробуйте снова.",assignOnline:"Назначить онлайн",saveBeforePublish:"Сохраните изменения перед назначением онлайн"},publish:{newPublication:"Назначить классу",classroom:"Класс",selectClassroom:"Выберите класс...",opensAt:"Открывается",closesAt:"Закрывается",timeLimitMinutes:"Таймер на ученика (минуты)",timeLimitPlaceholder:"Без таймера",timeLimitHint:"Необязательно. Длительность из бумажной версии не применяется онлайн, пока вы не зададите таймер здесь.",publish:"Опубликовать",history:"Рассылки",open:"Открыто",closed:"Закрыто",timerSummary:"Таймер {{minutes}} мин",noTimer:"Без таймера",manageAccess:"Управление доступом",noPublications:"Пока не назначено ни одному классу",codesShownOnce:"Эти коды показываются только один раз — скопируйте или отправьте их сейчас.",accessCode:"Код доступа",resetAccess:"Сбросить код доступа",resetConfirmTitle:"Сбросить код доступа этого ученика?",resetConfirmDescription:"Старая ссылка {{name}} перестанет работать немедленно. Сохранённые ответы и прогресс сохранятся.",issueSelected:"Выдать доступ ({{count}})",status:{not_started:"Не начато",in_progress:"В процессе",submitted:"Сдано"},conflictDescription:"Это оценивание изменили в другом месте с момента открытия этой страницы. Загрузите последнюю сохранённую версию, чтобы опубликовать её."},take:{points:"{{points}} б.",answerPlaceholder:"Введите ответ...",markScore:"{{score}} / {{max}}
399",invalidTitle:"Эта ссылка недействительна",invalidDescription:"Ссылка доступа отсутствует, истекла или была сброшена. Попросите у учителя новую ссылку.",greeting:"Здравствуйте, {{name}}",closedByTeacher:"Учитель закрыл это оценивание.",notYetOpen:"Это оценивание ещё не открыто. Зайдите позже.",alreadyClosed:"Срок для этого оценивания истёк.",start:"Начать",submittedTitle:"Ваши ответы отправлены",scoreSummary:"Результат: {{score}} / {{total}}",awaitingRelease:"Учитель ещё не опубликовал результаты.",checkResults:"Проверить результаты",saving:"Сохранение...",saved:"Сохранено",offline:"Нет сети, не сохранено",readyToSave:"Ваши ответы сохраняются автоматически",offlineWarning:"Вы офлайн (или сохранение не удалось). Продолжайте работать — мы попробуем сохранить снова, но не закрывайте вкладку, пока не появится «Сохранено».",timeUp:"Время вышло. Отправьте сейчас, чтобы зафиксировать сохранённые ответы.",submit:"Отправить",conflictTitle:"Ваши ответы были сохранены с другой вкладки или устройства",conflictDescription:"Загрузите последнюю сохранённую версию ответов, прежде чем продолжить."}},k3={levels:{remember:"Запоминание",understand:"Понимание",apply:"Применение",analyze:"Анализ",evaluate:"Оценка",create:"Создание"},categories:{low:"Низкий",medium:"Средний",high:"Высокий"},descriptions:{remember:"Запоминание и воспроизведение фактов",understand:"Объяснение идей и понятий",apply:"Применение информации в новых ситуациях",analyze:"Разложение на составляющие",evaluate:"Обоснование выбора или решения",create:"Создание нового продукта"}},T3={title:"Научный проект",subtitle:"Подготовка научных проектов учащихся с помощью ИИ",list:{title:"Мои проекты",empty:"У вас пока нет научных проектов",emptyDescription:"Создайте первый проект с помощью ИИ-наставника"},create:{title:"Новый проект",subtitle:"Начните подготовку научного проекта"},workspace:{title:"Рабочее пространство",stages:"Этапы",chat:"ИИ-наставник",content:"Содержание"},form:{title:"Название проекта",titlePlaceholder:"Введите название исследования",subject:"Предмет",selectSubject:"Выберите предмет",grade:"Класс",selectGrade:"Выберите класс",studentName:"Имя ученика",studentNamePlaceholder:"Введите имя ученика"},stages:{problem_identification:"Определение проблемы",hypothesis_formulation:"Формулировка гипотезы",literature_review:"Обзор литературы",methodology_design:"Разработка методологии",experiment_modeling:"Моделирование эксперимента",data_analysis:"Анализ данных",conclusions:"Выводы",virtual_defense:"Виртуальная защита"},stageDescriptions:{problem_identification:"Определите исследовательскую проблему",hypothesis_formulation:"Сформулируйте гипотезу исследования",literature_review:"Изучите литературу по теме",methodology_design:"Разработайте методологию исследования",experiment_modeling:"Смоделируйте и проведите эксперимент",data_analysis:"Проанализируйте полученные данные",conclusions:"Сформулируйте выводы",virtual_defense:"Подготовьтесь к защите проекта"},chat:{placeholder:"Задайте вопрос ИИ-наставнику...",send:"Отправить",thinking:"ИИ думает..."},experiment:{title:"Таблица эксперимента",addRow:"Добавить строку",addColumn:"Добавить колонку",analyze:"Анализировать данные",variable:"Переменная",value:"Значение"},defense:{title:"Виртуальная защита",description:"Подготовьтесь к защите с помощью ИИ-экзаменатора",start:"Начать защиту",question:"Вопрос экзаменатора",answer:"Ваш ответ",answerPlaceholder:"Введите ваш ответ...",submit:"Ответить",feedback:"Обратная связь",nextQuestion:"Следующий вопрос",finish:"Завершить защиту"}},A3={title:"Авторская программа",subtitle:"Создание авторских программ по методологии Backward Design",list:{t
399itle:"Мои программы",empty:"У вас пока нет авторских программ",emptyDescription:"Создайте первую программу с помощью методологии Backward Design"},create:{title:"Новая программа",subtitle:"Начните создание авторской программы"},editor:{title:"Редактор программы",save:"Сохранить программу",export:"Экспорт"},form:{title:"Название программы",titlePlaceholder:"Введите название программы",subject:"Предмет",selectSubject:"Выберите предмет",grade:"Класс",selectGrade:"Выберите класс",totalHours:"Всего часов",description:"Описание",descriptionPlaceholder:"Краткое описание программы"},tabs:{outcomes:"Результаты обучения",topics:"Темы и содержание",review:"Проверка и аудит",ai:"ИИ-ассистент"},outcomes:{title:"Результаты обучения",description:"Определите ожидаемые результаты обучения",add:"Добавить результат",code:"Код",outcome:"Результат обучения",bloomLevel:"Уровень Блума",suggestWithAI:"Предложить с ИИ",empty:"Нет результатов обучения",emptyDescription:"Добавьте результаты обучения вручную или с помощью ИИ"},topics:{title:"Темы и содержание",description:"Структурируйте содержание программы",add:"Добавить тему",topic:"Тема",hours:"Часов",contentTypes:"Типы содержания",empty:"Нет тем",emptyDescription:"Добавьте темы для вашей программы",dragHint:"Перетащите для изменения порядка"},contentTypes:{theory:"Теория",practice:"Практика",project:"Проект",assessment:"Оценивание",independent:"Самостоятельная работа"},review:{title:"Проверка и аудит",description:"Анализ качества программы",overallScore:"Общий балл",criteria:"Критерии",recommendations:"Рекомендации",bloomCoverage:"Покрытие Блума",contentBalance:"Баланс содержания",hoursDistribution:"Распределение часов"},ai:{title:"ИИ-ассистент",description:"Получите помощь в создании программы",placeholder:"Задайте вопрос об авторской программе...",quickPrompts:{suggestOutcomes:"Предложи результаты обучения",suggestTopics:"Предложи темы",reviewProgram:"Проверь программу",improveBalance:"Улучши баланс содержания"}},backwardDesign:{title:"Методология Backward Design",step1:"Шаг 1: Определите желаемые результаты",step2:"Шаг 2: Определите приемлемые доказательства",step3:"Шаг 3: Спланируйте учебный опыт"}},R3={title:"ИИ Аватар",description:"Общайтесь с ИИ аватарами",availableAvatars:"Доступные аватары",history:"История разговоров",startSession:"Начать сессию",viewConversation:"Просмотреть разговор",conversation:"Разговор",noAvatars:"Нет доступных аватаров",noAvatarsDescription:"Аватары появятся здесь, когда будут доступны",noHistory:"Пока нет разговоров",noHistoryDescription:"Начните разговор с аватаром, чтобы увидеть историю",minutesRemaining:"минут осталось",minutesUsed:"минут использовано",connected:"Подключено",disconnected:"Отключено",endSession:"Завершить сессию",sessionEnded:"СессиÑ
399 завершена",sessionEndedDescription:"Ваш разговор завершен",startConversation:"Нажмите на микрофон, чтобы начать говорить",typeMessage:"Введите сообщение...",recording:"Запись...",thinking:"Думаю...",holdToSpeak:"Нажмите для записи, нажмите ещё раз для отправки",audioNotSupported:"Запись аудио не поддерживается в вашем браузере",recordingError:"Произошла ошибка записи",error:"Произошла ошибка",assistant:"ИИ Ассистент",connectionError:"Ошибка подключения. Попробуйте снова.",microphoneError:"Не удалось получить доступ к микрофону",created:"Аватар создан успешно",movementAdded:"Движение добавлено",movementRemoved:"Движение удалено",movementGenerated:"Движение сгенерировано",movements:"движений",manageMovements:"Управление движениями",manageMovementsDescription:"Управление движениями для {{name}}",currentMovements:"Текущие движения",noMovements:"Нет добавленных движений",addMovement:"Добавить движение",movementNamePlaceholder:"Введите название движения",movementVideoPlaceholder:"Введите URL видео",generateMovement:"Сгенерировать движение",generatePromptPlaceholder:"Опишите движение (необязательно)",greeting:"Приветствие",listening:"Слушаю",speaking:"Говорит",limitReached:"Лимит исчерпан",upgradeToConinue:"Обновите тариф для продолжения использования ИИ Аватара",voiceOnly:"Только голос",voiceOnlyDescription:"Используйте микрофон для общения с аватаром",listeningMovement:"Движение ожидания",listeningMovementHint:"Видео для воспроизведения во время ожидания ввода",greetingMovement:"Движение приветствия",greetingMovementHint:"Видео для воспроизведения при начале разговора",selectMovement:"Выберите движение",slotRequired:"Это поле обязательно",fillRequiredSlots:"Заполните все обязательные слоты движений",movementsSaved:"Движения сохранены успешно",movementsSaveError:"Не удалось сохранить движения",requiredSlotsHint:"Эти движения должны быть заполнены",optionalSlotsHint:"Эти движения необязательны",uploadFile:"Загрузить",pasteUrl:"URL",uploading:"Загрузка...",uploadNotAvailable:"Загрузка видео недоступна. Используйте ввод URL.",uploadEndpointMissing:"Эндпоинт загрузки видео отсутствует. Пока нельзя загружать с ПК. Используйте вставку URL.",fileUploaded:"Файл успешно загружен",uploadFailed:"Не удалось загрузить файл",invalidFileType:"Неверный тип файла. Загрузите видео MP4 или WebM.",fileTooLarge:"Файл слишком большой. Максимальный размер 100МБ.",waitForUpload:"Дождитесь завершения загрузки",listeningRequired:"Движение «Слушание» обязательно",videoRequired:"URL видео обязателен",nameRequired:"Название движения обязательно",duplicateName:"Названия движений должны быть уникальными",validationFailed:"Исправьте ошибки перед сохранением",listeningRequiredHint:"Требуется для работы аватара",movementDeleteError:"Не удалось удалить движение",addNewMovement:"Добавить движение",removeMovement:"Удалить",movementName:"Название движения",enterMovementName:"Введите название движения",slots:{listening:"Слушание",greeting_1:"Приветствие 1",speak_neutral:"Нейтральная речь",greeting_2:"Приветствие 2",think:"Размышление",nod_yes:"Кивок да",shake_no:"Качание нет",idle:"Ожидание",smile:"Улыбка",farewell:"Прощание"},form:{name:"Имя",namePlaceholder:"Введите имя аватара",voiceId:"ID голоса",voiceIdPlaceholder:"Введите ID голоса",provider:"TTS Провайдер",providerPlaceholder:"Выберите провайдера",sttProvider:"STT Провайдер",sttProviderPlaceholder:"Выберите провайдера распознавания речи",sttProviderHint:"Переопределяет движок распознавания речи для голосового ввода этого аватара. Оставьте «Авто», чтобы использовать значение по умолчанию.",avatarFile:"Изображение аватара",avatarFileHint:"Загрузите изображение для аватара",avatarFileOptional:"Оставьте пустым, чтобы сохранить текущий файл",avatarImageHint:"Загрузите изображение (JPEG, PNG, WebP)"},basicInfo:"Основная информация",movementVideos:"Видео движений",movementVideosHint:"Необязательно. Без видео изображение аватара двигается в браузере под звук ответа — без затрат на генерацию видео.",greetingVideo:"Видео приветствия",speakingVideo:"Видео речи",thinkingVideo:"Видео размышления",listeningVideo:"Видео ожидания",speakingRequired:"Видео речи обязательно",invalidVideoUrl:"Введите корректный публичный HTTPS-адрес видео",invalidAvatarImage:"Загрузите изображение JPEG, PNG или WebP размером до 10 МБ",imageOnly:"Живое изображение",speakingVideos:"Видео речи",speakingVideosHint:"Добавьте видео речи с разными настроениями",addSpeaking:"Добавить видео речи",speakingNamePlaceholder:"например, объяснение",selectImpression:"Выберите настроение",videoUrlPlaceholder:"Введите URL видео",videos:"Видео",greetingRequired:"Видео приветствия обязательно",thinkingRequired:"Видео размышления обязательно",impressionRequired:"Настроение обязательно",atLeastOneSpeakingRequired:"Требуется хотя бы одно видео речи",duplicateSpeakingNames:"Названия речи должны быть уникальными",avatarImageRequired:"Изображение аватара обязательно",creatingAvatar:"Создание аватара...",uploadingVideos:"Загрузка видео...",orTypeMessage:"Или напишите сообщение внизу",noMessagesYet:"Сообщений пока нет",deleteConversation:"Удалить разговор",deleteConversationConfirm:"Удалить этот разговор? Это действие нельзя отменить.",loadError:"Не удалось загрузить аватары",loadErrorDescription:"Произошла ошибка при подключении к серверу. Попробуйте снова.",endSessionConfirm:"Завершить сессию?",endSessionConfirmDescription:"Текущий разговор будет сохранён в истории.",helpTitle:"Как общаться?"},_3={deleted:"Разговор удален",deleteConfirm:"Вы уверены, что хотите удалить этот разговор?"},D3={title:"Zerde AI",subtitle:"Ваш AI помощник",welcome:"Чем могу помочь?",welcomeDescription:"Я могу помочь с идеями для уроков, создать викторину, сгенерировать изображения и ответить на вопросы о платформе.",placeholder:"Спросите что угодно...",placeholderWithSelection:"Спросите о выделенном тексте...",placeholderWithImage:"Спросите об этом изображении...",thinking:"Думаю...",keyboardHint:"Enter - отправить, Shift+Enter - новая строка",newConversation:"Новый разговор",history:"История",noConversations:"Пока нет разговоров",selectedText:"Выделенный текст",askAI:"Спросить AI",sendError:"Не удалось отправить сообщение",actionExecuted:"Действие выполнено",actionFailed:"Действие не выполнено",conversationDeleted:"Разговор удален",qmjUpdated:"План урока успешно обновлен",quizCreated:"Викторина успешно создана",searchingTextbook:"Поиск в учебнике...",attachImage:"Прикрепить изображение",analyzeImage:"Что это?",invalidImageType:"Выберите файл изображения",imageTooLarge:"Изображение должно быть меньше 5 МБ",uploadFailed:"Не удалось загрузить изображение",imageGenerated:"Изображение успешно создано",context:{presentations:"Презентация",documents:"Документ",qmj:"План урока",general:"Общее"}},j3={title:"Классы",description:"Управляйте своими классами и учениками",list:"Мои классы",create:"Создать класс",created:"Класс успешно создан",updated:"Класс успешно обновлен",deleted:"Класс успешно удален",codeRegenerated:"Код доступа успешно обновлен",studentAdded:"Ученик успешно добавлен",studentRemoved:"Ученик успешно удален",noClassrooms:"Пока нет классов",noClassroomsDescription:"Создайте свой первый класс, чтобы начать управлять учениками",createFirst:"Создать первый класс",activeClassrooms:"Активные классы",inactiveClassrooms:"Неактивные классы",students:"Ученики",studentsCount:"{{count}} учеников",noStudents:"Пока нет учеников",noStudents
399Description:"Поделитесь QR-кодом или добавьте учеников вручную",form:{name:"Название класса",namePlaceholder:"например, Математика 7А",nameRequired:"Название обязательно",nameMaxLength:"Название должно быть менее 255 символов",description:"Описание",descriptionPlaceholder:"Необязательное описание класса",descriptionMaxLength:"Описание должно быть менее 1000 символов",schoolClass:"Привязать к классу школы",noSchoolClass:"Нет",schoolClassHint:"Сразу наследует текущий состав этого класса и остаётся синхронизированным — отдельные коды приглашения не нужны."},attachSchoolClass:"Привязать к классу школы",attachSchoolClassHint:"Сразу наследует текущий состав этого класса и остаётся синхронизированным.",detachSchoolClass:"Отвязать",detachSchoolClassConfirm:"Отвязать этот класс (classroom) от класса школы? Скопированные ученики останутся в classroom — просто перестанут синхронизироваться.",schoolClassAttached:"Привязан к классу школы",schoolClassDetached:"Отвязан от класса школы",syncedWithClass:"Синхронизирован с {{name}}",syncedWithClassGeneric:"Синхронизирован с классом школы",syncedClass:"Синхронизированный класс",syncedCardTitle:"Состав синхронизирован с классом школы",syncedCardDescription:"Этот classroom отражает состав класса {{name}} — его собственный код/QR больше не работает.",syncedCardDescriptionGeneric:"Этот classroom отражает состав класса школы — его собственный код/QR больше не работает.",syncedCardDirectorHint:"Поделитесь кодом этого класса из раздела Школа → Классы.",syncedCardTeacherHint:"Спросите код этого класса у директора школы.",goToSchoolClasses:"Перейти в Школа → Классы",joinCode:"Код доступа",qrCode:"QR-код",qrCodeDescription:"Ученики могут отсканировать этот QR-код, чтобы присоединиться к классу",shareLink:"Ссылка для входа",copyLink:"Копировать ссылку",linkCopied:"Ссылка скопирована",regenerateCode:"Обновить код",regenerateCodeConfirm:"Это сделает текущий QR-код недействительным. Ученики со старой ссылкой не смогут присоединиться. Продолжить?",downloadQR:"Скачать QR",status:{active:"Активный",inactive:"Неактивный"},addStudent:"Добавить ученика",addStudentDescription:"Добавить ученика в этот класс вручную",editStudent:"Редактировать ученика",removeStudent:"Удалить ученика",removeStudentConfirm:"Вы уверены, что хотите удалить {{name}} из этого класса?",studentForm:{firstName:"Имя",firstNamePlaceholder:"Введите имя",lastName:"Фамилия",lastNamePlaceholder:"Введите фамилию"},notFoundHint:"Класс не найден или у вас нет доступа.",backToList:"К списку классов",deleteConfirm:"Вы уверены, что хотите удалить этот класс? Все ученики будут удалены.",deactivateConfirm:"Деактивация класса предотвратит присоединение новых учеников. Продолжить?",join:{title:"Присоединиться к классу",subtitle:"Введите свое имя, чтобы присоединиться",classroomName:"Вы присоединяетесь к",firstName:"Имя",firstNamePlaceholder:"Введите ваше имя",firstNameRequired:"Имя обязательно",firstNameMaxLength:"Имя должно быть менее 100 символов",lastName:"Фамилия",lastNamePlaceholder:"Введите вашу фамилию",lastNameRequired:"Фамилия обязательна",lastNameMaxLength:"Фамилия должна быть менее 100 символов",submit:"Присоединиться",joining:"Присоединение...",invalidCode:"Неверный или истекший код доступа",classroomInactive:"Этот класс больше не принимает новых учеников",success:"Вы успешно присоединились к классу!",successTitle:"Добро пожаловать!",successDescription:"Вы успешно присоединились к {{classroom}}
399",backToHome:"На главную",scanAnother:"Сканировать другой код",studentName:"Вы присоединились как"},tabs:{overview:"Обзор",students:"Ученики",groups:"Группы",picker:"Случайный выбор",tools:"Инструменты"},quickStats:"Статистика",quickActions:"Быстрые действия",picker:{title:"Случайный выбор ученика",description:"Направьте камеру на класс и выберите случайное лицо.",pick:"Выбрать",spinning:"Выбор...",selectedStudent:"Выбранный ученик",studentsAvailable:"{{count}} учеников доступно",modes:{wheel:"Колесо",cards:"Карточки",slot:"Слот",lightning:"Молния"},noStudents:"Добавьте учеников для использования случайного выбора",clickToPick:"Нажмите, чтобы выбрать случайного ученика",camera:{start:"Включить камеру",stop:"Выключить",pick:"Выбрать",picking:"Выбираем…",requesting:"Запрашиваем доступ…",hint:"Направьте камеру на класс и нажмите «Выбрать».",offTitle:"Случайный выбор по лицу",offBody:"Направьте камеру на класс. Распознавание лиц работает только на этом устройстве — видео никуда не отправляется.",noFaces:"Лица не обнаружены. Попросите всех посмотреть в камеру и попробуйте снова.",retry:"Попробовать ещё раз",youArePicked:"Твоя очередь!",faceCount:"{{faces}} лиц обнаружено",consent:{title:"Использовать камеру?",body:"Камера нужна, чтобы сделать выбор интереснее. Лица обрабатываются только на вашем устройстве — ничего не загружается.",accept:"Включить камеру"},errors:{denied:"Доступ к камере запрещён. Разрешите его в настройках браузера.",noDevice:"Камера не найдена на этом устройстве.",models:"Не удалось загрузить модели распознавания лиц. Проверьте сеть и попробуйте снова.",unknown:"Не удалось запустить камеру."}}},groups:{title:"Группы учеников",addGroup:"Добавить группу",autoGenerate:"Автогенерация",numberOfGroups:"Количество групп",ungrouped:"Без группы",dragHere:"Перетащите учеников сюда",team1:"Команда Альфа",team2:"Команда Бета",team3:"Команда Гамма",team4:"Команда Дельта",team5:"Команда Эпсилон",team6:"Команда Зета",team7:"Команда Эта",team8:"Команда Тета",groupN:"Группа {{n}}"},scoreboard:{title:"Таблица очков команд",description:"Отслеживайте очки и мотивируйте команды во время занятий",reset:"Сбросить очки",noGroups:"Создайте группы для использования таблицы очков",quickAdd:"Быстрое добавление очков"},attendance:{title:"Быстрая посещаемость",description:"Отмечайте учеников как присутствующих, отсутствующих, опоздавших или освобождённых",reset:"Сбросить",dayNight:"Цикл день/ночь",present:"Присутствует",absent:"Отсутствует",late:"Опоздал",excused:"Уважительная",unmarked:"Не отмечен",rate:"Процент посещаемости",markAs:"Отметить как",markAllPresent:"Все присутствуют",markAllAbsent:"Все отсутствуют"}}
399,N3={title:"Помощники",subtitle:"Интерактивные инструменты для улучшения уроков",open:"Открыть",tags:{ar:"AR",geography:"География",interactive:"Интерактивный",biology:"Биология",anatomy:"Анатомия",physics:"Физика",chemistry:"Химия",simulation:"Симуляция"},arGlobe:{title:"AR Географический глобус",description:"3D глобус Земли — слои климата, населения, тектонических плит, торговых путей и миграции. Используйте временной слайдер для просмотра исторических изменений границ.",subtitle:"Интерактивный 3D глобус — исследуйте со слоями и временным слайдером",layersTitle:"Слои",timeSlider:"Временной слайдер",howToUse:"Как использовать",tip1:"Используйте элементы управления для вращения глобуса",tip2:"Включайте/выключайте слои для визуализации разных данных",tip3:"Перемещайте временной слайдер для наблюдения исторических изменений",layers:{climate:"Климат",population:"Население",tectonic:"Тектонические плиты",trade:"Торговые пути",migration:"Миграция",countries:"Страны",dayNight:"День / Ночь"},controls:{rotateLeft:"Повернуть влево",rotateRight:"Повернуть вправо",pause:"Пауза",play:"Воспроизвести",zoomIn:"Увеличить",zoomOut:"Уменьшить",reset:"Сбросить",dayNight:"Цикл день/ночь"},eras:{ancientCivilizations:"Древние цивилизации: Египет, Месопотамия, долина Инда",classicalAge:"Классическая эпоха: Греция, Персия, Китайские империи",romanEmpire:"Римская империя и династия Хань",middleAges:"Средние века: Византия, Золотой век ислама",medievalPeriod:"Средневековье: Крестовые походы, Шёлковый путь",ageOfDiscovery:"Эпоха Великих географических открытий",industrialRevolution:"Промышленная революция и колониализм",modernEra:"Новейшее время: Мировые войны",postWar:"Послевоенный период: Холодная война, деколонизация",contemporary:"Современность: глобализация, интернет",present:"Наши дни"}},shapeSculpt:{title:"3D скульптор",subtitle:"Лепи 3D-фигуру руками через камеру — щипок захватывает угол, кулак вращает.",cardDescription:"Подойди к камере и деформируй парящий куб, защипывая его углы. 3D-моделирование без мыши — для уроков геометрии.",tag3D:"3D",tagGesture:"Жесты рук",enableCamera:"Включить камеру",stop:"Стоп",reset:"Сброс",retry:"Попробовать снова",loadingModel:"Загружаем модель рук… (~4МБ, только в первый раз)",modelError:"Не удалось загрузить модель. Проверьте сеть и обновите страницу.",introTitle:"3D из рук",introBody:"Включите камеру и используйте обе руки, чтобы лепить куб:",rightHand:"Правая",leftHand:"Левая",rightHandInstruction:"щипок большим и указательным — схватить угол.",leftHandInstruction:"сожмите кулак и двигайте — поворот.",pinchHint:"открыта",pinchActive:"щипок",fistHint:"открыта",fistActive:"кулак",hintIdle:"Нажмите «Включить» и поднесите обе руки в кадр.",hintPlaying:"Защипни угол правой · кулак + движение = поворот",consent:{title:"Использовать камеру?",body:"Камера нужна для отслеживания обеих рук. Всё работает на устройстве — видео никуда не отправляется.",accept:"Включить камеру"},errors:{denied:"Доступ к камере запрещён. Разрешите его в настройках браузера.",noDevice:"Камера не найдена на этом устройстве.",unknown:"Не удалось запустить камеру."}},poseMatch:{title:"Саймон говорит (повтори позу)",subtitle:"5-минутная разминка — повторяйте позу на экране своим телом.",cardDescription:"Встаньте перед камерой и повторите позу. Отличный способ переключиться между уроками.",tagBrainBreak:"Разминка",tagMovement:"Движение",start:"Начать",stop:"Стоп",playing:"Играем…",playAgain:"Ещё раз",requesting:"Запрашиваем камеру…",loadingModel:"Загружаем модель поз… (~6МБ, только в первый раз)",modelError:"Не удалось загрузить модель. Проверьте сеть и обновите страницу.",introTitle:"Готовы к разминке?",introBody:"Отойдите подальше, чтобы камера видела всё тело, и нажмите «Начать».",startHint:"Нажмите «Начать», чтобы стартовать.",holdHint:"Удерживайте позу одну секунду, чтобы засчиталось.",holdIt:"Держи!",greatJob:"Отлично!",allDone:"Поз пройдено: {{count}}.",targetPose:"Повтори эту позу",targetWaiting:"Следующая поза",poseLabel:"Поза {{n}} из {{total}}",poses:{handsUp:"Руки вверх!",tPose:"Буква Т",rightHandUp:"Правая рука вверх",star:"Звезда",flex:"Покажи мышцы",squat:"Присядь",leftHandUp:"Левая рука вверх",cactus:"Кактус",yPose:"Тянись к небу",warrior:"Покажи на небо"},consent:{title:"Использовать камеру?",body:"Камера нужна, чтобы считывать позу тела. Всё работает прямо на устройстве — видео никуда не отправляется.",accept:"Включить камеру"},errors:{denied:"Доступ к камере запрещён. Разрешите его в настройках браузера.",noDevice:"Камера не найдена на этом устройстве.",unknown:"Не удалось запустить камеру."}},fruitNinja:{title:"Fruit Ninja",subtitle:"Руби летающие фрукты руками. Раунд 60 секунд, 3 жизни.",cardDescription:"Махайте руками, чтобы рубить фрукты на экране — и берегитесь бомб! Энергичная 60-секундная разминка.",tagGame:"Игра",start:"Старт",stop:"Стоп",playing:"Рубим!",playAgain:"Ещё раз",requesting:"Запрашиваем камеру…",loadingModel:"Загружаем модель отслеживания рук… (~6МБ, только в первый раз)",modelError:"Не удалось загрузить модель. Проверьте сеть и обновите страницу.",introTitle:"Руби фрукты!",introBody:"Отойдите так, чтобы камера видела руки, и махайте, чтобы рубить фрукты. Бомбы не трогайте!",hintIdle:"Нажмите «Старт» и рубите фрукты руками.",hintPlaying:"Руби фрукты, уворачивайся от бомб!",lives:"Жизни",gameOver:"Ð
399’ремя вышло!",newBest:"Новый рекорд!",best:"Рекорд: {{best}}",consent:{title:"Использовать камеру?",body:"Камера нужна для отслеживания рук. Всё работает на устройстве — видео никуда не отправляется.",accept:"Включить камеру"},errors:{denied:"Доступ к камере запрещён. Разрешите его в настройках браузера.",noDevice:"Камера не найдена на этом устройстве.",unknown:"Не удалось запустить камеру."}},statueFreeze:{title:"Замри",subtitle:"Играет музыка, дети танцуют — музыка стихла, замри! Камера видит, кто шевелится.",cardDescription:"Классические «музыкальные статуи» с CV-судьёй. До 6 детей в кадре.",tagMultiplayer:"До 6 детей",freeze:"ЗАМРИ!",enableCamera:"Включить камеру",startRound:"Старт раунда",nextRound:"Следующий раунд",cancelRound:"Отмена",stop:"Стоп",playing:"Танцуй!",judging:"Проверяем…",requesting:"Запрашиваем камеру…",loadingModel:"Загружаем модель распознавания… (~6МБ, только в первый раз)",modelError:"Не удалось загрузить модель. Проверьте сеть и обновите страницу.",silentMode:"(музыки пока нет — тихий режим)",introTitle:"Замри",introBody:"Поставьте детей перед камерой, нажмите «Включить», а потом запустите раунд. Когда музыка стихнет, кто шевелится — выбывает!",hintIdle:"Включите камеру, чтобы начать.",hintReady:"Готов раунд {{round}}. Нажмите «Старт», чтобы запустить музыку.",hintPlaying:"Музыка играет — танцуй, пока не стихнет!",hintFreeze:"Не двигайся!",hintResults:"{{still}} замерли · {{moved}} двигались",consent:{title:"Использовать камеру?",body:"Камера нужна, чтобы видеть, кто шевелится. Всё работает на устройстве — видео никуда не отправляется.",accept:"Включить камеру"},errors:{denied:"Доступ к камере запрещён. Разрешите его в настройках браузера.",noDevice:"Камера не найдена на этом устройстве.",unknown:"Не удалось запустить камеру."}},balloonPop:{title:"Лопни шарики",cardDescription:"Взмахни рукой и лопни шарик."},reactionDash:{title:"Гонка реакции",cardDescription:"Двигайся сразу, когда появится сигнал."},jumpJack:{title:"Прыжки с разведением рук",cardDescription:"Прыгай, разводя руки и ноги, — в такт ритму."},zonePunch:{title:"Удар по зоне",cardDescription:"Взмахни рукой по светящейся зоне."},squatCount:{title:"Счёт приседаний",cardDescription:"Считай серии вниз → вверх."},balanceHold:{title:"Держи баланс",cardDescription:"Удерживай Т-позу."},breathBubble:{title:"Дыхание тишины",cardDescription:"Направленный цикл дыхания."},colorRush:{title:"Гонка цвета",cardDescription:"Быстро нажимай на цвет."},memoryFlash:{title:"Вспышка памяти",cardDescription:"Запомни порядок и повтори."},rhythmTap:{title:"Ритм тап",cardDescription:"Нажимай в такт — держи ритм."},stroop:{title:"Тест Струпа",cardDescription:"Не слово — выбери цвет чернил."},numberOrder:{title:"Порядок чисел",cardDescription:"1 → 2 → 3… по порядку."},mathPop:{title:"Математический поп",cardDescription:"Быстрые примеры +, ×."},redLight:{title:"Светофор",cardDescription:"На зелёном — двигайся, на красном — стой."},bubbleWrap:{title:"Пупырка",cardDescription:"Лопай стресс — хлопай всё подряд."},oddOne:{title:"Найди отличие",cardDescription:"Найди чужой эмодзи."},humanBody:{title:"Исследователь тела человека",description:"Интерактивная анатомия — переключайте системы органов и режим диагностики.",subtitle:"Исследуйте тело человека — переключайте системы и нажимайте на органы",layersTitle:"Системы тела",howToUse:"Как использовать",tip1:"Включайте/выключайте системы тела для отображения разных слоёв",tip2:"Нажмите на любой орган, чтобы увидеть его Ð
399½Ð°Ð·Ð²Ð°Ð½Ð¸Ðµ, функцию и интересные факты",tip3:"Переключитесь в режим Диагностики для интерактивного задания",controls:{explore:"Изучение",diagnose:"Диагноз",reset:"Сбросить",submitDiagnosis:"Поставить диагноз",nextScenario:"Следующий случай"},layers:{skeletal:"Скелетная система",muscular:"Мышечная система",circulatory:"Кровеносная система",nervous:"Нервная система",digestive:"Пищеварительная система",respiratory:"Дыхательная система",urinary:"Мочевыделительная система"},organInfo:{title:"Информация об органе",function:"Функция",funFact:"Интересный факт",selectOrgan:"Нажмите на орган для подробностей"},organs:{skull:{name:"Череп",function:"Защищает мозг и поддерживает структуру лица.",funFact:"Череп состоит из 22 сросшихся костей."},clavicle:{name:"Ключица",function:"Соединяет руку с туловищем и стабилизирует плечо.",funFact:"Ключица — самая часто ломающаяся кость в теле человека."},ribcage:{name:"Грудная клетка",function:"Защищает сердце и лёгкие.",funFact:"У большинства людей 12 пар рёбер."},spine:{name:"Позвоночник",function:"Поддерживает тело и защищает спинной мозг.",funFact:"Утром вы выше — диски сжимаются в течение дня."},scapula:{name:"Лопатка",function:"Крепит мышцы, двигающие руку.",funFact:"К лопатке прикреплено 17 различных мышц."},pelvis:{name:"Таз",function:"Выдерживает вес верхней части тела.",funFact:"Таз — одна из самых прочных костных структур тела."},femur:{name:"Бедренная кость",function:"Самая длинная и прочная кость тела.",funFact:"Бедренная кость выдерживает нагрузку в 30 раз больше веса тела."},tibia:{name:"Большеберцовая кость",function:"Голень — несёт вес тела между коленом и лодыжкой.",funFact:"Это вторая по длине кость тела после бедренной."},humerus:{name:"Плечевая кость",function:"Кость верхней руки, соединяющая плечо с локтем.",funFact:"Ощущение «смешной кости» возникает из-за локтевого нерва."},radius:{name:"Лучевая и локтевая кости",function:"Кости предплечья, позволяющие вращать кисть.",funFact:"Лучевая и локтевая кости перекрещиваются, когда вы поворачиваете ладонь вниз."},deltoid:{name:"Дельтовидная мышца",function:"Поднимает руку во всех направлениях.",funFact:"Дельтовидная мышца названа по форме греческой буквы дельта — треугольная."},pectorals:{name:"Грудные мышцы",function:"Двигают руки и помогают дыханию.",funFact:"Большая грудная мышца — самая крупная мышца груди."},biceps:{name:"Бицепс",function:"Сгибает руку в локте.",funFact:"Бицепс означает «две головки» — у него две точки прикрепления."},triceps:{name:"Трицепс",function:"Разгибает руку в локте — основная толкающая мышца.",funFact:"Трицепс составляет около двух третей массы плеча."},trapezius:{name:"Трапециевидная мышца",function:"Двигает и стабилизирует лопатки, поддерживает шею.",funFact:"Трапециевидная — одна из самых широких мышц спины."},abdominals:{name:"Мышцы живота",function:"Стабилизируют корпус и защищают внутренние органы.",funFact:"У всех есть пресс — у большинства он просто скрыт."},gluteus:{name:"Ягодичные мышцы",function:"Самая мощная группа мышц для разгибания бедра.",funFact:"Большая ягодичная — самая крупная мышца человеческого тела."},quadriceps:{name:"Квадрицепс",function:"Разгибает колено, помогает при ходьбе и беге.",funFact:"Квадрицепс — самая сильная группа мышц тела."},hamstring:{name:"Подколенное сухожилие",function:"Сгибает колено и разгибает бедро при ходьбе и беге.",funFact:"Травмы подколенного сухожилия — самые частые спортивные травмы."},calf:{name:"Икроножная мышца",function:"Отталкивает стопу — необходима для ходьбы, бега и прыжков.",funFact:"Икроножная мышца может создавать силу в 3 раза больше веса тела."},heart:{name:"Сердце",function:"Перекачивает кровь по всему телу.",funFact:"Сердце бьётся около 100 000 раз в день."},aorta:{name:"Аорта",function:"Самая крупная артерия — несёт кровь от сердца.",funFact:"Диаметр аорты примерно как у садового шланга."},venaCava:{name:"Полая вена",function:"Самая крупная вена — возвращает деоксигенированную кровь к сердцу.",funFact:"Полая вена несёт около 70% всей крови, возвращающейся к сердцу."},carotid:{name:"Сонная артерия",function:"Снабжает мозг и голову насыщенной кислородом кровью.",funFact:"Пульс на сонной артерии можно нащупать на шее."},femoral:{name:"Бедренная артерия",function:"Главная артерия, снабжающая кровью ноги.",funFact:"Бедренная артерия — самая крупная артерия бедра."},lungLeft:{name:"Левое лёгкое",function:"Обменивает кислород и углекислый газ в крови.",funFact:"Левое лёгкое чуть меньше — освобождает место для сердца."},lungRight:{name:"Правое лёгкое",function:"Обменивает кислород и углекислый газ в крови.",funFact:"Если расправить лёгкие, их площадь равна теннисному корту."},trachea:{name:"Трахея",function:"Проводит воздух от горла к лёгким.",funFact:"Трахея укреплена С-образными хрящевыми кольцами."},bronchi:{name:"Бронхи",function:"Разветвляются от трахеи, доставляя воздух в каждое лёгкое.",funFact:"Правый бронх шире и короче левого."},diaphragm:{name:"Диафрагма",function:"Главная мышца дыхания — сокращается, втягивая воздух.",funFact:"Икота вызвана непроизвольными спазмами диафрагмы."},esophagus:{name:"Пищевод",function:"Переносит пищу из горла в желудок.",funFact:"Пища не падает в желудок — мышцы протаÐ
399»ÐºÐ¸Ð²Ð°ÑŽÑ‚ её."},stomach:{name:"Желудок",function:"Расщепляет пищу кислотой и ферментами.",funFact:"Желудок обновляет слизистую каждые 3–4 дня."},liver:{name:"Печень",function:"Фильтрует кровь, вырабатывает желчь, перерабатывает питательные вещества.",funFact:"Печень может восстановиться, даже если удалить 75%."},gallbladder:{name:"Жёлчный пузырь",function:"Хранит и концентрирует желчь, выработанную печенью.",funFact:"Можно жить без жёлчного пузыря — желчь поступает напрямую из печени."},pancreas:{name:"Поджелудочная железа",function:"Вырабатывает пищеварительные ферменты и регулирует сахар в крови инсулином.",funFact:"Поджелудочная железа производит около 1,5 литра пищеварительного сока в день."},smallIntestine:{name:"Тонкий кишечник",function:"Усваивает большинство питательных веществ из переваренной пищи.",funFact:"Длина тонкого кишечника — около 6 метров."},colon:{name:"Толстый кишечник",function:"Всасывает воду и формирует твёрдые отходы.",funFact:"В толстом кишечнике обитают триллионы бактерий, помогающих пищеварению."},appendix:{name:"Аппендикс",function:"Может служить резервуаром полезных бактерий кишечника.",funFact:"Аппендикс долго считался бесполезным, но может помогать восстанавливать микрофлору."},brain:{name:"Мозг",function:"Управляет всеми функциями тела, мыслями и эмоциями.",funFact:"Мозг потребляет 20% всей энергии тела."},cerebellum:{name:"Мозжечок",function:"Координирует движения, равновесие и моторное обучение.",funFact:"Мозжечок содержит больше нейронов, чем весь остальной мозг."},spinalCord:{name:"Спинной мозг",function:"Передаёт нервные сигналы между мозгом и телом.",funFact:"Спинной мозг прекращает рост в 4–5 лет."},nerves:{name:"Нервная сеть",function:"Переносит электрические сигналы по всему телу.",funFact:"Нервные импульсы движутся со скоростью до 120 м/с."},kidneyLeft:{name:"Левая почка",function:"Фильтрует кровь, удаляя отходы и лишнюю жидкость в виде мочи.",funFact:"Каждая почка содержит около 1 миллиона фильтрующих единиц — нефронов."},kidneyRight:{name:"Правая почка",function:"Фильтрует кровь, удаляя отходы и лишнюю жидкость в виде мочи.",funFact:"Правая почка расположена немного ниже левой из-за печени."},ureter:{name:"Мочеточник",function:"Переносит мочу из почки в мочевой пузырь.",funFact:"Мочеточники продвигают мочу волнообразными сокращениями."},bladder:{name:"Мочевой пузырь",function:"Хранит мочу до её выведения из организма.",funFact:"Мочевой пузырь может вместить 400–600 мл мочи."}},diagnose:{title:"Режим диагностики",selectSymptoms:"Выберите симптомы пациента:",chooseDiagnosis:"Выберите диагноз:",correct:"Правильно! Молодец!",incorrect:"Не совсем верно.",symptoms:{chestPain:"Боль в груди",shortnessOfBreath:"Одышка",leftArmNumbness:"Онемение левой руки",abdominalPain:"Боль в животе",nausea:"Тошнота",bloating:"Вздутие",headache:"Головная боль",dizziness:"Головокружение",blurredVision:"Нечёткое зрение",wheezing:"Свистящее дыхание",tightChest:"Сдавленность в груди",frequentCoughing:"Частый кашель",flankPain:"Боль в пояснице и боку",painfulUrination:"Болезненное мочеиспускание",fever:"Лихорадка и озноб",legPain:"Боль в ноге после нагрузки",swelling:"Отёк в области бедра",limitedMotion:"Ограниченная подвижность"},scenarios:{chestPain:{title:"Боль в груди",description:"45-летний пациент жалуется на сильную боль в груди, отдающую в левую руку, с затруднённым дыханием."},stomachAche:{title:"Боль в животе",description:"30-летний пациент жалуется на постоянную боль в верхней части живота, тошноту и вздутие после еды."},headache:{title:"Сильная головная боль",description:"25-летний студент жалуется на интенсивную пульсирующую головную боль, головокружение и периодическое нечёткое зрение."},breathingDifficulty:{title:"Затруднённое дыхание",de
399scription:"У 12-летнего ребёнка повторяющиеся эпизоды свистящего дыхания, сдавленности в груди и кашля, особенно при физической нагрузке."},kidneyPain:{title:"Боль в почках",description:"35-летняя женщина обратилась с сильной болью в пояснице и боку, болезненным мочеиспусканием и лихорадкой с ознобом."},muscleInjury:{title:"Мышечная травма",description:"20-летний спортсмен жалуется на резкую боль в правом бедре после спринта, с заметным отёком и трудностями при сгибании колена."}},diagnoses:{heartAttack:{name:"Инфаркт",explanation:"Боль в груди, отдающая в левую руку — классический признак инфаркта миокарда."},pneumonia:{name:"Пневмония",explanation:"Пневмония вызывает боль в груди и одышку, но обычно не вызывает онемение руки."},ribFracture:{name:"Перелом ребра",explanation:"Перелом ребра вызывает локальную боль, но не влияет на руку."},gastritis:{name:"Гастрит",explanation:"Гастрит — воспаление слизистой желудка, вызывающее боль в верхней части живота, тошноту и вздутие."},appendicitis:{name:"Аппендицит",explanation:"Аппендицит обычно вызывает боль в правой нижней части живота."},foodPoisoning:{name:"Пищевое отравление",explanation:"Пищевое отравление вызывает внезапную рвоту и диарею, а не постоянную боль."},migraine:{name:"Мигрень",explanation:"Мигрень вызывает пульсирующую головную боль, часто с нарушениями зрения и головокружением."},concussion:{name:"Сотрясение мозга",explanation:"Сотрясение требует травмы головы. Без травмы повторяющиеся головные боли указывают на мигрень."},hypertension:{name:"Гипертония",explanation:"Высокое давление может вызывать головные боли, но обычно у пожилых пациентов."},asthma:{name:"Астма",explanation:"Повторяющиеся свистящее дыхание, сдавленность в груди и кашель при нагрузке — признаки астмы у детей."},bronchitis:{name:"Бронхит",explanation:"Бронхит — обычно разовая инфекция, не повторяющиеся эпизоды при нагрузке."},heartFailure:{name:"Сердечная недостаточность",explanation:"Сердечная недостаточность крайне редко встречается у детей."},kidneyInfection:{name:"Инфекция почек (пиелонефрит)",explanation:"Боль в пояснице в сочетании с лихорадкой, ознобом и болезненным мочеиспусканием — классическая триада инфекции почек."},kidneyStone:{name:"Камень в почке",explanation:"Камни в почках вызывают сильную боль, но обычно без лихорадки. Боль возникает волнами."},uti:{name:"Инфекция мочевыводящих путей",explanation:"ИМП вызывает болезненное мочеиспускание, но обычно без сильной боли в пояснице и высокой температуры."},muscleStrain:{name:"Растяжение мышцы (квадрицепс)",explanation:"Резкая боль при спринте с отёком и ограниченной подвижностью — классическое растяжение квадрицепса."},fracture:{name:"Перелом бедренной кости",explanation:"Перелом бедренной кости требует огромной силы и полностью исключает опору на ногу."},deepVeinThrombosis:{name:"Тромбоз глубоких вен",explanation:"ТГВ вызывает отёк и боль, но обычно развивается постепенно, а не при физической нагрузке."}}}},physicsLab:{title:"Виртуальная лаборатория физики",description:"Интерактивные 2D-симуляции физики для демонстрации на уроках",subtitle:"Изучайте физические концепции с помощью симуляций в реальном времени",pickSimulation:"Выберите симуляцию",parameters:"Параметры",readouts:"Показания",howToUse:"Как использовать",tip1:"Выберите симуляцию из боковой панели",tip2:"Настройте параметры с помощью ползунков",tip3:"Нажмите «Запуск» для начала анимации",tip4:"Наблюдайте за показаниями в реальном времени",controls:{play:"Запуск",pause:"Пауза",reset:"Сброс",speed:"Скорость"},simulations:{projectile:{name:"Движение снаряда",description:"Запустите мяч и наблюдайте параболическую траекторию"},pendulum:{name:"Простой маятник",description:"Наблюдайте колебания, период и обмен энергией"},inclinedPlane:{name:"Наклонная плоскость",description:"Изучайте силы, действующие на блок на наклонной плоскости"},springOscillator:{name:"Пружинный осциллятор",description:"Система масса-Ð
399¿Ñ€ÑƒÐ¶Ð¸Ð½Ð° с затуханием и графиком смещения"},freeFall:{name:"Свободное падение",description:"Сравните падение объектов в вакууме и воздухе"},collision:{name:"Столкновение",description:"Упругие и неупругие столкновения с сохранением импульса"},waveInterference:{name:"Интерференция волн",description:"Картина интерференции от двух источников"},buoyancy:{name:"Плавучесть (Архимед)",description:"Плавание или погружение объекта в жидкости"},lever:{name:"Рычаг и момент силы",description:"Балансир с настраиваемыми массами и расстояниями"},circularMotion:{name:"Круговое движение",description:"Объект на верёвке с центростремительной силой"}},params:{velocity:"Начальная скорость",angle:"Угол запуска",gravity:"Гравитация",length:"Длина маятника",mass:"Масса",damping:"Затухание",initialAngle:"Начальный угол",rampAngle:"Угол наклона",friction:"Коэффициент трения",springConstant:"Жёсткость пружины",initialDisplacement:"Начальное смещение",massA:"Масса A",massB:"Масса B",height:"Высота падения",airResistance:"Сопротивление воздуха",dragCoefficient:"Коэффициент сопротивления",velocityA:"Скорость A",velocityB:"Скорость B",elasticCollision:"Упругое столкновение",wavelength:"Длина волны",separation:"Расстояние между источниками",amplitude:"Амплитуда",objectDensity:"Плотность объекта",fluidDensity:"Плотность жидкости",objectSize:"Размер объекта",massLeft:"Масса слева",massRight:"Масса справа",distLeft:"Расстояние слева",distRight:"Расстояние справа",radius:"Радиус",angularVelocity:"Угловая скорость",tensionLimit:"Предел натяжения"},readoutLabels:{time:"Время",maxHeight:"Макс. высота",range:"Дальность",flightTime:"Время полёта",currentVelocity:"Скорость",positionX:"Позиция X",positionY:"Позиция Y",period:"Период",kineticEnergy:"Кинетическая энергия",potentialEnergy:"Потенциальная энергия",totalEnergy:"Полная энергия",currentAngle:"Угол",acceleration:"Ускорение",position:"Позиция",netForce:"Результирующая сила",normalForce:"Сила нормальной реакции",frictionForce:"Сила трения",displacement:"Смещение",frequency:"Частота",amplitude:"Амплитуда",velocityA:"Скорость A",velocityB:"Скорость B",heightA:"Высота A",heightB:"Высота B",timeDifference:"Разница во времени",momentumBefore:"Импульс (до)",momentumAfter:"Импульс (после)",keBefore:"КЭ (до)",keAfter:"КЭ (после)",wavelengthVal:"Длина волны",separationVal:"Расстояние",objectWeight:"Вес объекта",buoyantForce:"Сила Архимеда",submergedFraction:"Погружение",torqueLeft:"Момент слева",torqueRight:"Момент справа",netTorque:"Результирующий момент",balanced:"Равновесие",centripetalForce:"Центростремительная сила",angularVelocityVal:"Угловая скорость",tensionStatus:"Состояние натяжения"}},chemLab:{title:"Виртуальная лаборатория химии",description:"Интерактивные 2D-симуляции химии для демонстрации на уроках",subtitle:"Изучайте химические концепции с помощью симуляций в реальном времени",pickSimulation:"Выберите симуляцию",parameters:"Параметры",readouts:"Показания",howToUse:"Как использовать",tip1:"Выберите симуляцию из боковой панели",tip2:"Настройте параметры с помощью ползунков",tip3:"Нажмите «Запуск» для начала анимации",tip4:"Наблюдайте за показаниями в реальном времени",controls:{play:"Запуск",pause:"Пауза",reset:"Сброс",speed:"Скорость"},simulations:{gasLaws:{name:"Газовые законы",description:"Анимированные частицы в контейнере — изучите PV=nRT"},statesOfMatter:{name:"Агрегатные состояния",description:"Фазовые переходы: твёрдое, жидкое, газообразное"},acidBase:{name:"Кислоты и основания / pH",description:"Смешивайте кислоту и щёлочь, наблюдайте за pH и цветом"},atomicStructure:{name:"Строение атома",description:"Электронные оболочки для элементов 1-18"},reactionRate:{name:"Скорость реакции",description:"Температура и концентрация влияют на скорость столкновений"}},params:{temperature:"Температура",volume:"Объём",particleCount:"Количество частиц",acidDrops:"Капли кислоты",baseDrops:"Капли щёлочи",acidStrength:"Сила кислоты",baseStrength:"Сила щёлочи",atomicNumber:"Атомный номер (Z)",concentration:"Концентрация",activationEnergy:"Энергия активации"},readoutLabels:{time:"Время",pressure:"Давление",volume:"Объём",temperature:"Температура",particles:"Частицы",pvnrt:"PV/nRT",phase:"Фаза",avgSpeed:"Средн. скорость",phValue:"pH",hConcentration:"[H⁺]",ohConcentration:"[OH⁻]",solutionType:"Тип раствора",acidDrops:"Капли кислоты",baseDrops:"Капли щёлочи",element:"Элемент",atomicNumber:"Атомный номер",massNumber:"Массовое число",electronConfig:"Электронная конфигурация",valenceElectrons:"Валентные электроны",reactantsA:"Реагент A",reactantsB:"Реагент B",productsFormed:"Образовано продуктов",reactionRateVal:"Скорость реакции",collisions:"Успешные столкновения"}}},O3={title:"Минутка отдыха",description:"19 активностей: движение с камерой + игры на внимание и память без камеры.",start:"Начать",subscribeRequired:"Нужна подписка",badgeCv:"CV",badgeNoCamera:"БЕЗ КАМЕРЫ"},M3={graded:"Работа успешно оценена",allGraded:"Все работы успешно оценены",gradeWithAI:"Оценить с AI",gradeAll:"Оценить все",ungraded:"Не оценено",quotaLabel:"Лимит AI оценок",quotaExhausted:"Лимит AI оценок исчерпан. Обновите тариф.",upgradePlan:"Обновить тариф",assignmentsLocked:"Задания доступны только на платных тарифах",createAssignment:"Создать задание"},L3={quotaLabel:"Лимит AI оценок",quotaExhausted:"Лимит AI оценок исчерпан. Обновите тариф."},I3={title:"Презентация V2",beta:"БЕТА",createNew:"Создать",noPresentation:"Нет презентаций",noPresentationDesc:"Создайте первую V2 презентацию",deleteConfirm:"Вы уверены, что хотите удалить эту презентацию? Это действие нельзя отменить.",search:"Поиск презентаций...",slides:"слайдов",delete:"Удалить",cancel:"Отмена",generateOutline:"Создать план",viewSample:"Посмотреть пример",outline:"План",back:"Назад",regenerate:"Перегенерировать",generate:"Создать презентацию",addSlide:"Добавить слайд",addPoint:"Добавить пункт",generating:"AI создаёт презентацию...",created:"Презентация создана!",createAnother:"Создать ещё",viewPresentation:"Открыть презентацию",present:"Показать",exportPptx:"Скачать PPTX",exportPdf:"Скачать PDF",previous:"Назад",next:"Далее"},F3={title:"Telegram бот",description:"Привяжите Telegram-бота Zerde к аккаунту",connect:"Подключить Telegram",connectHint:"Откройте бота и подтвердите привязку. Код действует 5 минут.",openBot:"Открыть Telegram",openInTelegram:"Открыть в Telegram",scanOrOpen:"Отсканируйте QR телефоном или нажмите кнопку ниже",qrAlt:"QR-код привязки Telegram",waitingConfirm:"Ожидание подтверждения в Telegram…",codeExpired:"Код истёк. Получите новый код и попробуйте снова.",tryAgain:"Повторить",connected:"Подключено ✅",disconnect:"Отключить",linkedAt:"Привязано: {{date}}",yourAccount:"ваш аккаунт",alreadyLinked:"Telegram привязан: {{username}}"},U3={title:"Моя школа",noSchoolTitle:"Пока нет школы",noSchoolHint:"Вы не состоите в школе. Если директор добавит вас по email, вы автоматически присоединитесь при следующем входе.",notFound:"Школа не найдена",noCity:"Город не указан",noPlan:"Тариф ещё не назначен",info:"Информация о школе",infoHint:"Отображается на публичной странице школы.",infoSaved:"Информация о школе сохранена",contactEmail:"Контактный email",websiteUrl:"Сайт",logoUrl:"URL логотипа",foundedYear:"Год основания",address:"Адрес",description:"Описание",location:"Местоположение",locationHint:"Кликните в любом месте карты, чтобы поставить метку, или перетащите её — координаты ниже обновятся автоматически. Их также можно ввести вручную.",latitude:"Широта",longitude:"Долгота",statusActive:"Активен",statusInactive:"Неактивна",statusRevoked:"Отозван",roleDirector:"Директор",roleTeacher:"Учитель",currentPlan:"Текущий тариф",plan:"Тариф школы",planHint:"Смена тарифа применяется мгновенно ко всем активным участникам.",selectPlan:"Выберите тариф",assignPlan:"Назначить тариф",planAssigned:"Тариф применён к {{count}} участнику(ам)",addTeacher:"Добавить учителя",addTeacherHint:"Добавьте по email — доступ появится сразу, если у него уже есть аккаунт.",teacherEmailPlaceholder:"[email protected]",sendInvite:"Добавить учителя",teacherAdded:"✅ {{email}} добавлен — доступ уже есть.",teacherPending:"У {{email}} ещё нет аккаунта Zerde — он будет добавлен автоматически, как только зарегистрируется с этим email.",members:"Участники",membersHint:"Все, кто когда-либо присоединялся к этой школе — активные и отозванные.",member:"Участник",role:"Роль",status:"Статус",joinedAt:"Дата вступления",noMembers:"Участников пока нет",removeMemberConfirm:'Удалить "{{name}}" из школы? Их тариф, выданный школой, тоже будет отозван.',makeDirector:"Сделать директором",makeTeacher:"Сделать учителем",pending:"Ожидают",noPending:"Нет ожидающих добавлений — у всех добавленных уже есть аккаунт.",activated:"Школа активирована",deactivated:"Школа деактивирована",memberRemoved:"Участник удалён",editProfile:"Редактировать профиль",memberPhoto:"URL фото",memberSubject:"Предмет",memberBio:"О себе",analytics:"Использование за этот месяц",noAnalytics:"В этом месяце использования пока не зафиксировано",bestStudents:"Лучшие ученики",bestStudentsHint:"Отметьте лучших учеников на странице школы.",addStudent:"Добавить ученика",editStudent:"Редактировать ученика",studentName:"Имя",studentAchievement:"Достижение",displayOrder:"Порядок отображения",removeStudentConfirm:'Удалить "{{name}}
399" из лучших учеников?',noStudents:"Пока нет отмеченных учеников",dayOfWeek:"День",startTime:"Начало",endTime:"Конец",entryTitle:"Название",room:"Кабинет",teacher:"Учитель",noTeacher:"Учитель не назначен",addScheduleEntry:"Добавить урок",editScheduleEntry:"Редактировать урок",removeScheduleEntryConfirm:'Удалить "{{title}}" из расписания?',schedule:{title:"Расписание",hint:"Расписание класса на неделю — нажмите + на пустом слоте, чтобы добавить урок.",pickClassHint:"Выберите класс, чтобы посмотреть или изменить его расписание.",empty:"Расписание пока пустое",days:{mon:"Понедельник",tue:"Вторник",wed:"Среда",thu:"Четверг",fri:"Пятница",sat:"Суббота",sun:"Воскресенье"}},subjects:"Предметы",subjectsHint:"Какие предметы преподаёт эта школа — используется для выбора предмета в расписании.",subjectsSaved:"Предметы сохранены",useAllSubjects:"Использовать все предметы платформы",useAllSubjectsHint:"Отключите, чтобы выбрать конкретный набор предметов.",emptySelectionHint:"Если ничего не отмечено, снова будут использоваться все предметы платформы.",customSubjects:"Свои предметы",customSubjectsHint:"Предметы школы, которых нет в каталоге платформы.",noCustomSubjects:"Своих предметов пока нет",customSubjectPlaceholder:"например, Робототехника",addCustomSubject:"Добавить предмет",removeCustomSubjectConfirm:'Удалить "{{name}}"?',cabinets:"Кабинеты",cabinetsHint:"Помещения, в которых занимается школа — используются в конструкторе расписания.",cabinetNumber:"Номер",cabinetTitle:"Название (опционально)",cabinetTitlePlaceholder:"например, Кабинет химии",addCabinet:"Добавить кабинет",noCabinets:"Кабинетов пока нет",removeCabinetConfirm:'Удалить "{{name}}"?',classes:"Классы",classesHint:"Классы/группы (например, «7А») — используются в конструкторе расписания.",classNumber:"Номер",classTitle:"Название (опционально)",classTitlePlaceholder:"например, Физико-математический профиль",addClass:"Добавить класс",noClasses:"Классов пока нет",noClassesForSchedule:"Классов пока нет — сначала добавьте класс в разделе «Классы».",removeClassConfirm:'Удалить "{{name}}"?',manageClassHint:"Код приглашения и состав этого класса.",joinCode:"Код приглашения",generateJoinCode:"Создать код приглашения",regenerateJoinCode:"Обновить код",regenerateJoinCodeConfirm:"Будет выдан новый код — старый перестанет работать сразу же, даже для учеников, у которых он уже есть.",joinCodeHiddenHint:"Код не отображается после закрытия этого окна — в любой момент создайте новый, чтобы снова увидеть и поделиться им.",classRoster:"Состав класса",noRosterStudents:"В составе этого класса пока нет учеников",subject:"Предмет",noSubject:"Без предмета",noCabinet:"Без кабинета"},$3={title:"3D модели",subtitle:"Интерактивные 3D модели для ваших уроков — вращайте, приближайте и изучайте",selectSubject:"Выберите предмет, чтобы посмотреть его модели",noSubjects:"Пока ни у одного предмета нет 3D моделей",noModels:"Дл
399я этого предмета пока нет 3D моделей",searchPlaceholder:"Поиск моделей...",noSearchResults:"Нет моделей, соответствующих запросу",poweredBy:"Работает на Sketchfab",viewOnSketchfab:"Открыть на Sketchfab",modelBy:"Модель: {{name}}",attributionPrefix:"Модель:"},z3={common:r3,nav:o3,auth:i3,landing:s3,dashboard:a3,qmj:l3,lessons:c3,presentations:u3,videos:d3,marketplace:f3,admin:p3,profile:m3,grades:h3,errors:g3,footer:v3,termsPage:y3,privacyPage:b3,subscription:w3,quizzes:x3,sessions:S3,status:C3,documents:P3,assessments:E3,bloom:k3,scientificProjects:T3,authorPrograms:A3,avatar:R3,conversation:_3,agent:D3,classroom:j3,helpers:N3,brainBreaksList:O3,assignments:M3,homeworkCheck:L3,presentationsV2:I3,telegram:F3,school:U3,models3d:$3},V3={loading:"Loading...",error:"Error",success:"Success",save:"Save",saving:"Saving...",saved:"Saved",cancel:"Cancel",export:"Export",delete:"Delete",edit:"Edit",create:"Create",search:"Search",clear:"Clear",filter:"Filter",sort:"Sort",back:"Back",share:"Share",next:"Next",previous:"Previous",submit:"Submit",confirm:"Confirm",close:"Close",view:"View",download:"Download",upload:"Upload",noData:"No data",required:"Required",optional:"Optional",all:"All",yes:"Yes",no:"No",or:"or",manage:"Manage",grade:"grade",actions:"Actions",add:"Add",minutes:"minutes",min:"min",preview:"Preview",generating:"Generating...",showLess:"Show less",showMore:"Show more",questions:"questions",creating:"Creating...",true:"True",false:"False",typeMessage:"Type a message...",aiThinking:"AI is thinking...",description:"Description",theme:{light:"Light",dark:"Dark",system:"System",toggleTheme:"Toggle theme"}},H3={home:"Home",dashboard:"Dashboard",qmj:"Lesson Plans",presentations:"Presentations",videos:"Videos",quizzes:"Quizzes",games:"Games",marketplace:"Marketplace",profile:"Profile",admin:"Admin",logout:"Logout",login:"Login",lessons:"Lessons",subscription:"Subscription",tools:"Tools",documents:"Documents",avatar:"AI Avatar",classrooms:"Classrooms",helpers:"Helpers",arGlobe:"AR Geography Globe",telegram:"Telegram bot",school:"My School",schoolTeachers:"Teachers",schoolStudents:"Best students",schoolAdministration:"School administration",schoolClasses:"Classes",schoolSubjects:"Subjects",schoolCabinets:"Cabinets",schoolSchedule:"Schedule"},q3={login:"Login",logout:"Logout",phoneNumber:"Phone Number",enterPhone:"Enter your phone number",sendOtp:"Send Code",sending:"Sending...",otpSent:"Code sent",enterOtp:"Enter the code sent to WhatsApp",verifyOtp:"Verify Code",invalidOtp:"Invalid code",otpExpired:"Code expired",resendOtp:"Resend Code",welcomeBack:"Welcome back!",termsAgreement:"By continuing, you agree to our Terms of Service and Privacy Policy"}
399,B3={hero:{title:"AI Platform for Teachers in Kazakhstan",subtitle:"Create lesson plans, presentations, and videos - all in Kazakh language",cta:"Start Free",secondaryCta:"Learn More"},comparison:{qmj:"Create lesson plan",presentation:"Create presentation",video:"Create video lesson"},features:{title:"Features",qmj:{title:"Lesson Plan Generation",description:"Create lesson plans in minutes using AI"},presentations:{title:"Presentations",description:"Automatically create professional presentations"},videos:{title:"Video Content",description:"Create educational videos using AI"},marketplace:{title:"Educational Materials",description:"Buy ready-made materials or sell your own"}},pricing:{title:"Pricing",free:{title:"Free",price:"₸0",period:"month",features:["5 lesson plan generations","3 presentations","Marketplace access"]},basic:{title:"Basic",price:"₸2,990",period:"month",features:["30 lesson plan generations","20 presentations","5 videos","Sell materials"]},pro:{title:"PRO",price:"₸5,990",period:"month",features:["Unlimited lesson plans","Unlimited presentations","20 videos","Priority support"]}},testimonials:{title:"User Testimonials"},cta:{title:"Start Today",description:"Join thousands of teachers",button:"Sign Up Free"}},W3={welcome:"Welcome",overview:"Overview",usageOverview:"Usage Overview",stats:{qmjGenerated:"Lesson Plans Created",presentationsCreated:"Presentations",videosCreated:"Videos",walletBalance:"Wallet Balance"},recentActivity:"Recent Activity",quickActions:"Quick Actions",subscription:{title:"Subscription",current:"Current Plan",expires:"Expires",upgrade:"Upgrade",remaining:"Remaining"},explore3d:"Explore in 3D"},G3={title:"Lesson Plans (QMJ)",list:"All Lesson Plans",create:"Create Lesson Plan",generate:"Generate Lesson Plan",form:{topic:"Lesson Topic",topicPlaceholder:"e.g., Biography of Abai Kunanbayev",subject:"Subject",grade:"Grade",duration:"Duration (minutes)",quarter:"Quarter",lessonNumber:"Lesson Number",lessonType:"Lesson Type",language:"Generation Language"},lessonTypes:{standard:"Standard",interactive:"Interactive",project:"Project-based",assessment:"Assessment",review:"Review"},sections:{objectives:"Lesson Objectives",materials:"Required Materials",introduction:"Introduction",mainActivity:"Main Activity",conclusion:"Conclusion",assessment:"Assessment",homework:"Homework"},generating:"Generating lesson plan...",generated:"Lesson plan created successfully",limitReached:"Generation limit reached.",upgradePrompt:"Upgrade your plan for more generations.",thisMonth:"this month",remaining:"remaining",gradeUnit:"grade",actions:{edit:"Edit"},presentation:{create:"Create Presentation",open:"Open Presentation",generating:"Creating...",startingGeneration:"Creating presentation...",willNotify:"We'll notify you when it's ready.",successTitle:"Presentation ready!",successDescription:"Your presentation has been created successfully.",checkList:"Check the presentations list.",openPresentation:"Open",errorTitle:"An error occurred",genericError:"Failed to create presentation.",timeout:"Generation timed out.",submitError:"Failed to start generation."}},K3={title:"Open Lesson",list:"All Open Lessons",create:"Create Open Lesson",generate:"Generate Open Lesson",generating:"Generating open lesson...",generated:"Open lesson created successfully",presentationSaved:"Presentation saved to lesson",deleteConfirm:"Are you sure you want to delete this lesson? This action cannot be undone.",form:{topic:"Lesson Topic",topicPlaceholder:"e.g., Python loops: for and while",grade:"Grade",subject:"Subject",studyPurpose:"Study Purpose (Curriculum Objective)",studyPurposePlaceholder:"e.g., 7.2.3.1 Understand and apply cyclic algorithms",lessonPurpose:"Lesson Purpose (SMART)",lessonPurposePlaceholder:"e.g., Students will compare for and while loops and solve 3 problems"},limitReached:"Generation limit reached.",upgradePrompt:"Upgrade your plan for more generations.",thisMonth:"this month",remaining:"remaining",progress:{starting:"Starting generation...",analyzing:"Analyzing data...",creatingPlan:"Creating lesson plan...",generatingContent:"Generating content...",preparingPresentation:"Preparing presentation...",finalizing:"Finalizing...",almostDone:"Almost done..."},editPresentation:"Edit Presentation",unsavedChanges:"You have unsaved changes. Are you sure you want to cancel?",tabs:{plan:"Plan",presentation:"Presentation",materials:"Materials",video:"Video"},materials:"Materials",noMaterials:"No materials available",planContent:"Lesson Plan",editPlan:"Edit Plan",planContentPlaceholder:"Enter lesson plan content here...",qmjInfo:"QMJ Information",qmjTitle:"Title",viewQMJ:"View QMJ",noSlides:"No slides in presentation",slides:"Slides",video:"Video",videoTitle:"Title",viewVideo:"View Video",export:{preparing:"Preparing...",failed:"Export failed",plan:"Export Plan",presentation:"Export Presentation",all:"Download All Materials",word:"Word (.docx)",pptx:"PowerPoint (.pptx)",pdf:"PDF (.pdf)",exportingPlan:"Exporting plan...",exportingPresentation:"Exporting presentation..."},noPresentation:"You don't have a presentation",noPresentationDescription:"Click the button below to create a presentation for this lesson",createPresentation:"Create Presentation"},Q3={title:"Presentations",list:"All Presentations",create:"Create Presentation",form:{title:"Title",titlePlaceholder:"Presentation title",outline:"Outline",outlinePlaceholder:"Presentation structure",style:"Style",content:"Content"},styles:{professional:"Professional",creative:"Creative",minimalist:"Minimalist",educational:"Educational",corporate:"Corporate"}
399,thisMonth:"this month",remaining:"remaining",noSlides:"No slides in this presentation",detail:{exit:"Exit",navigate:"Navigate",showSidebar:"Show sidebar",hideSidebar:"Hide sidebar",unsavedChanges:"Unsaved changes",saved:"Saved!",cancel:"Cancel",save:"Save",edit:"Edit",download:"Download",exporting:"Exporting...",exportingTitle:"Exporting Presentation",preparingExport:"Preparing export...",downloadComplete:"Download complete!",exportFailed:"Export failed. Please try again.",slidesCount:"{{count}} slides",addSlide:"Add Slide",duplicate:"Duplicate",editModeHint:"Edit Mode - Click on text to edit, use sidebar to manage slides",cancelConfirm:"You have unsaved changes. Are you sure you want to cancel?",powerpoint:"PowerPoint",pptxFormat:".pptx format",pdfDocument:"PDF Document",pdfFormat:".pdf format",present:"Present"},generator:{pageTitle:"Create Presentation with AI",pageSubtitle:"Describe your topic and AI will create a professional presentation in a minute",topicPlaceholder:"e.g., History of Kazakhstan's Independence...",slides:"slides",generateOutline:"Create Outline",generating:"Generating...",exampleTopics:"Example Topics",moreExamples:"More Examples",back:"Back",regenerate:"Regenerate",generate:"Generate",structure:"Presentation Structure",dragHint:"drag to reorder",presentationName:"Presentation Name",addSlide:"Add Slide",addPoint:"Add Point",settings:"Settings",textDensity:"Text Density",textDensityHint:"Amount of text per slide",density:{minimal:"Minimal",brief:"Brief",detailed:"Detailed",extensive:"Extensive"},theme:"Visual Theme",preview:"Preview",creatingPresentation:"Creating Your Presentation",slideOf:"Slide {{current}} of {{total}}:",progress:"Progress",generatingNow:"Generating...",completedSlides:"Completed Slides",cancel:"Cancel",presentationReady:"Presentation Ready!",slidesCreated:'Created {{count}} slides on "{{topic}}"',createAnother:"Create Another",openPresentation:"Open Presentation",newSlide:"New Slide",keyPoint1:"Key Point 1",keyPoint2:"Key Point 2",newPoint:"New Point",examples:{abai:"Life and Works of Abai Kunanbayev",independence:"History of Kazakhstan's Independence",nature:"Nature and Ecology of Kazakhstan",math:"Quadratic Equations in Algebra",physics:"Newton's Laws and Mechanics Basics",chemistry:"Periodic Table of Chemical Elements",biology:"Structure of the Human Body",geography:"Geographic Location of Kazakhstan",literature:"Works of Mukhtar Auezov"},visualMedia:{title:"Visual Media",more:"More",theme:"Theme",themeDescription:"Use one of our popular themes below or browse more",imageSource:"Image Source",imageSourceAi:"AI Images",imageSourceUnsplash:"Stock Photos",imageSourceNone:"No Images",aiImageModel:"AI Image Model",aiModelAuto:"Auto Select",aiModelDalle:"DALL-E 3",aiModelMidjourney:"Midjourney",aiModelStable:"Stable Diffusion",imageArtStyle:"Image Art Style",additionalKeywords:"Additional Keywords",keywordsDescription:"Add keywords to maintain consistent image style",addKeywordPlaceholder:"Add keyword...",previewTitle:"Presentation Title",previewKeyPoint1:"Key point one",previewKeyPoint2:"Key point two",previewKeyPoint3:"Key point three",previewImageLabel:"+ Image",aiWriting:"AI is writing content...",slideNumber:"Slide {{number}}",themes:{midnightAurora:"Midnight Aurora",oceanBreeze:"Ocean Breeze",sunsetGlow:"Sunset Glow",forestDeep:"Forest Deep",arcticSnow:"Arctic Snow",charcoalElite:"Charcoal Elite",royalPurple:"Royal Purple",goldenHour:"Golden Hour",nordicFrost:"Nordic Frost"}},useBookSource:"Get information from textbook",useBookSourceHint:"Search for relevant content in textbooks",suggestedThemes:"Suggested themes",noSuggestedThemes:"No suggested themes found",selectedThemesCount:"{{count}} themes selected",enterTopicForSuggestions:"Enter a topic description below to get suggested themes"}},Y3={title:"Videos",list:"All Videos",create:"Create Video",generateOutline:"Generate Outline",generateVideo:"Generate Video",form:{topic:"Topic",topicPlaceholder:"Video topic",duration:"Duration (minutes)",language:"Language"},status:{pending:"Pending",generating_outline:"Generating outline",generating_video:"Generating video",processing:"Processing",completed:"Completed",failed:"Failed"},progress:"Progress",thisMonth:"this month",remaining:"remaining"}
399,J3={title:"Educational Materials Marketplace",browse:"Browse Materials",myMaterials:"My Materials",upload:"Upload Material",tabs:{bundled:"Bundled",individual:"Individual"},qmjCount:"QMJ Count",viewSample:"View Sample",searchPlaceholder:"Search materials...",sortBy:"Sort by",sort:{newest:"Newest",popular:"Most Popular",priceAsc:"Price: Low to High",priceDesc:"Price: High to Low"},filters:"Filters",filterDescription:"Filter materials by subject, grade, and price",subject:"Subject",grade:"Grade",priceRange:"Price Range",allSubjects:"All Subjects",allGrades:"All Grades",freeOnly:"Free materials only",clearFilters:"Clear Filters",free:"Free",files:"files",noMaterials:"No materials found",tryDifferentFilters:"Try adjusting your filters",description:"Description",filesAvailable:"Download the files below",purchaseToDownload:"Purchase to download files",noFiles:"No files available",purchased:"Purchased",purchase:"Purchase",confirmPurchase:"Confirm Purchase",purchaseDescription:'You are about to purchase "{{title}}" for {{price}}. This amount will be deducted from your wallet.',stats:"Statistics",views:"views",downloads:"downloads",seller:"Seller",anonymousSeller:"Anonymous Seller",sellerDashboard:"Seller Dashboard",manageMaterials:"Manage your materials and track sales",addMaterial:"Add Material",addMaterialDescription:"Fill in the details to add a new material",totalMaterials:"Total Materials",totalViews:"Total Views",totalDownloads:"Total Downloads",totalEarnings:"Total Earnings",allMaterials:"All Materials",active:"Active",pending:"Pending",approved:"Approved",pendingReview:"Pending Review",noMaterialsYet:"No materials yet",startSelling:"Start selling by adding your first material",noActiveMaterials:"No active materials",noPendingMaterials:"No pending materials",deleteMaterialConfirm:"Are you sure you want to delete this material?",fileUploaded:"File uploaded successfully",sellMaterials:"Sell Materials",form:{title:"Title",titlePlaceholder:"Enter material title",description:"Description",descriptionPlaceholder:"Describe your material in detail",subject:"Subject",selectSubject:"Select subject",grade:"Grade",selectGrade:"Select grade",price:"Price",priceHint:"Set to 0 for free materials"},material:{price:"Price",downloads:"Downloads",seller:"Seller",buy:"Buy",preview:"Preview",hot:"Popular"},"purchase.success":"Purchase successful"},X3={title:"Admin",subtitle:"Management Panel",goToMainApp:"Go to Main App",dashboard:"Admin Dashboard",overview:"System overview and quick actions",quickActions:"Quick Actions",recentActivity:"Recent Activity",recentActivityDescription:"Latest system activity",stats:{totalUsers:"Total Users",activeSubscriptions:"Active Subscriptions",totalRevenue:"Total Revenue",generationsToday:"Generations Today"},subjects:{title:"Subjects",description:"Manage educational subjects",add:"Add Subject",addDescription:"Create a new educational subject",edit:"Edit Subject",editDescription:"Update subject information",delete:"Delete Subject",deleteConfirm:'Are you sure you want to delete "{{name}}"? This action cannot be undone.',list:"All Subjects",total:"subjects total",noSubjects:"No subjects found",created:"Subject created successfully",updated:"Subject updated successfully",deleted:"Subject deleted successfully",form:{name:"Name",namePlaceholder:"Enter subject name",description:"Description",descriptionPlaceholder:"Enter subject description (optional)"}},subscriptions:{title:"Subscription Plans",description:"Manage subscription plans and pricing",add:"Add Plan",addDescription:"Create a new subscription plan",edit:"Edit Plan",editDescription:"Update subscription plan details",delete:"Delete Plan",deleteConfirm:'Are you sure you want to delete "{{name}}"? Existing subscribers will not be affected.',noSubscriptions:"No subscription plans found",created:"Subscription plan created successfully",updated:"Subscription plan updated successfully",deleted:"Subscription plan deleted successfully",active:"Active",inactive:"Inactive",qmjGenerations:"QMJ generations",videoGenerations:"video generations",presentationGenerations:"presentation generations",planAssigned:"Plan assigned to user successfully",freePlanAssigned:"Free plan assigned to user successfully",assignPlan:"Assign Plan",assignFreePlan:"Assign Free Plan",userSubscription:"User Subscription",noSubscription:"No active subscription",selectPlan:"Select a plan",currentPlan:"Current Plan",usageStats:"Usage Statistics",periods:{day:"day",week:"week",month:"month",year:"year"},form:{name:"Name",namePlaceholder:"Enter plan name",description:"Description",descriptionPlaceholder:"Enter plan description",price:"Price",duration:"Duration",periodUnit:"Period",qmjLimit:"QMJ Limit",videoLimit:"Video Limit",presentationLimit:"Presentation Limit",isActive:"Active"}},materials:{title:"Materials Management",description:"Review and moderate marketplace materials",list:"All Materials",total:"materials total",pendingReview:"pending review",noMaterials:"No materials found",approved:"Material approved successfully",rejected:"Material rejected successfully",viewDetails:"View material details",viewPublic:"View Public Page",status:{pending:"Pending",approved:"Approved",rejected:"Rejected"},filter:{all:"All Materials",pending:"Pending Review",approved:"Approved",rejected:"Rejected"},table:{title:"Title",seller:"Seller",subject:"Subject",price:"Price",status:"Status",date:"Date"}
399,approveTitle:"Approve Material",approveDescription:'Are you sure you want to approve "{{title}}"? It will be visible in the marketplace.',approve:"Approve",rejectTitle:"Reject Material",rejectDescription:'Are you sure you want to reject "{{title}}"? The seller will be notified.',reject:"Reject"},users:{title:"Users",description:"Manage platform users and permissions",searchPlaceholder:"Search by name or phone...",noName:"No name",noUsers:"No users found",usersCount:"users",admins:"Admins",regularUsers:"Users",admin:"Admin",user:"User",name:"Name",phone:"Phone",status:"Status",generations:"Generations",wallet:"Wallet",joined:"Joined",video:"Video",pres:"Pres",editTitle:"Edit User",deleteTitle:"Delete User?",deleteDescription:"This action cannot be undone. This will permanently delete the user account.",adminAccess:"Admin Access",adminAccessDesc:"Give this user full admin privileges",qmjLimit:"QMJ Limit",videoLimit:"Video Limit",presLimit:"Pres. Limit"},templates:{title:"Templates",slides:"Slides",layouts:"Layouts",exported:"Template exported successfully",saved:"Template saved successfully",updated:"Template updated successfully",layoutGenerated:"Layout generated successfully with AI"},plans:{title:"Plans",description:"Manage subscription plans and pricing",add:"Add Plan",addDescription:"Create a new subscription plan",edit:"Edit Plan",editDescription:"Update plan details",delete:"Delete Plan",deleteConfirm:'Are you sure you want to deactivate "{{name}}"? Existing subscribers will not be affected.',noPlans:"No plans found",created:"Plan created successfully",updated:"Plan updated successfully",deleted:"Plan deactivated successfully",active:"Active",inactive:"Inactive",free:"Free",autoRenew:"Auto-renew",status:"Status",preview:"Preview",days:"days",filters:{all:"All Plans"},form:{basicInfo:"Basic Information",name:"Plan Name",namePlaceholder:"Enter plan name",description:"Description",descriptionPlaceholder:"Brief plan description",duration:"Duration (days)",price:"Price",currency:"Currency",isActive:"Active",isFree:"Free Plan",autoRenew:"Auto-renew",classrooms:"Classrooms (assignments, grading)",limits:"Feature Limits",limitsHint:"-1 = unlimited, 0 = disabled, >0 = specific limit",features:"Features",featuresPlaceholder:"Enter one feature per line",featuresHint:"Each line will be shown as a bullet point",permissions:"Permissions",permissionNames:"Display Names"},permissions:{video:"Video Generation",presentation:"Presentation Generation",qmj:"Lesson Plan (QMJ)",quiz:"Quiz Creation",avatar:"AI Avatar (min)",conversation:"AI Conversation",documents:"Documents",homework_check:"AI Homework Grading"},limits:{unlimited:"Unlimited",disabled:"Disabled",custom:"Custom",uses:"{{count}} uses",minutes:"{{count}} minutes",usesLabel:"uses"},validation:{nameRequired:"Plan name is required",nameUnique:"Plan name must be unique",durationMin:"Duration must be at least 1 day",priceMin:"Price cannot be negative",atLeastOnePermission:"At least one permission must be enabled"}},analytics:{title:"Analytics",description:"View subscription statistics and user analytics",totalActive:"Total Active",revenueThisMonth:"Revenue This Month",mostPopularPlan:"Most Popular Plan",expiringSoon:"Expiring Soon",subscribers:"subscribers",inNext7Days:"in next 7 days",subscriptions:"Subscriptions",subscriptionsDescription:"View and manage user subscriptions",noSubscriptions:"No subscriptions found",noData:"No data available",charts:{subscriptionsOverTime:"Subscriptions Over Time",revenueByPlan:"Revenue by Plan",featureUsage:"Feature Usage"},table:{user:"User",plan:"Plan",startDate:"Start Date",expiryDate:"Expiry Date",status:"Status",usage:"Usage",actions:"Actions"},status:{active:"Active",expired:"Expired",cancelled:"Cancelled"},filters:{allPlans:"All Plans",allStatuses:"All Statuses",dateRange:"Date Range",searchPlaceholder:"Search by user name or phone..."},viewDetails:"View Details",cancelSubscription:"Cancel Subscription",cancelConfirm:"Are you sure you want to cancel this subscription for {{user}}?",subscriptionCancelled:"Subscription cancelled successfully",userDetails:"User Subscription Details",usageBreakdown:"Usage Breakdown",totalUsed:"Total Used",avgPerUser:"Avg Per User",ai:{title:"AI Cost Analytics",description:"Track AI provider costs, token usage, and system spend over time",periodMonth:"By Month",periodYear:"By Year",totalCost:"Total Cost (USD)",requests:"Requests",totalTokens:"Total Tokens",usageUnits:"Usage Units",costTrend:"Cost Trend",providers:"Providers",systems:"Systems",unpricedTitle:"Cost total is incomplete",unpricedRequests:"Requests without a configured price",unpricedDescription:"They are excluded from Total Cost; $0 does not mean free."}},platformSummary:"Platform Summary",platformSummaryDescription:"Key metrics at a glance",avatars:{title:"Avatars",description:"Manage AI avatars",add:"Add Avatar",addDescription:"Create a new AI avatar",edit:"Edit Avatar",editDescription:"Update avatar information",deleteConfirm:'Are you sure you want to delete "{{name}}"?',noAvatars:"No avatars found",filters:{all:"All Avatars",active:"Active",inactive:"Inactive"}},schools:{title:"Schools",description:"Onboard B2B schools and provision their directors",createTitle:"Create a school",createHint:"Provisions the school and its first director by email.",name:"School name",directorEmail:"Director email",city:"City",contactPhone:"Contact phone",create:"Create school",directorActive:"Director activated",directorActiveHint:"This account already existed — they have director access now.",directorPending:"Director pending",directorPendingHint:"They don't have a Zerde account yet — they'll be added as director automatically the moment they sign up with that email.",schoolIdLabel:"School ID",directoryTitle:"All schools",directoryHint:"Every onboarded school. Deactivating is purely a flag — nothing else changes.",activate:"Activate",deactivate:"Deactivate",noSchools:"No schools yet",pageLabel:"Showing {{from}}–{{to}}",lookupTitle:"Manage a school",lookupHint:"Look up any school by ID for support — platform admins can act as that school's director."},tutorials:{title:"Tutorial Videos",description:"Manage tutorial video guides",add:"Add Tutorial",addDescription:"Create a new tutorial video",edit:"Edit Tutorial",editDescription:"Update tutorial video details",list:"All Tutorials",total:"total tutorials",noVideos:"No tutorial videos yet",deleteConfirm:'Are you sure you want to delete "{{name}}"?',form:{title:"Title",titlePlaceholder:"Enter title...",videoUrl:"Video URL",description:"Description",descriptionPlaceholder:"Enter description...",savedTime:"Time Saved",actualTime:"Duration (seconds)"}},models3d:{title:"3D Models",description:"Curate Sketchfab 3D models for each subject",selectSubject:"Select a subject",selectSubjectPlaceholder:"Choose a subject...",list:"Models",total:"total models",noModels:"No models for this subject yet",addModel:"Add model",addModelDescription:"Paste a Sketchfab model URL or UID, preview it, then add it to this subject",pasteLabel:"Sketchfab URL or UID",pastePlaceholder:"https://sketchfab.com/3d-models/... or paste the UID",preview:"Preview",confirmAdd:"Add to subject",created:"Model added",updated:"Model updated",deleted:"Model deleted",deleteConfirm:'Delete "{{title}}"? This cannot be undone.',edit:"Edit model",editDescription:"Update model details",active:"Active",inactive:"Inactive",form:{title:"Title",description:"Description",thumbnailUrl:"Thumbn
399ail URL",authorName:"Author name",authorUrl:"Author URL",license:"License",sortOrder:"Sort order"}}},Z3={title:"Profile",personalInfo:"Personal Information",firstName:"First Name",lastName:"Last Name",phone:"Phone",subscription:"Subscription",wallet:{title:"Wallet",balance:"Balance",deposit:"Deposit",withdraw:"Withdraw",history:"Transaction History"},updateSuccess:"Profile updated successfully"},e4={1:"Grade 1",2:"Grade 2",3:"Grade 3",4:"Grade 4",5:"Grade 5",6:"Grade 6",7:"Grade 7",8:"Grade 8",9:"Grade 9",10:"Grade 10",11:"Grade 11",12:"Grade 12"},t4={generic:"Something went wrong",network:"Network error",networkError:"Network error. Please check your connection.",unauthorized:"Unauthorized. Please log in again.",forbidden:"Access denied. You don't have permission.",notFound:"Not found",validation:"Validation error",validationError:"Please check your input and try again.",serverError:"Server error. Please try again later.",fileTooLarge:"File is too large. Maximum size is 100MB.",unknownError:"An unexpected error occurred."},n4={about:"About Us",contact:"Contact",privacy:"Privacy Policy",terms:"Terms of Service",copyright:"© 2024 Zerde AI. All rights reserved."},r4={title:"Terms of Service",effectiveDateLabel:"Effective date",effectiveDate:"February 21, 2026",subtitle:"These Terms of Service govern your use of Zerde AI.",sections:{acceptance:{title:"1. Acceptance of Terms",p1:"By accessing or using Zerde AI, you agree to these Terms of Service. If these terms do not work for you, you may discontinue using the platform.",p2:"If you use the platform on behalf of an organization, you confirm you have authority to bind that organization to these terms."},serviceDescription:{title:"2. Service Description",p1:"Zerde AI provides educational tools, including AI-assisted lesson planning, assessments, and classroom support features.",p2:"Some features may require an active subscription. Feature availability may change over time."},accounts:{title:"3. Accounts and Access",p1:"You are responsible for maintaining the security of your account and devices.",p2:"You must provide accurate information and keep your account details up to date.",p3:"For account safety, please report any unauthorized access as soon as possible; activity under your account remains your responsibility."},payments:{title:"4. Payments and Subscriptions",p1:"Paid features are billed according to the selected plan and pricing shown at purchase time.",p2:"Unless otherwise stated, subscription fees are non-refundable after the billing period starts.",p3:"We may change pricing for future billing periods with prior notice."},acceptableUse:{title:"5. Acceptable Use",p1:"Please do not use the platform for illegal, harmful, abusive, or rights-infringing activity.",p2:"Please refrain from disrupting service operation, bypassing security controls, or attempting to access data without authorization.",p3:"You must comply with applicable education, privacy, and intellectual property laws."},ip:{title:"6. Content and Intellectual Property",p1:"You retain ownership of content you provide to the platform.",p2:"You grant Zerde AI a limited license to process that content solely to provide, maintain, and improve the service.",p3:"The platform software, branding, and related materials are owned by Zerde AI or its licensors."},privacy:{title:"7. Privacy",p1:"Your use of the service is also governed by our Privacy Policy.",p2:"You are responsible for ensuring your own use complies with your institution's data handling requirements."},availability:{title:"8. Service Availability",p1:"We strive for reliable operation but do not guarantee uninterrupted or error-free availability.",p2:"We may perform maintenance, updates, or changes that temporarily affect access."},liability:{title:"9. Limitation of Liability",p1:"To the maximum extent permitted by law, Zerde AI does not assume liability for indirect, incidental, special, consequential, or punitive damages.",p2:"Total liability for any claim related to the service is limited to amounts paid by you for the service during the 12 months before the claim."},termination:{title:"10. Termination",p1:"You may stop using the service at any time.",p2:"If there is a material violation of these terms or misuse of the platform, we may temporarily suspend or terminate access."},changes:{title:"11. Changes to Terms",p1:"We may update these Terms of Service periodically. Updated terms will be posted on this page with a new effective date.",p2:"Continued use of the platform after changes become effective means you accept the updated terms."},contact:{title:"12. Contact",p1:"For legal or terms-related questions, contact: [email protected]"}}},o4={title:"Privacy Policy",effectiveDateLabel:"Effective date",effectiveDate:"February 21, 2026",subtitle:"This Privacy Policy explains how Zerde AI collects, uses, stores, and protects personal data.",sections:{overview:{title:"1. Overview",p1:"Zerde AI is an educational platform for teachers and schools. We process personal data to provide core platform functionality.",p2:"By using the platform, you acknowledge this Privacy Policy."},dataWeCollect:{title:"2. Data We Collect",p1:"Account and profile data: such as phone number, name, and other account details you provide.",p2:"Usage data: feature interactions, generated content metadata, and technical diagnostics needed to run and improve the service.",p3:"Support data: messages and attachments you provide when contacting support."},howWeUseData:{title:"3. How We Use Data",p1:"To authenticate users, provide platform features, and maintain account security.",p2:"To improve product quality, reliability, and user experience through analytics and diagnostics.",p3:"To communicate service updates, security notices, and support responses."},legalBasis:{title:"4. Legal Basis",p1:"We process data to perform our contract with users, comply with legal obligations, and protect legitimate interests such as service security.",p2:"Where required by law, we rely on consent for specific processing activities."},sharing:{title:"5. Data Sharing",p1:"We do not sell personal data.",p2:"We may share data with trusted service providers (hosting, analytics, c
399ommunications) under contractual confidentiality and security obligations.",p3:"We may disclose data where required by law or to protect rights, safety, and platform integrity."},retention:{title:"6. Data Retention",p1:"We retain personal data only as long as necessary for the purposes described in this policy or as required by law.",p2:"When retention is no longer required, data is deleted or anonymized."},security:{title:"7. Security",p1:"We apply technical and organizational measures designed to protect data from unauthorized access, loss, or misuse.",p2:"No system is absolutely secure, but we continuously improve safeguards and monitoring."},children:{title:"8. Children and Education Context",p1:"Our services are intended for educational use by authorized users. Schools and educators are responsible for compliant student data use under applicable laws.",p2:"If you believe data has been provided inappropriately, contact us for review and deletion."},rights:{title:"9. Your Rights",p1:"Depending on applicable law, you may request access, correction, deletion, restriction, or portability of your personal data.",p2:"You may also object to certain processing activities or withdraw consent where processing is consent-based.",p3:"To exercise rights, contact us using the details below."},internationalTransfers:{title:"10. International Transfers",p1:"Where data is processed across borders, we implement appropriate safeguards required by applicable law.",p2:"These safeguards may include contractual protections and security controls."},changes:{title:"11. Changes to this Policy",p1:"We may update this Privacy Policy from time to time.",p2:"Material changes will be posted on this page with an updated effective date."},contact:{title:"12. Contact",p1:"For privacy-related requests and questions: [email protected]"}}},i4={title:"Subscription",description:"Manage your subscription and view usage",currentPlan:"Current Plan",freePlan:"You are on the free plan",freeLabel:"Free",activeSubscription:"Active subscription",noPlanSelected:"No Plan Selected",noPlanDescription:"You haven't chosen any plan yet. Select a plan to start using all features.",selectPlanPrompt:"Please select a plan to continue",choosePlan:"Choose a Plan",choosePlanDescription:"Select a plan to unlock all features and start creating",welcomeTitle:"Welcome to Zerde AI!",welcomeDescription:"Choose a plan to start creating lesson plans, presentations, and more",continueWithFree:"Continue with Free Plan",skipForNow:"Skip for Now",warningNoPlan:"You haven't selected a plan yet",warningNoPlanDescription:"Choose a plan to unlock all features and start creating lesson plans, presentations, and more.",selectPlanNow:"Select a Plan",daysLeft:"days left",usageOverview:"Usage Overview",availablePlans:"Available Plans",upgradeNow:"Upgrade Now",unlimited:"Unlimited",disabled:"Disabled",notAvailable:"Not Available",remaining:"remaining",days:"days",current:"Current",subscribe:"Subscribe",expiringSoonTitle:"Subscription Expiring Soon",expiringSoonDescription:"Your subscription expires in {{days}} days. Renew to continue using all features.",expiresAt:"Expires",managePlan:"Manage Plan",noPlansAvailable:"No Plans Available",checkBackLater:"Please check back later",howItWorks:"How It Works",step1Title:"Choose a Plan",step1Description:"Select the plan that best fits your needs",step2Title:"Contact via WhatsApp",step2Description:"Click the subscribe button to connect with us",step3Title:"Get Access",step3Description:"Once payment is confirmed, your plan is activated",confirmSubscription:"Confirm Subscription",confirmDescription:"You are about to subscribe to the {{plan}} plan",whatsappRedirect:"WhatsApp Redirect",whatsappRedirectDescription:"You will be redirected to WhatsApp to complete the subscription process",openWhatsApp:"Open WhatsApp",subscribeFree:"Start Free Plan",freeActivated:"Free plan activated successfully!",subscribed:"Successfully subscribed to plan!",cancelled:"Subscription cancelled",expired:"Expired",resetsMonthly:"Resets monthly",resetsOn:"Resets on {{date}}",monthlyUsage:"Monthly Usage",myPlan:"My Plan",recommended:"Recommended",featureGate:{limitReached:"Limit Reached",limitReachedDescription:"You have used all your {{feature}} generations for this period",featureDisabled:"Feature Not Available",featureDisabledDescription:"{{feature}} is not included in your current plan",upgradeToAccess:"Upgrade to Access",upgradeDescription:"Upgrade your plan to unlock this feature",viewPlans:"View Plans",usageStatus:"{{used}} of {{limit}} used",remainingCredits:"{{remaining}} remaining"},required:{title:"Subscription Required",description:"You need an active subscription to access this feature.",benefits:"With a subscription you get access to:",benefit1:"Generate lesson plans, presentations, and videos",benefit2:"Use AI avatar for interactive learning",benefit3:"Create quizzes and assessments",viewPlans:"View Plans"}},s4={draft:"Draft",published:"Published",in_progress:"In Progress",completed:"Completed",pending:"Pending",in_review:"In Review",approved:"Approved"},a4={title:"Documents",description:"Create and edit documents with formulas, tables and more",create:"New Document",search:"Search documents...",starred:"Starred",recent:"Recent",empty:"No documents",emptyDescription:"Create your first document to get started",createFirst:"Create First Document",star:"Star",unstar:"Unstar",untitled:"Untitled Document",words:"words",public:"Public",newDocument:"New Document",createNew:"Create New Document",selectCategory:"Select document type",generate:"Generate",createSuccess:"Document created",deleteSuccess:"Document deleted",generateSuccess:"Document generated",notFound:"Document not found",backToList:"Back to list",creating:"Creating document...",importAsAssessment:"Create assessment workspace",assessmentGeneratedDescription:"Your assessment is ready. Edit it as structured questions, or open it in the regular document editor.",openInDocumentEditor:"Open in document editor",editAssessment:"Edit assessment",hasAssessmentWorkspace:"This document has an assessment editor with structured questions — editing the text here won't affect it.",looksLikeAssessment:"This looks like a БЖБ/ТЖБ assessment. Edit it as structured questions instead of plain text.",openAssessmentEditor:"Open assessment editor",categories:{empty:{title:"Empty Document",description:"Start with a blank page"},assessment:{title:"Assessment (БЖБ/ТЖБ)",description:"Generate summative assessment"},"author-program":{title:"Author Program",description:"Create author curriculum program"},"scientific-project":{title:"Scientific Project",description:"Generate scientific project"}},forms:{assessmentType:"Assessment Type",language:"Language",subject:"Subject",subjectPlaceholder:"e.g. Mathematics",grade:"Grade",gradeLabel:"grade",topic:"Topic",topicPlaceholder:"Enter topic",duration:"Duration",programName:"Program Name",programNamePlaceholder:"Enter program name",totalHours:"Total Hours",targetAudience:"Target Audience",targetAudiencePlaceholder:"e.g. students grades 7-9",projectTitle:"Project Title",projectTitlePlaceholder:"Enter scientific project title",projectTopic:"Research Topic",projectTopicPlaceholder:"Enter research topic"}},l4={taskTypes:{short_answer:"Short answer",multiple_choice:"Multiple choice",matching:"Matching",open_ended:"Open-ended"},gradingModes:{manual:"Manual review",choice:"Auto (choice)",exact:"Auto (exact match)"},editor:{notFound:"Assessment not found",unsaved:"Unsaved changes",saved:"Saved",titlePlaceholder:"Assessment title",durationMinutes:"Duration (min)",instructions:"Instructions for students",addInstruction:"Add instruction line",tasks:"Questions",totalPoints:"{{points}} pts total",addTask:"Add question",points:"Points",duplicate:"Duplicate",delete:"Delete",promptPlaceholder:"Question text",optionPlaceholder:"Option text",addOption:"Add option",acceptedA
399nswerPlaceholder:"Accepted answer",addAcceptedAnswer:"Add accepted answer",referenceAnswerPlaceholder:"Reference answer (optional, for the teacher's own record)",matchingNote:"Matching questions are answered as free text and marked manually in this release.",rubricPlaceholder:"Marking rubric",descriptorPlaceholder:"Descriptor",addDescriptor:"Add descriptor",descriptorSumMismatch:"Descriptors sum to {{sum}}, question is worth {{points}}",regenerate:"Regenerate",regenerateInstructionPlaceholder:"e.g. Make the example easier",regenerateConfirm:"Regenerate",saveBeforeRegenerate:"Save your changes before regenerating",conflictTitle:"This assessment changed elsewhere",conflictDescription:"Someone (perhaps you, in another tab) saved a newer version. Reload it to see the latest, or keep editing and save again later — your current changes are not lost.",keepEditing:"Keep editing",reloadLatest:"Reload latest",printStudent:"Print student paper",printTeacher:"Print teacher key",saveBeforePrint:"Save your changes to print the latest version",popupBlocked:"Your browser blocked the print preview window. Allow pop-ups for this site and try again.",assignOnline:"Assign online",saveBeforePublish:"Save your changes before assigning online"},publish:{newPublication:"Assign to a classroom",classroom:"Classroom",selectClassroom:"Choose a classroom...",opensAt:"Opens at",closesAt:"Closes at",timeLimitMinutes:"Per-student timer (minutes)",timeLimitPlaceholder:"No timer",timeLimitHint:"Optional. The paper's duration is not applied online unless you set a timer here.",publish:"Publish",history:"Deliveries",open:"Open",closed:"Closed",timerSummary:"{{minutes}} min timer",noTimer:"No timer",manageAccess:"Manage access",noPublications:"Not assigned to any classroom yet",codesShownOnce:"These codes are shown only once — copy or share them now.",accessCode:"Access code",resetAccess:"Reset access code",resetConfirmTitle:"Reset this student's access code?",resetConfirmDescription:"{{name}}'s old link will stop working immediately. Their saved answers and progress are kept.",issueSelected:"Issue access ({{count}})",status:{not_started:"Not started",in_progress:"In progress",submitted:"Submitted"},conflictDescription:"This assessment was edited elsewhere since you opened this page. Reload it to publish the latest saved version."},take:{points:"{{points}} pts",answerPlaceholder:"Type your answer...",markScore:"{{score}} / {{max}}",invalidTitle:"This link isn't valid",invalidDescription:"Your access link may be missing, expired, or reset. Ask your teacher for a new link.",greeting:"Hi, {{name}}",closedByTeacher:"Your teacher has closed this assessment.",notYetOpen:"This assessment isn't open yet. Check back later.",alreadyClosed:"The deadline for this assessment has passed.",start:"Start",submittedTitle:"Your answers have been submitted",scoreSummary:"Score: {{score}} / {{total}}",awaitingRelease:"Your teacher hasn't released results yet.",checkResults:"Check for results",saving:"Saving...",saved:"Saved",offline:"Offline, not yet saved",readyToSave:"Your answers save automatically",offlineWarning:`You're offline (or a save failed). Keep working — we'll try saving again, but don't close this tab until it says "Saved."`,timeUp:"Time is up. Submit now to lock in your saved answers.",submit:"Submit",conflictTitle:"Your answers were saved from another tab or device",conflictDescription:"Reload to see the latest saved answers before continuing."}},c4={levels:{remember:"Remember",understand:"Understand",apply:"Apply",analyze:"Analyze",evaluate:"Evaluate",create:"Create"},categories:{low:"Low",medium:"Medium",high:"High"},levelDescriptions:{remember:"Recall facts and basic concepts",understand:"Explain ideas or concepts",apply:"Use information in new situations",analyze:"Draw connections among ideas",evaluate:"Justify a decision or course of action",create:"Produce new or original work"}},u4={title:"Scientific Projects",description:"Guide students through scientific research with AI-assisted methodology",create:"Create Project",createNew:"Create New Project",createDescription:"Start a new scientific research project",createFirst:"Create Your First Project",createAndStart:"Create and Start",deleteConfirm:"Are you sure you want to delete this project?",grade:"Grade",gradeUnit:"grade",subject:"Subject",selectSubject:"Select subject",selectGrade:"Select grade",continueWork:"Continue Working",projectInfo:"Project Information",projectInfoDescription:"Enter the basic project details",titleLabel:"Project Title",titlePlaceholder:"e.g., Effect of Light on Plant Growth",studentName:"Student Name",studentNamePlaceholder:"Enter student name",studentNameHint:"Optional - for tracking purposes",researchInfo:"Research Information",researchInfoDescription:"Define your research focus",researchTopic:"Research Topic",researchTopicPlaceholder:"What will you investigate?",researchTopicHint:"This can be refined as you progress through the stages",descriptionPlaceholder:"Brief description of the project",researchStages:"Research Stages",stagesPreviewDescription:"Your project will follow these 8 scientific research stages",stage:"Stage",stagesLabel:"Stages",current:"Current",stages:{problem_identification:"Problem Identification",hypothesis_formulation:"Hypothesis Formulation",literature_review:"Literature Review",methodology_design:"Methodology Design",experiment_modeling:"Experiment Modeling",data_analysis:"Data Analysis",conclusions:"Conclusions",virtual_defense:"Virtual Defense"},advanceToNext:"Advance to Next Stage",aiGuidanceDescription:"Get guidance and feedback from the AI assistant",startConversation:"Start a conversation to get guidance",aiThinking:"AI is thinking...",askQuestion:"Ask a question about this stage...",projectContent:"Project Content",content:"Content",experiment:"Experiment",noContentYet:"No content yet. Start by chatting with the AI assistant.",selectStageToSeeContent:"Select a stage to see its content",editSection:"Edit Section",enterContent:"Enter your content here...",experimentData:"Experiment Data",experimentDataDescription:"Record measurements for control and experiment groups",variable:"Variable",addVariable:"Add Variable",addFirstVariable:"Add First Variable",controlGroup:"Control Group",experimentGroup:"Experiment Group",difference:"Difference",noExperimentData:"No experiment data yet",anal
399yze:"Analyze",analysisResults:"Analysis Results",mean:"Mean",standardDeviation:"Std Dev",significant:"Significant",startDefense:"Start Virtual Defense",virtualDefense:"Virtual Defense",defenseDescription:"Answer questions from the AI panel to defend your research",defenseCompleted:"Congratulations! You have completed your defense.",preparingDefense:"Preparing your defense questions...",question:"Question",enterAnswer:"Enter your answer...",answerHint:"Provide a thorough answer based on your research",submitAnswer:"Submit Answer",nextQuestion:"Next Question",seeResults:"See Results",questionBreakdown:"Question Breakdown",overallFeedback:"Overall Feedback",outOf:"out of",excellent:"Excellent!",good:"Good",needsImprovement:"Needs Improvement"},d4={title:"Author Programs",description:"Create custom educational programs using Backward Design methodology",create:"Create Program",createNew:"Create New Program",createDescription:"Design a custom educational program",createFirst:"Create Your First Program",createAndContinue:"Create and Continue",deleteConfirm:"Are you sure you want to delete this program?",continueEditing:"Continue Editing",grade:"Grade",gradeUnit:"grade",subject:"Subject",selectSubject:"Select subject",selectGrade:"Select grade",outcomes:"outcomes",topics:"topics",contentBalance:"Content Balance",reviewScore:"Review Score",backwardDesign:"Backward Design Methodology",backwardDesignDescription:"Start with learning outcomes, then design content, and finally review for quality",step1Outcomes:"Outcomes",step2Content:"Content",step3Review:"Review",programInfo:"Program Information",programInfoDescription:"Enter the basic program details",titleLabel:"Program Title",titlePlaceholder:"e.g., Advanced Mathematics for Grade 7",totalHours:"Total Hours",totalHoursHint:"Total instructional hours for the program",additionalInfo:"Additional Information",descriptionPlaceholder:"Program description and goals",targetAudience:"Target Audience",targetAudiencePlaceholder:"Describe the target students",targetAudienceHint:"Who is this program designed for?",learningOutcomes:"Learning Outcomes",outcomesDescription:"Define what students will be able to do after completing this program",addOutcome:"Add Outcome",addFirstOutcome:"Add First Outcome",noOutcomes:"No learning outcomes yet",generateWithAI:"Generate with AI",suggestWithAI:"Suggest with AI",outcomeDescription:"Outcome Description",outcomePlaceholder:"Students will be able to...",bloomLevel:"Bloom's Level",add:"Add",aiSuggestions:"AI Suggestions",suggestionsDescription:"Add suggested outcomes to your program",allSuggestionsAdded:"All suggestions added",topicsContent:"Topics & Content",topicsDescription:"Organize your content into topics and activities",addTopic:"Add Topic",addFirstTopic:"Add First Topic",noTopics:"No topics yet",topicTitle:"Topic Title",topicTitlePlaceholder:"Enter topic title",contentType:"Content Type",contentTypes:{theory:"Theory",practice:"Practice",project:"Project",discussion:"Discussion",case_study:"Case Study",assessment:"Assessment",presentation:"Presentation",group_work:"Group Work"},hours:"Hours",linkOutcomes:"Link to Outcomes",linkedOutcomes:"Linked Outcomes",noLinkedOutcomes:"No outcomes linked",reviewAudit:"Review & Audit",aiAssistant:"AI Assistant",aiAssistantDescription:"Get help with your program from the AI assistant",startAIConversation:"Start a conversation for program assistance",aiThinking:"AI is thinking...",askAI:"Ask the AI assistant...",requestReview:"Request Review",refreshReview:"Refresh Review",noReviewYet:"No Review Yet",noReviewDescription:"Request an AI review to get feedback on your program quality",analyzing:"Analyzing...",criteriaScores:"Criteria Scores",strengths:"Strengths",weaknesses:"Areas for Improvement",suggestions:"Suggestions",lastReviewed:"Last reviewed",quickPrompts:{title:"Quick Prompts",description:"Common questions and requests",suggestOutcomes:"Suggest learning outcomes",improveTopics:"Improve topic structure",alignCurriculum:"Check curriculum alignment",teachingMethods:"Suggest teaching methods"},contextInfo:"Program Context"},f4={title:"AI Avatar",description:"Have conversations with AI avatars",availableAvatars:"Available Avatars",history:"Conversation History",startSession:"Start Session",viewConversation:"View Conversation",conversation:"Conversation",noAvatars:"No avatars available",noAvatarsDescription:"Avatars will appear here when available",noHistory:"No conversations yet",noHistoryDescription:"Start a conversation with an avatar to see history",minutesRemaining:"minutes remaining",minutesUsed:"minutes used",connected:"Connected",disconnected:"Disconnected",endSession:"End Session",sessionEnded:"Session Ended",sessionEndedDescription:"Your conversation session has ended",startConversation:"Press the microphone to start speaking",typeMessage:"Type a message...",recording:"Recording...",thinking:"Thinking...",holdToSpeak:"Click to record, click again to send",audioNotSupported:"Audio recording is not supported in your browser",recordingError:"Recording error occurred",error:"An error occurred",assistant:"AI Assistant",connectionError:"Connection error. Please try again.",microphoneError:"Could not access microphone",created:"Avatar created successfully",movementAdded:"Movement added successfully",movementRemoved:"Movement removed successfully",movementGenerated:"Movement generated successfully",movements:"movements",manageMovements:"Manage Movements",manageMovementsDescription:"Manage movements for {{name}}",currentMovements:"Current Movements",noMovements:"No movements added",addMovement:"Add Movement",movementNamePlaceholder:"Enter movement name",movementVideoPlaceholder:"Enter video URL",generateMovement:"Generate Movement",generatePromptPlaceholder:"Describe the movement (optional)",greeting:"Greeting",listening:"Listening",speaking:"Speaking",limitReached:"Limit Reached",upgradeToConinue:"Upgrade your plan to continue using AI Avatar",voiceOnly:"Voice Only",voiceOnlyDescription:"Use the microphone to talk with the avatar",listeningMovement:"Listening Movement",listeningMovementHint:"Video to play while waiting for user input",greetingMovement:"Greeting Movement",greetingMovementHint:"Video to play when conversation starts",selectMovement:"Select a movement",slotRequired:"This field is required",fillRequiredSlots:"Please fill all required movement slots",movementsSaved:"Movements saved successfully",movementsSaveError:"Failed to save movements",requiredSlotsHint:"The
399se movements must be filled",optionalSlotsHint:"These movements are optional",uploadFile:"Upload",pasteUrl:"URL",uploading:"Uploading...",uploadNotAvailable:"Video upload not available. Please use URL input.",uploadEndpointMissing:"Video upload endpoint is missing. Cannot upload from PC yet. Please use URL paste instead.",fileUploaded:"File uploaded successfully",uploadFailed:"Failed to upload file",invalidFileType:"Invalid file type. Please upload MP4 or WebM video.",fileTooLarge:"File is too large. Maximum size is 100MB.",waitForUpload:"Please wait for uploads to complete",listeningRequired:"Listening movement is required",videoRequired:"Video URL is required",nameRequired:"Movement name is required",duplicateName:"Movement names must be unique",validationFailed:"Please fix errors before saving",listeningRequiredHint:"Required for the avatar to work",movementDeleteError:"Failed to delete movement",addNewMovement:"Add Movement",removeMovement:"Remove",movementName:"Movement Name",enterMovementName:"Enter movement name",slots:{listening:"Listening",greeting_1:"Greeting 1",speak_neutral:"Speak Neutral",greeting_2:"Greeting 2",think:"Thinking",nod_yes:"Nod Yes",shake_no:"Shake No",idle:"Idle",smile:"Smile",farewell:"Farewell"},form:{name:"Name",namePlaceholder:"Enter avatar name",voiceId:"Voice ID",voiceIdPlaceholder:"Enter voice ID",provider:"TTS Provider",providerPlaceholder:"Select provider",sttProvider:"STT Provider",sttProviderPlaceholder:"Select speech-to-text provider",sttProviderHint:"Overrides which speech-to-text engine transcribes this avatar's voice input. Leave on Auto to use the backend default.",avatarFile:"Avatar Image",avatarFileHint:"Upload an image file for the avatar",avatarFileOptional:"Leave empty to keep current file",avatarImageHint:"Upload an image file (JPEG, PNG, WebP)"},basicInfo:"Basic Information",movementVideos:"Movement Videos",movementVideosHint:"Optional. Without videos, the avatar image moves locally with the response audio (no video-generation cost).",greetingVideo:"Greeting Video",speakingVideo:"Speaking Video",thinkingVideo:"Thinking Video",listeningVideo:"Listening Video",speakingRequired:"Speaking video is required",invalidVideoUrl:"Enter a valid public HTTPS video URL",invalidAvatarImage:"Upload a JPEG, PNG, or WebP image up to 10MB",imageOnly:"Live image",speakingVideos:"Speaking Videos",speakingVideosHint:"Add speaking videos with different impressions",addSpeaking:"Add Speaking Video",speakingNamePlaceholder:"e.g., explaining",selectImpression:"Select impression",videoUrlPlaceholder:"Enter video URL",videos:"Videos",greetingRequired:"Greeting video is required",thinkingRequired:"Thinking video is required",impressionRequired:"Impression is required",atLeastOneSpeakingRequired:"At least one speaking video is required",duplicateSpeakingNames:"Speaking names must be unique",avatarImageRequired:"Avatar image is required",creatingAvatar:"Creating avatar...",uploadingVideos:"Uploading videos...",orTypeMessage:"Or type a message below",noMessagesYet:"No messages yet",deleteConversation:"Delete conversation",deleteConversationConfirm:"Delete this conversation? This action cannot be undone.",loadError:"Failed to load avatars",loadErrorDescription:"There was an error connecting to the server. Please try again.",endSessionConfirm:"End this session?",endSessionConfirmDescription:"Your current conversation will be saved to history.",helpTitle:"How to chat"},p4={deleted:"Conversation deleted",deleteConfirm:"Are you sure you want to delete this conversation?"},m4={title:"Zerde AI",subtitle:"Your AI assistant",welcome:"How can I help you?",welcomeDescription:"I can help you with lesson ideas, create quizzes, generate images, and answer questions about the platform.",placeholder:"Ask me anything...",placeholderWithSelection:"Ask about the selected text...",placeholderWithImage:"Ask about this image...",thinking:"Thinking...",keyboardHint:"Press Enter to send, Shift+Enter for new line",newConversation:"New conversation",history:"History",noConversations:"No conversations yet",selectedText:"Selected text",askAI:"Ask AI",sendError:"Failed to send message",actionExecuted:"Action executed successfully",actionFailed:"Action failed",conversationDeleted:"Conversation deleted",qmjUpdated:"Lesson plan updated successfully",quizCreated:"Quiz created successfully",searchingTextbook:"Searching textbook...",attachImage:"Attach image",analyzeImage:"What is this?",invalidImageType:"Please select an image file",imageTooLarge:"Image must be less than 5MB",uploadFailed:"Failed to upload image",imageGenerated:"Image generated successfully",context:{presentations:"Presentation",documents:"Document",qmj:"Lesson Plan",general:"General"}},h4={title:"Classrooms",description:"Manage your classrooms and students",list:"My Classrooms",create:"Create Classroom",created:"Classroom created successfully",updated:"Classroom updated successfully",deleted:"Classroom deleted successfully",codeRegenerated:"Join code regenerated successfully",studentAdded:"Student added successfully",studentRemoved:"Student removed successfully",noClassrooms:"No classrooms yet",noClassroomsDescription:"Create your first classroom to start managing students",createFirst:"Create Your First Classroom",activeClassrooms:"Active Classrooms",inactiveClassrooms:"Inactive Classrooms",students:"Students",studentsCount:"{{count}}
399 students",noStudents:"No students yet",noStudentsDescription:"Share the QR code or add students manually",form:{name:"Classroom Name",namePlaceholder:"e.g., Mathematics 7A",nameRequired:"Name is required",nameMaxLength:"Name must be less than 255 characters",description:"Description",descriptionPlaceholder:"Optional description for this classroom",descriptionMaxLength:"Description must be less than 1000 characters",schoolClass:"Attach to a school class",noSchoolClass:"None",schoolClassHint:"Inherits that class's current roster instantly and stays in sync — no separate join codes needed."},attachSchoolClass:"Attach to school class",attachSchoolClassHint:"Inherits that class's current roster instantly and stays in sync.",detachSchoolClass:"Detach",detachSchoolClassConfirm:"Detach this classroom from its school class? Mirrored students stay in the classroom — they just stop syncing.",schoolClassAttached:"Attached to school class",schoolClassDetached:"Detached from school class",syncedWithClass:"Synced with {{name}}",syncedWithClassGeneric:"Synced with a school class",syncedClass:"Synced class",syncedCardTitle:"Roster synced with a school class",syncedCardDescription:"This classroom mirrors {{name}}'s roster — its own join code/QR no longer work.",syncedCardDescriptionGeneric:"This classroom mirrors a school class's roster — its own join code/QR no longer work.",syncedCardDirectorHint:"Share that class's join code from School → Classes instead.",syncedCardTeacherHint:"Ask your school director for that class's join code.",goToSchoolClasses:"Go to School → Classes",joinCode:"Join Code",qrCode:"QR Code",qrCodeDescription:"Students can scan this QR code to join the classroom",shareLink:"Share Link",copyLink:"Copy Link",linkCopied:"Link copied to clipboard",regenerateCode:"Regenerate Code",regenerateCodeConfirm:"This will invalidate the current QR code. Students with the old link won't be able to join. Continue?",downloadQR:"Download QR",status:{active:"Active",inactive:"Inactive"},addStudent:"Add Student",addStudentDescription:"Add a student manually to this classroom",editStudent:"Edit Student",removeStudent:"Remove Student",removeStudentConfirm:"Are you sure you want to remove {{name}} from this classroom?",studentForm:{firstName:"First Name",firstNamePlaceholder:"Enter first name",lastName:"Last Name",lastNamePlaceholder:"Enter last name"},notFoundHint:"Classroom not found or you don't have access.",backToList:"Back to classrooms",deleteConfirm:"Are you sure you want to delete this classroom? All students will be removed.",deactivateConfirm:"Deactivating the classroom will prevent new students from joining. Continue?",join:{title:"Join Classroom",subtitle:"Enter your name to join",classroomName:"You are joining",firstName:"First Name",firstNamePlaceholder:"Enter your first name",firstNameRequired:"First name is required",firstNameMaxLength:"First name must be less than 100 characters",lastName:"Last Name",lastNamePlaceholder:"Enter your last name",lastNameRequired:"Last name is required",lastNameMaxLength:"Last name must be less than 100 characters",submit:"Join Classroom",joining:"Joining...",invalidCode:"Invalid or expired join code",classroomInactive:"This classroom is no longer accepting new students",success:"Successfully joined the classroom!",successTitle:"Welcome!",successDescription:"You have successfully joined {{classroom}}",backToHome:"Back to Home",scanAnother:"Scan Another Code",studentName:"You joined as"},tabs:{overview:"Overview",students:"Students",groups:"Groups",picker:"Random Picker",tools:"Tools"},quickStats:"Quick Stats",quickActions:"Quick Actions",picker:{title:"Random Student Picker",description:"Point the camera at the class and pick a random face.",pick:"Pick Student",spinning:"Selecting...",selectedStudent:"Selected Student",studentsAvailable:"{{count}} students available",modes:{wheel:"Wheel",cards:"Cards",slot:"Slot",lightning:"Lightning"},noStudents:"Add students to use the random picker",clickToPick:"Click to pick a random student",camera:{start:"Start camera",stop:"Turn off",pick:"Pick someone",picking:"Picking…",requesting:"Requesting camera…",hint:"Point the camera at the class and tap pick.",offTitle:"Random face picker",offBody:"Point your camera at the class. Face detection runs on this device only — no video is uploaded.",noFace
399s:"No faces detected. Ask everyone to look at the camera and try again.",retry:"Try again",youArePicked:"You're up!",faceCount:"{{faces}} faces detected",consent:{title:"Use your camera?",body:"This will use your camera to make the picker fun. Faces are processed on your device only — nothing is uploaded.",accept:"Enable camera"},errors:{denied:"Camera access denied. Enable it in your browser settings.",noDevice:"No camera found on this device.",models:"Could not load face-detection models. Check your network and try again.",unknown:"The camera couldn't start."}}},groups:{title:"Student Groups",addGroup:"Add Group",autoGenerate:"Auto Generate",numberOfGroups:"Number of Groups",ungrouped:"Ungrouped",dragHere:"Drag students here",team1:"Team Alpha",team2:"Team Beta",team3:"Team Gamma",team4:"Team Delta",team5:"Team Epsilon",team6:"Team Zeta",team7:"Team Eta",team8:"Team Theta",groupN:"Group {{n}}"},scoreboard:{title:"Team Scoreboard",description:"Track points and motivate teams during activities",reset:"Reset Scores",noGroups:"Create groups to use the scoreboard",quickAdd:"Quick Add Points"},attendance:{title:"Quick Attendance",description:"Mark students as present, absent, late, or excused",reset:"Reset",present:"Present",absent:"Absent",late:"Late",excused:"Excused",unmarked:"Unmarked",rate:"Attendance Rate",markAs:"Mark as",markAllPresent:"All Present",markAllAbsent:"All Absent"}},g4={title:"Helpers",subtitle:"Interactive tools to enhance your lessons",open:"Open",tags:{ar:"AR",geography:"Geography",interactive:"Interactive",biology:"Biology",anatomy:"Anatomy",physics:"Physics",chemistry:"Chemistry",simulation:"Simulation"},arGlobe:{title:"AR Geography Globe",description:"3D Earth globe with climate, population, tectonic plates, trade routes, and migration layers. Use the time slider to see historical border changes.",subtitle:"Interactive 3D globe — explore with layers and time slider",layersTitle:"Layers",timeSlider:"Time Slider",howToUse:"How to use",tip1:"Use the controls to rotate the globe",tip2:"Toggle layers on/off to visualize different data",tip3:"Drag the time slider to observe historical changes",layers:{climate:"Climate",population:"Population",tectonic:"Tectonic Plates",trade:"Trade Routes",migration:"Migration",countries:"Countries",dayNight:"Day / Night"},controls:{rotateLeft:"Rotate left",rotateRight:"Rotate right",pause:"Pause",play:"Play",zoomIn:"Zoom in",zoomOut:"Zoom out",reset:"Reset",dayNight:"Day/Night cycle"},eras:{ancientCivilizations:"Ancient civilizations: Egypt, Mesopotamia, Indus Valley",classicalAge:"Classical age: Greece, Persia, Chinese empires",romanEmpire:"Roman Empire and Han Dynasty era",middleAges:"Middle Ages: Byzantium, Islamic Golden Age",medievalPeriod:"Medieval period: Crusades, Silk Road",ageOfDiscovery:"Age of Discovery and exploration",industrialRevolution:"Industrial Revolution and colonialism",modernEra:"Modern era: World Wars",postWar:"Post-war period: Cold War, decolonization",contemporary:"Contemporary: globalization, internet",present:"Present day"}},shapeSculpt:{title:"3D Sculptor",subtitle:"Sculpt a 3D shape with your hands via camera — pinch to grab a corner, fist to rotate.",cardDescription:"Reach into the camera and deform a floating cube by pinching its corners. Hands-free 3D modeling for geometry lessons.",tag3D:"3D",tagGesture:"Hand gestures",enableCamera:"Enable camera",stop:"Stop",reset:"Reset shape",retry:"Try again",loadingModel:"Loading hand model… (~4MB, first time only)",modelError:"Couldn't load the hand model. Check your network and reload.",introTitle:"Hand-sculpted 3D",introBody:"Enable the camera and use both hands to shape a cube:",rightHand:"Right hand",leftHand:"Left hand",rightHandInstruction:"pinch thumb + index to grab a corner.",leftHandInstruction:"make a fist and move to rotate.",pinchHint:"open",pinchActive:"pinching",fistHint:"open",fistActive:"fist",hintIdle:"Tap enable and bring both hands into frame.",hintPlaying:"Pinch a corner with your right hand · fist + move = rotate",consent:{title:"Use your camera?",body:"This uses your camera to track both hands. Everything runs on this device — no video is uploaded.",accept:"Enable camera"},errors:{denied:"Camera access denied. Enable it in your browser settings.",noDevice:"No camera found on this device.",unknown:"The camera couldn't start."}},poseMatch:{title:"Simon Says (Pose Match)",subtitle:"5-minute brain break — match the pose on screen with your body.",cardDescription:"Stand in front of the camera and copy the pose. Great for energy breaks between lessons.",tagBrainBreak:"Brain break",tagMovement:"Movement",start:"Start",stop:"Stop",playing:"Playing…",playAgain:"Play again",requesting:"Requesting camera…",loadingModel:"Loading pose model… (~6MB, first time only)",modelError:"Couldn't load the pose model. Check your network and reload.",introTitle:"Ready for a brain break?",introBody:"Stand back so the camera sees your whole body, then tap Start.",startHint:"Tap Start to begin.",holdHint:"Hold the pose for one second to score it.",holdIt:"Hold it!",greatJob:"Great job!",allDone:"{{count}} poses matched.",targetPose:"Match this pose",targetWaiting:"Up next",poseLabel:"Pose {{n}} of {{total}}",poses:{handsUp:"Hands up!",tPose:"T-pose",rightHandUp:"Right hand up",star:"Star jump",flex:"Show your muscles",squat:"Squat down",leftHandUp:"Left hand up",cactus:"Cactus arms",yPose:"Reach for the sky",warrior:"Point to the sky"},consent:{title:"Use your camera?",body:"This uses your camera to read your body's pose. Everything runs on this device — no video is uploaded.",accept:"Enable camera"},errors:{denied:"Camera access denied. Enable it in your browser settings.",noDevice:"No camera found on this device.",unknown:"The camera couldn't start."}},fruitNinja:{title:"Fruit Ninja",subtitle:"Slash flying fruit with your hands. 60-second round, 3 lives.",cardDescription:"Wave your hands to slice fruit on screen — but watch out for bombs! High-energy 60-second brain break.",tagGame:"Game",start:"Start",stop:"Stop",playing:"Slashing!",playAgain:"Play again",requesting:"Requesting camera…",loadingModel:"Loading hand-tracking model… (~6MB, first time only)",modelError:"Couldn't load the model. Check your network and reload.",introTitle:"Slash the fruit!",introBody:"Stand back so the camera sees your arms, then wave your hands to slice fruit. Avoid the bombs!",hintIdle:"Tap Start, then slash the fruit with your hands.",hintPlaying:"Slash fruit, dodge bombs!",lives:"Lives",gameOver:"Time's up!",newBest:"New best
399!",best:"Best: {{best}}",consent:{title:"Use your camera?",body:"This uses your camera to track your hands. Everything runs on this device — no video is uploaded.",accept:"Enable camera"},errors:{denied:"Camera access denied. Enable it in your browser settings.",noDevice:"No camera found on this device.",unknown:"The camera couldn't start."}},statueFreeze:{title:"Statue Freeze",subtitle:"Music plays, kids dance — when it stops, freeze! The camera spots anyone still moving.",cardDescription:"Classic musical-statues party game with CV refereeing. Up to 6 kids in frame.",tagMultiplayer:"Up to 6 kids",freeze:"FREEZE!",enableCamera:"Enable camera",startRound:"Start round",nextRound:"Next round",cancelRound:"Cancel",stop:"Stop",playing:"Dance!",judging:"Judging…",requesting:"Requesting camera…",loadingModel:"Loading multi-pose model… (~6MB, first time only)",modelError:"Couldn't load the model. Check your network and reload.",silentMode:"(no music files yet — silent mode)",introTitle:"Statue Freeze",introBody:"Get the kids in front of the camera, hit Enable, then start a round. When the music stops, anyone still moving is out!",hintIdle:"Enable the camera to begin.",hintReady:"Ready for round {{round}}. Tap Start to play music.",hintPlaying:"Music's on — dance until it stops!",hintFreeze:"Don't move!",hintResults:"{{still}} froze · {{moved}} moved",consent:{title:"Use your camera?",body:"This uses your camera to spot who's moving. Everything runs on this device — no video is uploaded.",accept:"Enable camera"},errors:{denied:"Camera access denied. Enable it in your browser settings.",noDevice:"No camera found on this device.",unknown:"The camera couldn't start."}},balloonPop:{title:"Balloon Pop",cardDescription:"Swipe your hand to pop the balloons."},reactionDash:{title:"Reaction Dash",cardDescription:"React the instant the signal appears."},jumpJack:{title:"Jump Jack",cardDescription:"Jumping jacks · to the beat (BPM)."},zonePunch:{title:"Zone Punch",cardDescription:"Swipe to hit the glowing zone."},squatCount:{title:"Squat Count",cardDescription:"Count your down → up reps."},balanceHold:{title:"Balance Hold",cardDescription:"Hold the T-pose steady."},breathBubble:{title:"Breath Bubble",cardDescription:"A guided breathing cycle."},colorRush:{title:"Color Rush",cardDescription:"Tap the right color, fast."},memoryFlash:{title:"Memory Flash",cardDescription:"Memorize the order, then repeat it."},rhythmTap:{title:"Rhythm Tap",cardDescription:"Tap on the beat — keep the rhythm."},stroop:{title:"Stroop Test",cardDescription:"Not the word — pick the ink color."},numberOrder:{title:"Number Order",cardDescription:"1 → 2 → 3… in order."},mathPop:{title:"Math Pop",cardDescription:"Quick +, × arithmetic."},redLight:{title:"Red Light, Green Light",cardDescription:"Go on green, freeze on red."},bubbleWrap:{title:"Bubble Wrap",cardDescription:"Pop away the stress — burst it all."},oddOne:{title:"Odd One Out",cardDescription:"Spot the emoji that doesn't belong."},humanBody:{title:"Human Body Explorer",description:"Interactive anatomy explorer with toggleable organ systems and a diagnosis challenge mode.",subtitle:"Explore the human body — toggle systems and click organs to learn",layersTitle:"Body Systems",howToUse:"How to use",tip1:"Toggle body systems on/off to see different layers",tip2:"Click any organ to see its name, function, and fun facts",tip3:"Switch to Diagnose mode for an interactive challenge",controls:{explore:"Explore",diagnose:"Diagnose",reset:"Reset",submitDiagnosis:"Submit Diagnosis",nextScenario:"Next Scenario"},layers:{skeletal:"Skeletal System",muscular:"Muscular System",circulatory:"Circulatory System",nervous:"Nervous System",digestive:"Digestive System",respiratory:"Respiratory System",urinary:"Urinary System"},organInfo:{title:"Organ Info",function:"Function",funFact:"Fun Fact",selectOrgan:"Click an organ to see details"},organs:{skull:{name:"Skull",function:"Protects the brain and supports facial structure.",funFact:"The skull is made of 22 bones fused together."},clavicle:{name:"Clavicle",function:"Connects the arm to the trunk and stabilizes the shoulder.",funFact:"The clavicle is the most commonly broken bone in the human body."},ribcage:{name:"Rib Cage",function:"Protects the heart and lungs.",funFact:"Most people have 12 pairs of ribs."},spine:{name:"Spine",function:"Supports the body and protects the spinal cord.",funFact:"You are taller in the morning — discs compress during the day."},scapula:{name:"Scapula",function:"The shoulder blade — anchors muscles that move the arm.",funFact:"The scapula connects to 17 different muscles."},pelvis:{name:"Pelvis",function:"Supports the weight of the upper body and connects to the legs.",funFact:"The pelvis is one of the strongest bone structures in the body."},femur:{name:"Femur",function:"The thigh bone — the longest and strongest bone in the body.",funFact:"The femur can support up to 30 times your body weight."},tibia:{name:"Tibia",function:"The shin bone — supports body weight between knee and ankle.",funFact:"The tibia is the second longest bone in the body after the femur."},humerus:{name:"Humerus",function:"The upper arm bone connecting shoulder to elbow.",funFact:"The funny bone tingling comes from the ulnar nerve near the humerus."},radius:{name:"Radius & Ulna",function:"Forearm bones that allow rotation of the wrist and hand.",funFact:"The radius and ulna cross over each other when you turn your palm down."},deltoid:{name:"Deltoid",function:"Shoulder muscle that lifts the arm in all directions.",funFact:"The deltoid is named after the Greek letter delta due to its triangular shape."},pectorals:{name:"Pectorals",function:"Chest muscles that move the arms and assist breathing.",funFact:"The pectoralis major is the largest chest muscle."},biceps:{name:"Biceps",function:"Bends the arm at the elbow.",funFact:"Biceps means 'two heads' — it has two attachment points."},triceps:{name:"Triceps",function:"Extends the arm at the elbow — the main pushing muscle.",funFact:"The triceps makes up about two-thirds of the upper arm's mass."},trapezius:{name:"Trapezius",function:"Moves and stabilizes the shoulder blades and supports the neck.",funFact:"The trapezius is one of the widest muscles in the back."},abdominals:{name:"Abdominals",function:"Core muscles that stabilize the torso and protect internal organs.",funFact:"Everyone has abs — they're just hidden under fat in most people."},gluteus:{name:"Gluteus",function:"The buttock muscles — the most powerful muscle group for hip extension.",funFact:"The gluteus maximus is the largest muscle in the human body."},quadriceps:{name:"Quadriceps",function:"Extends the knee and helps with walking, running, and jumping.",funFact:"The quadriceps is the strongest muscle group in the body."},hamstring:{name:"Hamstring",function:"Bends the knee and extends the hip during walking and running.",funFact:"Hamstring injuries are the most common sports injury."},calf:{name:"Calf (Gastrocnemius)",function:"Pushes the foot down — essential for walking, running, and jumping.",funFact:"The calf muscle can exert a force equal to 3 times your body weight."},heart:{name:"Heart",function:"Pumps blood throughout the entire body.",funFact:"The heart beats about 100,000 times per day."},aorta:{name:"Aorta",function:"The largest artery — carries blood from the heart to the body.",funFact:"The aorta is roughly the diameter of a garden hose."},venaCava:{name:"Vena Cava",function:"The largest vein — returns deoxygenated blood to the heart.",funFact:"The vena cava carries about 70% of all blood returning to the heart."},carotid:{name:"Carotid Artery",function:"Supplies oxygenated blood to the brain and head.",funFact:"You can feel your pulse on the carotid artery in your neck."},femoral:{name:"Femoral Artery",function:"The main artery supplying blood to the legs.",funFact:"The femoral artery is the largest artery in the thigh."},lungLeft:{name:"Left Lung",function:"Exchanges oxygen and carbon dioxide in the blood.",funFact:"The left lung is slightly smaller to make room for the heart."},lungRight:{name:"Right Lung",function:"Exchanges oxygen and carbon dioxide in the blood.",funFact:"If spread flat, lung surface area equals a tennis court."},trachea:{name:"Trachea",function:"Carries air from the throat to the lungs.",funFact:"The trachea is reinforced with C-shaped cartilage rings."},bronchi:{name:"Bronchi",function:"Branch from the trachea to deliver air into each lung.",funFact:"The right bronchus is wider and shorter than the left."},diaphragm:{name:"Diaphragm",function:"The main muscle of breathing — contracts to pull air in.",funFact:"Hiccups are caused by involuntary spasms of the diaphragm."},esophagus:{name:"Esophagus",function:"Carries food from the throat to the stomach.",funFact:"Food doesn't fall to your stomach — muscles push it there."},stomach:{name:"Stomach",function:"Breaks down food with acid and enzymes.",funFact:"The stomach produces a new lining every 3–4 days."},liver:{name:"Liver",function:"Filters blood, produces bile, and processes nutrients.",funFact:"The liver can regenerate itself even if 75% is removed."},gallbladder:{name:"Gallbladder",function:"Stores and concentrates bile produced by the liver.",funFact:"You can live without a gallbladder — bile just flows directly from the liver."},pancreas:{name:"Pancreas",function:"Produces digestive enzymes and regulates blood sugar with insulin.",funFact:"The pancreas produces about 1.5 liters of digestive juice per day."},smallIntestine:{name:"Small Intestine",function:"Absorbs most nutrients from digested food.",funFact:"The small intestine is about 6 meters long — the longest part of the GI tract."},colon:{name:"Large Intestine (Colon)",function:"Absorbs water and forms s
399olid waste for elimination.",funFact:"The colon hosts trillions of bacteria that help with digestion and immunity."},appendix:{name:"Appendix",function:"May serve as a reservoir for beneficial gut bacteria.",funFact:"The appendix was long considered useless, but may help repopulate gut flora."},brain:{name:"Brain",function:"Controls all body functions, thoughts, and emotions.",funFact:"The brain uses 20% of the body's total energy."},cerebellum:{name:"Cerebellum",function:"Coordinates movement, balance, and motor learning.",funFact:"The cerebellum contains more neurons than the rest of the brain combined."},spinalCord:{name:"Spinal Cord",function:"Transmits nerve signals between the brain and body.",funFact:"The spinal cord stops growing at age 4–5."},nerves:{name:"Nerve Network",function:"Carries electrical signals throughout the body.",funFact:"Nerve impulses travel at up to 120 meters per second."},kidneyLeft:{name:"Left Kidney",function:"Filters blood to remove waste and excess fluid as urine.",funFact:"Each kidney contains about 1 million tiny filtering units called nephrons."},kidneyRight:{name:"Right Kidney",function:"Filters blood to remove waste and excess fluid as urine.",funFact:"The right kidney sits slightly lower than the left due to the liver above it."},ureter:{name:"Ureter",function:"Carries urine from the kidney to the bladder.",funFact:"Ureters use wave-like contractions to push urine — it doesn't just drip down."},bladder:{name:"Bladder",function:"Stores urine until it is excreted from the body.",funFact:"The bladder can hold about 400–600 ml of urine when full."}},diagnose:{title:"Diagnose Mode",selectSymptoms:"Select the patient's symptoms:",chooseDiagnosis:"Choose your diagnosis:",correct:"Correct! Well done!",incorrect:"Not quite right.",symptoms:{chestPain:"Chest pain",shortnessOfBreath:"Shortness of breath",leftArmNumbness:"Left arm numbness",abdominalPain:"Abdominal pain",nausea:"Nausea",bloating:"Bloating",headache:"Headache",dizziness:"Dizziness",blurredVision:"Blurred vision",wheezing:"Wheezing",tightChest:"Tight chest",frequentCoughing:"Frequent coughing",flankPain:"Flank pain (lower back, side)",painfulUrination:"Painful urination",fever:"Fever and chills",legPain:"Leg pain after activity",swelling:"Swelling in the thigh area",limitedMotion:"Limited range of motion"},scenarios:{chestPain:{title:"Chest Pain Case",description:"A 45-year-old patient reports severe chest pain radiating to the left arm with difficulty breathing."},stomachAche:{title:"Stomach Ache Case",description:"A 30-year-old patient has persistent upper abdominal pain, nausea, and a feeling of bloating after meals."},headache:{title:"Severe Headache Case",description:"A 25-year-old student complains of intense throbbing headache, dizziness, and occasionally blurred vision."},breathingDifficulty:{title:"Breathing Difficulty Case",description:"A 12-year-old child has recurring episodes of wheezing, chest tightness, and coughing, especially during exercise."},kidneyPain:{title:"Kidney Pain Case",description:"A 35-year-old woman presents with severe pain in her lower back and side, painful urination, and fever with chills."},muscleInjury:{title:"Muscle Injury Case",description:"A 20-year-old athlete reports sharp pain in the right thigh after sprinting, with noticeable swelling and difficulty bending the knee."}},diagnoses:{heartAttack:{name:"Heart Attack",explanation:"Chest pain radiating to the left arm is a classic sign of myocardial infarction. The heart muscle doesn't receive enough blood."},pneumonia:{name:"Pneumonia",explanation:"Pneumonia causes chest pain and breathing difficulty, but typically doesn't cause arm numbness."},ribFracture:{name:"Rib Fracture",explanation:"A rib fracture causes localized chest pain but wouldn't affect the arm or breathing pattern this way."},gastritis:{name:"Gastritis",explanation:"Gastritis is inflammation of the stomach lining, causing upper abdominal pain, nausea, and bloating — especially after eating."},appendicitis:{name:"Appendicitis",explanation:"Appendicitis typically causes lower-right abdominal pain, not upper abdominal pain with bloating."},foodPoisoning:{name:"Food Poisoning",explanation:"Food poisoning causes sudden onset of vomiting and diarrhea, not persistent pain after meals."},migraine:{name:"Migraine",explanation:"Migraines cause throbbing headache often with visual disturbances (aura) and dizziness. Common in young adults."},concussion:{name:"Concussion",explanation:"A concussion requires head trauma. Without injury, recurring headaches point to migraine."},hypertension:{name:"Hypertension",explanation:"High blood pressure can cause headaches, but typically in older patients and without visual aura."},asthma:{name:"Asthma",explanation:"Recurring wheezing, chest tightness, and coughing during exercise are hallmark signs of asthma in children."},bronchitis:{name:"Bronchitis",explanation:"Bronchitis is usually a one-time infection, not recurring episodes triggered by exercise."},heartFailure:{name:"Heart Failure",explanation:"Heart failure causes breathing difficulty but is extremely rare in children and has different symptoms."},kidneyInfection:{name:"Kidney Infection (Pyelonephritis)",explanation:"Flank pain combined with fever, chills, and painful urination is the classic triad of a kidney infection. Bacteria travel up from the bladder."},kidneyStone:{name:"Kidney Stone",explanation:"Kidney stones cause severe flank pain but typically without fever. The pain comes in waves as the stone moves through the ureter."},uti:{name:"Urinary Tract Infection",explanation:"A UTI causes painful urination but usually doesn't cause severe flank pain or high fever — those suggest the infection has reached the kidneys."},muscleStrain:{name:"Muscle Strain (Quadriceps)",explanation:"Sharp pain during sprinting with localized swelling and limited motion is a classic quadriceps muscle strain. Common in athletes."},fracture:{name:"Femur Fracture",explanation:"A femur fracture requires extreme force and would cause inability to bear weight at all, not just limited motion."},deepVeinThrombosis:{name:"Deep Vein Thrombosis",explanation:"DVT causes swelling and pain but typically develops gradually, not acutely during exercise, and affects the calf more than the thigh."}}}},physicsLab:{title:"Virtual Physics Lab",description:"Interactive 2D physics simulations for classroom demonstrations",subtitle:"Explore p
399hysics concepts with real-time 2D simulations",pickSimulation:"Choose Simulation",parameters:"Parameters",readouts:"Readouts",howToUse:"How to use",tip1:"Select a simulation from the sidebar",tip2:"Adjust parameters using the sliders",tip3:"Press Play to start the animation",tip4:"Watch the readouts update in real time",controls:{play:"Play",pause:"Pause",reset:"Reset",speed:"Speed"},simulations:{projectile:{name:"Projectile Motion",description:"Launch a ball and observe parabolic trajectory"},pendulum:{name:"Simple Pendulum",description:"Observe oscillation, period, and energy exchange"},inclinedPlane:{name:"Inclined Plane",description:"Study forces on a block sliding down a ramp"},springOscillator:{name:"Spring Oscillator",description:"Mass-spring system with damping and displacement graph"},freeFall:{name:"Free Fall",description:"Compare objects falling in vacuum vs air"},collision:{name:"Collision",description:"Elastic and inelastic collisions with momentum conservation"},waveInterference:{name:"Wave Interference",description:"Two-source wave interference pattern"},buoyancy:{name:"Buoyancy (Archimedes)",description:"Object floating or sinking in fluid"},lever:{name:"Lever & Torque",description:"Balance beam with adjustable masses and distances"},circularMotion:{name:"Circular Motion",description:"Object on a string with centripetal force"}},params:{velocity:"Initial Velocity",angle:"Launch Angle",gravity:"Gravity",length:"Pendulum Length",mass:"Mass",damping:"Damping",initialAngle:"Initial Angle",rampAngle:"Ramp Angle",friction:"Friction Coefficient",springConstant:"Spring Constant",initialDisplacement:"Initial Displacement",massA:"Mass A",massB:"Mass B",height:"Drop Height",airResistance:"Air Resistance",dragCoefficient:"Drag Coefficient",velocityA:"Velocity A",velocityB:"Velocity B",elasticCollision:"Elastic Collision",wavelength:"Wavelength",separation:"Source Separation",amplitude:"Amplitude",objectDensity:"Object Density",fluidDensity:"Fluid Density",objectSize:"Object Size",massLeft:"Mass Left",massRight:"Mass Right",distLeft:"Distance Left",distRight:"Distance Right",radius:"Radius",angularVelocity:"Angular Velocity",tensionLimit:"Tension Limit"},readoutLabels:{time:"Time",maxHeight:"Max Height",range:"Range",flightTime:"Flight Time",currentVelocity:"Velocity",positionX:"Position X",positionY:"Position Y",period:"Period",kineticEnergy:"Kinetic Energy",potentialEnergy:"Potential Energy",totalEnergy:"Total Energy",currentAngle:"Angle",acceleration:"Acceleration",position:"Position",netForce:"Net Force",normalForce:"Normal Force",frictionForce:"Friction Force",displacement:"Displacement",frequency:"Frequency",amplitude:"Amplitude",velocityA:"Velocity A",velocityB:"Velocity B",heightA:"Height A",heightB:"Height B",timeDifference:"Time Difference",momentumBefore:"Momentum (before)",momentumAfter:"Momentum (after)",keBefore:"KE (before)",keAfter:"KE (after)",wavelengthVal:"Wavelength",separationVal:"Separation",objectWeight:"Object Weight",buoyantForce:"Buoyant Force",submergedFraction:"Submerged",torqueLeft:"Torque Left",torqueRight:"Torque Right",netTorque:"Net Torque",balanced:"Balanced",centripetalForce:"Centripetal Force",angularVelocityVal:"Angular Velocity",tensionStatus:"Tension Status"}},chemLab:{title:"Virtual Chemistry Lab",description:"Interactive 2D chemistry simulations for classroom demonstrations",subtitle:"Explore chemistry concepts with real-time 2D simulations",pickSimulation:"Choose Simulation",parameters:"Parameters",readouts:"Readouts",howToUse:"How to use",tip1:"Select a simulation from the sidebar",tip2:"Adjust parameters using the sliders",tip3:"Press Play to start the animation",tip4:"Watch the readouts update in real time",controls:{play:"Play",pause:"Pause",reset:"Reset",speed:"Speed"},simulations:{gasLaws:{name:"Gas Laws (Ideal Gas)",description:"Animated particles in a container — explore PV=nRT"},statesOfMatter:{name:"States of Matter",description:"Phase transitions: solid, liquid, gas"},acidBase:{name:"Acid-Base / pH Scale",description:"Mix acid and base, watch pH and color change"},atomicStructure:{name:"Atomic Structure",description:"Explore electron shells for elements 1-18"},reactionRate:{name:"Reaction Rate",description:"Temperature and concentration affect collision rate"}},params:{temperature:"Temperature",volume:"Volume",particleCount:"Particle Count",acidDrops:"Acid Drops",baseDrops:"Base Drops",acidStrength:"Acid Strength",baseStrength:"Base Strength",atomicNumber:"Atomic Number (Z)",concentration:"Concentration",activationEnergy:"Activation Energy"},readoutLabels:{time:"Time",pressure:"Pressure",volume:"Volume",temperature:"Temperature",particles:"Particles",pvnrt:"PV/nRT",phase:"Phase",avgSpeed:"Avg. Speed",phValue:"pH",hConcentration:"[H⁺]",ohConcentration:"[OH⁻]",solutionType:"Solution Type",acidDrops:"Acid Drops",baseDrops:"Base Drops",element:"Element",atomicNumber:"Atomic Number",massNumber:"Mass Number",electronConfig:"Electron Config",valenceElectrons:"Valence Electrons",reactantsA:"Reactant A",reactantsB:"Reactant B",productsFormed:"Products Formed",reactionRateVal:"Reaction Rate",collisions:"Successful Collisions"}}},v4={title:"Brain Break",description:"19 activities: camera-based movement games + no-camera brain and focus games.",start:"Start",subscribeRequired:"Subscription required",badgeCv:"CV",badgeNoCamera:"NO CAMERA"},y4={graded:"Submission graded successfully",allGraded:"All submissions graded successfully",gradeWithAI:"Grade with AI",gradeAll:"Grade All",ungraded:"Ungraded",quotaLabel:"AI grading quota",quotaExhausted:"AI grading quota exhausted. Upgrade your plan.",upgradePlan:"Upgrade Plan",assignmentsLocked:"Assignments are available on paid plans only",createAssignment:"Create Assignment"},b4={quotaLabel:"AI grading quota",quotaExhausted:"AI grading quota exhausted. Upgrade your plan."},w4={title:"Presentations V2",beta:"BETA",createNew:"Create New",noPresentation:"No presentations yet",noPresentationDesc:"Create your first V2 presentation",deleteConfirm:"Are you sure you want to delete this presentation? This action cannot be undone.",search:"Search presentations...",slides:"slides",delete:"Delete",cancel:"Cancel",generateOutline:"Generate Outline",viewSample:"View Sample",outline:"Outline",back:"Back",regenerate:"Regenerate",generate:"Create Presentation",addSlide:"Add slide",addPoint:"Add point",generating:"AI is creating presentation...",created:"Presentation created!",createAnother:"Create another",viewPresentation:"View Presentation",present:"Present",exportPptx:"Download PPTX",exportPdf:"Download PDF",previous:"Previous",next:"Next"},x4={title:"Telegram bot",description:"Link the Zerde Telegram bot to your account",connect:"Connect Telegram",connectHint:"Open the bot and confirm to link your account. Codes expire in 5 minutes.",openBot:"Open Telegram",openInTelegram:"Open in Telegram",scanOrOpen:"Scan the QR with your phone or use the button below",qrAlt:"Telegram link QR code",waitingConfirm:"Waiting for confirmation in Telegram…",codeExpired:"Code expired. Try again to get a fresh code.",tryAgain:"Try again",connected:"Connected ✅",disconnect:"Disconnect",linkedAt:"Linked: {{date}}",yourAccount:"your account",alreadyLinked:"Telegram linked: {{username}}"},S4={title:"My School",noSchoolTitle:"No school yet",noSchoolHint:"You're not part of a school. If a director adds you by email, you'll join automatically the next time you log in.",notFound:"School not found",noCity:"No city set",noPlan:"No plan assigned yet",info:"School info",infoHint:"Shown on the school's public profile page.",infoSaved:"School info saved",contactEmail:"Contact email",websiteUrl:"Website",logoUrl:"Logo URL",foundedYear:"Founded year",address:"Address",description:"Description",location:"Location",locationHint:"Click anyw
399here on the map to place the pin, or drag it — the coordinates below update automatically. You can also type them in directly.",latitude:"Latitude",longitude:"Longitude",statusActive:"Active",statusInactive:"Inactive",statusRevoked:"Revoked",roleDirector:"Director",roleTeacher:"Teacher",currentPlan:"Current plan",plan:"School plan",planHint:"Changing the plan applies instantly to every currently active member.",selectPlan:"Select a plan",assignPlan:"Assign plan",planAssigned:"Plan applied to {{count}} member(s)",addTeacher:"Add a teacher",addTeacherHint:"Add by email — they get access immediately if they already have an account.",teacherEmailPlaceholder:"[email protected]",sendInvite:"Add teacher",teacherAdded:"✅ {{email}} added — they have access now.",teacherPending:"{{email}} doesn't have a Zerde account yet — they'll be added automatically the moment they sign up with that email.",members:"Members",membersHint:"Everyone who has ever joined this school, active or revoked.",member:"Member",role:"Role",status:"Status",joinedAt:"Joined",noMembers:"No members yet",removeMemberConfirm:'Remove "{{name}}" from this school? Their school-granted plan will be revoked too.',memberRemoved:"Member removed",makeDirector:"Make director",makeTeacher:"Make teacher",pending:"Pending",noPending:"No pending adds — everyone added so far already has an account.",activated:"School activated",deactivated:"School deactivated",editProfile:"Edit profile",memberPhoto:"Photo URL",memberSubject:"Subject",memberBio:"Bio",analytics:"This month's usage",noAnalytics:"No usage recorded yet this month",bestStudents:"Best students",bestStudentsHint:"Showcase standout students on the school's profile.",addStudent:"Add student",editStudent:"Edit student",studentName:"Name",studentAchievement:"Achievement",displayOrder:"Display order",removeStudentConfirm:'Remove "{{name}}" from best students?',noStudents:"No featured students yet",dayOfWeek:"Day",startTime:"Start time",endTime:"End time",entryTitle:"Title",room:"Room",teacher:"Teacher",noTeacher:"No teacher assigned",addScheduleEntry:"Add entry",editScheduleEntry:"Edit entry",removeScheduleEntryConfirm:'Remove "{{title}}" from the schedule?',schedule:{title:"Weekly schedule",hint:"The class's week — click an empty slot's + to add a lesson.",pickClassHint:"Pick a class to view or edit its weekly schedule.",empty:"No schedule entries yet",days:{mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday",sun:"Sunday"}},subjects:"Subjects",subjectsHint:"Which subjects this school offers — powers the schedule builder's subject picker.",subjectsSaved:"Subjects saved",useAllSubjects:"Use all platform subjects",useAllSubjectsHint:"Off lets you pick a specific subset instead.",emptySelectionHint:"Leaving everything unchecked reverts to using all platform subjects.",customSubjects:"Custom subjects",customSubjectsHint:"School-specific subjects not in the platform catalog.",noCustomSubjects:"No custom subjects yet",customSubjectPlaceholder:"e.g. Robotics",addCustomSubject:"Add subject",removeCustomSubjectConfirm:'Remove "{{name}}"?',cabinets:"Cabinets (rooms)",cabinetsHint:"Rooms the school teaches in — used by the schedule builder.",cabinetNumber:"Number",cabinetTitle:"Title (optional)",cabinetTitlePlaceholder:"e.g. Chemistry lab",addCabinet:"Add cabinet",noCabinets:"No cabinets yet",removeCabinetConfirm:'Remove "{{name}}"?',classes:"Classes",classesHint:'Class/grade groups (e.g. "7A") — used by the schedule builder.',classNumber:"Number",classTitle:"Title (optional)",classTitlePlaceholder:"e.g. Physics-Math profile",addClass:"Add class",noClasses:"No classes yet",noClassesForSchedule:"No classes yet — add one in the Classes section first.",removeClassConfirm:'Remove "{{name}}"?',manageClassHint:"Join code and roster for this class.",joinCode:"Join code",generateJoinCode:"Generate join code",regenerateJoinCode:"Regenerate code",regenerateJoinCodeConfirm:"This issues a new code — the old one stops working immediately, even for students who already have it.",joinCodeHiddenHint:"The join code isn't shown after you leave this dialog — generate a new one any time to see and share it again.",classRoster:"Class roster",noRosterStudents:"No students on this class's roster yet",subject:"Subject",noSubject:"No subject",noCabinet:"No room"},C4={title:"3D Models",subtitle:"Interactive 3D models for your lessons — rotate, zoom, and explore",selectSubject:"Select a subject to browse its models",noSubjects:"No subjects have 3D models yet",noModels:"No 3D models for this subject yet",searchPlaceholder:"Search models...",noSearchResults:"No models match your search",poweredBy:"Powered by Sketchfab",viewOnSketchfab:"View on Sketchfab",modelBy:"Model by {{name}}",attributionPrefix:"Model by"},P4={common:V3,nav:H3,auth:q3,landing:B3,dashboard:W3,qmj:G3,lessons:K3,presentations:Q3,videos:Y3,marketplace:J3,admin:X3,profile:Z3,grades:e4,errors:t4,footer:n4,termsPage:r4,privacyPage:o4,subscription:i4,status:s4,documents:a4,assessments:l4,bloom:c4,scientificProjects:u4,authorPrograms:d4,avatar:f4,conversation:p4,agent:m4,classroom:h4,helpers:g4,brainBreaksList:v4,assignments:y4,homeworkCheck:b4,presentationsV2:w4,telegram:x4,school:S4,models3d:C4},E4={kk:{translation:n3},ru:{translation:z3},en:{translation:P4}};
399Ye.use(EC).use(i2).init({resources:E4,fallbackLng:"kk",supportedLngs:["kk","ru","en"],debug:!1,interpolation:{escapeValue:!1},detection:{order:["localStorage"],caches:["localStorage"],lookupLocalStorage:"sbschool-language"},react:{useSuspense:!0}});const op=[{code:"kk",name:"Қазақша",flag:"🇰🇿"},{code:"ru",name:"Русский",flag:"🇷🇺"},{code:"en",name:"English",flag:"🇬🇧"}];function k4({whatsappUrl:e,firstName:t,lastName:n,onToggleSidebar:r}){const{t:o,i18n:i}=J(),s=nr(),{user:a,logout:l}=kt(),c=op.find(h=>h.code===i.language),d=h=>{i.changeLanguage(h)},f=async()=>{await l(),s("/")},p=t||n?`${t??""} ${n??""}`.trim():o("profile.title");return u.jsx("div",{className:"h-14 border-b border-border/60 bg-background px-3 sm:px-5",children:u.jsxs("div",{className:"flex h-full items-center justify-between",children:[u.jsx("div",{className:"flex items-center gap-4",children:u.jsx("button",{type:"button",onClick:r,"aria-label":"Toggle sidebar",className:"inline-flex h-8 w-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:u.jsx(hm,{className:"h-4 w-4",strokeWidth:1.5})})}),u.jsxs("div",{className:"flex items-center",children:[u.jsxs("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:"hidden sm:inline-flex h-8 items-center gap-2 rounded-md px-2.5 text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:[u.jsx(Uf,{className:"h-3.5 w-3.5",strokeWidth:1.5}),"WhatsApp"]}),u.jsx("span",{"aria-hidden":!0,className:"mx-2 hidden h-4 w-px bg-border sm:block"}),u.jsx(au,{}),u.jsxs(Di,{children:[u.jsx(ji,{asChild:!0,children:u.jsxs("button",{type:"button","aria-label":o("common.language","Language"),className:"inline-flex h-8 items-center gap-1 rounded-md px-2 text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring data-[state=open]:bg-accent data-[state=open]:text-foreground",children:[u.jsx(pm,{className:"h-3.5 w-3.5",strokeWidth:1.5}),u.jsx("span",{className:"hidden md:inline uppercase tracking-wider",children:(c==null?void 0:c.code)??i.language}),u.jsx(Ff,{className:"h-3 w-3",strokeWidth:1.5})]})}),u.jsx(So,{align:"end",className:"min-w-[140px]",children:op.map(h=>u.jsxs(We,{onClick:()=>d(h.code),className:i.language===h.code?"bg-accent text-foreground":"text-muted-foreground",children:[u.jsx("span",{className:"mr-2",children:h.flag}),u.jsx("span",{children:h.name})]},h.code))})]}),u.jsx("span",{"aria-hidden":!0,className:"mx-2 h-4 w-px bg-border"}),u.jsxs(Di,{children:[u.jsx(ji,{asChild:!0,children:u.jsx("button",{type:"button","aria-label":p,className:"rounded-full transition-opacity hover:opacity-80 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background",children:u.jsx(sa,{className:"h-8 w-8 border border-border/80",children:u.jsx(aa,{className:"bg-muted text-[11px] font-medium text-foreground",children:mc(t??void 0,n??void 0)})})})}),u.jsxs(So,{align:"end",className:"min-w-[200px]",children:[u.jsxs("div",{className:"px-2 py-1.5",children:[u.jsx("p",{className:"truncate text-sm font-medium leading-none",children:p}),(a==null?void 0:a.phone_number)&&u.jsx("p",{className:"mt-1 truncate text-xs text-muted-foreground",children:a.phone_number})]}),u.jsx(En,{}),u.jsxs(We,{onClick:()=>s("/ai-tools"),className:"cursor-pointer",children:[u.jsx(mm,{className:"mr-2 h-4 w-4",strokeWidth:1.5}),o("nav.dashboard")]}),u.jsxs(We,{onClick:()=>s("/profile"),className:"cursor-pointer",children:[u.jsx(xa,{className:"mr-2 h-4 w-4",strokeWidth:1.5}),o("nav.profile")]}),(a==null?void 0:a.is_admin)&&u.jsxs(u.Fragment,{children:[u.jsx(En,{}),u.jsxs(We,{onClick:()=>s("/admin/dashboard"),className:"cursor-pointer",children:[u.jsx(Gx,{className:"mr-2 h-4 w-4",strokeWidth:1.5}),o("nav.admin")]})]}),u.jsx(En,{}),u.jsxs(We,{onClick:f,className:"cursor-pointer text-destructive focus:bg-destructive/10 focus:text-destructive",children:[u.jsx(Zs,{className:"mr-2 h-4 w-4",strokeWidth:1.5}),o("nav.logout")]})]})]})]})]})})}function T4({className:e}){const{isOpen:t,toggle:n}=Qt();return u.jsx("button",{onClick:n,className:U("fixed bottom-6 right-6 z-50","w-14 h-14 roun
399ded-full","bg-gradient-to-br from-primary to-primary/80","text-primary-foreground","shadow-lg hover:shadow-xl","flex items-center justify-center","transition-all duration-300 ease-out","hover:scale-105 active:scale-95","focus:outline-none focus:ring-2 focus:ring-primary/50 focus:ring-offset-2",t&&"rotate-0",!t&&"animate-pulse-subtle",e),"aria-label":t?"Close AI Agent":"Open AI Agent",children:u.jsx("div",{className:U("transition-transform duration-300",t?"rotate-90":"rotate-0"),children:t?u.jsx(Vi,{className:"w-6 h-6"}):u.jsx(ea,{className:"w-6 h-6"})})})}function Cy({className:e}){const{t}=J(),{setOpen:n,setMinimized:r,toggleConversationList:o,showConversationList:i,startNewConversation:s}=Qt();return u.jsxs("div",{className:U("flex items-center justify-between px-4 py-3","border-b bg-gradient-to-r from-primary/5 to-primary/10","rounded-t-lg",e),children:[u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx("div",{className:"w-8 h-8 rounded-full bg-primary/10 flex items-center justify-center",children:u.jsx(ea,{className:"w-4 h-4 text-primary"})}),u.jsxs("div",{children:[u.jsx("h3",{className:"font-semibold text-sm",children:t("agent.title","Zerde AI")}),u.jsx("p",{className:"text-xs text-muted-foreground",children:t("agent.subtitle","Your AI assistant")})]})]}),u.jsxs("div",{className:"flex items-center gap-1",children:[u.jsx(we,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:s,title:t("agent.newConversation","New conversation"),children:u.jsx(HR,{className:"w-4 h-4"})}),u.jsx(we,{variant:"ghost",size:"icon",className:U("h-8 w-8",i&&"bg-muted"),onClick:o,title:t("agent.history","History"),children:u.jsx(OR,{className:"w-4 h-4"})}),u.jsx(we,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:()=>r(!0),title:t("common.minimize","Minimize"),children:u.jsx(UR,{className:"w-4 h-4"})}),u.jsx(we,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:()=>n(!1),title:t("common.close","Close"),children:u.jsx(Vi,{className:"w-4 h-4"})})]})]})}const A4={presentations:u.jsx(Bx,{className:"w-4 h-4"}),documents:u.jsx(DR,{className:"w-4 h-4"}),qmj:u.jsx($x,{className:"w-4 h-4"}),general:u.jsx(pm,{className:"w-4 h-4"})},R4={presentations:"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300",documents:"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-300",qmj:"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-300",general:"bg-gray-100 text-gray-700 dark:bg-gray-800 dark:text-gray-300"};function _4({className:e}){const{t}=J(),n=Ym(),{selectedText:r,clearSelectedText:o}=Qt(),i={presentations:t("agent.context.presentations","Presentation"),documents:t("agent.context.documents","Document"),qmj:t("agent.context.qmj","Lesson Plan"),general:t("agent.context.general","General")};return n.type==="general"&&!r?null:u.jsxs("div",{className:U("px-4 py-2 border-b bg-muted/30",e),children:[u.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:u.jsxs("div",{className:U("inline-flex items-center gap-1.5 px-2 py-1 rounded-full text-xs font-medium",R4[n.type]),children:[A4[n.type],u.jsx("span",{children:i[n.type]}),n.entityId&&u.jsx(u.Fragment,{children:u.jsxs("span",{className:"opacity-50",children:["#",n.entityId]})}),n.entityTitle&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"opacity-50",children:":"}),u.jsx("span",{className:"max-w-[150px] truncate",children:n.entityTitle})]})]})}),r&&u.jsxs("div",{className:"mt-2 flex items-start gap-2",children:[u.jsxs("div",{className:"flex-1 min-w-0",children:[u.jsxs("p",{className:"text-xs text-muted-foreground mb-1",children:[t("agent.selectedText","Selected text"),":"]}),u.jsxs("div",{className:"text-xs bg-background rounded border p-2 max-h-16 overflow-hidden relative",children:[u.jsx("p",{className:"line-clamp-3",children:r}),r.length>150&&u.jsx("div",{className:"absolute bottom-0 left-0 right-0 h-4 bg-gradient-to-t from-background to-transparent"})]})]}),u.jsx(we,{variant:"ghost",size:"icon",className:"h-6 w-6 shrink-0",onClick:o,title:t("common.clear","Clear"),children:u.jsx(Vi,{className:"w-3 h-3"})})]})]})}const kC=m.forwardRef(({className:e,...t},n)=>u.jsx("textarea",{className:U("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm r
399ing-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",e),ref:n,...t}));kC.displayName="Textarea";function D4({role:e,content:t,timestamp:n,isLoading:r,suggestions:o,onSuggestionClick:i,imageUrl:s,className:a}){const l=e==="assistant";return u.jsxs("div",{className:U("flex gap-3",l?"flex-row":"flex-row-reverse",a),children:[u.jsx("div",{className:U("w-8 h-8 rounded-full flex items-center justify-center shrink-0",l?"bg-primary/10 text-primary":"bg-muted text-muted-foreground"),children:l?u.jsx(zx,{className:"w-4 h-4"}):u.jsx(xa,{className:"w-4 h-4"})}),u.jsxs("div",{className:U("flex-1 max-w-[80%]",l?"items-start":"items-end"),children:[u.jsx("div",{className:U("rounded-2xl px-4 py-3",l?"bg-muted rounded-tl-sm":"bg-primary text-primary-foreground rounded-tr-sm"),children:r?u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx(Lr,{className:"w-4 h-4 animate-spin"}),u.jsx("span",{className:"animate-pulse",children:"AI is thinking..."})]}):u.jsx("div",{className:"prose prose-sm dark:prose-invert max-w-none",children:t.split(`
400`).map((c,d)=>u.jsx("p",{className:"mb-1 last:mb-0",children:c||" "},d))})}),s&&u.jsx("div",{className:"mt-2",children:u.jsx("a",{href:s,target:"_blank",rel:"noopener noreferrer",children:u.jsx("img",{src:s,alt:"Generated image",className:"max-w-full rounded-lg border border-border shadow-sm hover:shadow-md transition-shadow cursor-pointer",style:{maxHeight:"300px",objectFit:"contain"}})})}),n&&u.jsx("span",{className:"text-xs text-muted-foreground mt-1 px-1",children:new Date(n).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}),o&&o.length>0&&u.jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:o.map((c,d)=>u.jsx("button",{onClick:()=>i==null?void 0:i(c),className:"text-xs px-3 py-1.5 rounded-full bg-primary/10 hover:bg-primary/20 text-primary transition-colors",children:c},d))})]})]})}function j4({onSuggestionClick:e,className:t}){const{t:n}=J(),{messages:r,isSending:o}=Qt(),i=Ym(),s=m.useRef(null);m.useEffect(()=>{var l;(l=s.current)==null||l.scrollIntoView({behavior:"smooth"})},[r,o]);const a=ty[i.type]||ty.general;return r.length===0&&!o?u.jsxs("div",{className:U("flex-1 flex flex-col items-center justify-center p-6",t),children:[u.jsx("div",{className:"w-16 h-16 rounded-full bg-primary/10 flex items-center justify-center mb-4",children:u.jsx(ea,{className:"w-8 h-8 text-primary"})}),u.jsx("h3",{className:"font-semibold text-lg mb-2",children:n("agent.welcome","How can I help you?")}),u.jsx("p",{className:"text-sm text-muted-foreground text-center mb-6 max-w-[280px]",children:n("agent.welcomeDescription","I can help you with documents and lesson plans.")}),u.jsx("div",{className:"flex flex-wrap gap-2 justify-center",children:a.map((l,c)=>u.jsx("button",{onClick:()=>e==null?void 0:e(l.prompt),className:U("px-3 py-1.5 rounded-full text-xs font-medium","bg-primary/10 hover:bg-primary/20 text-primary","transition-colors duration-200"),children:l.label},c))})]}):u.jsxs("div",{className:U("flex-1 overflow-y-auto p-4 space-y-4",t),children:[r.map(l=>u.jsx(D4,{role:l.role,content:l.content,timestamp:l.created_at,imageUrl:l.image_url},l.id)),o&&u.jsxs("div",{className:"flex gap-3",children:[u.jsx("div",{className:"w-8 h-8 rounded-full bg-primary/10 flex items-center justify-center shrink-0",children:u.jsx(ea,{className:"w-4 h-4 text-primary"})}),u.jsx("div",{className:"flex-1 max-w-[80%]",children:u.jsx("div",{className:"rounded-2xl rounded-tl-sm bg-muted px-4 py-3",children:u.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground",children:[u.jsx(Lr,{className:"w-4 h-4 animate-spin"}),u.jsx("span",{className:"text-sm",children:n("agent.thinking","Thinking...")})]})})})]}),u.jsx("div",{ref:s})]})}const N4=e=>new Promise((t,n)=>{const r=new FileReader;r.onload=()=>
400t(r.result),r.onerror=n,r.readAsDataURL(e)});function O4({onSend:e,disabled:t,className:n}){const{t:r}=J(),{isSending:o,selectedText:i,attachedImageUrl:s,attachedImagePreview:a,isUploadingImage:l,setAttachedImage:c,clearAttachedImage:d,setUploadingImage:f}=Qt(),[p,h]=m.useState(""),[g,v]=m.useState(null),b=m.useRef(null),y=m.useRef(null),w=t||o||l,x=()=>{const E=p.trim();(E||s)&&!w&&(e(E||r("agent.analyzeImage","What is this?"),s||void 0),h(""),d())},S=E=>{E.key==="Enter"&&!E.shiftKey&&(E.preventDefault(),x())},C=async E=>{var j;const T=(j=E.target.files)==null?void 0:j[0];if(T){if(v(null),!T.type.startsWith("image/")){v(r("agent.invalidImageType","Please select an image file"));return}if(T.size>5*1024*1024){v(r("agent.imageTooLarge","Image must be less than 5MB"));return}try{f(!0);const A=await N4(T);c(A,A)}catch(A){console.error("Failed to process image:",A),v(r("agent.uploadFailed","Failed to process image"))}finally{f(!1),y.current&&(y.current.value="")}}};m.useEffect(()=>{b.current&&(b.current.style.height="auto",b.current.style.height=`${Math.min(b.current.scrollHeight,120)}px`)},[p]),m.useEffect(()=>{var E;(E=b.current)==null||E.focus()},[]);const k=s?r("agent.placeholderWithImage","Ask about this image..."):i?r("agent.placeholderWithSelection","Ask about the selected text..."):r("agent.placeholder","Ask me anything...");return u.jsxs("div",{className:U("border-t p-3 bg-background",n),children:[g&&u.jsx("p",{className:"text-xs text-destructive mb-2",children:g}),a&&u.jsxs("div",{className:"mb-2 relative inline-block",children:[u.jsx("img",{src:a,alt:"Attached",className:"h-16 w-auto rounded-md border object-cover max-w-[120px]"}),u.jsx(we,{variant:"destructive",size:"icon",className:"absolute -top-2 -right-2 h-5 w-5 rounded-full",onClick:()=>{d(),v(null)},children:u.jsx(Vi,{className:"w-3 h-3"})})]}),u.jsxs("div",{className:"flex gap-2 items-end",children:[u.jsx("input",{ref:y,type:"file",accept:"image/*",className:"hidden",onChange:C}),u.jsx(we,{variant:"ghost",size:"icon",className:"shrink-0 h-10 w-10",onClick:()=>{var E;return(E=y.current)==null?void 0:E.click()},disabled:w,title:r("agent.attachImage","Attach image"),children:l?u.jsx(Lr,{className:"w-4 h-4 animate-spin"}):u.jsx(MR,{className:"w-4 h-4"})}),u.jsx(kC,{ref:b,value:p,onChange:E=>h(E.target.value),onKeyDown:S,placeholder:k,disabled:w,rows:1,className:U("resize-none min-h-[40px] max-h-[120px]","text-sm","focus-visible:ring-1")}),u.jsx(we,{onClick:x,disabled:!p.trim()&&!s||w,size:"icon",className:"shrink-0 h-10 w-10",children:o?u.jsx(Lr,{className:"w-4 h-4 animate-spin"}):u.jsx(Wx,{className:"w-4 h-4"})})]}),u.jsx("p",{className:"text-[10px] text-muted-foreground mt-1.5 text-center",children:r("agent.keyboardHint","Press Enter to send, Shift+Enter for new line")})]})}function He(e){const t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new e.constructor(+e):typeof e=="number"||t==="[object Number]"||typeof e=="string"||t==="[object String]"?new Date(e):new Date(NaN)}function M4(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}const cl=43200,Py=1440;let L4={};function TC(){return L4}function Ey(e,t){var a,l,c,d;const n=TC(),r=(t==null?void 0:t.weekStartsOn)??((l=(a=t==null?void 0:t.locale)==null?void 0:a.options)==null?void 0:l.weekStartsOn)??n.weekStartsOn??((d=(c=n.locale)==null?void 0:c.options)==null?void 0:d.weekStartsOn)??0,o=He(e),i=o.getDay(),s=(i<r?7:0)+i-r;return o.setDate(o.getDate()-s),o.setHours(0,0,0,0),o}function ky(e){const t=He(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Ll(e,t){const n=He(e),r=He(t),o=n.getTime()-r.getTime();return o<0?-1:o>0?1:o}function I4(e){return M4(e,Date.now())}function F4(e,t){const n=He(e),r=He(t),o=n.getFullYear()-r.getFullYear(),i=n.getMonth()-r.getMonth();return o*12+i}function U4(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return r===0?0:r}}function $4(e,t){return+He(e)-+He(t)}function z4(e){const t=He(e);return t.setHours(23,59,59,999),t}function V4(e){const t=He(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(23,59,59,999),t}function H4(e){const t=He(e);return+z4(t)==+V4(t)}function q4(e,t){const n=He(e),r=He(t),o=Ll(n,r),i=Math.abs(F4(n,r));let s;if(i<1)s=0;else{n.getMonth()===1&&n.getDate()>27&&n.setDate(30),n.setMonth(n.getMonth()-o*i);let a=Ll(n,r)===-o;H4(He(e))&&i===1&&Ll(e,r)===1&&(a=!1),s=o*(i-Number(a))}return s===0?0:s}function B4(e,t,n){const r=$4(e,t)/1e3;return U4(n==null?void 0:n.roundingMethod)(r)}const W4={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},G4=(e,t,n)=>{let r;const o=W4[e];
vendor: 4,382 bytes, line 400
400return typeof o=="string"?r=o:t===1?r=o.one:r=o.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Gn(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const K4={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Q4={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Y4={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},J4={date:Gn({formats:K4,defaultWidth:"full"}),time:Gn({formats:Q4,defaultWidth:"full"}),dateTime:Gn({formats:Y4,defaultWidth:"full"})},X4={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Z4=(e,t,n,r)=>X4[e];function lt(e){return(t,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let o;if(r==="formatting"&&e.formattingValues){const s=e.defaultFormattingWidth||e.defaultWidth,a=n!=null&&n.width?String(n.width):s;o=e.formattingValues[a]||e.formattingValues[s]}else{const s=e.defaultWidth,a=n!=null&&n.width?String(n.width):e.defaultWidth;o=e.values[a]||e.values[s]}const i=e.argumentCallback?e.argumentCallback(t):t;return o[i]}}const eU={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},tU={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},nU={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},rU={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},oU={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},iU={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},sU=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},aU={ordinalNumber:sU,era:lt({values:eU,defaultWidth:"wide"}),quarter:lt({values:tU,defaultWidth:"wide",argumentCallback:e=>e-1}),month:lt({values:nU,defaultWidth:"wide"}),day:lt({values:rU,defaultWidth:"wide"}),dayPeriod:lt({values:oU,defaultWidth:"wide",formattingValues:iU,defaultFormattingWidth:"wide"})};function ct(e){return(t,n={})=>{const r=n.width,o=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],i=t.match(o);if(!i)return null;const s=i[0],a=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(a)?cU(a,f=>f.test(s)):lU(a,f=>f.test(s));let c;c=e.valueCallback?e.valueCallback(l):l,c=n.valueCallback?n.valueCallback(c):c;const d=t.slice(s.length);return{value:c,rest:d}}}function lU(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function cU(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function sh(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const o=r[0],i=t.match(e.parsePattern);if(!i)return null;let s=e.valueCallback?e.valueCallback(i[0]):i[0];s=n.valueCallback?n.valueCallback(s):s;const a=t.slice(o.length);return{value:s,rest:a}}}const uU=/^(\d+)(th|st|nd|rd)?/i,dU=/\d+/i,fU={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},pU={any:[/^b/i,/^(a|c)/i]}
400,mU={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},hU={any:[/1/i,/2/i,/3/i,/4/i]},gU={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},vU={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},yU={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},bU={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},wU={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},xU={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},SU={ordinalNumber:sh({matchPattern:uU,parsePattern:dU,valueCallback:e=>parseInt(e,10)}),era:ct({matchPatterns:fU,defaultMatchWidth:"wide",parsePatterns:pU,defaultParseWidth:"any"}),quarter:ct({matchPatterns:mU,defaultMatchWidth:"wide",parsePatterns:hU,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ct({matchPatterns:gU,defaultMatchWidth:"wide",parsePatterns:vU,defaultParseWidth:"any"}),day:ct({matchPatterns:yU,defaultMatchWidth:"wide",parsePatterns:bU,defaultParseWidth:"any"}),dayPeriod:ct({matchPatterns:wU,defaultMatchWidth:"any",parsePatterns:xU,defaultParseWidth:"any"})},CU={code:"en-US",formatDistance:G4,formatLong:J4,formatRelative:Z4,localize:aU,match:SU,options:{weekStartsOn:0,firstWeekContainsDate:1}};function PU(e,t,n){const r=TC(),o=(n==null?void 0:n.locale)??r.locale??CU,i=2520,s=Ll(e,t);if(isNaN(s))throw new RangeError("Invalid time value");const a=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:s});let l,c;s>0?(l=He(t),c=He(e)):(l=He(e),c=He(t));const d=B4(c,l),f=(ky(c)-ky(l))/1e3,p=Math.round((d-f)/60);let h;if(p<2)return n!=null&&n.includeSeconds?d<5?o.formatDistance("lessThanXSeconds",5,a):d<10?o.formatDistance("lessThanXSeconds",10,a):d<20?o.formatDistance("lessThanXSeconds",20,a):d<40?o.formatDistance("halfAMinute",0,a):d<60?o.formatDistance("lessThanXMinutes",1,a):o.formatDistance("xMinutes",1,a):p===0?o.formatDistance("lessThanXMinutes",1,a):o.formatDistance("xMinutes",p,a);if(p<45)return o.formatDistance("xMinutes",p,a);if(p<90)return o.formatDistance("aboutXHours",1,a);if(p<Py){const g=Math.round(p/60);return o.formatDistance("aboutXHours",g,a)}else{if(p<i)return o.formatDistance("xDays",1,a);if(p<cl){const g=Math.round(p/Py);return o.formatDistance("xDays",g,a)}else if(p<cl*2)return h=Math.round(p/cl),o.formatDistance("aboutXMonths",h,a)}if(h=q4(c,l),h<12){const g=Math.round(p/cl);return o.formatDistance("xMonths",g,a)}else{const g=h%12,v=Math.trunc(h/12);return g<3?o.formatDistance("aboutXYears",v,a):g<9?o.formatDistance("overXYears",v,a):o.formatDistance("almostXYears",v+1,a)}}function EU(e,t){return PU(e,I4(e),t)}function _c(e,t,n){const r=Ey(e,n),o=Ey(t,n);return+r==+o}const kU={lessThanXSeconds:{regular:{one:"1 секундтан аз",singularNominative:"{{count}} секундтан аз",singularGenitive:"{{count}} секундтан аз",pluralGenitive:"{{count}} секундтан аз"},future:{one:"бір секундтан кейін",singularNominative:"{{count}} секундтан кейін",singularGenitive:"{{count}} секундтан кейін",pluralGenitive:"{{count}} секундтан кейін"}},xSeconds:{regular:{singularNominative:"{{count}} секунд",singularGenitive:"{{count}} секунд",pluralGenitive:"{{count}} секунд"},past:{singularNominative:"{{count}} секунд бұрын",singularGenitive:"{{count}} секунд бұрын",pluralGenitive:"{{count}} секунд бұрын"},future:{singularNominative:"{{count}} секундтан кейін",singularGenitive:"{{count}} секундтан кейін",pluralGenitive:"{{count}} секундтан кейін"}},halfAMinute:e=>e!=null&&e.addSuffix?e.comparison&&e.comparison>0?"жарты минут ішінде":"жарты минут бұрын":"жарты минут",lessThanXMinutes:{regular:{one:"1 минуттан аз",singularNominative:"{{count}} минуттан аз",singularGenitive:"{{count}} минуттан аз",pluralGenitive:"{{count}} минуттан аз"},future:{one:"минуттан кем ",singularNominative:"{{count}} минуттан кем",singularGenitive:"{{count}} минуттан кем",pluralGenitive:"{{count}} минуттан кем"}},xMinutes:{regular:{singularNominative:"{{count}} минут",singularGenitive:"{{count}} минут",pluralGenitive:"{{count}} минут"},past:{singularNominative:"{{count}} минут бұрын",singularGenitive:"{{count}} минут бұрын",pluralGenitive:"{{count}} минут бұрын"},future:{singularNominative:"{{count}} минуттан кейін",singularGenitive:"{{count}} минуттан кейін",pluralGenitive:"{{count}} минуттан кейін"}},aboutXHours:{regular:{singularNominative:"шамамен {{count}} сағат",singularGenitive:"шамамен {{count}} сағат",pluralGenitive:"шамамен {{count}} сағат"},future:{singularNominative:"шамамен {{count}} сағаттан кейін",singularGenitive:"шамамен {{count}} сағаттан кейін",pluralGenitive:"шамамен {{count}} сағаттан кейін"}},xHours:{regular:{singularNominative:"{{count}} сағат",singularGenitive:"{{count}} сағат",pluralGenitive:"{{count}} сағат"}},xDays:{regular:{singularNominative:"{{count}} күн",singularGenitive:"{{count}} күн",pluralGenitive:"{{count}} күн"},future:{singularNominative:"{{count}} күннен кейін",singularGenitive:"{{count}} күннен кейін",pluralGenitive:"{{count}} күннен кейін"}},aboutXWeeks:{type:"weeks",one:"шамамен 1 апта",other:"шамамен {{count}} апта"},xWeeks:{type:"weeks",one:"1 апта",other:"{{count}} апта"},aboutXMonths:{regular:{singularNominative:"шамамен {{count}} ай",singularGenitive:"шамамен {{count}} ай",pluralGenitive:"шамамен {{count}} ай"},future:{singularNominative:"шамамен {{count}} айдан кейін",singularGenitive:"шамамен {{count}} айдан кейін",pluralGenitive:"шамамен {{count}} айдан кейін"}},xMonths:{regular:{singularNominative:"{{count}} ай",singularGenitive:"{{count}} ай",pluralGenitive:"{{count}} ай"}},aboutXYears:{regular:{singularNominative:"шамамен {{count}} жыл",singularGenitive:"шамамен {{count}} жыл",pluralGenitive:"шамамен {{count}} жыл"},future:{singularNominative:"шамамен {{count}} жылдан кейін",singularGenitive:"шамамен {{count}} жылдан кейін",pluralGenitive:"шамамен {{count}} жылдан кейін"}},xYears:{regular:{singularNominative:"{{count}} жыл",singularGenitive:"{{count}} жыл",pluralGenitive:"{{count}} жыл"},future:{singularNominative:"{{count}} жылдан кейін",singularGenitive:"{{count}} жылдан кейін",pluralGenitive:"{{count}} жылдан кейін"}},overXYears:{regular:{singularNominative:"{{count}} жылдан астам",singularGenitive:"{{count}} жылдан астам",pluralGenitive:"{{count}} жылдан астам"},future:{singularNominative:"{{count}} жылдан астам",singularGenitive:"{{count}} жылдан астам",pluralGenitive:"{{count}} жылдан астам"}},almostXYears:{regular:{singularNominative:"{{count}} жылға жақын",singularGenitive:"{{count}} жылға жақын",pluralGenitive:"{{count}} жылға жақын"},future:{singularNominative:"{{count}} жылдан кейін",singularGenitive:"{{count}} жылдан кейін",pluralGenitive:"{{count}} жылдан кейін"}}};function ps(e,t){if(e.one&&t===1)return e.one;const n=t%10,r=t%100;return n===1&&r!==11?e.singularNominative.replace("{{count}}",String(t)):n>=2&&n<=4&&(r<10||r>20)?e.singularGenitive.replace("{{count}}",String(t)):e.pluralGenitive.replace("{{count}}",String(t))}const TU=(e,t,n)=>{const r=kU[e];return typeof r=="function"?r(n):r.type==="weeks"?t===1?r.one:r.other.replace("{{count}}",String(t)):n!=null&&n.addSuffix?n.comparison&&n.comparison>
4000?r.future?ps(r.future,t):ps(r.regular,t)+" кейін":r.past?ps(r.past,t):ps(r.regular,t)+" бұрын":ps(r.regular,t)},AU={full:"EEEE, do MMMM y 'ж.'",long:"do MMMM y 'ж.'",medium:"d MMM y 'ж.'",short:"dd.MM.yyyy"},RU={full:"H:mm:ss zzzz",long:"H:mm:ss z",medium:"H:mm:ss",short:"H:mm"},_U={any:"{{date}}, {{time}}"},DU={date:Gn({formats:AU,defaultWidth:"full"}),time:Gn({formats:RU,defaultWidth:"full"}),dateTime:Gn({formats:_U,defaultWidth:"any"})},ah=["жексенбіде","дүйсенбіде","сейсенбіде","сәрсенбіде","бейсенбіде","жұмада","сенбіде"];function jU(e){return"'өткен "+ah[e]+" сағат' p'-де'"}function Ty(e){return"'"+ah[e]+" сағат' p'-де'"}function NU(e){return"'келесі "+ah[e]+" сағат' p'-де'"}const OU={lastWeek:(e,t,n)=>{const r=e.getDay();return _c(e,t,n)?Ty(r):jU(r)},yesterday:"'кеше сағат' p'-де'",today:"'бүгін сағат' p'-де'",tomorrow:"'ертең сағат' p'-де'",nextWeek:(e,t,n)=>{const r=e.getDay();return _c(e,t,n)?Ty(r):NU(r)},other:"P"},MU=(e,t,n,r)=>{const o=OU[e];return typeof o=="function"?o(t,n,r):o},LU={narrow:["б.з.д.","б.з."],abbreviated:["б.з.д.","б.з."],wide:["біздің заманымызға дейін","біздің заманымыз"]},IU={narrow:["1","2","3","4"],abbreviated:["1-ші тоқ.","2-ші тоқ.","3-ші тоқ.","4-ші тоқ."],wide:["1-ші тоқсан","2-ші тоқсан","3-ші тоқсан","4-ші тоқсан"]},FU={narrow:["Қ","А","Н","С","М","М","Ш","Т","Қ","Қ","Қ","Ж"],abbreviated:["қаң","ақп","нау","сәу","мам","мау","шіл","там","қыр","қаз","қар","жел"],wide:["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан"]},UU={narrow:["Қ","А","Н","С","М","М","Ш","Т","Қ","Қ","Қ","Ж"],abbreviated:["қаң","ақп","нау","сәу","мам","мау","шіл","там","қыр","қаз","қар","жел"],wide:["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан"]},$U={narrow:["Ж","Д","С","С","Б","Ж","С"],short:["жс","дс","сс","ср","бс","жм","сб"],abbreviated:["жс","дс","сс","ср","бс","жм","сб"],wide:["жексенбі","дүйсенбі","сейсенбі","сәрсенбі","бейсенбі","жұма","сенбі"]},zU={narrow:{am:"ТД",pm:"ТК",midnight:"түн ортасы",noon:"түс",morning:"таң",afternoon:"күндіз",evening:"кеш",night:"түн"},wide:{am:"ТД",pm:"ТК",midnight:"түн ортасы",noon:"түс",morning:"таң",afternoon:"күндіз",evening:"кеш",night:"түн"}},VU={narrow:{am:"ТД",pm:"ТК",midnight:"түн ортасында",noon:"түс",morning:"таң",afternoon:"күн",evening:"кеш",night:"түн"},wide:{am:"ТД",pm:"ТК",midnight:"түн ортасында",noon:"түсте",morning:"таңертең",afternoon:"күндіз",evening:"кеште",night:"түнде"}},xd={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"},HU=(e,t)=>{const n=Number(e),r=n%10,o=n>=100?100:null,i=xd[n]||xd[r]||o&&xd[o]||"";return n+i},qU={ordinalNumber:HU,era:lt({values:LU,defaultWidth:"wide"}),quarter:lt({values:IU,defaultWidth:"wide",argumentCallback:e=>e-1}),month:lt({values:FU,defaultWidth:"wide",formattingValues:UU,defaultFormattingWidth:"wide"}),day:lt({values:$U,defaultWidth:"wide"}),dayPeriod:lt({values:zU,defaultWidth:"any",formattingValues:VU,defaultFormattingWidth:"wide"})},BU=/^(\d+)(-?(ші|шы))?/i,WU=/\d+/i,GU={narrow:/^((б )?з\.?\s?д\.?)/i,abbreviated:/^((б )?з\.?\s?д\.?)/i,wide:/^(біздің заманымызға дейін|біздің заманымыз|біздің заманымыздан)/i},KU={any:[/^б/i,/^з/i]},QU={narrow:/^[1234]/i,abbreviated:/^[1234](-?ші)? тоқ.?/i,wide:/^[1234](-?ші)? тоқсан/i},YU={any:[/1/i,/2/i,/3/i,/4/i]}
400,JU={narrow:/^(қ|а|н|с|м|мау|ш|т|қыр|қаз|қар|ж)/i,abbreviated:/^(қаң|ақп|нау|сәу|мам|мау|шіл|там|қыр|қаз|қар|жел)/i,wide:/^(қаңтар|ақпан|наурыз|сәуір|мамыр|маусым|шілде|тамыз|қыркүйек|қазан|қараша|желтоқсан)/i},XU={narrow:[/^қ/i,/^а/i,/^н/i,/^с/i,/^м/i,/^м/i,/^ш/i,/^т/i,/^қ/i,/^қ/i,/^қ/i,/^ж/i],abbreviated:[/^қаң/i,/^ақп/i,/^нау/i,/^сәу/i,/^мам/i,/^мау/i,/^шіл/i,/^там/i,/^қыр/i,/^қаз/i,/^қар/i,/^жел/i],any:[/^қ/i,/^а/i,/^н/i,/^с/i,/^м/i,/^м/i,/^ш/i,/^т/i,/^қ/i,/^қ/i,/^қ/i,/^ж/i]},ZU={narrow:/^(ж|д|с|с|б|ж|с)/i,short:/^(жс|дс|сс|ср|бс|жм|сб)/i,wide:/^(жексенбі|дүйсенбі|сейсенбі|сәрсенбі|бейсенбі|жұма|сенбі)/i},e$={narrow:[/^ж/i,/^д/i,/^с/i,/^с/i,/^б/i,/^ж/i,/^с/i],short:[/^жс/i,/^дс/i,/^сс/i,/^ср/i,/^бс/i,/^жм/i,/^сб/i],any:[/^ж[ек]/i,/^д[үй]/i,/^сe[й]/i,/^сә[р]/i,/^б[ей]/i,/^ж[ұм]/i,/^се[н]/i]},t$={narrow:/^Т\.?\s?[ДК]\.?|түн ортасында|((түсте|таңертең|таңда|таңертең|таңмен|таң|күндіз|күн|кеште|кеш|түнде|түн)\.?)/i,wide:/^Т\.?\s?[ДК]\.?|түн ортасында|((түсте|таңертең|таңда|таңертең|таңмен|таң|күндіз|күн|кеште|кеш|түнде|түн)\.?)/i,any:/^Т\.?\s?[ДК]\.?|түн ортасында|((түсте|таңертең|таңда|таңертең|таңмен|таң|күндіз|күн|кеште|кеш|түнде|түн)\.?)/i},n$={any:{am:/^ТД/i,pm:/^ТК/i,midnight:/^түн орта/i,noon:/^күндіз/i,morning:/таң/i,afternoon:/түс/i,evening:/кеш/i,night:/түн/i}},r$={ordinalNumber:sh({matchPattern:BU,parsePattern:WU,valueCallback:e=>parseInt(e,10)}),era:ct({matchPatterns:GU,defaultMatchWidth:"wide",parsePatterns:KU,defaultParseWidth:"any"}),quarter:ct({matchPatterns:QU,defaultMatchWidth:"wide",parsePatterns:YU,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ct({matchPatterns:JU,defaultMatchWidth:"wide",parsePatterns:XU,defaultParseWidth:"any"}),day:ct({matchPatterns:ZU,defaultMatchWidth:"wide",parsePatterns:e$,defaultParseWidth:"any"}),dayPeriod:ct({matchPatterns:t$,defaultMatchWidth:"wide",parsePatterns:n$,defaultParseWidth:"any"})},o$={code:"kk",formatDistance:TU,formatLong:DU,formatRelative:MU,localize:qU,match:r$,options:{weekStartsOn:1,firstWeekContainsDate:1}};function ms(e,t){if(e.one!==void 0&&t===1)return e.one;const n=t%10,r=t%100;return n===1&&r!==11?e.singularNominative.replace("{{count}}",String(t)):n>=2&&n<=4&&(r<10||r>20)?e.singularGenitive.replace("{{count}}",String(t)):e.pluralGenitive.replace("{{count}}",String(t))}function rt(e){return(t,n)=>n!=null&&n.addSuffix?n.comparison&&n.comparison>0?e.future?ms(e.future,t):"через "+ms(e.regular,t):e.past?ms(e.past,t):ms(e.regular,t)+" назад":ms(e.regular,t)}const i$={lessThanXSeconds:rt({regular:{one:"меньше секунды",singularNominative:"меньше {{count}} секунды",singularGenitive:"меньше {{count}} секунд",pluralGenitive:"меньше {{count}} секунд"},future:{one:"меньше, чем через секунду",singularNominative:"меньше, чем через {{count}} секунду",singularGenitive:"меньше, чем через {{count}} секунды",pluralGenitive:"меньше, чем через {{count}} секунд"}}),xSeconds:rt({regular:{singularNominative:"{{count}} секунда",singularGenitive:"{{count}} секунды",pluralGenitive:"{{count}} секунд"},past:{singularNominative:"{{count}} секунду назад",singularGenitive:"{{count}} секунды назад",pluralGenitive:"{{count}} секунд назад"},future:{singularNominative:"через {{count}} секунду",singularGenitive:"через {{count}} секунды",pluralGenitive:"через {{count}} секунд"}}),halfAMinute:(e,t)=>t!=null&&t.addSuffix?t.comparison&&t.comparison>0?"через полминуты":"полминуты назад":"полминуты",lessThanXMinutes:rt({regular:{one:"меньше минуты",singularNominative:"меньше {{count}} минуты",singularGenitive:"меньше {{count}} минут",pluralGenitive:"меньше {{count}} минут"},future:{one:"меньше, чем через минуту",singularNominative:"меньше, чем через {{count}} минуту",singularGenitive:"меньше, чем через {{count}} минуты",pluralGenitive:"меньше, чем через {{count}} минут"}}),xMinutes:rt({regular:{singularNominative:"{{count}} минута",singularGenitive:"{{count}} минуты",pluralGenitive:"{{count}} минут"},past:{singularNominative:"{{count}} минуту назад",singularGenitive:"{{count}} минуты назад",pluralGenitive:"{{count}} минут назад"},future:{singularNominative:"через {{count}} минуту",singularGenitive:"через {{count}} минуты",pluralGenitive:"через {{count}} минут"}}),aboutXHours:rt({regular:{singularNominative:"около {{count}} часа",singularGenitive:"около {{count}} часов",pluralGenitive:"около {{count}} часов"},future:{singularNominative:"приблизительно через {{count}} час",singularGenitive:"приблизительно через {{count}} часа",pluralGenitive:"приблизительно через {{count}} часов"}}),xHours:rt({regular:{singularNominative:"{{count}} час",singularGenitive:"{{count}} часа",pluralGenitive:"{{count}} часов"}}),xDays:rt({regular:{singularNominative:"{{count}} день",singularGenitive:"{{count}} дня",pluralGenitive:"{{count}} дней"}}),aboutXWeeks:rt({regular:{singularNominative:"около {{count}} недели",singularGenitive:"около {{count}} недель",pluralGenitive:"около {{count}} недель"},future:{singularNominative:"приблизительно через {{count}} неделю",singularGenitive:"приблизительно через {{count}} недели",pluralGenitive:"приблизительно через {{count}} недель"}}),xWeeks:rt({regular:{singularNominative:"{{count}} неделя",singularGenitive:"{{count}} недели",pluralGenitive:"{{count}} недель"}}),aboutXMonths:rt({regular:{singularNominative:"около {{count}} месяца",singularGenitive:"около {{count}} месяцев",pluralGenitive:"около {{count}} месяцев"},future:{singularNominative:"приблизительно через {{count}} месяц",singularGenitive:"приблизительно через {{count}} месяца",pluralGenitive:"приблизительно через {{count}} месяцев"}}),xMonths:rt({regular:{singularNominative:"{{count}} месяц",singularGenitive:"{{count}} месяца",pluralGenitive:"{{count}} месяцев"}}),aboutXYears:rt({regular:{singularNominative:"около {{count}} года",singularGenitive:"около {{count}} лет",pluralGenitive:"около {{count}} лет"},future:{singularNominative:"приблизительно через {{count}} год",singularGenitive:"приблизительно через {{count}} года",pluralGenitive:"приблизительно через {{count}} лет"}}
400),xYears:rt({regular:{singularNominative:"{{count}} год",singularGenitive:"{{count}} года",pluralGenitive:"{{count}} лет"}}),overXYears:rt({regular:{singularNominative:"больше {{count}} года",singularGenitive:"больше {{count}} лет",pluralGenitive:"больше {{count}} лет"},future:{singularNominative:"больше, чем через {{count}} год",singularGenitive:"больше, чем через {{count}} года",pluralGenitive:"больше, чем через {{count}} лет"}}),almostXYears:rt({regular:{singularNominative:"почти {{count}} год",singularGenitive:"почти {{count}} года",pluralGenitive:"почти {{count}} лет"},future:{singularNominative:"почти через {{count}} год",singularGenitive:"почти через {{count}} года",pluralGenitive:"почти через {{count}} лет"}})},s$=(e,t,n)=>i$[e](t,n),a$={full:"EEEE, d MMMM y 'г.'",long:"d MMMM y 'г.'",medium:"d MMM y 'г.'",short:"dd.MM.y"},l$={full:"H:mm:ss zzzz",long:"H:mm:ss z",medium:"H:mm:ss",short:"H:mm"},c$={any:"{{date}}, {{time}}"},u$={date:Gn({formats:a$,defaultWidth:"full"}),time:Gn({formats:l$,defaultWidth:"full"}),dateTime:Gn({formats:c$,defaultWidth:"any"})},lh=["воскресенье","понедельник","вторник","среду","четверг","пятницу","субботу"];function d$(e){const t=lh[e];switch(e){case 0:return"'в прошлое "+t+" в' p";case 1:case 2:case 4:return"'в прошлый "+t+" в' p";case 3:case 5:case 6:return"'в прошлую "+t+" в' p"}}function Ay(e){const t=lh[e];return e===2?"'во "+t+" в' p":"'в "+t+" в' p"}function f$(e){const t=lh[e];switch(e){case 0:return"'в следующее "+t+" в' p";case 1:case 2:case 4:return"'в следующий "+t+" в' p";case 3:case 5:case 6:return"'в следующую "+t+" в' p"}}const p$={lastWeek:(e,t,n)=>{const r=e.getDay();return _c(e,t,n)?Ay(r):d$(r)},yesterday:"'вчера в' p",today:"'сегодня в' p",tomorrow:"'завтра в' p",nextWeek:(e,t,n)=>{const r=e.getDay();return _c(e,t,n)?Ay(r):f$(r)},other:"P"},m$=(e,t,n,r)=>{const o=p$[e];return typeof o=="function"?o(t,n,r):o},h$={narrow:["до н.э.","н.э."],abbreviated:["до н. э.","н. э."],wide:["до нашей эры","нашей эры"]},g$={narrow:["1","2","3","4"],abbreviated:["1-й кв.","2-й кв.","3-й кв.","4-й кв."],wide:["1-й квартал","2-й квартал","3-й квартал","4-й квартал"]},v$={narrow:["Я","Ф","М","А","М","И","И","А","С","О","Н","Д"],abbreviated:["янв.","фев.","март","апр.","май","июнь","июль","авг.","сент.","окт.","нояб.","дек."],wide:["январь","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь"]},y$={narrow:["Я","Ф","М","А","М","И","И","А","С","О","Н","Д"],abbreviated:["янв.","фев.","мар.","апр.","мая","июн.","июл.","авг.","сент.","окт.","нояб.","дек."],wide:["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"]},b$={narrow:["В","П","В","С","Ч","П","С"],short:["вс","пн","вт","ср","чт","пт","сб"],abbreviated:["вск","пнд","втр","срд","чтв","птн","суб"],wide:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"]},w$={narrow:{am:"ДП",pm:"ПП",midnight:"полн.",noon:"полд.",morning:"утро",afternoon:"день",evening:"веч.",night:"ночь"},abbreviated:{am:"ДП",pm:"ПП",midnight:"полн.",noon:"полд.",morning:"утро",afternoon:"день",evening:"веч.",night:"ночь"},wide:{am:"ДП",pm:"ПП",midnight:"полночь",noon:"полдень",morning:"утро",afternoon:"день",evening:"вечер",night:"ночь"}},x$={narrow:{am:"ДП",pm:"ПП",midnight:"полн.",noon:"полд.",morning:"утра",afternoon:"дня",evening:"веч.",night:"ночи"},abbreviated:{am:"ДП",pm:"ПП",midnight:"полн.",noon:"полд.",morning:"утра",afternoon:"дня",evening:"веч.",night:"ночи"},wide:{am:"ДП",pm:"ПП",midnight:"полночь",noon:"полдень",morning:"утра",afternoon:"дня",evening:"вечера",night:"ночи"}},S$=(e,t)=>
400{const n=Number(e),r=t==null?void 0:t.unit;let o;return r==="date"?o="-е":r==="week"||r==="minute"||r==="second"?o="-я":o="-й",n+o},C$={ordinalNumber:S$,era:lt({values:h$,defaultWidth:"wide"}),quarter:lt({values:g$,defaultWidth:"wide",argumentCallback:e=>e-1}),month:lt({values:v$,defaultWidth:"wide",formattingValues:y$,defaultFormattingWidth:"wide"}),day:lt({values:b$,defaultWidth:"wide"}),dayPeriod:lt({values:w$,defaultWidth:"any",formattingValues:x$,defaultFormattingWidth:"wide"})},P$=/^(\d+)(-?(е|я|й|ое|ье|ая|ья|ый|ой|ий|ый))?/i,E$=/\d+/i,k$={narrow:/^((до )?н\.?\s?э\.?)/i,abbreviated:/^((до )?н\.?\s?э\.?)/i,wide:/^(до нашей эры|нашей эры|наша эра)/i},T$={any:[/^д/i,/^н/i]},A$={narrow:/^[1234]/i,abbreviated:/^[1234](-?[ыои]?й?)? кв.?/i,wide:/^[1234](-?[ыои]?й?)? квартал/i},R$={any:[/1/i,/2/i,/3/i,/4/i]},_$={narrow:/^[яфмаисонд]/i,abbreviated:/^(янв|фев|март?|апр|ма[йя]|июн[ья]?|июл[ья]?|авг|сент?|окт|нояб?|дек)\.?/i,wide:/^(январ[ья]|феврал[ья]|марта?|апрел[ья]|ма[йя]|июн[ья]|июл[ья]|августа?|сентябр[ья]|октябр[ья]|октябр[ья]|ноябр[ья]|декабр[ья])/i},D$={narrow:[/^я/i,/^ф/i,/^м/i,/^а/i,/^м/i,/^и/i,/^и/i,/^а/i,/^с/i,/^о/i,/^н/i,/^я/i],any:[/^я/i,/^ф/i,/^мар/i,/^ап/i,/^ма[йя]/i,/^июн/i,/^июл/i,/^ав/i,/^с/i,/^о/i,/^н/i,/^д/i]}
400,j$={narrow:/^[впсч]/i,short:/^(вс|во|пн|по|вт|ср|чт|че|пт|пя|сб|су)\.?/i,abbreviated:/^(вск|вос|пнд|пон|втр|вто|срд|сре|чтв|чет|птн|пят|суб).?/i,wide:/^(воскресень[ея]|понедельника?|вторника?|сред[аы]|четверга?|пятниц[аы]|суббот[аы])/i},N$={narrow:[/^в/i,/^п/i,/^в/i,/^с/i,/^ч/i,/^п/i,/^с/i],any:[/^в[ос]/i,/^п[он]/i,/^в/i,/^ср/i,/^ч/i,/^п[ят]/i,/^с[уб]/i]},O$={narrow:/^([дп]п|полн\.?|полд\.?|утр[оа]|день|дня|веч\.?|ноч[ьи])/i,abbreviated:/^([дп]п|полн\.?|полд\.?|утр[оа]|день|дня|веч\.?|ноч[ьи])/i,wide:/^([дп]п|полночь|полдень|утр[оа]|день|дня|вечера?|ноч[ьи])/i},M$={any:{am:/^дп/i,pm:/^пп/i,midnight:/^полн/i,noon:/^полд/i,morning:/^у/i,afternoon:/^д[ен]/i,evening:/^в/i,night:/^н/i}},L$={ordinalNumber:sh({matchPattern:P$,parsePattern:E$,valueCallback:e=>parseInt(e,10)}),era:ct({matchPatterns:k$,defaultMatchWidth:"wide",parsePatterns:T$,defaultParseWidth:"any"}),quarter:ct({matchPatterns:A$,defaultMatchWidth:"wide",parsePatterns:R$,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ct({matchPatterns:_$,defaultMatchWidth:"wide",parsePatterns:D$,defaultParseWidth:"any"}),day:ct({matchPatterns:j$,defaultMatchWidth:"wide",parsePatterns:N$,defaultParseWidth:"any"}),dayPeriod:ct({matchPatterns:O$,defaultMatchWidth:"wide",parsePatterns:M$,defaultParseWidth:"any"})},I$={code:"ru",formatDistance:s$,formatLong:u$,formatRelative:m$,localize:C$,match:L$,options:{weekStartsOn:1,firstWeekContainsDate:1}};function F$({className:e}){const{t}=J(),{currentConversationId:n,setCurrentConversation:r,toggleConversationList:o}=Qt(),{data:i,isLoading:s}=lI(),a=dI(),l=async f=>{r(f),o()},c=(f,p)=>{f.stopPropagation(),a.mutate(p)},d=()=>{const f=Ye.language;if(f==="ru")return I$;if(f==="kk")return o$};return s?u.jsx("div",{className:U("flex items-center justify-center py-8",e),children:u.jsx(Lr,{className:"w-6 h-6 animate-spin text-muted-foreground"})}):!i||i.length===0?u.jsxs("div",{className:U("flex flex-col items-center justify-center py-8 px-4",e),children:[u.jsx(Zg,{className:"w-10 h-10 text-muted-foreground/50 mb-3"}),u.jsx("p",{className:"text-sm text-muted-foreground text-center",children:t("agent.noConversations","No conversations yet")})]}):u.jsx(yu,{className:U("h-full",e),children:u.jsx("div",{className:"p-2 space-y-1",children:i.map(f=>u.jsxs("div",{onClick:()=>l(f.id),className:U("flex items-start gap-2 p-2 rounded-lg cursor-pointer","hover:bg-muted/50 transition-colors",n===f.id&&"bg-muted"),children:[u.jsx(Zg,{className:"w-4 h-4 text-muted-foreground mt-0.5 shrink-0"}),u.jsxs("div",{className:"flex-1 min-w-0",children:[u.jsx("p",{className:"text-sm font-medium truncate",children:f.title}),f.last_message&&u.jsx("p",{className:"text-xs text-muted-foreground truncate",children:f.last_message}),u.jsx("p",{className:"text-[10px] text-muted-foreground mt-1",children:EU(new Date(f.updated_at),{addSuffix:!0,locale:d()})})]}),u.jsx(we,{variant:"ghost",size:"icon",className:"h-6 w-6 shrink-0 opacity-0 group-hover:opacity-100 hover:opacity-100",onClick:p=>c(p,f.id),disabled:a.isPending,children:a.isPending?u.jsx(Lr,{className:"w-3 h-3 animate-spin"}):u.jsx(WR,{className:"w-3 h-3 text-destructive"})})]},f.id))})})}function U$({className:e}){const{isOpen:t,isMinimized:n,showConversationList:r,currentConversationId:o,setMessages:i,addMessage:s,setContext:a}=Qt(),l=Ym(),{data:c}=cI(o),d=uI();m.useEffect(()=>{a(l)},[l,a]),m.useEffect(()=>{c&&i(c)},[c,i]);const f=(h,g)=>{const v=g?{...l,imageUrl:g}:l,b={id:`temp-${Date.now()}`,conversation_id:o||"",role:"user",content:g?`[Image attached]
401${h}`:h,context:v,created_at:new Date().toISOString()};s(b),d.mutate({message:h,conversation_id:o||void 0,context:v})},p=h=>{f(h)};return t?n?u.jsx("div",{className:U("fixed bottom-24 right-6 z-50","w-[300px] rounded-lg shadow-xl border bg-background","cursor-pointer hover:shadow-2xl transition-shadow",e),onClick:()=>
401Qt.getState().setMinimized(!1),children:u.jsx(Cy,{})}):u.jsxs("div",{className:U("fixed bottom-24 right-6 z-50","w-[400px] max-h-[600px] h-[500px]","rounded-lg shadow-xl border bg-background","flex flex-col","animate-in slide-in-from-bottom-4 fade-in duration-300",e),children:[u.jsx(Cy,{}),u.jsxs("div",{className:"flex-1 flex overflow-hidden",children:[r&&u.jsx("div",{className:"w-[180px] border-r bg-muted/20",children:u.jsx(F$,{})}),u.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[u.jsx(_4,{}),u.jsx(j4,{onSuggestionClick:p}),u.jsx(O4,{onSend:f})]})]})]}):null}function $$(){const{toggle:e,setOpen:t,isOpen:n}=Qt(),r=m.useCallback(o=>{(o.metaKey||o.ctrlKey)&&o.key==="k"&&(o.preventDefault(),e()),o.key==="Escape"&&n&&t(!1)},[e,t,n]);return m.useEffect(()=>(document.addEventListener("keydown",r),()=>{document.removeEventListener("keydown",r)}),[r]),u.jsxs(u.Fragment,{children:[u.jsx(T4,{}),u.jsx(U$,{})]})}const z$="zerde_plan_modal_dismissed";function V$(){const[e,t]=m.useState(!1),[n,r]=m.useState(!0),[o,i]=m.useState(!1),s=Et(),{isAuthenticated:a,user:l}=kt(),{data:c,isLoading:d,isFetched:f}=nC(a&&!(l!=null&&l.is_admin));m.useEffect(()=>{if(!a||!f||d||l!=null&&l.is_admin)return;const b=c===null,y=sessionStorage.getItem(z$);if(b&&!y){const w=setTimeout(()=>{t(!0)},500);return()=>clearTimeout(w)}!b&&e&&t(!1)},[a,f,d,c,l==null?void 0:l.is_admin,e]);const h="https://wa.me/77761826500",g=c!=null&&c.expires_at?Math.max(0,Math.ceil((new Date(c.expires_at).getTime()-Date.now())/(1e3*60*60*24))):null,v=()=>{if(window.innerWidth<1024){i(b=>!b);return}r(b=>!b)};return m.useEffect(()=>{const b=s.pathname;b.startsWith("/presentations/")&&b!=="/presentations/create"&&b.split("/").length===3&&r(!1)},[s.pathname]),u.jsxs("div",{className:"flex min-h-screen flex-col",children:[u.jsxs("div",{className:"relative flex flex-1 min-h-0",children:[u.jsxs("div",{className:U("fixed inset-0 z-40 lg:hidden transition-opacity duration-300",o?"pointer-events-auto opacity-100":"pointer-events-none opacity-0"),children:[u.jsx("button",{type:"button","aria-label":"Close sidebar",className:"absolute inset-0 bg-black/40",onClick:()=>i(!1)}),u.jsx("div",{className:U("absolute left-0 top-0 h-full w-64 bg-white shadow-xl transition-transform duration-300 ease-in-out",o?"translate-x-0":"-translate-x-full"),children:u.jsx(np,{className:"h-full border-r-0",onNavigate:()=>i(!1)})})]}),u.jsx("aside",{className:U("hidden lg:block lg:fixed lg:left-0 lg:top-0 lg:z-30 lg:h-screen overflow-hidden border-r border-slate-200 bg-white transition-[width] duration-300 ease-in-out",n?"w-64":"w-20"),children:u.jsx(np,{className:"h-full border-r-0",collapsed:!n})}),u.jsx("div",{className:U("hidden lg:block shrink-0 transition-[width] duration-300 ease-in-out",n?"w-64":"w-20"),"aria-hidden":!0}),u.jsxs("main",{id:"main-content",className:"flex-1 min-w-0 flex flex-col overflow-hidden",tabIndex:-1,children:[u.jsx(k4,{daysRemaining:g,whatsappUrl:h,firstName:l==null?void 0:l.first_name,lastName:l==null?void 0:l.last_name,onToggleSidebar:v}),u.jsx("div",{className:"flex-1 overflow-auto",children:u.jsx("div",{className:"container py-6",children:u.jsx(Ao,{})})})]})]}),u.jsx($$,{})]})}function H$(){const{i18n:e}=J(),t=n=>{e.changeLanguage(n)};return u.jsxs(Di,{children:[u.jsx(ji,{asChild:!0,children:u.jsxs(we,{variant:"ghost",size:"icon",className:"h-9 w-9",children:[u.jsx(pm,{className:"h-4 w-4"}),u.jsx("span",{className:"sr-only",children:"Switch language"})]})}),u.jsx(So,{align:"end",children:op.map(n=>u.jsxs(We,{onClick:()=>t(n.code),className:e.language===n.code?"bg-accent":"",children:[u.jsx("span",{className:"mr-2",children:n.flag}),n.name]},n.code))})]})}var q$="Separator",Ry="horizontal",B$=["horizontal","vertical"],AC=m.forwardRef((e,t)=>{const{decorative:n,orientation:r=Ry,...o}=e,i=W$(r)?r:Ry,a=n?{role:"none"}:{"aria-orientation":i==="vertical"?i:void 0,role:"separator"};return u.jsx(iu.div,{"data-orientation":i,...a,...o,ref:t})});AC.displayName=q$;function W$(e){return B$.includes(e)}var RC=AC;const Il=m.forwardRef(({className:e,orientation:t="horizontal",decorative:n=!0,...r},o)=>u.jsx(RC,{ref:o,decorative:n,orientation:t,className:U("shrink-0 bg-border",t==="horizontal"?"h-[1px] w-full":"h-full w-[1px]",e),...r}));Il.displayName=RC.displayName;function _C({className:e}){const{t}=J(),n=Et(),r=nr(),o=[{title:t("nav.dashboard"),href:"/admin/dashboard",icon:mm},{title:t("admin.users.title","Users"),href:"/admin/users",icon:GR},{title:t("admin.subjects.title"),href:"/admin/subjects",icon:$x},{title:t("admin.templates.title","Templates"),href:"/admin/templates",icon:Bx},{title:t("admin.plans.title","Plans"),href:"/admin/plans",icon:RR},{title:t("admin.analytics.title","Analytics"),href:"/admin/analytics",icon:CR},{title:t("admin.avatars.title","Avatars"),href:"/admin/avatars",icon:zx},{title:t("admin.schools.title","Schools"),href:"/admin/schools",icon:Hx},{title:t("admin.tutorials.title","Tutorial Videos"),href:"/admin/tutorial-videos",icon:Kx},{title:t("admin.models3d.title","3D Models"),href:"/admin/3d-models",icon:Vx}],i=[{title:t("nav.profile"),href:"/admin/profile",icon:xa}],s=c=>n.pathname===c||n.pathname.startsWith(c+"/"),a=({item:c})=>{const d=c.icon;return u.jsxs(on,{to:c.href,className:U("flex items-center gap-3 rounded-lg px-3 py-2 text-sm transition-all hover:bg-accent",s(c.href)?"bg-accent text-accent-foreground":"text-muted-foreground hover:text-foreground"),children:[u.jsx(d,{className:"h-4 w-4"}),c.title]})},l=()=>{r("/dashboard")};return u.jsx("div",{className:U("flex h-full flex-col border-r bg-background",e),children:u.jsx(yu,{className:"flex-1 px-3 py-4",children:u.jsxs("div",{className:"space-y-4",children:[u.jsxs("div",{className:"px-3 py-2",children:[u.jsx("h2",{className:"text-lg font-semibold text-primary",children:t("admin.title")}),u.jsx("p",{className:"text-xs text-muted-foreground",children:t("admin.subtitle","Management Panel")})]}),u.jsx(Il,{}),u.jsx("div",{className:"space-y-1",children:o.map(c=>u.jsx(a,{item:c},c.href))}),u.jsx(Il,{}),u.jsx("div",{className:"space-y-1",children:i.map(c=>u.jsx(a,{item:c},c.href))}),u.jsx(Il,{}),u.jsx("div",{className:"px-3",children:u.jsxs(we,{variant:"outline",className:"w-full justify-start gap-2",onClick:l,children:[u.jsx(_R,{className:"h-4 w-4"}),t("admin.goToMainApp","Go to Main App")]})})]})})})}function G$(){const{t:e}=J(),t=nr(),{user:n,logout:r}=kt(),o=()=>{r(),t("/login")};return u.jsx("header",{className:"sticky top-0 z-50 w-full border-b bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60",children:u.jsxs("div",{className:"container flex h-16 items-center justify-between",children:[u.jsxs(on,{to:"/ai-tools",className:"flex items-center",children:[u.jsx(Ec,{showText:!0,text:"Zerde AI"}),u.jsx("span",{className:"ml-1.5 hidden text-sm font-medium text-primary sm:inline-block",children:e("admin.title")})]}),u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx(H$,{}),u.jsx(au,{}),n&&u.jsxs(Di,{children:[u.jsx(ji,{asChild:!0,children:u.jsx(we,{variant:"ghost",className:"relative h-9 w-9 rounded-full",children:u.jsx(sa,{className:"h-9 w-9",children:u.jsx(aa,{className:"bg-primary text-primary-foreground",children:mc(n.first_name??void 0,n.last_name??void 0)})})})}),u.jsxs(So,{className:"w-56",align:"end",forceMount:!0,children:[u.jsx(Fm,{className:"font-normal",children:u.jsxs("div",{className:"flex flex-col space-y-1",children:[u.jsxs("p",{className:"text-sm font-medium leading-none",children:[n.first_name," ",n.last_name]}),u.jsx("p",{className:"text-xs leading-none text-muted-foreground",children:n.phone_number}),u.jsx("p",{className:"text-xs font-medium text-primary capitalize",children:n.role})]})}),u.jsx(En,{}),u.jsxs(We,{onClick:()=>
401t("/profile"),children:[u.jsx(xa,{className:"mr-2 h-4 w-4"}),e("nav.profile")]}),u.jsx(En,{}),u.jsxs(We,{onClick:o,children:[u.jsx(Zs,{className:"mr-2 h-4 w-4"}),e("nav.logout")]})]})]}),u.jsxs(x1,{children:[u.jsx(HO,{asChild:!0,className:"lg:hidden",children:u.jsxs(we,{variant:"ghost",size:"icon",children:[u.jsx(hm,{className:"h-5 w-5"}),u.jsx("span",{className:"sr-only",children:"Toggle menu"})]})}),u.jsx(Hm,{side:"right",className:"w-[300px] p-0",children:u.jsx(_C,{className:"h-full border-none"})})]})]})]})})}function K$(){return u.jsxs("div",{className:"flex min-h-screen flex-col",children:[u.jsx(G$,{}),u.jsxs("div",{className:"flex flex-1",children:[u.jsx("aside",{className:"hidden w-64 lg:block",children:u.jsx(_C,{className:"h-[calc(100vh-4rem)] sticky top-16"})}),u.jsx("main",{className:"flex-1 overflow-auto bg-muted/30",children:u.jsx("div",{className:"container py-6",children:u.jsx(Ao,{})})})]})]})}function Q$(){return u.jsx(_I,{children:u.jsx(V$,{})})}function Y$(){return u.jsx(wC,{children:u.jsx(Ao,{})})}function J$(){return u.jsx(NI,{children:u.jsx(Ao,{})})}function X$(){return u.jsx(wC,{children:u.jsx(jI,{children:u.jsx(Ao,{})})})}function Z$(){return u.jsx(OI,{children:u.jsx(K$,{})})}const N=e=>m.lazy(e),Ki=(e,t)=>m.lazy(()=>e().then(n=>({default:n[t]}))),e5=N(()=>_(()=>import("./Landing-CS5h3KiR.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24]))),t5=N(()=>_(()=>import("./Terms-Du0j5tYu.js"),__vite__mapDeps([25,26,22]))),n5=N(()=>_(()=>import("./Privacy-Bsvf-9bK.js"),__vite__mapDeps([27,26,22]))),r5=N(()=>_(()=>import("./NotFound-CK2XEz94.js"),__vite__mapDeps([28,29,15]))),o5=N(()=>_(()=>import("./QMJLanding-C4Dhb2C-.js"),__vite__mapDeps([30,26,22,16,12,3]))),i5=N(()=>_(()=>import("./PresentationLanding-soqBXzGL.js"),__vite__mapDeps([31,26,22,12,32,33]))),s5=N(()=>_(()=>import("./VideoLanding-6httdZ8r.js"),__vite__mapDeps([34,26,22,35,12]))),a5=N(()=>_(()=>import("./GamesLanding-pfzbXtvt.js"),__vite__mapDeps([36,26,22,37,16,12]))),l5=N(()=>_(()=>import("./BZBLanding-DMVjBq9C.js"),__vite__mapDeps([38,26,22,16,39,12]))),c5=N(()=>_(()=>import("./TZBLanding-CkU1M_47.js"),__vite__mapDeps([40,26,22,41,16,39,12]))),u5=N(()=>_(()=>import("./BlogIndex-DFwKVH2I.js"),__vite__mapDeps([42,26,22,43,41,3]))),d5=N(()=>_(()=>import("./BlogPost-BpN-dvMr.js"),__vite__mapDeps([44,26,22,43,41,3,29]))),DC=N(()=>_(()=>import("./Login-B2OTxunO.js"),__vite__mapDeps([45,3]))),jC=N(()=>_(()=>import("./VerifyOTP-DZU0JOpE.js"),__vite__mapDeps([46,47,48,49,50,51,29]))),f5=N(()=>_(()=>import("./Dashboard-DuLyGRyx.js"),__vite__mapDeps([52,53,54,4,55,56,57,2,58,59,8,41,60,61,62,7,63,12,3]))),p5=N(()=>_(()=>import("./AITools-Czpq6Cm3.js"),__vite__mapDeps([64,55,56,57,65,66,59,54,49,8,67,6]))),NC=N(()=>_(()=>import("./Profile-CYbQQPm9.js"),__vite__mapDeps([68,47,48,49,50,69,4,1,2,70,71,39,72]))),m5=N(()=>_(()=>import("./Subscription-CjMtbt2Q.js"),__vite__mapDeps([73,53,4,54,69,51,18,19,20,21,8,3,12,60,72,62,7,63]))),h5=N(()=>_(()=>import("./TelegramBot-BNJgpGec.js"),__vite__mapDeps([74,75,8,70,71,39,72]))),g5=N(()=>_(()=>import("./QMJList-1ftWeEnT.js"),__vite__mapDeps([76,75,8,49,54,77,55,56,59,78,79,39,80,67]))),v5=N(()=>_(()=>import("./QMJCreate-BpY3zWJd.js"),__vite__mapDeps([81,47,48,49,50,82,83,84,51,55,56,85,20,4,18,60,63,78,79,39,80]))),y5=N(()=>_(()=>import("./QMJGenerate-C_ENcjOE.js"),__vite__mapDeps([86,53,51,56,79,8,39,80,3,87]))),b5=N(()=>_(()=>import("./QMJDetail-Bqrtiw0w.js"),__vite__mapDeps([88,54,55,56,59,89,90,29,91,92,93,94]))),w5=N(()=>_(()=>import("./QMJEdit-DNu9aMaz.js"),__vite__mapDeps([95,96,66,55,56,90,59]))),x5=N(()=>_(()=>import("./VideoList-DpYQWYmo.js"),__vite__mapDeps([97,75,8,49,54,4,53,77,57,59,98,67]))),_y=N(()=>_(()=>import("./VideoCreate-DBOFuoIY.js"),__vite__mapDeps([99,47,48,50,82,83,84,53,4,57,85,20,51,18,60,63,98,29,100,3,80,21,101,87,11,92,102,103]))),S5=N(()=>_(()=>import("./VideoDetail-B-qQwYez.js"),__vite__mapDeps([104,54,4,53,105,69,57,59,80,29,9,39,3,92,23,35,11]))),C5=N(()=>_(()=>import("./QuizList-BV6E0KEB.js"),__vite__mapDeps([106,49,54,4,69,77,107,59,75,8,7,67,108]))),P5=N(()=>_(()=>import("./QuizCreate-DfuXoKiN.js"),__vite__mapDeps([109,49,50,110,83,69,107,29,111,112]))),E5=N(()=>_(()=>import("./QuizDetail-CEP4RHOf.js"),__vite__mapDeps([113,50,82,83,84,4,54,69,53,20,77,107,59,114,29,115,91,11,9,116,117,3,101,37,118,72,92]))),k5=N(()=>_(()=>import("./QuizEdit-BorVm7p0.js"),__vite__mapDeps([119,49,50,110,83,54,77,107,29,120,111,112]))),T5=N(()=>_(()=>import("./DocumentList-C8wrAce0.js"),__vite__mapDeps([121,49,20,82,83,84,4,50,122,59,75,8,65,66,123,124,67,13,3,93,125,6,108]))),A5=N(()=>_(()=>import("./DocumentCreate-BZQGatZk.js"),__vite__mapDeps([126,96,66,65]))),R5=N(()=>_(()=>import("./DocumentDetail-C765S0ys.js"),__vite__mapDeps([127,96,66,122,65,123,124,125]))),_5=N(()=>_(()=>import("./AssessmentEditor-Bj65-D41.js"),__vite__mapDeps([128,129,130,49,50,4,131,83,51,82,84,77,123,124,29,94,111,117]))),D5=N(()=>_(()=>import("./AssessmentPublish-CM33fntT.js"),__vite__mapDeps([132,71,49,50,4,110,83,54,82,84,77,59,123,124,133,29,116,117]))),j5=N(()=>_(()=>import("./AssessmentTake-CzoVCx-o.js"),__vite__mapDeps([134,4,131,83,51,77,124,39,72,3,100,135]))),N5=N(()=>_(()=>import("./PresentationList-BaCeCooV.js"),__vite__mapDeps([136,49,75,8,59,137,67,108,117]))),O5=N(()=>_(()=>import("./PresentationCreate-BNUR0FsN.js"),__vite__mapDeps([138,129,130,110,83,105,49,50,82,84,137,139,140,112,141,142,11,87,55,56,143,20,53,89,29,62,67,111]))),M5=N(()=>_(()=>import("./PresentationDetail--9XmyTkG.js"),__vite__mapDeps([144,137,139,140,112,141,142,11,87,145,32,120,92,129,130,111,84,117,20,53,89]))),L5=N(()=>_(()=>import("./ResourcesPage-BcoUf00I.js"),__vite__mapDeps([146,4,20,49,50,82,83,84,54,147,75,8,10,148,59,143,62,149,67,125,145,6,150]))),I5=N(()=>_(()=>import("./ModelList-Bshw15eG.js"),__vite__mapDeps([151,4,49,54,20,58,67,8]))),F5=N(()=>_(()=>import("./HomeworkCheck-BEb6IUU_.js"),__vite__mapDeps([152,4,50,51,82,83,84,55,56,153,60,10,8,154,112,155,87]))),U5=N(()=>_(()=>import("./HomeworkHistory-98F3flnL.js"),__vite__mapDeps([156,4,54,77,153,29,8,3]))),$5=N(()=>_(()=>import("./HomeworkDetail-FDKmUdCQ.js"),__vite__mapDeps([157,4,54,77,153,29,155,60,8]))),z5=N(()=>_(()=>import("./SubmitAssignment-BeSKYNUI.js"),__vite__mapDeps([158,49,50,4,54,82,83,84,159,10,8,154,112,155,60]))),V5=N(()=>_(()=>import("./AvatarList-D3KOCSJU.js"),__vite__mapDeps([160,54,77,161,162,59,80,72,3]))),H5=N(()=>_(()=>import("./AvatarConversation-k39QTtxb.js"),__vite__mapDeps([163,140,77,162,161,3,7,103]))),q5=N(()=>_(()=>import("./HelpersList-C3yTgSwB.js"),__vite__mapDeps([164,4,75,8,165,166,6,167,168,169,170,171,172,145,135]))),B5=N(()=>_(()=>import("./ARGlobe-WsYWIeYk.js"),__vite__mapDeps([173,174,175,176,83,50,142,11,87,33,168,177,115]))),W5=N(()=>_(()=>import("./HumanBodyExplorer-wmh6y4ce.js"),__vite__mapDeps([178,176,83,50,4,179,17,180,181,16,182,165,67,183,87,33,10,8,39,101,177,115]))),G5=N(()=>_(()=>import("./PhysicsLab-B1pOqwK7.js"),__vite__mapDeps([184,185,3,179,186,187,182,188,167,147,83,50,176,10,8,142,11,87,189,177,115,166]))),K5=N(()=>_(()=>import("./ChemLab-E45YFWdp.js"),__vite__mapDeps([190,191,192,182,166,12,147,83,50,10,8,177,115,6,142,11,87,189]))),Q5=N(()=>_(()=>import("./SolarSystem-C3kMLW8Q.js"),__vite__mapDeps([193,176,83,50,147,167,142,11]))),Y5=N(()=>_(()=>import("./HistoryMap-C_Po30fD.js"),__vite__mapDeps([194,195,147,83,148,142,11,176,50,168]))),J5=N(()=>_(()=>import("./MathSandbox-FmUjr7oE.js"),__vite__mapDeps([196,181,197,37,8,4,53,10,185,147,83,50,15,198,199,200,175,61,49,176,188,201,114,60,169,69,12,13,118,11]))),X5=N(()=>_(()=>import("./ConversationWorlds-CU9w3SPR.js"),__vite__mapDeps([202,14,183,150,8,4,87,10]))),Z5=N(()=>_(()=>import("./ShapeSculpt-Cp4ygSVU.js"),__vite__mapDeps([203,75,8,20,174,204,205,87,206,154,172]))),ez=N(()=>_(()=>import("./WorldMap-CIkMx6n1.js"),__vite__mapDeps([207,195,4,170,208,198,102,209,210,49,67,87]))),tz=N(()=>_(()=>import("./PeriodicTable-C4IEONeI.js"),__vite__mapDeps([211,4,166,208,33,192,191,182,49,67,50,147,83,176,171]))),nz=N(()=>_(()=>import("./BrainBreaksList-DNv01C6E.js"),__vite__mapDeps([212,75,8]))),rz=N(()=>_(()=>import("./PoseMatch-BMJP1AyO.js"),__vite__mapDeps([213,20,53,214,215,204,205,206,87,154]))),oz=N(()=>_(()=>import("./FruitNinja-C2H1tt2i.js"),__vite__mapDeps([216,20,214,215,204,205,12,9,17,206,87,154]))),iz=N(()=>_(()=>import("./StatueFreeze-DTK_JK1j.js"),__vite__mapDeps([217,20,215,204,205,218,149,192,206,154,87,11]))),sz=N(()=>_(()=>import("./BalloonPop-CdkvWPa_.js"),__vite__mapDeps([219,20,214,215,204,205,220,12,9,17,87,154]))),az=N(()=>_(()=>import("./ReactionDash-h4EuwcRN.js"),__vite__mapDeps([221,20,214,215,204,205,220,12,9,17,87,154]))),lz=N(()=>_(()=>import("./JumpJack-oa8MaMsQ.js"),__vite__mapDeps([222,20,214,215,204,205,220,12,9,185,87,154]))),cz=N(()=>_(()=>import("./BreathBubble-BT03_hRg.js"),__vite__mapDeps([223,10,8,180,87,11]))),uz=N(()=>_(()=>import("./ColorRush-DynxBTef.js"),__vite__mapDeps([224,9,87,11]))),dz=N(()=>_(()=>import("./MemoryFlash-XQAWWOmg.js"),__vite__mapDeps([225,8,87,11]))),fz=N(()=>_(()=>import("./RhythmTap-Dc21UEsu.js"),__vite__mapDeps([226,227,87,11]))),pz=N(()=>_(()=>import("./Stroop-CghIAxcA.js"),__vite__mapDeps([228,227,87,11]))),mz=N(()=>_(()=>import("./NumberOrder-gMdhCFjB.js"),__vite__mapDeps([229,227,87,11]))),hz=N(()=>_(()=>import("./MathPop-CeC3Gl_W.js"),__vite__mapDeps([230,227,87,11]))),gz=N(()=>_(()=>import("./RedLight-npbz5_va.js"),__vite__mapDeps([231,227,87,11]))),vz=N(()=>_(()=>import("./BubbleWrap-DNaeGYJd.js"),__vite__mapDeps([232,227,87,11]))),yz=N(()=>_(()=>import("./OddOne-CRsYndkd.js"),__vite__mapDeps([233,227,87,11]))),bz=N(()=>_(()=>import("./ZonePunch-xfNAR0fW.js"),__vite__mapDeps([234,20,214,215,204,205,220,9,17,87,154]))),wz=N(()=>_(()=>import("./SquatCount-BpKfXbqK.js"),__vite__mapDeps([235,20,214,215,204,205,220,9,185,87,154]))),xz=N(()=>_(()=>import("./BalanceHold-DCBNNOlh.js"),__vite__mapDeps([236,20,214,215,204,205,220,9,87,154]))),Sz=N(()=>_(()=>import("./ClassroomList-CwtAMd9H.js"),__vite__mapDeps([237,75,8,49,54,4,77,133,67]))),Cz=N(()=>_(()=>import("./ClassroomCreate-CorENK_E.js"),__vite__mapDeps([238,47,48,49,50,82,83,84,239,71,54,20,77,150,240,117,72,133,29]))),Pz=N(()=>_(()=>import("./ClassroomDetail-BSKJzTrj.js"),__vite__mapDeps([241,71,49,50,54,4,176,83,69,82,84,239,20,77,150,240,117,72,114,133,129,130,140,208,111,8,32,10,13,118,37,87,12,53,80,3,39,101,206,154,51,55,56,159,29,116,60,155,135,141,242,92,67]))),Ez=N(()=>_(()=>import("./JoinClassroom-Cpm-GPah.js"),__vite__mapDeps([243,47,48,49,50,54,51,133,80]))),kz=N(()=>_(()=>import("./JoinSchoolClass-BOniN0MD.js"),__vite__mapDeps([244,47,48,49,50,54,51,80,150]))),Tz=N(()=>_(()=>import("./SchoolLayout-Pw7WBr7b.js"),__vite__mapDeps([245,54]))),Az=N(()=>_(()=>import("./SchoolAdministration-KHlHjAsr.js"),__vite__mapDeps([246,4,247,47,49,50,248,69,112,82,83,84,18,114,54,59,249,245]))),Rz=N(()=>_(()=>import("./SchoolTeachers-DfL-KY3Y.js"),__vite__mapDeps([250,251,49,39,3,4,50,69,114,77,20,54,248,112,59,240,245]))),_z=N(()=>_(()=>import("./SchoolStudents-Dv7G3Ias.js"),__vite__mapDeps([252,253,49,50,20,77,54,248,69,112,13,84,240,245]))),Dz=N(()=>_(()=>import("./SchoolClasses-C3TVfQ69.js"),__vite__mapDeps([254,239,71,49,50,54,20,77,150,240,117,72,245]))),jz=N(()=>_(()=>import("./SchoolSubjects-CfpDrHw4.js"),__vite__mapDeps([255,256,110,83,49,50,176,54,77,55,56,240,245]))),Nz=N(()=>_(()=>import("./SchoolCabinets-pT_5NGih.js"),__vite__mapDeps([257,258,49,50,54,77,240,245]))),Oz=N(()=>_(()=>import("./SchoolSchedule-DuK4RKzh.js"),__vite__mapDeps([259,260,49,50,82,83,84,20,77,54,239,71,150,240,117,72,29,245]))),Mz=N(()=>_(()=>import("./JoinSuccess-OvviZ3g0.js"),__vite__mapDeps([261,39,15]))),Lz=N(()=>_(()=>import("./GamesPage-B4bFVCSz.js"),__vite__mapDeps([262,37,263,15,150,103,264,265,266,197,141,7,267,149,185,13,191,268,49,176,83,50,269,270,53,20,271,272,273,274,129,275,276,277,278,279,8,11,67,72,187,10,280,33,145,12,41]))),Iz=N(()=>_(()=>import("./GameDemo-BoxrD7OX.js"),__vite__mapDeps([281,147,83,4,176,50,49,282,10,8,37,17,9,12,209,13,185,263,15,39,35,149,29,87,142,11]))),Fz=N(()=>_(()=>import("./BaigeGamePage-BDtkVnSb.js"),__vite__mapDeps([283,269,49,50,176,83,270,8,185,9,61,60,10,111,240,29,187,21,284,282,37,115,120,268]))),Uz=N(()=>_(()=>import("./BaigePlayPage-lO6IGeXj.js"),__vite__mapDeps([285,49,269,284,8,282,37,268,60,3,7,185,191,61,10,186,21,29,87,11,15]))),$z=N(()=>_(()=>import("./SuryptauCreatePage-BvEKQDrb.js"),__vite__mapDeps([286,49,176,83,50,269,270,53,287,20,271,265,29,115,8,120,10,267,9,111]))),zz=N(()=>_(()=>import("./SuryptauPlayPage-DsybADww.js"),__vite__mapDeps([288,269,271,265,29,3,10,8,111,37,87,15]))),Vz=N(()=>_(()=>import("./YesNoCreatePage-1KbMMG6_.js"),__vite__mapDeps([289,49,50,269,290,29,115,8,120,270,53,287,20,272,265,10,7,39]))),Hz=N(()=>_(()=>import("./YesNoPlayPage-CaXI4Dj4.js"),__vite__mapDeps([291,269,272,265,29,185,8,10,37,87,15]))),qz=N(()=>_(()=>import("./RiddleCreatePage-BY2NELz7.js"),__vite__mapDeps([292,49,50,176,83,269,290,29,115,8,120,293,270,294,10,53,287,20,295,273,265,210,7]))),Bz=N(()=>_(()=>import("./RiddlePlayPage-CpgrVGWM.js"),__vite__mapDeps([296,49,53,269,50,297,8,37,13,3,15,87,20,295,273,265,10,12,210,17]))),Wz=N(()=>_(()=>import("./MatchingCreatePage-BrLI5-qf.js"),__vite__mapDeps([298,50,176,83,269,290,29,115,8,120,293,49,270,294,10,53,287,20,274,265,129,141,9,33,111]))),Gz=N(()=>_(()=>import("./MatchingPlayPage-D9uIS5Ee.js"),__vite__mapDeps([299,269,49,50,297,8,37,13,3,15,87,53,20,300,274,265,129,111,10,29,141]))),Kz=N(()=>_(()=>import("./MemoryCreatePage-BKkm6mtX.js"),__vite__mapDeps([301,49,50,290,29,115,8,120,270,53,287,20,269,275,265,10]))),Qz=N(()=>_(()=>import("./MemoryPlayPage-C-vSxTBm.js"),__vite__mapDeps([302,269,49,50,303,53,29,8,3,20,300,275,265,10,37,87,15]))),Yz=N(()=>_(()=>import("./WordSearchCreatePage-BAlypDP1.js"),__vite__mapDeps([304,49,50,269,290,29,115,8,120,270,53,287,20,276,265,10]))),Jz=N(()=>_(()=>import("./WordSearchPlayPage-e2xNBGfh.js"),__vite__mapDeps([305,269,49,50,303,53,29,8,3,20,300,276,265,39,37,87,15,67,10]))),Xz=N(()=>_(()=>import("./CrosswordCreatePage-B1yuvHC2.js"),__vite__mapDeps([306,49,50,269,290,29,115,8,120,270,53,20,307,277,265,197,10]))),Zz=N(()=>_(()=>import("./CrosswordPlayPage-B9w1U6Tz.js"),__vite__mapDeps([308,269,49,50,303,53,29,8,3,20,300,307,277,265,37,87,15,197,10]))),e6=N(()=>_(()=>import("./FillBlanksCreatePage-DoTg6NJV.js"),__vite__mapDeps([309,49,50,176,83,269,290,29,115,8,120,293,270,53,287,20,266,265,10,199]))),t6=N(()=>_(()=>import("./FillBlanksPlayPage-D0KKpcum.js"),__vite__mapDeps([310,269,49,50,297,8,37,13,3,15,87,303,53,29,20,300,266,265,39,101,185]))),n6=N(()=>_(()=>import("./UnscrambleCreatePage-D4F19Q9c.js"),__vite__mapDeps([311,49,50,176,83,269,290,29,115,8,120,293,270,53,287,20,264,265,10]))),r6=N(()=>_(()=>import("./UnscramblePlayPage-DLSaEoqr.js"),__vite__mapDeps([312,269,49,50,297,8,37,13,3,15,87,303,53,29,20,300,264,265,111,185,267,39]))),o6=N(()=>_(()=>import("./DictationCreatePage-CbGolE9g.js"),__vite__mapDeps([313,49,50,176,83,269,290,29,115,8,120,293,270,53,287,20,278,265,103,10,314]))),i6=N(()=>_(()=>import("./DictationPlayPage-WXgmvqoH.js"),__vite__mapDeps([315,269,49,50,297,8,37,13,3,15,87,303,53,29,20,300,278,265,142,11,35,80,185,103,39,242]))),s6=N(()=>_(()=>import("./DialogueCreatePage-DPFmD-ag.js"),__vite__mapDeps([316,49,50,176,83,269,290,29,115,8,120,293,270,53,20,279,265,10]))),a6=N(()=>_(()=>import("./DialoguePlayPage-D0z077gR.js"),__vite__mapDeps([317,269,49,50,297,8,37,13,3,15,87,303,53,29,20,300,279,265,185]))),l6=Ki(()=>_(()=>import("./index-Dd0rvcVe.js"),__vite__mapDeps([318,290,29,115,8,120,49,10,240,176,83,50,187,72,35,218,280,33,208,145,188,12,13])),"SpinWheelPage"),c6=Ki(()=>_(()=>import("./index-Dd0rvcVe.js"),__vite__mapDeps([318,290,29,115,8,120,49,10,240,176,83,50,187,72,35,218,280,33,208,145,188,12,13])),"DicePage"),u6=Ki(()=>_(()=>import("./index-Dd0rvcVe.js"),__vite__mapDeps([318,290,29,115,8,120,49,10,240,176,83,50,187,72,35,218,280,33,208,145,188,12,13])),"CardShufflePage"),d6=Ki(()=>_(()=>import("./index-Dd0rvcVe.js"),__vite__mapDeps([318,290,29,115,8,120,49,10,240,176,83,50,187,72,35,218,280,33,208,145,188,12,13])),"SlotMachinePage"),f6=Ki(()=>_(()=>import("./index-Dd0rvcVe.js"),__vite__mapDeps([318,290,29,115,8,120,49,10,240,176,83,50,187,72,35,218,280,33,208,145,188,12,13])),"LightningPage"),p
4016=Ki(()=>_(()=>import("./index-Dd0rvcVe.js"),__vite__mapDeps([318,290,29,115,8,120,49,10,240,176,83,50,187,72,35,218,280,33,208,145,188,12,13])),"MysteryBoxPage"),m6=N(()=>_(()=>import("./SessionJoin-MQQJpCq9.js"),__vite__mapDeps([319,49,50,51,54,107,80,7]))),h6=N(()=>_(()=>import("./SessionPlay-CT2qMHIK.js"),__vite__mapDeps([320,107,80,37,12,35,218,149,3,21]))),g6=N(()=>_(()=>import("./SessionResults-B2B14BpV.js"),__vite__mapDeps([321,54,107,80,37,72,118]))),v6=N(()=>_(()=>import("./AdminDashboard-vxnuCj4D.js"),__vite__mapDeps([322,54,323,2,56,18,201]))),y6=N(()=>_(()=>import("./AdminSubjects-DojAiVRV.js"),__vite__mapDeps([324,47,48,49,50,54,20,77,114,323,2,56,67,240]))),b6=N(()=>_(()=>import("./AdminSubscriptions-D4JTfgpB.js"),[])),w6=N(()=>_(()=>import("./AdminUsers-j9WIMwY5.js"),__vite__mapDeps([325,49,50,114,20,77,82,83,84,4,54,176,69,323,2,56,18,59,67]))),x6=N(()=>_(()=>import("./AdminPlans-BX2t9lqZ.js"),__vite__mapDeps([326,47,48,49,50,176,83,54,4,114,20,77,82,84,18,67,72,240,63]))),S6=N(()=>_(()=>import("./AdminSubscriptionAnalytics-KsNW5Sho.js"),__vite__mapDeps([327,51,60,49,54,4,53,69,114,82,83,84,20,77,18,201,61,3,209,200,175,67,115,101]))),C6=N(()=>_(()=>import("./AdminAvatars-DpRHyYMl.js"),__vite__mapDeps([328,47,48,49,50,54,4,53,82,83,84,114,20,77,69,162,112,115,16,67,240,314,80]))),P6=N(()=>_(()=>import("./AdminSchools-xI6x7tIE.js"),__vite__mapDeps([329,47,48,49,50,4,54,114,247,248,69,112,82,83,84,18,59,249,251,39,3,77,20,240,253,13,256,110,176,55,56,258,239,71,150,117,72,260,29,67,148]))),E6=N(()=>_(()=>import("./AdminTutorialVideos-DUoT5RO8.js"),__vite__mapDeps([330,47,48,49,50,54,4,20,77,114,5,67,240]))),k6=N(()=>_(()=>import("./AdminModels3D-CDeipzhZ.js"),__vite__mapDeps([331,47,48,49,50,176,83,4,54,82,84,20,77,323,2,56,58,67,240]))),T6=[{element:u.jsx(RI,{}),children:[{path:"/",element:u.jsx(e5,{})},{path:"/terms",element:u.jsx(t5,{})},{path:"/privacy",element:u.jsx(n5,{})},{path:"/qmj-generator",element:u.jsx(o5,{})},{path:"/presentation-generator",element:u.jsx(i5,{})},{path:"/video-generator",element:u.jsx(s5,{})},{path:"/games-generator",element:u.jsx(a5,{})},{path:"/bzb-generator",element:u.jsx(l5,{})},{path:"/tzb-generator",element:u.jsx(c5,{})},{path:"/blog",element:u.jsx(u5,{})},{path:"/blog/:slug",element:u.jsx(d5,{})}]}],A6=[{element:u.jsx(bC,{}),children:[{path:"/login",element:u.jsx(DC,{})},{path:"/verify",element:u.jsx(jC,{})}]}],R6=[{element:u.jsx(Q$,{}),children:[{path:"/dashboard",element:u.jsx(f5,{})},{path:"/profile",element:u.jsx(NC,{})},{path:"/subscription",element:u.jsx(m5,{})},{path:"/telegram",element:u.jsx(h5,{})},{path:"/classrooms",element:u.jsx(Sz,{})},{path:"/classrooms/create",element:u.jsx(Cz,{})},{path:"/classrooms/:id",element:u.jsx(Pz,{})},{path:"/school",element:u.jsx(Tz,{}),children:[{index:!0,element:u.jsx(Mr,{to:"administration",replace:!0})},{path:"administration",element:u.jsx(Az,{})},{path:"teachers",element:u.jsx(Rz,{})},{path:"students",element:u.jsx(_z,{})},{path:"classes",element:u.jsx(Dz,{})},{path:"subjects",element:u.jsx(jz,{})},{path:"cabinets",element:u.jsx(Nz,{})},{path:"schedule",element:u.jsx(Oz,{})}]},{element:u.jsx(Y$,{}),children:[{path:"/ai-tools",element:u.jsx(p5,{})},{path:"/qmj",element:u.jsx(g5,{})},{path:"/qmj/create",element:u.jsx(v5,{})},{path:"/qmj/generate",element:u.jsx(y5,{})},{path:"/qmj/:id",element:u.jsx(b5,{})},{path:"/qmj/:id/edit",element:u.jsx(w5,{})},{path:"/quizzes",element:u.jsx(C5,{})},{path:"/quizzes/create",element:u.jsx(P5,{})},{path:"/quizzes/:id",element:u.jsx(E5,{})},{path:"/quizzes/:id/edit",element:u.jsx(k5,{})},{path:"/games",element:u.jsx(Lz,{})},{path:"/games/:gameId",element:u.jsx(Iz,{})},{path:"/documents",element:u.jsx(T5,{})},{path:"/documents/create",element:u.jsx(A5,{})},{path:"/documents/:id",element:u.jsx(R5,{})},{path:"/assessments/:id",element:u.jsx(_5,{})},{path:"/assessments/:id/publish",element:u.jsx(D5,{})},{path:"/presentations",element:u.jsx(N5,{})},{path:"/presentations/create",element:u.jsx(O5,{})},{path:"/presentations/:id",element:u.jsx(M5,{})},{path:"/resources",element:u.jsx(L5,{})},{path:"/3d-models",element:u.jsx(I5,{})},{path:"/homework",element:u.jsx(F5,{})},{path:"/homework/history",element:u.jsx(U5,{})},{path:"/homework/:id",element:u.jsx($5,{})},{path:"/avatar",element:u.jsx(V5,{})},{path:"/avatar/conversation/:conversationId",element:u.jsx(H5,{})},{path:"/helpers",element:u.jsx(q5,{})}]},{element:u.jsx(J$,{}),children:[{path:"/videos",element:u.jsx(x5,{})},{path:"/videos/create",element:u.jsx(_y,{})},{path:"/videos/create/outline",element:u.jsx(_y,{})},{path:"/videos/:id",element:u.jsx(S5,{})}]},{element:u.jsx(X$,{}),children:[{path:"/helpers/ar-globe",element:u.jsx(B5,{})},{path:"/helpers/human-body",element:u.jsx(W5,{})},{path:"/helpers/physics-lab",element:u.jsx(G5,{})},{path:"/helpers/chem-lab",element:u.jsx(K5,{})},{path:"/helpers/solar-system",element:u.jsx(Q5,{})},{path:"/helpers/history-map",element:u.jsx(Y5,{})},{path:"/helpers/math-sandbox",element:u.jsx(J5,{})},{path:"/helpers/conversation-worlds",element:u.jsx(X5,{})},{path:"/helpers/shape-sculpt",element:u.jsx(Z5,{})},{path:"/helpers/world-map",element:u.jsx(ez,{})},{path:"/helpers/periodic-table",element:u.jsx(tz,{})},{path:"/brain-breaks",element:u.jsx(nz,{})},{path:"/brain-breaks/pose-match",element:u.jsx(rz,{})},{path:"/brain-breaks/fruit-ninja",element:u.jsx(oz,{})},{path:"/brain-breaks/statue-freeze",element:u.jsx(iz,{})},{path:"/brain-breaks/balloon-pop",element:u.jsx(sz,{})},{path:"/brain-breaks/reaction-dash",element:u.jsx(az,{})},{path:"/brain-breaks/jump-jack",element:u.jsx(lz,{})},{path:"/brain-breaks/breath-bubble",element:u.jsx(cz,{})},{path:"/brain-breaks/color-rush",element:u.jsx(uz,{})},{path:"/brain-breaks/memory-flash",element:u.jsx(dz,{})},{path:"/brain-breaks/rhythm-tap",element:u.jsx(fz,{})},{path:"/brain-breaks/stroop",element:u.jsx(pz,{})},{path:"/brain-breaks/number-order",element:u.jsx(mz,{})},{path:"/brain-breaks/math-pop",element:u.jsx(hz,{})},{path:"/brain-breaks/red-light",element:u.jsx(gz,{})},{path:"/brain-breaks/bubble-wrap",element:u.jsx(vz,{})},{path:"/brain-breaks/odd-one",element:u.jsx(yz,{})},{path:"/brain-breaks/zone-punch",element:u.jsx(bz,{})},{path:"/brain-breaks/squat-count",element:u.jsx(wz,{})},{path:"/brain-breaks/balance-hold",element:u.jsx(xz,{})}]},{path:"/games/baige",element:u.jsx(Fz,{})},{path:"/games/baige/play/:gameId",element:u.jsx(Uz,{})},{path:"/games/suryptau",element:u.jsx($z,{})},{path:"/games/suryptau/play/:gameId",element:u.jsx(zz,{})},{path:"/games/yesno",element:u.jsx(Vz,{})},{path:"/games/yesno/play/:gameId",element:u.jsx(Hz,{})},{path:"/games/riddle",element:u.jsx(qz,{})},{path:"/games/riddle/play/:gameId",element:u.jsx(Bz,{})},{path:"/games/matching",element:u.jsx(Wz,{})},{path:"/games/matching/play/:gameId",element:u.jsx(Gz,{})},{path:"/games/wordsearch",element:u.jsx(Yz,{})},{path:"/games/wordsearch/play/:gameId",element:u.jsx(Jz,{})},{path:"/games/crossword",element:u.jsx(Xz,{})},{path:"/games/crossword/play/:gameId",element:u.jsx(Zz,{})},{path:"/games/fillblanks",element:u.jsx(e6,{})},{path:"/games/fillblanks/play/:gameId",element:u.jsx(t6,{})},{path:"/games/unscramble",element:u.jsx(n6,{})},{path:"/games/unscramble/play/:gameId",element:u.jsx(r6,{})},{path:"/games/dictation",element:u.jsx(o6,{})},{path:"/games/dictation/play/:gameId",element:u.jsx(i6,{})},{path:"/games/dialogue",element:u.jsx(s6,{})},{path:"/games/dialogue/play/:gameId",element:u.jsx(a6,{})},{path:"/games/memory",element:u.jsx(Kz,{})},{path:"/games/memory/play/:gameId",element:u.jsx(Qz,{})},{path:"/games/randomizers/wheel",element:u.jsx(l6,{})},{path:"/games/randomizers/dice",element:u.jsx(c6,{})},{path:"/games/randomizers/cards",element:u.jsx(u6,{})},{path:"/games/randomizers/slot",element:u.jsx(d6,{})},{path:"/games/randomizers/lightning",element:u.jsx(f6,{})},{path:"/games/randomizers/mystery-box",element:u.jsx(p6,{})}]}],_6=[{path:"/sessions/:sessionId",element:u.jsx(m6,{})},{path:"/sessions/:sessionId/play",element:u.jsx(h6,{})},{path:"/sessions/:sessionId/results",element:u.jsx(g6,{})},{path:"/join/:code",element:u.jsx(Ez,{})},{path:"/join/class/:code",element:u.jsx(kz,{})},{path:"/join/success",element:u.jsx(Mz,{})},{path:"/submit/:code",element:u.jsx(z5,{})},{path:"/assessment/take",element:u.jsx(j5,{})}],D6=[{path:"/admin",children:[{element:u.jsx(bC,{}),children:[{path:"login",element:u.jsx(DC,{})},{path:"verify",element:u.jsx(jC,{})}]},{element:u.jsx(Z$,{}),children:[{index:!0,element:u.jsx(Mr,{to:"/admin/dashboard",replace:!0})},{path:"dashboard",element:u.jsx(v6,{})},{path:"users",element:u.jsx(w6,{})},{path:"subjects",element:u.jsx(y6,{})},{path:"subscriptions",element:u.jsx(b6,{})},{path:"plans",element:u.jsx(x6,{})},{path:"analytics",element:u.jsx(S6,{})},{path:"avatars",element:u.jsx(C6,{})},{path:"schools",element:u.jsx(P6,{})},{path:"tutorial-videos",element:u.jsx(E6,{})},{path:"3d-models",element:u.jsx(k6,{})},{path:"profile",element:u.jsx(NC,{})}]},{path:"*",element:u.jsx(Mr,{to:"/admin/dashboard",replace:!0})}]}],j6=[...T6,...A6,...R6,..._6,...D6,{path:"*",element:u.jsx(r5,{})}];function N6(){return mT(j6)}function O6(){return u.jsx(m.Suspense,{fallback:u.jsx(Ro,{}),children:u.jsx(N6,{})})}function M6({children:e}){const{initialize:t,isInitialized:n}=kt();return m.useEffect(()=>{t()},[t]),n?u.jsx(u.Fragment,{children:e}):u.jsx(Ro,{})}var L6=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),I6="VisuallyHidden",wu=m.forwardRef((e,t)=>
401u.jsx(pe.span,{...e,ref:t,style:{...L6,...e.style}}));wu.displayName=I6;var IH=wu,ch="ToastProvider",[uh,F6,U6]=bm("Toast"),[OC]=Hr("Toast",[U6]),[$6,xu]=OC(ch),MC=e=>{const{__scopeToast:t,label:n="Notification",duration:r=5e3,swipeDirection:o="right",swipeThreshold:i=50,children:s}=e,[a,l]=m.useState(null),[c,d]=m.useState(0),f=m.useRef(!1),p=m.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${ch}\`. Expected non-empty \`string\`.`),u.jsx(uh.Provider,{scope:t,children:u.jsx($6,{scope:t,label:n,duration:r,swipeDirection:o,swipeThreshold:i,toastCount:c,viewport:a,onViewportChange:l,onToastAdd:m.useCallback(()=>d(h=>h+1),[]),onToastRemove:m.useCallback(()=>d(h=>h-1),[]),isFocusedToastEscapeKeyDownRef:f,isClosePausedRef:p,children:s})})};MC.displayName=ch;var LC="ToastViewport",z6=["F8"],ip="toast.viewportPause",sp="toast.viewportResume",IC=m.forwardRef((e,t)=>{const{__scopeToast:n,hotkey:r=z6,label:o="Notifications ({hotkey})",...i}=e,s=xu(LC,n),a=F6(n),l=m.useRef(null),c=m.useRef(null),d=m.useRef(null),f=m.useRef(null),p=Se(t,f,s.onViewportChange),h=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),g=s.toastCount>0;m.useEffect(()=>{const b=y=>{var x;r.length!==0&&r.every(S=>y[S]||y.code===S)&&((x=f.current)==null||x.focus())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[r]),m.useEffect(()=>{const b=l.current,y=f.current;if(g&&b&&y){const w=()=>{if(!s.isClosePausedRef.current){const k=new CustomEvent(ip);y.dispatchEvent(k),s.isClosePausedRef.current=!0}},x=()=>{if(s.isClosePausedRef.current){const k=new CustomEvent(sp);y.dispatchEvent(k),s.isClosePausedRef.current=!1}},S=k=>{!b.contains(k.relatedTarget)&&x()},C=()=>{b.contains(document.activeElement)||x()};return b.addEventListener("focusin",w),b.addEventListener("focusout",S),b.addEventListener("pointermove",w),b.addEventListener("pointerleave",C),window.addEventListener("blur",w),window.addEventListener("focus",x),()=>{b.removeEventListener("focusin",w),b.removeEventListener("focusout",S),b.removeEventListener("pointermove",w),b.removeEventListener("pointerleave",C),window.removeEventListener("blur",w),window.removeEventListener("focus",x)}}},[g,s.isClosePausedRef]);const v=m.useCallback(({tabbingDirection:b})=>{const w=a().map(x=>{const S=x.ref.current,C=[S,...eV(S)];return b==="forwards"?C:C.reverse()});return(b==="forwards"?w.reverse():w).flat()},[a]);return m.useEffect(()=>{const b=f.current;if(b){const y=w=>{var C,k,E;const x=w.altKey||w.ctrlKey||w.metaKey;if(w.key==="Tab"&&!x){const T=document.activeElement,j=w.shiftKey;if(w.target===b&&j){(C=c.current)==null||C.focus();return}const F=v({tabbingDirection:j?"backwards":"forwards"}),K=F.findIndex(I=>I===T);Sd(F.slice(K+1))?w.preventDefault():j?(k=c.current)==null||k.focus():(E=d.current)==null||E.focus()}};return b.addEventListener("keydown",y),()=>b.removeEventListener("keydown",y)}},[a,v]),u.jsxs(b_,{ref:l,role:"region","aria-label":o.replace("{hotkey}",h),tabIndex:-1,style:{pointerEvents:g?void 0:"none"},children:[g&&u.jsx(ap,{ref:c,onFocusFromOutsideViewport:()=>{const b=v({tabbingDirection:"forwards"});Sd(b)}}),u.jsx(uh.Slot,{scope:n,children:u.jsx(pe.ol,{tabIndex:-1,...i,ref:p})}),g&&u.jsx(ap,{ref:d,onFocusFromOutsideViewport:()=>{const b=v({tabbingDirection:"backwards"});Sd(b)}})]})});IC.displayName=LC;var FC="ToastFocusProxy",ap=m.forwardRef((e,t)=>{const{__scopeToast:n,onFocusFromOutsideViewport:r,...o}=e,i=xu(FC,n);return u.jsx(wu,{tabIndex:0,...o,ref:t,style:{position:"fixed"},onFocus:s=>{var c;const a=s.relatedTarget;!((c=i.viewport)!=null&&c.contains(a))&&r()}})});ap.displayName=FC;var Da="Toast",V6="toast.swipeStart",H6="toast.swipeMove",q6="toast.swipeCancel",B6="toast.swipeEnd",UC=m.forwardRef((e,t)=>{const{forceMount:n,open:r,defaultOpen:o,onOpenChange:i,...s}=e,[a,l]=Kc({prop:r,defaultProp:o??!0,onChange:i,caller:Da});return u.jsx(Lt,{present:n||a,children:u.jsx(K6,{open:a,...s,ref:t,onClose:()=>l(!1),onPause:Ne(e.onPause),onResume:Ne(e.onResume),onSwipeStart:G(e.onSwipeStart,c=>{c.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:G(e.onSwipeMove,c=>{const{x:d,y:f}=c.detail.delta;c.currentTarget.setAttribute("data-swipe","move"),c.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${d}px`),c.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${f}px`)}),onSwipeCancel:G(e.onSwipeCancel,c=>{c.currentTarget.setAttribute("data-swipe","cancel"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),c.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:G(e.onSwipeEnd,c=>{const{x:d,y:f}=c.detail.delta;c.currentTarget.setAttribute("data-swipe","end"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),c.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${d}px`),c.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${f}px`),l(!1)})})})});UC.displayName=Da;var[W6,G6]=OC(Da,{onClose(){}}),K6=m.forwardRef((e,t)=>
401{const{__scopeToast:n,type:r="foreground",duration:o,open:i,onClose:s,onEscapeKeyDown:a,onPause:l,onResume:c,onSwipeStart:d,onSwipeMove:f,onSwipeCancel:p,onSwipeEnd:h,...g}=e,v=xu(Da,n),[b,y]=m.useState(null),w=Se(t,I=>y(I)),x=m.useRef(null),S=m.useRef(null),C=o||v.duration,k=m.useRef(0),E=m.useRef(C),T=m.useRef(0),{onToastAdd:j,onToastRemove:A}=v,L=Ne(()=>{var Z;(b==null?void 0:b.contains(document.activeElement))&&((Z=v.viewport)==null||Z.focus()),s()}),F=m.useCallback(I=>{!I||I===1/0||(window.clearTimeout(T.current),k.current=new Date().getTime(),T.current=window.setTimeout(L,I))},[L]);m.useEffect(()=>{const I=v.viewport;if(I){const Z=()=>{F(E.current),c==null||c()},q=()=>{const re=new Date().getTime()-k.current;E.current=E.current-re,window.clearTimeout(T.current),l==null||l()};return I.addEventListener(ip,q),I.addEventListener(sp,Z),()=>{I.removeEventListener(ip,q),I.removeEventListener(sp,Z)}}},[v.viewport,C,l,c,F]),m.useEffect(()=>{i&&!v.isClosePausedRef.current&&F(C)},[i,C,v.isClosePausedRef,F]),m.useEffect(()=>(j(),()=>A()),[j,A]);const K=m.useMemo(()=>b?WC(b):null,[b]);return v.viewport?u.jsxs(u.Fragment,{children:[K&&u.jsx(Q6,{__scopeToast:n,role:"status","aria-live":r==="foreground"?"assertive":"polite",children:K}),u.jsx(W6,{scope:n,onClose:L,children:wa.createPortal(u.jsx(uh.ItemSlot,{scope:n,children:u.jsx(y_,{asChild:!0,onEscapeKeyDown:G(a,()=>{v.isFocusedToastEscapeKeyDownRef.current||L(),v.isFocusedToastEscapeKeyDownRef.current=!1}),children:u.jsx(pe.li,{tabIndex:0,"data-state":i?"open":"closed","data-swipe-direction":v.swipeDirection,...g,ref:w,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:G(e.onKeyDown,I=>{I.key==="Escape"&&(a==null||a(I.nativeEvent),I.nativeEvent.defaultPrevented||(v.isFocusedToastEscapeKeyDownRef.current=!0,L()))}),onPointerDown:G(e.onPointerDown,I=>{I.button===0&&(x.current={x:I.clientX,y:I.clientY})}),onPointerMove:G(e.onPointerMove,I=>{if(!x.current)return;const Z=I.clientX-x.current.x,q=I.clientY-x.current.y,re=!!S.current,D=["left","right"].includes(v.swipeDirection),O=["left","up"].includes(v.swipeDirection)?Math.min:Math.max,$=D?O(0,Z):0,B=D?0:O(0,q),oe=I.pointerType==="touch"?10:2,Le={x:$,y:B},De={originalEvent:I,delta:Le};re?(S.current=Le,ul(H6,f,De,{discrete:!1})):Dy(Le,v.swipeDirection,oe)?(S.current=Le,ul(V6,d,De,{discrete:!1}),I.target.setPointerCapture(I.pointerId)):(Math.abs(Z)>oe||Math.abs(q)>oe)&&(x.current=null)}),onPointerUp:G(e.onPointerUp,I=>{const Z=S.current,q=I.target;if(q.hasPointerCapture(I.pointerId)&&q.releasePointerCapture(I.pointerId),S.current=null,x.current=null,Z){const re=I.currentTarget,D={originalEvent:I,delta:Z};Dy(Z,v.swipeDirection,v.swipeThreshold)?ul(B6,h,D,{discrete:!0}):ul(q6,p,D,{discrete:!0}),re.addEventListener("click",O=>O.preventDefault(),{once:!0})}})})})}),v.viewport)})]}):null}),Q6=e=>{const{__scopeToast:t,children:n,...r}=e,o=xu(Da,t),[i,s]=m.useState(!1),[a,l]=m.useState(!1);return X6(()=>s(!0)),m.useEffect(()=>{const c=window.setTimeout(()=>l(!0),1e3);return()=>window.clearTimeout(c)},[]),a?null:u.jsx(eu,{asChild:!0,children:u.jsx(wu,{...r,children:i&&u.jsxs(u.Fragment,{children:[o.label," ",n]})})})}
401,Y6="ToastTitle",$C=m.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return u.jsx(pe.div,{...r,ref:t})});$C.displayName=Y6;var J6="ToastDescription",zC=m.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return u.jsx(pe.div,{...r,ref:t})});zC.displayName=J6;var VC="ToastAction",HC=m.forwardRef((e,t)=>{const{altText:n,...r}=e;return n.trim()?u.jsx(BC,{altText:n,asChild:!0,children:u.jsx(dh,{...r,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${VC}\`. Expected non-empty \`string\`.`),null)});HC.displayName=VC;var qC="ToastClose",dh=m.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e,o=G6(qC,n);return u.jsx(BC,{asChild:!0,children:u.jsx(pe.button,{type:"button",...r,ref:t,onClick:G(e.onClick,o.onClose)})})});dh.displayName=qC;var BC=m.forwardRef((e,t)=>{const{__scopeToast:n,altText:r,...o}=e;return u.jsx(pe.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":r||void 0,...o,ref:t})});function WC(e){const t=[];return Array.from(e.childNodes).forEach(r=>{if(r.nodeType===r.TEXT_NODE&&r.textContent&&t.push(r.textContent),Z6(r)){const o=r.ariaHidden||r.hidden||r.style.display==="none",i=r.dataset.radixToastAnnounceExclude==="";if(!o)if(i){const s=r.dataset.radixToastAnnounceAlt;s&&t.push(s)}else t.push(...WC(r))}}),t}function ul(e,t,n,{discrete:r}){const o=n.originalEvent.currentTarget,i=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?ym(o,i):o.dispatchEvent(i)}var Dy=(e,t,n=0)=>{const r=Math.abs(e.x),o=Math.abs(e.y),i=r>o;return t==="left"||t==="right"?i&&r>n:!i&&o>n};function X6(e=()=>{}){const t=Ne(e);Nt(()=>{let n=0,r=0;return n=window.requestAnimationFrame(()=>r=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(n),window.cancelAnimationFrame(r)}},[t])}function Z6(e){return e.nodeType===e.ELEMENT_NODE}function eV(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Sd(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}var tV=MC,GC=IC,KC=UC,QC=$C,YC=zC,JC=HC,XC=dh;const nV=tV,ZC=m.forwardRef(({className:e,...t},n)=>u.jsx(GC,{ref:n,className:U("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));ZC.displayName=GC.displayName;const rV=gm("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground",success:"border-green-500 bg-green-500 text-white"}},defaultVariants:{variant:"default"}}),eP=m.forwardRef(({className:e,variant:t,...n},r)=>u.jsx(KC,{ref:r,className:U(rV({variant:t}),e),...n}));eP.displayName=KC.displayName;const oV=m.forwardRef(({className:e,...t},n)=>u.jsx(JC,{ref:n,className:U("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...t}));oV.displayName=JC.displayName;const tP=m.forwardRef(({className:e,...t},n)=>u.jsx(XC,{ref:n,className:U("absolute right-2 top-2 rounded-md p-1 text-foreground
401/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:u.jsx(Vi,{className:"h-4 w-4"})}));tP.displayName=XC.displayName;const nP=m.forwardRef(({className:e,...t},n)=>u.jsx(QC,{ref:n,className:U("text-sm font-semibold",e),...t}));nP.displayName=QC.displayName;const rP=m.forwardRef(({className:e,...t},n)=>u.jsx(YC,{ref:n,className:U("text-sm opacity-90",e),...t}));rP.displayName=YC.displayName;function iV(){const{toasts:e}=de();return u.jsxs(nV,{children:[e.map(function({id:t,title:n,description:r,action:o,...i}){return u.jsxs(eP,{...i,children:[u.jsxs("div",{className:"grid gap-1",children:[n&&u.jsx(nP,{children:n}),r&&u.jsx(rP,{children:r})]}),o,u.jsx(tP,{})]},t)}),u.jsx(ZC,{})]})}const sV=new lA({defaultOptions:{queries:{staleTime:1e3*60*5,retry:1,refetchOnWindowFocus:!1}}}),aV=typeof window>"u"?AT:LT;bR(u.jsx(Ce.StrictMode,{children:u.jsx(Nx,{children:u.jsx(cA,{client:sV,children:u.jsx(aV,{children:u.jsx(GO,{defaultTheme:"light",storageKey:"sbschool-theme",children:u.jsxs(M6,{children:[u.jsx(O6,{}),u.jsx(iV,{})]})})})})})}));export{RR as $,Ux as A,we as B,PR as C,Et as D,de as E,DR as F,jR as G,hV as H,LR as I,th as J,nh as K,on as L,ev as M,Mr as N,Zg as O,Bx as P,rh as Q,oh as R,ea as S,ih as T,GR as U,Kx as V,$e as W,Vi as X,nC as Y,rC as Z,oI as _,ER as a,Z2 as a$,xa as a0,HR as a1,Vx as a2,BV as a3,Il as a4,nv as a5,sa as a6,aa as a7,mc as a8,gV as a9,$O as aA,zO as aB,y1 as aC,VO as aD,b1 as aE,w1 as aF,v1 as aG,Ce as aH,iu as aI,fO as aJ,vV as aK,yV as aL,bV as aM,wm as aN,Kc as aO,Hr as aP,li as aQ,pe as aR,L0 as aS,fj as aT,pj as aU,G as aV,Lt as aW,PV as aX,Se as aY,EV as aZ,SV as a_,uv as aa,qm as ab,tI as ac,NR as ad,HV as ae,qV as af,Gr as ag,VR as ah,Wx as ai,z as aj,$L as ak,_R as al,WR as am,kC as an,ue as ao,cV as ap,Di as aq,ji as ar,So as as,We as at,iI as au,ae as av,Pt as aw,gm as ax,pn as ay,UO as az,zx as b,dH as b$,k0 as b0,KD as b1,bm as b2,Nt as b3,L6 as b4,QD as b5,eu as b6,Ne as b7,V0 as b8,d0 as b9,FR as bA,IH as bB,zR as bC,aI as bD,TH as bE,RH as bF,_H as bG,AH as bH,DH as bI,jH as bJ,NH as bK,OH as bL,MH as bM,LH as bN,Hx as bO,Ao as bP,dV as bQ,nH as bR,aH as bS,eH as bT,rH as bU,JV as bV,XV as bW,oH as bX,sH as bY,iH as bZ,lH as b_,_m as ba,ta as bb,xm as bc,Qc as bd,YD as be,fI as bf,JD as bg,_ as bh,GL as bi,zD as bj,pV as bk,TR as bl,UR as bm,yu as bn,MR as bo,Eo as bp,OR as bq,qR as br,x1 as bs,Hm as bt,C1 as bu,P1 as bv,ce as bw,wV as bx,t0 as by,uV as bz,Y as c,uH as c0,cH as c1,yH as c2,bH as c3,xH as c4,SH as c5,wH as c6,CH as c7,EH as c8,kH as c9,PH as ca,fH as cb,hH as cc,pH as cd,mH as ce,BR as cf,KV as cg,QV as ch,WV as ci,GV as cj,YV as ck,tH as cl,ZV as cm,gH as cn,vH as co,xV as cp,AR as d,$x as e,m as f,U as g,Gx as h,pm as i,u as j,tv as k,Lr as l,qx as m,zL as n,VL as o,Ff as p,J as q,wa as r,Uf as s,nr as t,kt as u,CR as v,$R as w,fV as x,Ec as y,ds as z};
402//# sourceMappingURL=app-DQCW1V05.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.