PageSourceSearch

https://bandbi.site/assets/index-DOMSpc8Z.js

js bandbi.site collected 2026-10-03 19:58:20 UTC 498,860 bytes, 113 lines download raw bytes

vendor: 5,495 bytes, lines 1-9
1var E0=Object.defineProperty;var k0=(t,r,a)=>r in t?E0(t,r,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[r]=a;var Zn=(t,r,a)=>k0(t,typeof r!="symbol"?r+"":r,a);(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))s(l);new MutationObserver(l=>{for(const f of l)if(f.type==="childList")for(const d of f.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&s(d)}).observe(document,{childList:!0,subtree:!0});function a(l){const f={};return l.integrity&&(f.integrity=l.integrity),l.referrerPolicy&&(f.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?f.credentials="include":l.crossOrigin==="anonymous"?f.credentials="omit":f.credentials="same-origin",f}function s(l){if(l.ep)return;l.ep=!0;const f=a(l);fetch(l.href,f)}})();function jr(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Wl={exports:{}},ue={};/**
2 * @license React
3 * react.production.min.js
4 *
5 * Copyright (c) Facebook, Inc. and its affiliates.
6 *
7 * This source code is licensed under the MIT license found in the
8 * LICENSE file in the root directory of this source tree.
9 */var Am;function S0(){if(Am)return ue;Am=1;var t=Symbol.for("react.element"),r=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),f=Symbol.for("react.provider"),d=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),g=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),w=Symbol.iterator;function x(N){return N===null||typeof N!="object"?null:(N=w&&N[w]||N["@@iterator"],typeof N=="function"?N:null)}var k={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},S=Object.assign,P={};function I(N,_,le){this.props=N,this.context=_,this.refs=P,this.updater=le||k}I.prototype.isReactComponent={},I.prototype.setState=function(N,_){if(typeof N!="object"&&typeof N!="function"&&N!=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,N,_,"setState")},I.prototype.forceUpdate=function(N){this.updater.enqueueForceUpdate(this,N,"forceUpdate")};function R(){}R.prototype=I.prototype;function D(N,_,le){this.props=N,this.context=_,this.refs=P,this.updater=le||k}var L=D.prototype=new R;L.constructor=D,S(L,I.prototype),L.isPureReactComponent=!0;var $=Array.isArray,j=Object.prototype.hasOwnProperty,G={current:null},ee={key:!0,ref:!0,__self:!0,__source:!0};function Q(N,_,le){var ce,me={},pe=null,Se=null;if(_!=null)for(ce in _.ref!==void 0&&(Se=_.ref),_.key!==void 0&&(pe=""+_.key),_)j.call(_,ce)&&!ee.hasOwnProperty(ce)&&(me[ce]=_[ce]);var xe=arguments.length-2;if(xe===1)me.children=le;else if(1<xe){for(var Pe=Array(xe),vt=0;vt<xe;vt++)Pe[vt]=arguments[vt+2];me.children=Pe}if(N&&N.defaultProps)for(ce in xe=N.defaultProps,xe)me[ce]===void 0&&(me[ce]=xe[ce]);return{$$typeof:t,type:N,key:pe,ref:Se,props:me,_owner:G.current}}function W(N,_){return{$$typeof:t,type:N.type,key:_,ref:N.ref,props:N.props,_owner:N._owner}}function re(N){return typeof N=="object"&&N!==null&&N.$$typeof===t}function de(N){var _={"=":"=0",":":"=2"};return"$"+N.replace(/[=:]/g,function(le){return _[le]})}var He=/\/+/g;function ge(N,_){return typeof N=="object"&&N!==null&&N.key!=null?de(""+N.key):_.toString(36)}function Oe(N,_,le,ce,me){var pe=typeof N;(pe==="undefined"||pe==="boolean")&&(N=null);var Se=!1;if(N===null)Se=!0;else switch(pe){case"string":case"number":Se=!0;break;case"object":switch(N.$$typeof){case t:case r:Se=!0}}if(Se)return Se=N,me=me(Se),N=ce===""?"."+ge(Se,0):ce,$(me)?(le="",N!=null&&(le=N.replace(He,"$&/")+"/"),Oe(me,_,le,"",function(vt){return vt})):me!=null&&(re(me)&&(me=W(me,le+(!me.key||Se&&Se.key===me.key?"":(""+me.key).replace(He,"$&/")+"/")+N)),_.push(me)),1;if(Se=0,ce=ce===""?".":ce+":",$(N))for(var xe=0;xe<N.length;xe++){pe=N[xe];var Pe=ce+ge(pe,xe);Se+=Oe(pe,_,le,Pe,me)}else if(Pe=x(N),typeof Pe=="function")for(N=Pe.call(N),xe=0;!(pe=N.next()).done;)pe=pe.value,Pe=ce+ge(pe,xe++),Se+=Oe(pe,_,le,Pe,me);else if(pe==="object")throw _=String(N),Error("Objects are not valid as a React child (found: "+(_==="[object Object]"?"object with keys {"+Object.keys(N).join(", ")+"}":_)+"). If you meant to render a collection of children, use an array instead.");return Se}function ke(N,_,le){if(N==null)return N;var ce=[],me=0;return Oe(N,ce,"","",function(pe){return _.call(le,pe,me++)}),ce}function ve(N){if(N._status===-1){var _=N._result;_=_(),_.then(function(le){(N._status===0||N._status===-1)&&(N._status=1,N._result=le)},function(le){(N._status===0||N._status===-1)&&(N._status=2,N._result=le)}),N._status===-1&&(N._status=0,N._result=_)}if(N._status===1)return N._result.default;throw N._result}var se={current:null},U={transition:null},J={ReactCurrentDispatcher:se,ReactCurrentBatchConfig:U,ReactCurrentOwner:G};function K(){throw Error("act(...) is not supported in production builds of React.")}return ue.Children={map:ke,forEach:function(N,_,le){ke(N,function(){_.apply(this,arguments)},le)},count:function(N){var _=0;return ke(N,function(){_++}),_},toArray:function(N){return ke(N,function(_){return _})||[]},only:function(N){if(!re(N))throw Error("React.Children.only expected to receive a single React element child.");return N}}
vendor: 6,475 bytes, lines 9-17
9,ue.Component=I,ue.Fragment=a,ue.Profiler=l,ue.PureComponent=D,ue.StrictMode=s,ue.Suspense=p,ue.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=J,ue.act=K,ue.cloneElement=function(N,_,le){if(N==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+N+".");var ce=S({},N.props),me=N.key,pe=N.ref,Se=N._owner;if(_!=null){if(_.ref!==void 0&&(pe=_.ref,Se=G.current),_.key!==void 0&&(me=""+_.key),N.type&&N.type.defaultProps)var xe=N.type.defaultProps;for(Pe in _)j.call(_,Pe)&&!ee.hasOwnProperty(Pe)&&(ce[Pe]=_[Pe]===void 0&&xe!==void 0?xe[Pe]:_[Pe])}var Pe=arguments.length-2;if(Pe===1)ce.children=le;else if(1<Pe){xe=Array(Pe);for(var vt=0;vt<Pe;vt++)xe[vt]=arguments[vt+2];ce.children=xe}return{$$typeof:t,type:N.type,key:me,ref:pe,props:ce,_owner:Se}},ue.createContext=function(N){return N={$$typeof:d,_currentValue:N,_currentValue2:N,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},N.Provider={$$typeof:f,_context:N},N.Consumer=N},ue.createElement=Q,ue.createFactory=function(N){var _=Q.bind(null,N);return _.type=N,_},ue.createRef=function(){return{current:null}},ue.forwardRef=function(N){return{$$typeof:m,render:N}},ue.isValidElement=re,ue.lazy=function(N){return{$$typeof:y,_payload:{_status:-1,_result:N},_init:ve}},ue.memo=function(N,_){return{$$typeof:g,type:N,compare:_===void 0?null:_}},ue.startTransition=function(N){var _=U.transition;U.transition={};try{N()}finally{U.transition=_}},ue.unstable_act=K,ue.useCallback=function(N,_){return se.current.useCallback(N,_)},ue.useContext=function(N){return se.current.useContext(N)},ue.useDebugValue=function(){},ue.useDeferredValue=function(N){return se.current.useDeferredValue(N)},ue.useEffect=function(N,_){return se.current.useEffect(N,_)},ue.useId=function(){return se.current.useId()},ue.useImperativeHandle=function(N,_,le){return se.current.useImperativeHandle(N,_,le)},ue.useInsertionEffect=function(N,_){return se.current.useInsertionEffect(N,_)},ue.useLayoutEffect=function(N,_){return se.current.useLayoutEffect(N,_)},ue.useMemo=function(N,_){return se.current.useMemo(N,_)},ue.useReducer=function(N,_,le){return se.current.useReducer(N,_,le)},ue.useRef=function(N){return se.current.useRef(N)},ue.useState=function(N){return se.current.useState(N)},ue.useSyncExternalStore=function(N,_,le){return se.current.useSyncExternalStore(N,_,le)},ue.useTransition=function(){return se.current.useTransition()},ue.version="18.3.1",ue}var Mm;function zs(){return Mm||(Mm=1,Wl.exports=S0()),Wl.exports}var T=zs();const c=jr(T);var vs={},Hl={exports:{}},ht={},Kl={exports:{}},Gl={};/**
10 * @license React
11 * scheduler.production.min.js
12 *
13 * Copyright (c) Facebook, Inc. and its affiliates.
14 *
15 * This source code is licensed under the MIT license found in the
16 * LICENSE file in the root directory of this source tree.
17 */var Bm;function T0(){return Bm||(Bm=1,function(t){function r(U,J){var K=U.length;U.push(J);e:for(;0<K;){var N=K-1>>>1,_=U[N];if(0<l(_,J))U[N]=J,U[K]=_,K=N;else break e}}function a(U){return U.length===0?null:U[0]}function s(U){if(U.length===0)return null;var J=U[0],K=U.pop();if(K!==J){U[0]=K;e:for(var N=0,_=U.length,le=_>>>1;N<le;){var ce=2*(N+1)-1,me=U[ce],pe=ce+1,Se=U[pe];if(0>l(me,K))pe<_&&0>l(Se,me)?(U[N]=Se,U[pe]=K,N=pe):(U[N]=me,U[ce]=K,N=ce);else if(pe<_&&0>l(Se,K))U[N]=Se,U[pe]=K,N=pe;else break e}}return J}function l(U,J){var K=U.sortIndex-J.sortIndex;return K!==0?K:U.id-J.id}if(typeof performance=="object"&&typeof performance.now=="function"){var f=performance;t.unstable_now=function(){return f.now()}}else{var d=Date,m=d.now();t.unstable_now=function(){return d.now()-m}}var p=[],g=[],y=1,w=null,x=3,k=!1,S=!1,P=!1,I=typeof setTimeout=="function"?setTimeout:null,R=typeof clearTimeout=="function"?clearTimeout:null,D=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function L(U){for(var J=a(g);J!==null;){if(J.callback===null)s(g);else if(J.startTime<=U)s(g),J.sortIndex=J.expirationTime,r(p,J);else break;J=a(g)}}function $(U){if(P=!1,L(U),!S)if(a(p)!==null)S=!0,ve(j);else{var J=a(g);J!==null&&se($,J.startTime-U)}}function j(U,J){S=!1,P&&(P=!1,R(Q),Q=-1),k=!0;var K=x;try{for(L(J),w=a(p);w!==null&&(!(w.expirationTime>J)||U&&!de());){var N=w.callback;if(typeof N=="function"){w.callback=null,x=w.priorityLevel;var _=N(w.expirationTime<=J);J=t.unstable_now(),typeof _=="function"?w.callback=_:w===a(p)&&s(p),L(J)}else s(p);w=a(p)}if(w!==null)var le=!0;else{var ce=a(g);ce!==null&&se($,ce.startTime-J),le=!1}return le}finally{w=null,x=K,k=!1}}var G=!1,ee=null,Q=-1,W=5,re=-1;function de(){return!(t.unstable_now()-re<W)}function He(){if(ee!==null){var U=t.unstable_now();re=U;var J=!0;try{J=ee(!0,U)}finally{J?ge():(G=!1,ee=null)}}else G=!1}var ge;if(typeof D=="function")ge=function(){D(He)};else if(typeof MessageChannel<"u"){var Oe=new MessageChannel,ke=Oe.port2;Oe.port1.onmessage=He,ge=function(){ke.postMessage(null)}}else ge=function(){I(He,0)};function ve(U){ee=U,G||(G=!0,ge())}function se(U,J){Q=I(function(){U(t.unstable_now())},J)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(U){U.callback=null},t.unstable_continueExecution=function(){S||k||(S=!0,ve(j))},t.unstable_forceFrameRate=function(U){0>U||125<U?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):W=0<U?Math.floor(1e3/U):5},t.unstable_getCurrentPriorityLevel=function(){return x},t.unstable_getFirstCallbackNode=function(){return a(p)},t.unstable_next=function(U){switch(x){case 1:case 2:case 3:var J=3;break;default:J=x}var K=x;x=J;try{return U()}finally{x=K}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(U,J){switch(U){case 1:case 2:case 3:case 4:case 5:break;default:U=3}var K=x;x=U;try{return J()}finally{x=K}},t.unstable_scheduleCallback=function(U,J,K){var N=t.unstable_now();switch(typeof K=="object"&&K!==null?(K=K.delay,K=typeof K=="number"&&0<K?N+K:N):K=N,U){case 1:var _=-1;break;case 2:_=250;break;case 5:_=1073741823;break;case 4:_=1e4;break;default:_=5e3}return _=K+_,U={id:y++,callback:J,priorityLevel:U,startTime:K,expirationTime:_,sortIndex:-1},K>
vendor: 4,558 bytes, lines 17-25
17N?(U.sortIndex=K,r(g,U),a(p)===null&&U===a(g)&&(P?(R(Q),Q=-1):P=!0,se($,K-N))):(U.sortIndex=_,r(p,U),S||k||(S=!0,ve(j))),U},t.unstable_shouldYield=de,t.unstable_wrapCallback=function(U){var J=x;return function(){var K=x;x=J;try{return U.apply(this,arguments)}finally{x=K}}}}(Gl)),Gl}var Lm;function C0(){return Lm||(Lm=1,Kl.exports=T0()),Kl.exports}/**
18 * @license React
19 * react-dom.production.min.js
20 *
21 * Copyright (c) Facebook, Inc. and its affiliates.
22 *
23 * This source code is licensed under the MIT license found in the
24 * LICENSE file in the root directory of this source tree.
25 */var Dm;function b0(){if(Dm)return ht;Dm=1;var t=zs(),r=C0();function a(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,i=1;i<arguments.length;i++)n+="&args[]="+encodeURIComponent(arguments[i]);return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var s=new Set,l={};function f(e,n){d(e,n),d(e+"Capture",n)}function d(e,n){for(l[e]=n,e=0;e<n.length;e++)s.add(n[e])}var m=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),p=Object.prototype.hasOwnProperty,g=/^[: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]*$/,y={},w={};function x(e){return p.call(w,e)?!0:p.call(y,e)?!1:g.test(e)?w[e]=!0:(y[e]=!0,!1)}function k(e,n,i,o){if(i!==null&&i.type===0)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return o?!1:i!==null?!i.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function S(e,n,i,o){if(n===null||typeof n>"u"||k(e,n,i,o))return!0;if(o)return!1;if(i!==null)switch(i.type){case 3:return!n;case 4:return n===!1;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}function P(e,n,i,o,u,h,v){this.acceptsBooleans=n===2||n===3||n===4,this.attributeName=o,this.attributeNamespace=u,this.mustUseProperty=i,this.propertyName=e,this.type=n,this.sanitizeURL=h,this.removeEmptyString=v}var I={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){I[e]=new P(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var n=e[0];I[n]=new P(n,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){I[e]=new P(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){I[e]=new P(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){I[e]=new P(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){I[e]=new P(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){I[e]=new P(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){I[e]=new P(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){I[e]=new P(e,5,!1,e.toLowerCase(),null,!1,!1)});var R=/[\-:]([a-z])/g;function D(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
25-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 n=e.replace(R,D);I[n]=new P(n,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var n=e.replace(R,D);I[n]=new P(n,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var n=e.replace(R,D);I[n]=new P(n,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){I[e]=new P(e,1,!1,e.toLowerCase(),null,!1,!1)}),I.xlinkHref=new P("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){I[e]=new P(e,1,!1,e.toLowerCase(),null,!0,!0)});function L(e,n,i,o){var u=I.hasOwnProperty(n)?I[n]:null;(u!==null?u.type!==0:o||!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")&&(S(n,i,u,o)&&(i=null),o||u===null?x(n)&&(i===null?e.removeAttribute(n):e.setAttribute(n,""+i)):u.mustUseProperty?e[u.propertyName]=i===null?u.type===3?!1:"":i:(n=u.attributeName,o=u.attributeNamespace,i===null?e.removeAttribute(n):(u=u.type,i=u===3||u===4&&i===!0?"":""+i,o?e.setAttributeNS(o,n,i):e.setAttribute(n,i))))}var $=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,j=Symbol.for("react.element"),G=Symbol.for("react.portal"),ee=Symbol.for("react.fragment"),Q=Symbol.for("react.strict_mode"),W=Symbol.for("react.profiler"),re=Symbol.for("react.provider"),de=Symbol.for("react.context"),He=Symbol.for("react.forward_ref"),ge=Symbol.for("react.suspense"),Oe=Symbol.for("react.suspense_list"),ke=Symbol.for("react.memo"),ve=Symbol.for("react.lazy"),se=Symbol.for("react.offscreen"),U=Symbol.iterator;function J(e){return e===null||typeof e!="object"?null:(e=U&&e[U]||e["@@iterator"],typeof e=="function"?e:null)}var K=Object.assign,N;function _(e){if(N===void 0)try{throw Error()}catch(i){var n=i.stack.trim().match(/\n( *(at )?)/);N=n&&n[1]||""}return`
26`+N+e}var le=!1;function ce(e,n){if(!e||le)return"";le=!0;var i=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(n)if(n=function(){throw Error()},Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(n,[])}catch(B){var o=B}Reflect.construct(e,[],n)}
vendor: 6,812 bytes, lines 26-29
26else{try{n.call()}catch(B){o=B}e.call(n.prototype)}else{try{throw Error()}catch(B){o=B}e()}}catch(B){if(B&&o&&typeof B.stack=="string"){for(var u=B.stack.split(`
27`),h=o.stack.split(`
28`),v=u.length-1,E=h.length-1;1<=v&&0<=E&&u[v]!==h[E];)E--;for(;1<=v&&0<=E;v--,E--)if(u[v]!==h[E]){if(v!==1||E!==1)do if(v--,E--,0>E||u[v]!==h[E]){var C=`
29`+u[v].replace(" at new "," at ");return e.displayName&&C.includes("<anonymous>")&&(C=C.replace("<anonymous>",e.displayName)),C}while(1<=v&&0<=E);break}}}finally{le=!1,Error.prepareStackTrace=i}return(e=e?e.displayName||e.name:"")?_(e):""}function me(e){switch(e.tag){case 5:return _(e.type);case 16:return _("Lazy");case 13:return _("Suspense");case 19:return _("SuspenseList");case 0:case 2:case 15:return e=ce(e.type,!1),e;case 11:return e=ce(e.type.render,!1),e;case 1:return e=ce(e.type,!0),e;default:return""}}function pe(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 ee:return"Fragment";case G:return"Portal";case W:return"Profiler";case Q:return"StrictMode";case ge:return"Suspense";case Oe:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case de:return(e.displayName||"Context")+".Consumer";case re:return(e._context.displayName||"Context")+".Provider";case He:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ke:return n=e.displayName||null,n!==null?n:pe(e.type)||"Memo";case ve:n=e._payload,e=e._init;try{return pe(e(n))}catch{}}return null}function Se(e){var n=e.type;switch(e.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=n.render,e=e.displayName||e.name||"",n.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return pe(n);case 8:return n===Q?"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 n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n}return null}function xe(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Pe(e){var n=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function vt(e){var n=Pe(e)?"checked":"value",i=Object.getOwnPropertyDescriptor(e.constructor.prototype,n),o=""+e[n];if(!e.hasOwnProperty(n)&&typeof i<"u"&&typeof i.get=="function"&&typeof i.set=="function"){var u=i.get,h=i.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return u.call(this)},set:function(v){o=""+v,h.call(this,v)}}),Object.defineProperty(e,n,{enumerable:i.enumerable}),{getValue:function(){return o},setValue:function(v){o=""+v},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}function la(e){e._valueTracker||(e._valueTracker=vt(e))}function Oc(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var i=n.getValue(),o="";return e&&(o=Pe(e)?e.checked?"true":"false":e.value),e=o,e!==i?(n.setValue(e),!0):!1}function ua(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 Qs(e,n){var i=n.checked;return K({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:i??e._wrapperState.initialChecked})}function _c(e,n){var i=n.defaultValue==null?"":n.defaultValue,o=n.checked!=null?n.checked:n.defaultChecked;i=xe(n.value!=null?n.value:i),e._wrapperState={initialChecked:o,initialValue:i,controlled:n.type==="checkbox"||n.type==="radio"?n.checked!=null:n.value!=null}}function Fc(e,n){n=n.checked,n!=null&&L(e,"checked",n,!1)}function Xs(e,n){Fc(e,n);var i=xe(n.value),o=n.type;if(i!=null)o==="number"?(i===0&&e.value===""||e.value!=i)&&(e.value=""+i):e.value!==""+i&&(e.value=""+i);else if(o==="submit"||o==="reset"){e.removeAttribute("value");return}n.hasOwnProperty("value")?Zs(e,n.type,i):n.hasOwnProperty("defaultValue")&&Zs(e,n.type,xe(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(e.defaultChecked=!!n.defaultChecked)}function Vc(e,n,i){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var o=n.type;if(!(o!=="submit"&&o!=="reset"||n.value!==void 0&&n.value!==null))return;n=""+e._wrapperState.initialValue,i||n===e.value||(e.value=n),e.defaultValue=n}i=e.name,i!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,i!==""&&(e.name=i)}function Zs(e,n,i){(n!=="number"||ua(e.ownerDocument)!==e)&&(i==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+i&&(e.defaultValue=""+i))}var Gr=Array.isArray;function sr(e,n,i,o){if(e=e.options,n){n={};for(var u=0;u<i.length;u++)n["$"+i[u]]=!0;for(i=0;i<e.length;i++)u=n.hasOwnProperty("$"+e[i].value),e[i].selected!==u&&(e[i].selected=u),u&&o&&(e[i].defaultSelected=!0)}else{for(i=""+xe(i),n=null,u=0;u<e.length;u++){if(e[u].value===i){e[u].selected=!0,o&&(e[u].defaultSelected=!0);return}n!==null||e[u].disabled||(n=e[u])}n!==null&&(n.selected=!0)}}function Js(e,n){if(n.dangerouslySetInnerHTML!=null)throw Error(a(91));return K({},n,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function jc(e,n){var i=n.value;if(i==null){if(i=n.children,n=n.defaultValue,i!=null){if(n!=null)throw Error(a(92));if(Gr(i)){if(1<i.length)throw Error(a(93));i=i[0]}n=i}n==null&&(n=""),i=n}e._wrapperState={initialValue:xe(i)}}function $c(e,n){var i=xe(n.value),o=xe(n.defaultValue);i!=null&&(i=""+i,i!==e.value&&(e.value=i),n.defaultValue==null&&e.defaultValue!==i&&(e.defaultValue=i)),o!=null&&(e.defaultValue=""+o)}function zc(e){var n=e.textContent;n===e._wrapperState.initialValue&&n!==""&&n!==null&&(e.value=n)}function Uc(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 eo(e,n){return e==null||e==="http://www.w3.org/1999/xhtml"?Uc(n):e==="http://www.w3.org/2000/svg"&&n==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var ca,Wc=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(n,i,o,u){MSApp.execUnsafeLocalFunction(function(){return e(n,i,o,u)})}:e}(function(e,n){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=n;else{for(ca=ca||document.createElement("div"),ca.innerHTML="<svg>"+n.valueOf().toString()+"</svg>",n=ca.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;n.firstChild;)e.appendChild(n.firstChild)}});function Yr(e,n){if(n){var i=e.firstChild;
vendor: 34,182 bytes, lines 29-30
29if(i&&i===e.lastChild&&i.nodeType===3){i.nodeValue=n;return}}e.textContent=n}var qr={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},Cy=["Webkit","ms","Moz","O"];Object.keys(qr).forEach(function(e){Cy.forEach(function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1),qr[n]=qr[e]})});function Hc(e,n,i){return n==null||typeof n=="boolean"||n===""?"":i||typeof n!="number"||n===0||qr.hasOwnProperty(e)&&qr[e]?(""+n).trim():n+"px"}function Kc(e,n){e=e.style;for(var i in n)if(n.hasOwnProperty(i)){var o=i.indexOf("--")===0,u=Hc(i,n[i],o);i==="float"&&(i="cssFloat"),o?e.setProperty(i,u):e[i]=u}}var by=K({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 to(e,n){if(n){if(by[e]&&(n.children!=null||n.dangerouslySetInnerHTML!=null))throw Error(a(137,e));if(n.dangerouslySetInnerHTML!=null){if(n.children!=null)throw Error(a(60));if(typeof n.dangerouslySetInnerHTML!="object"||!("__html"in n.dangerouslySetInnerHTML))throw Error(a(61))}if(n.style!=null&&typeof n.style!="object")throw Error(a(62))}}function no(e,n){if(e.indexOf("-")===-1)return typeof n.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var ro=null;function io(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ao=null,or=null,lr=null;function Gc(e){if(e=yi(e)){if(typeof ao!="function")throw Error(a(280));var n=e.stateNode;n&&(n=Ba(n),ao(e.stateNode,e.type,n))}}function Yc(e){or?lr?lr.push(e):lr=[e]:or=e}function qc(){if(or){var e=or,n=lr;if(lr=or=null,Gc(e),n)for(e=0;e<n.length;e++)Gc(n[e])}}function Qc(e,n){return e(n)}function Xc(){}var so=!1;function Zc(e,n,i){if(so)return e(n,i);so=!0;try{return Qc(e,n,i)}finally{so=!1,(or!==null||lr!==null)&&(Xc(),qc())}}function Qr(e,n){var i=e.stateNode;if(i===null)return null;var o=Ba(i);if(o===null)return null;i=o[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(o=!o.disabled)||(e=e.type,o=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!o;break e;default:e=!1}if(e)return null;if(i&&typeof i!="function")throw Error(a(231,n,typeof i));return i}var oo=!1;if(m)try{var Xr={};Object.defineProperty(Xr,"passive",{get:function(){oo=!0}}),window.addEventListener("test",Xr,Xr),window.removeEventListener("test",Xr,Xr)}catch{oo=!1}function Py(e,n,i,o,u,h,v,E,C){var B=Array.prototype.slice.call(arguments,3);try{n.apply(i,B)}catch(F){this.onError(F)}}var Zr=!1,fa=null,da=!1,lo=null,Ry={onError:function(e){Zr=!0,fa=e}};function Ny(e,n,i,o,u,h,v,E,C){Zr=!1,fa=null,Py.apply(Ry,arguments)}function Iy(e,n,i,o,u,h,v,E,C){if(Ny.apply(this,arguments),Zr){if(Zr){var B=fa;Zr=!1,fa=null}else throw Error(a(198));da||(da=!0,lo=B)}}function Vn(e){var n=e,i=e;if(e.alternate)for(;n.return;)n=n.return;else{e=n;do n=e,(n.flags&4098)!==0&&(i=n.return),e=n.return;while(e)}return n.tag===3?i:null}function Jc(e){if(e.tag===13){var n=e.memoizedState;if(n===null&&(e=e.alternate,e!==null&&(n=e.memoizedState)),n!==null)return n.dehydrated}return null}function ef(e){if(Vn(e)!==e)throw Error(a(188))}function Ay(e){var n=e.alternate;if(!n){if(n=Vn(e),n===null)throw Error(a(188));return n!==e?null:e}for(var i=e,o=n;;){var u=i.return;if(u===null)break;var h=u.alternate;if(h===null){if(o=u.return,o!==null){i=o;continue}break}if(u.child===h.child){for(h=u.child;h;){if(h===i)return ef(u),e;if(h===o)return ef(u),n;h=h.sibling}throw Error(a(188))}if(i.return!==o.return)i=u,o=h;else{for(var v=!1,E=u.child;E;){if(E===i){v=!0,i=u,o=h;break}if(E===o){v=!0,o=u,i=h;break}E=E.sibling}if(!v){for(E=h.child;E;){if(E===i){v=!0,i=h,o=u;break}if(E===o){v=!0,o=h,i=u;break}E=E.sibling}if(!v)throw Error(a(189))}}if(i.alternate!==o)throw Error(a(190))}if(i.tag!==3)throw Error(a(188));return i.stateNode.current===i?e:n}function tf(e){return e=Ay(e),e!==null?nf(e):null}function nf(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var n=nf(e);if(n!==null)return n;e=e.sibling}return null}var rf=r.unstable_scheduleCallback,af=r.unstable_cancelCallback,My=r.unstable_shouldYield,By=r.unstable_requestPaint,Ve=r.unstable_now,Ly=r.unstable_getCurrentPriorityLevel,uo=r.unstable_ImmediatePriority,sf=r.unstable_UserBlockingPriority,ma=r.unstable_NormalPriority,Dy=r.unstable_LowPriority,of=r.unstable_IdlePriority,pa=null,Kt=null;function Oy(e){if(Kt&&typeof Kt.onCommitFiberRoot=="function")try{Kt.onCommitFiberRoot(pa,e,void 0,(e.current.flags&128)===128)}catch{}}var Bt=Math.clz32?Math.clz32:Vy,_y=Math.log,Fy=Math.LN2;function Vy(e){return e>>>=0,e===0?32:31-(_y(e)/Fy|0)|0}var ha=64,ga=4194304;function Jr(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 ya(e,n){var i=e.pendingLanes;if(i===0)return 0;var o=0,u=e.suspendedLanes,h=e.pingedLanes,v=i&268435455;if(v!==0){var E=v&~u;E!==0?o=Jr(E):(h&=v,h!==0&&(o=Jr(h)))}else v=i&~u,v!==0?o=Jr(v):h!==0&&(o=Jr(h));if(o===0)return 0;if(n!==0&&n!==o&&(n&u)===0&&(u=o&-o,h=n&-n,u>=h||u===16&&(h&4194240)!==0))return n;if((o&4)!==0&&(o|=i&16),n=e.entangledLanes,n!==0)for(e=e.entanglements,n&=o;0<n;)i=31-Bt(n),u=1<<i,o|=e[i],n&=~u;return o}function jy(e,n){switch(e){case 1:case 2:case 4:return n+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 n+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 $y(e,n){for(var i=e.suspendedLanes,o=e.pingedLanes,u=e.expirationTimes,h=e.pendingLanes;0<h;){var v=31-Bt(h),E=1<<v,C=u[v];C===-1?((E&i)===0||(E&o)!==0)&&(u[v]=jy(E,n)):C<=n&&(e.expiredLanes|=E),h&=~E}}function co(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function lf(){var e=ha;return ha<<=1,(ha&4194240)===0&&(ha=64),e}function fo(e){for(var n=[],i=0;31>i;i++)n.push(e);return n}function ei(e,n,i){e.pendingLanes|=n,n!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,n=31-Bt(n),e[n]=i}function zy(e,n){var i=e.pendingLanes&~n;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=n,e.mutableReadLanes&=n,e.entangledLanes&=n,n=e.entanglements;var o=e.eventTimes;for(e=e.expirationTimes;0<i;){var u=31-Bt(i),h=1<<u;n[u]=0,o[u]=-1,e[u]=-1,i&=~h}}function mo(e,n){var i=e.entangledLanes|=n;for(e=e.entanglements;i;){var o=31-Bt(i),u=1<<o;u&n|e[o]&n&&(e[o]|=n),i&=~u}}var Ee=0;function uf(e){return e&=-e,1<e?4<e?(e&268435455)!==0?16:536870912:4:1}var cf,po,ff,df,mf,ho=!1,va=[],gn=null,yn=null,vn=null,ti=new Map,ni=new Map,wn=[],Uy="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 pf(e,n){switch(e){case"focusin":case"focusout":gn=null;break;case"dragenter":case"dragleave":yn=null;break;case"mouseover":case"mouseout":vn=null;break;case"pointerover":case"pointerout":ti.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":ni.delete(n.pointerId)}}function ri(e,n,i,o,u,h){return e===null||e.nativeEvent!==h?(e={blockedOn:n,domEventName:i,eventSystemFlags:o,nativeEvent:h,targetContainers:[u]},n!==null&&(n=yi(n),n!==null&&po(n)),e):(e.eventSystemFlags|=o,n=e.targetContainers,u!==null&&n.indexOf(u)===-1&&n.push(u),e)}function Wy(e,n,i,o,u){switch(n){case"focusin":return gn=ri(gn,e,n,i,o,u),!0;case"dragenter":return yn=ri(yn,e,n,i,o,u),!0;case"mouseover":return vn=ri(vn,e,n,i,o,u),!0;case"pointerover":var h=u.pointerId;return ti.set(h,ri(ti.get(h)||null,e,n,i,o,u)),!0;case"gotpointercapture":return h=u.pointerId,ni.set(h,ri(ni.get(h)||null,e,n,i,o,u)),!0}return!1}function hf(e){var n=jn(e.target);if(n!==null){var i=Vn(n);if(i!==null){if(n=i.tag,n===13){if(n=Jc(i),n!==null){e.blockedOn=n,mf(e.priority,function(){ff(i)});return}}else if(n===3&&i.stateNode.current.memoizedState.isDehydrated){e.blockedOn=i.tag===3?i.stateNode.containerInfo:null;return}}}e.blockedOn=null}function wa(e){if(e.blockedOn!==null)return!1;for(var n=e.targetContainers;0<n.length;){var i=yo(e.domEventName,e.eventSystemFlags,n[0],e.nativeEvent);if(i===null){i=e.nativeEvent;var o=new i.constructor(i.type,i);ro=o,i.target.dispatchEvent(o),ro=null}else return n=yi(i),n!==null&&po(n),e.blockedOn=i,!1;n.shift()}return!0}function gf(e,n,i){wa(e)&&i.delete(n)}function Hy(){ho=!1,gn!==null&&wa(gn)&&(gn=null),yn!==null&&wa(yn)&&(yn=null),vn!==null&&wa(vn)&&(vn=null),ti.forEach(gf),ni.forEach(gf)}function ii(e,n){e.blockedOn===n&&(e.blockedOn=null,ho||(ho=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,Hy)))}function ai(e){function n(u){return ii(u,e)}if(0<va.length){ii(va[0],e);for(var i=1;i<va.length;i++){var o=va[i];o.blockedOn===e&&(o.blockedOn=null)}}for(gn!==null&&ii(gn,e),yn!==null&&ii(yn,e),vn!==null&&ii(vn,e),ti.forEach(n),ni.forEach(n),i=0;i<wn.length;i++)o=wn[i],o.blockedOn===e&&(o.blockedOn=null);for(;0<wn.length&&(i=wn[0],i.blockedOn===null);)hf(i),i.blockedOn===null&&wn.shift()}var ur=$.ReactCurrentBatchConfig,xa=!0;function Ky(e,n,i,o){var u=Ee,h=ur.transition;ur.transition=null;try{Ee=1,go(e,n,i,o)}finally{Ee=u,ur.transition=h}}function Gy(e,n,i,o){var u=Ee,h=ur.transition;ur.transition=null;try{Ee=4,go(e,n,i,o)}finally{Ee=u,ur.transition=h}}function go(e,n,i,o){if(xa){var u=yo(e,n,i,o);if(u===null)Lo(e,n,o,Ea,i),pf(e,o);else if(Wy(u,e,n,i,o))o.stopPropagation();else if(pf(e,o),n&4&&-1<Uy.indexOf(e)){for(;u!==null;){var h=yi(u);if(h!==null&&cf(h),h=yo(e,n,i,o),h===null&&Lo(e,n,o,Ea,i),h===u)break;u=h}u!==null&&o.stopPropagation()}else Lo(e,n,o,null,i)}}var Ea=null;function yo(e,n,i,o){if(Ea=null,e=io(o),e=jn(e),e!==null)if(n=Vn(e),n===null)e=null;else if(i=n.tag,i===13){if(e=Jc(n),e!==null)return e;e=null}else if(i===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;e=null}else n!==e&&(e=null);return Ea=e,null}function yf(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(Ly()){case uo:return 1;case sf:return 4;case ma:case Dy:return 16;case of:return 536870912;default:return 16}default:return 16}}var xn=null,vo=null,ka=null;function vf(){if(ka)return ka;var e,n=vo,i=n.length,o,u="value"in xn?xn.value:xn.textContent,h=u.length;for(e=0;e<i&&n[e]===u[e];e++);var v=i-e;for(o=1;o<=v&&n[i-o]===u[h-o];o++);return ka=u.slice(e,1<o?1-o:void 0)}function Sa(e){var n=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&n===13&&(e=13)):e=n,e===10&&(e=13),32<=e||e===13?e:0}function Ta(){return!0}function wf(){return!1}function wt(e){function n(i,o,u,h,v){this._reactName=i,this._targetInst=u,this.type=o,this.nativeEvent=h,this.target=v,this.currentTarget=null;for(var E in e)e.hasOwnProperty(E)&&(i=e[E],this[E]=i?i(h):h[E]);return this.isDefaultPrevented=(h.defaultPrevented!=null?h.defaultPrevented:h.returnValue===!1)?Ta:wf,this.isPropagationStopped=wf,this}return K(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var i=this.nativeEvent;i&&(i.preventDefault?i.preventDefault():typeof i.returnValue!="unknown"&&(i.returnValue=!1),this.isDefaultPrevented=Ta)},stopPropagation:function(){var i=this.nativeEvent;i&&(i.stopPropagation?i.stopPropagation():typeof i.cancelBubble!="unknown"&&(i.cancelBubble=!0),this.isPropagationStopped=Ta)},persist:function(){},isPersistent:Ta}),n}var cr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},wo=wt(cr),si=K({},cr,{view:0,detail:0}),Yy=wt(si),xo,Eo,oi,Ca=K({},si,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:So,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!==oi&&(oi&&e.type==="mousemove"?(xo=e.screenX-oi.screenX,Eo=e.screenY-oi.screenY):Eo=xo=0,oi=e),xo)},movementY:function(e){return"movementY"in e?e.movementY:Eo}}),xf=wt(Ca),qy=K({},Ca,{dataTransfer:0}),Qy=wt(qy),Xy=K({},si,{relatedTarget:0}),ko=wt(Xy),Zy=K({},cr,{animationName:0,elapsedTime:0,pseudoElement:0}),Jy=wt(Zy),ev=K({},cr,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),tv=wt(ev),nv=K({},cr,{data:0}),Ef=wt(nv),rv={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},iv={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"},av={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function sv(e){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(e):(e=av[e])?!!n[e]:!1}function So(){return sv}var ov=K({},si,{key:function(e){if(e.key){var n=rv[e.key]||e.key;if(n!=="Unidentified")return n}return e.type==="keypress"?(e=Sa(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?iv[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:So,charCode:function(e){return e.type==="keypress"?Sa(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Sa(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),lv=wt(ov),uv=K({},Ca,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),kf=wt(uv),cv=K({},si,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:So}),fv=wt(cv),dv=K({},cr,{propertyName:0,elapsedTime:0,pseudoElement:0}),mv=wt(dv),pv=K({},Ca,{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}),hv=wt(pv),gv=[9,13,27,32],To=m&&"CompositionEvent"in window,li=null;m&&"documentMode"in document&&(li=document.documentMode);var yv=m&&"TextEvent"in window&&!li,Sf=m&&(!To||li&&8<li&&11>=li),Tf=" ",Cf=!1;function bf(e,n){switch(e){case"keyup":return gv.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Pf(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var fr=!1;function vv(e,n){switch(e){case"compositionend":return Pf(n);case"keypress":return n.which!==32?null:(Cf=!0,Tf);case"textInput":return e=n.data,e===Tf&&Cf?null:e;default:return null}}function wv(e,n){if(fr)return e==="compositionend"||!To&&bf(e,n)?(e=vf(),ka=vo=xn=null,fr=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return Sf&&n.locale!=="ko"?null:n.data;default:return null}}var xv={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 Rf(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n==="input"?!!xv[e.type]:n==="textarea"}function Nf(e,n,i,o){Yc(o),n=Ia(n,"onChange"),0<n.length&&(i=new wo("onChange","change",null,i,o),e.push({event:i,listeners:n}))}var ui=null,ci=null;function Ev(e){Gf(e,0)}function ba(e){var n=gr(e);if(Oc(n))return e}function kv(e,n){if(e==="change")return n}var If=!1;if(m){var Co;if(m){var bo="oninput"in document;if(!bo){var Af=document.createElement("div");Af.setAttribute("oninput","return;"),bo=typeof Af.oninput=="function"}Co=bo}else Co=!1;If=Co&&(!document.documentMode||9<document.documentMode)}function Mf(){ui&&(ui.detachEvent("onpropertychange",Bf),ci=ui=null)}function Bf(e){if(e.propertyName==="value"&&ba(ci)){var n=[];Nf(n,ci,e,io(e)),Zc(Ev,n)}}function Sv(e,n,i){e==="focusin"?(Mf(),ui=n,ci=i,ui.attachEvent("onpropertychange",Bf)):e==="focusout"&&Mf()}function Tv(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return ba(ci)}function Cv(e,n){if(e==="click")return ba(n)}function bv(e,n){if(e==="input"||e==="change")return ba(n)}function Pv(e,n){return e===n&&(e!==0||1/e===1/n)||e!==e&&n!==n}var Lt=typeof Object.is=="function"?Object.is:Pv;function fi(e,n){if(Lt(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;var i=Object.keys(e),o=Object.keys(n);if(i.length!==o.length)return!1;for(o=0;o<i.length;o++){var u=i[o];if(!p.call(n,u)||!Lt(e[u],n[u]))return!1}return!0}function Lf(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Df(e,n){var i=Lf(e);e=0;for(var o;i;){if(i.nodeType===3){if(o=e+i.textContent.length,e<=n&&o>=n)return{node:i,offset:n-e};e=o}e:{for(;i;){if(i.nextSibling){i=i.nextSibling;break e}i=i.parentNode}i=void 0}i=Lf(i)}}function Of(e,n){return e&&n?e===n?!0:e&&e.nodeType===3?!1:n&&n.nodeType===3?Of(e,n.parentNode):"contains"in e?e.contains(n):e.compareDocumentPosition?!!(e.compareDocumentPosition(n)&16):!1:!1}function _f(){for(var e=window,n=ua();n instanceof e.HTMLIFrameElement;){try{var i=typeof n.contentWindow.location.href=="string"}catch{i=!1}if(i)e=n.contentWindow;else break;n=ua(e.document)}return n}function Po(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n&&(n==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||n==="textarea"||e.contentEditable==="true")}function Rv(e){var n=_f(),i=e.focusedElem,o=e.selectionRange;if(n!==i&&i&&i.ownerDocument&&Of(i.ownerDocument.documentElement,i)){if(o!==null&&Po(i)){if(n=o.start,e=o.end,e===void 0&&(e=n),"selectionStart"in i)i.selectionStart=n,i.selectionEnd=Math.min(e,i.value.length);else if(e=(n=i.ownerDocument||document)&&n.defaultView||window,e.getSelection){e=e.getSelection();var u=i.textContent.length,h=Math.min(o.start,u);o=o.end===void 0?h:Math.min(o.end,u),!e.extend&&h>o&&(u=o,o=h,h=u),u=Df(i,h);var v=Df(i,o);u&&v&&(e.rangeCount!==1||e.anchorNode!==u.node||e.anchorOffset!==u.offset||e.focusNode!==v.node||e.focusOffset!==v.offset)&&(n=n.createRange(),n.setStart(u.node,u.offset),e.removeAllRanges(),h>o?(e.addRange(n),e.extend(v.node,v.offset)):(n.setEnd(v.node,v.offset),e.addRange(n)))}}for(n=[],e=i;e=e.parentNode;)e.nodeType===1&&n.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof i.focus=="function"&&i.focus(),i=0;i<n.length;i++)e=n[i],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var Nv=m&&"documentMode"in document&&11>=document.documentMode,dr=null,Ro=null,di=null,No=!1;function Ff(e,n,i){var o=i.window===i?i.document:i.nodeType===9?i:i.ownerDocument;No||dr==null||dr!==ua(o)||(o=dr,"selectionStart"in o&&Po(o)?o={start:o.selectionStart,end:o.selectionEnd}:(o=(o.ownerDocument&&o.ownerDocument.defaultView||window).getSelection(),o={anchorNode:o.anchorNode,anchorOffset:o.anchorOffset,focusNode:o.focusNode,focusOffset:o.focusOffset}),di&&fi(di,o)||(di=o,o=Ia(Ro,"onSelect"),0<o.length&&(n=new wo("onSelect","select",null,n,i),e.push({event:n,listeners:o}),n.target=dr)))}function Pa(e,n){var i={};return i[e.toLowerCase()]=n.toLowerCase(),i["Webkit"+e]="webkit"+n,i["Moz"+e]="moz"+n,i}var mr={animationend:Pa("Animation","AnimationEnd"),animationiteration:Pa("Animation","AnimationIteration"),animationstart:Pa("Animation","AnimationStart"),transitionend:Pa("Transition","TransitionEnd")},Io={},Vf={};m&&(Vf=document.createElement("div").style,"AnimationEvent"in window||(delete mr.animationend.animation,delete mr.animationiteration.animation,delete mr.animationstart.animation),"TransitionEvent"in window||delete mr.transitionend.transition);function Ra(e){if(Io[e])return Io[e];if(!mr[e])return e;var n=mr[e],i;for(i in n)if(n.hasOwnProperty(i)&&i in Vf)return Io[e]=n[i];return e}var jf=Ra("animationend"),$f=Ra("animationiteration"),zf=Ra("animationstart"),Uf=Ra("transitionend"),Wf=new Map,Hf="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 En(e,n){Wf.set(e,n),f(n,[e])}for(var Ao=0;Ao<Hf.length;Ao++){var Mo=Hf[Ao],Iv=Mo.toLowerCase(),Av=Mo[0].toUpperCase()+Mo.slice(1);En(Iv,"on"+Av)}En(jf,"onAnimationEnd"),En($f,"onAnimationIteration"),En(zf,"onAnimationStart"),En("dblclick","onDoubleClick"),En("focusin","onFocus"),En("focusout","onBlur"),En(Uf,"onTransitionEnd"),d("onMouseEnter",["mouseout","mouseover"]),d("onMouseLeave",["mouseout","mouseover"]),d("onPointerEnter",["pointerout","pointerover"]),d("onPointerLeave",["pointerout","pointerover"]),f("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),f("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),f("onBeforeInput",["compositionend","keypress","textInput","paste"]),f("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),f("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),f("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var mi="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(" "),Mv=new Set("cancel close invalid load scroll toggle".split(" ").concat(mi));function Kf(e,n,i){var o=e.type||"unknown-event";e.currentTarget=i,Iy(o,n,void 0,e),e.currentTarget=null}function Gf(e,n){n=(n&4)!==0;for(var i=0;i<e.length;i++){var o=e[i],u=o.event;o=o.listeners;e:{var h=void 0;if(n)for(var v=o.length-1;0<=v;v--){var E=o[v],C=E.instance,B=E.currentTarget;if(E=E.listener,C!==h&&u.isPropagationStopped())break e;Kf(u,E,B),h=C}else for(v=0;v<o.length;v++){if(E=o[v],C=E.instance,B=E.currentTarget,E=E.listener,C!==h&&u.isPropagationStopped())break e;Kf(u,E,B),h=C}}}if(da)throw e=lo,da=!1,lo=null,e}function Ce(e,n){var i=n[jo];i===void 0&&(i=n[jo]=new Set);var o=e+"__bubble";i.has(o)||(Yf(n,e,2,!1),i.add(o))}function Bo(e,n,i){var o=0;n&&(o|=4),Yf(i,e,o,n)}var Na="_reactListening"+Math.random().toString(36).slice(2);function pi(e){if(!e[Na]){e[Na]=!0,s.forEach(function(i){i!=="selectionchange"&&(Mv.has(i)||Bo(i,!1,e),Bo(i,!0,e))});var n=e.nodeType===9?e:e.ownerDocument;n===null||n[Na]||(n[Na]=!0,Bo("selectionchange",!1,n))}}function Yf(e,n,i,o){switch(yf(n)){case 1:var u=Ky;break;case 4:u=Gy;break;default:u=go}i=u.bind(null,n,i,e),u=void 0,!oo||n!=="touchstart"&&n!=="touchmove"&&n!=="wheel"||(u=!0),o?u!==void 0?e.addEventListener(n,i,{capture:!0,passive:u}):e.addEventListener(n,i,!0):u!==void 0?e.addEventListener(n,i,{passive:u}):e.addEventListener(n,i,!1)}function Lo(e,n,i,o,u){var h=o;if((n&1)===0&&(n&2)===0&&o!==null)e:for(;;){if(o===null)return;var v=o.tag;if(v===3||v===4){var E=o.stateNode.containerInfo;if(E===u||E.nodeType===8&&E.parentNode===u)break;if(v===4)for(v=o.return;v!==null;){var C=v.tag;if((C===3||C===4)&&(C=v.stateNode.containerInfo,C===u||C.nodeType===8&&C.parentNode===u))return;v=v.return}for(;E!==null;){if(v=jn(E),v===null)return;if(C=v.tag,C===5||C===6){o=h=v;continue e}E=E.parentNode}}o=o.return}Zc(function(){var B=h,F=io(i),V=[];e:{var O=Wf.get(e);if(O!==void 0){var H=wo,q=e;switch(e){case"keypress":if(Sa(i)===0)break e;case"keydown":case"keyup":H=lv;break;case"focusin":q="focus",H=ko;break;case"focusout":q="blur",H=ko;break;case"beforeblur":case"afterblur":H=ko;break;case"click":if(i.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":H=xf;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":H=Qy;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":H=fv;break;case jf:case $f:case zf:H=Jy;break;case Uf:H=mv;break;case"scroll":H=Yy;break;case"wheel":H=hv;break;case"copy":case"cut":case"paste":H=tv;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":H=kf}var X=(n&4)!==0,je=!X&&e==="scroll",A=X?O!==null?O+"Capture":null:O;X=[];for(var b=B,M;b!==null;){M=b;var z=M.stateNode;if(M.tag===5&&z!==null&&(M=z,A!==null&&(z=Qr(b,A),z!=null&&X.push(hi(b,z,M)))),je)break;b=b.return}0<X.length&&(O=new H(O,q,null,i,F),V.push({event:O,listeners:X}))}}if((n&7)===0){e:{if(O=e==="mouseover"||e==="pointerover",H=e==="mouseout"||e==="pointerout",O&&i!==ro&&(q=i.relatedTarget||i.fromElement)&&(jn(q)||q[tn]))break e;if((H||O)&&(O=F.window===F?F:(O=F.ownerDocument)?O.defaultView||O.parentWindow:window,H?(q=i.relatedTarget||i.toElement,H=B,q=q?jn(q):null,q!==null&&(je=Vn(q),q!==je||q.tag!==5&&q.tag!==6)&&(q=null)):(H=null,q=B),H!==q)){if(X=xf,z="onMouseLeave",A="onMouseEnter",b="mouse",(e==="pointerout"||e==="pointerover")&&(X=kf,z="onPointerLeave",A="onPointerEnter",b="pointer"),je=H==null?O:gr(H),M=q==null?O:gr(q),O=new X(z,b+"leave",H,i,F),O.target=je,O.relatedTarget=M,z=null,jn(F)===B&&(X=new X(A,b+"enter",q,i,F),X.target=M,X.relatedTarget=je,z=X),je=z,H&&q)t:{for(X=H,A=q,b=0,M=X;M;M=pr(M))b++;for(M=0,z=A;z;z=pr(z))M++;for(;0<b-M;)X=pr(X),b--;for(;0<M-b;)A=pr(A),M--;for(;b--;){if(X===A||A!==null&&X===A.alternate)break t;X=pr(X),A=pr(A)}X=null}else X=null;H!==null&&qf(V,O,H,X,!1),q!==null&&je!==null&&qf(V,je,q,X,!0)}}e:{if(O=B?gr(B):window,H=O.nodeName&&O.nodeName.toLowerCase(),H==="select"||H==="input"&&O.type==="file")var Z=kv;else if(Rf(O))if(If)Z=bv;else{Z=Tv;var te=Sv}else(H=O.nodeName)&&H.toLowerCase()==="input"&&(O.type==="checkbox"||O.type==="radio")&&(Z=Cv);if(Z&&(Z=Z(e,B))){Nf(V,Z,i,F);break e}te&&te(e,O,B),e==="focusout"&&(te=O._wrapperState)&&te.controlled&&O.type==="number"&&Zs(O,"number",O.value)}switch(te=B?gr(B):window,e){case"focusin":(Rf(te)||te.contentEditable==="true")&&(dr=te,Ro=B,di=null);break;case"focusout":di=Ro=dr=null;break;case"mousedown":No=!0;break;case"contextmenu":case"mouseup":case"dragend":No=!1,Ff(V,i,F);break;case"selectionchange":if(Nv)break;case"keydown":case"keyup":Ff(V,i,F)}var ne;if(To)e:{switch(e){case"compositionstart":var ae="onCompositionStart";break e;case"compositionend":ae="onCompositionEnd";break e;case"compositionupdate":ae="onCompositionUpdate";break e}ae=void 0}else fr?bf(e,i)&&(ae="onCompositionEnd"):e==="keydown"&&i.keyCode===229&&(ae="onCompositionStart");ae&&(Sf&&i.locale!=="ko"&&(fr||ae!=="onCompositionStart"?ae==="onCompositionEnd"&&fr&&(ne=vf()):(xn=F,vo="value"in xn?xn.value:xn.textContent,fr=!0)),te=Ia(B,ae),0<te.length&&(ae=new Ef(ae,e,null,i,F),V.push({event:ae,listeners:te}),ne?ae.data=ne:(ne=Pf(i),ne!==null&&(ae.data=ne)))),(ne=yv?vv(e,i):wv(e,i))&&(B=Ia(B,"onBeforeInput"),0<B.length&&(F=new Ef("onBeforeInput","beforeinput",null,i,F),V.push({event:F,listeners:B}),F.data=ne))}Gf(V,n)})}function hi(e,n,i){return{instance:e,listener:n,currentTarget:i}}function Ia(e,n){for(var i=n+"Capture",o=[];e!==null;){var u=e,h=u.stateNode;u.tag===5&&h!==null&&(u=h,h=Qr(e,i),h!=null&&o.unshift(hi(e,h,u)),h=Qr(e,n),h!=null&&o.push(hi(e,h,u))),e=e.return}return o}function pr(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function qf(e,n,i,o,u){for(var h=n._reactName,v=[];i!==null&&i!==o;){var E=i,C=E.alternate,B=E.stateNode;if(C!==null&&C===o)break;E.tag===5&&B!==null&&(E=B,u?(C=Qr(i,h),C!=null&&v.unshift(hi(i,C,E))):u||(C=Qr(i,h),C!=null&&v.push(hi(i,C,E)))),i=i.return}v.length!==0&&e.push({event:n,listeners:v})}var Bv=/\r\n?/g,Lv=/\u0000|\uFFFD/g;function Qf(e){return(typeof e=="string"?e:""+e).replace(Bv,`
30`).replace(Lv,"")}function Aa(e,n,i){if(n=Qf(n),Qf(e)!==n&&i)throw Error(a(425))}function Ma(){}var Do=null,Oo=null;function _o(e,n){return e==="textarea"||e==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var Fo=typeof setTimeout=="function"?setTimeout:void 0,Dv=typeof clearTimeout=="function"?clearTimeout:void 0,Xf=typeof Promise=="function"?Promise:void 0,Ov=typeof queueMicrotask=="function"?queueMicrotask:typeof Xf<"u"?function(e){return Xf.resolve(null).then(e).catch(_v)}:Fo;function _v(e){setTimeout(function(){throw e})}function Vo(e,n){var i=n,o=0;do{var u=i.nextSibling;if(e.removeChild(i),u&&u.nodeType===8)if(i=u.data,i==="/$"){if(o===0){e.removeChild(u),ai(n);return}o--}else i!=="$"&&i!=="$?"&&i!=="$!"||o++;i=u}while(i);ai(n)}function kn(e){for(;e!=null;e=e.nextSibling){var n=e.nodeType;if(n===1||n===3)break;if(n===8){if(n=e.data,n==="$"||n==="$!"||n==="$?")break;if(n==="/$")return null}}return e}function Zf(e){e=e.previousSibling;for(var n=0;e;){if(e.nodeType===8){var i=e.data;if(i==="$"||i==="$!"||i==="$?"){if(n===0)return e;n--}else i==="/$"&&n++}e=e.previousSibling}return null}var hr=Math.random().toString(36).slice(2),Gt="__reactFiber$"+hr,gi="__reactProps$"+hr,tn="__reactContainer$"+hr,jo="__reactEvents$"+hr,Fv="__reactListeners$"+hr,Vv="__reactHandles$"+hr;function jn(e){var n=e[Gt];if(n)return n;for(var i=e.parentNode;i;){if(n=i[tn]||i[Gt]){if(i=n.alternate,n.child!==null||i!==null&&i.child!==null)for(e=Zf(e);e!==null;){if(i=e[Gt])return i;e=Zf(e)}return n}e=i,i=e.parentNode}return null}function yi(e){return e=e[Gt]||e[tn],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function gr(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(a(33))}function Ba(e){return e[gi]||null}var $o=[],yr=-1;function Sn(e){return{current:e}}function be(e){0>yr||(e.current=$o[yr],$o[yr]=null,yr--)}function Te(e,n){yr++,$o[yr]=e.current,e.current=n}var Tn={},et=Sn(Tn),ct=Sn(!1),$n=Tn;function vr(e,n){var i=e.type.contextTypes;if(!i)return Tn;var o=e.stateNode;if(o&&o.__reactInternalMemoizedUnmaskedChildContext===n)return o.__reactInternalMemoizedMaskedChildContext;var u={},h;for(h in i)u[h]=n[h];return o&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=n,e.__reactInternalMemoizedMaskedChildContext=u),u}function ft(e){return e=e.childContextTypes,e!=null}function La(){be(ct),be(et)}function Jf(e,n,i){if(et.current!==Tn)throw Error(a(168));Te(et,n),Te(ct,i)}function ed(e,n,i){var o=e.stateNode;if(n=n.childContextTypes,typeof o.getChildContext!="function")return i;o=o.getChildContext();for(var u in o)if(!(u in n))throw Error(a(108,Se(e)||"Unknown",u));return K({},i,o)}function Da(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Tn,$n=et.current,Te(et,e),Te(ct,ct.current),!0}function td(e,n,i){var o=e.stateNode;if(!o)throw Error(a(169));i?(e=ed(e,n,$n),o.__reactInternalMemoizedMergedChildContext=e,be(ct),be(et),Te(et,e)):be(ct),Te(ct,i)}var nn=null,Oa=!1,zo=!1;
vendor: 5,066 bytes, line 30
30function nd(e){nn===null?nn=[e]:nn.push(e)}function jv(e){Oa=!0,nd(e)}function Cn(){if(!zo&&nn!==null){zo=!0;var e=0,n=Ee;try{var i=nn;for(Ee=1;e<i.length;e++){var o=i[e];do o=o(!0);while(o!==null)}nn=null,Oa=!1}catch(u){throw nn!==null&&(nn=nn.slice(e+1)),rf(uo,Cn),u}finally{Ee=n,zo=!1}}return null}var wr=[],xr=0,_a=null,Fa=0,St=[],Tt=0,zn=null,rn=1,an="";function Un(e,n){wr[xr++]=Fa,wr[xr++]=_a,_a=e,Fa=n}function rd(e,n,i){St[Tt++]=rn,St[Tt++]=an,St[Tt++]=zn,zn=e;var o=rn;e=an;var u=32-Bt(o)-1;o&=~(1<<u),i+=1;var h=32-Bt(n)+u;if(30<h){var v=u-u%5;h=(o&(1<<v)-1).toString(32),o>>=v,u-=v,rn=1<<32-Bt(n)+u|i<<u|o,an=h+e}else rn=1<<h|i<<u|o,an=e}function Uo(e){e.return!==null&&(Un(e,1),rd(e,1,0))}function Wo(e){for(;e===_a;)_a=wr[--xr],wr[xr]=null,Fa=wr[--xr],wr[xr]=null;for(;e===zn;)zn=St[--Tt],St[Tt]=null,an=St[--Tt],St[Tt]=null,rn=St[--Tt],St[Tt]=null}var xt=null,Et=null,Re=!1,Dt=null;function id(e,n){var i=Rt(5,null,null,0);i.elementType="DELETED",i.stateNode=n,i.return=e,n=e.deletions,n===null?(e.deletions=[i],e.flags|=16):n.push(i)}function ad(e,n){switch(e.tag){case 5:var i=e.type;return n=n.nodeType!==1||i.toLowerCase()!==n.nodeName.toLowerCase()?null:n,n!==null?(e.stateNode=n,xt=e,Et=kn(n.firstChild),!0):!1;case 6:return n=e.pendingProps===""||n.nodeType!==3?null:n,n!==null?(e.stateNode=n,xt=e,Et=null,!0):!1;case 13:return n=n.nodeType!==8?null:n,n!==null?(i=zn!==null?{id:rn,overflow:an}:null,e.memoizedState={dehydrated:n,treeContext:i,retryLane:1073741824},i=Rt(18,null,null,0),i.stateNode=n,i.return=e,e.child=i,xt=e,Et=null,!0):!1;default:return!1}}function Ho(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Ko(e){if(Re){var n=Et;if(n){var i=n;if(!ad(e,n)){if(Ho(e))throw Error(a(418));n=kn(i.nextSibling);var o=xt;n&&ad(e,n)?id(o,i):(e.flags=e.flags&-4097|2,Re=!1,xt=e)}}else{if(Ho(e))throw Error(a(418));e.flags=e.flags&-4097|2,Re=!1,xt=e}}}function sd(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;xt=e}function Va(e){if(e!==xt)return!1;if(!Re)return sd(e),Re=!0,!1;var n;if((n=e.tag!==3)&&!(n=e.tag!==5)&&(n=e.type,n=n!=="head"&&n!=="body"&&!_o(e.type,e.memoizedProps)),n&&(n=Et)){if(Ho(e))throw od(),Error(a(418));for(;n;)id(e,n),n=kn(n.nextSibling)}if(sd(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(a(317));e:{for(e=e.nextSibling,n=0;e;){if(e.nodeType===8){var i=e.data;if(i==="/$"){if(n===0){Et=kn(e.nextSibling);break e}n--}else i!=="$"&&i!=="$!"&&i!=="$?"||n++}e=e.nextSibling}Et=null}}else Et=xt?kn(e.stateNode.nextSibling):null;return!0}function od(){for(var e=Et;e;)e=kn(e.nextSibling)}function Er(){Et=xt=null,Re=!1}function Go(e){Dt===null?Dt=[e]:Dt.push(e)}var $v=$.ReactCurrentBatchConfig;function vi(e,n,i){if(e=i.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(i._owner){if(i=i._owner,i){if(i.tag!==1)throw Error(a(309));var o=i.stateNode}if(!o)throw Error(a(147,e));var u=o,h=""+e;return n!==null&&n.ref!==null&&typeof n.ref=="function"&&n.ref._stringRef===h?n.ref:(n=function(v){var E=u.refs;v===null?delete E[h]:E[h]=v},n._stringRef=h,n)}if(typeof e!="string")throw Error(a(284));if(!i._owner)throw Error(a(290,e))}return e}function ja(e,n){throw e=Object.prototype.toString.call(n),Error(a(31,e==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":e))}function ld(e){var n=e._init;return n(e._payload)}function ud(e){function n(A,b){if(e){var M=A.deletions;M===null?(A.deletions=[b],A.flags|=16):M.push(b)}}function i(A,b){if(!e)return null;for(;b!==null;)n(A,b),b=b.sibling;return null}function o(A,b){for(A=new Map;b!==null;)b.key!==null?A.set(b.key,b):A.set(b.index,b),b=b.sibling;return A}function u(A,b){return A=Bn(A,b),A.index=0,A.sibling=null,A}function h(A,b,M){return A.index=M,e?(M=A.alternate,M!==null?(M=M.index,M<b?(A.flags|=2,b):M):(A.flags|=2,b)):(A.flags|=1048576,b)}function v(A){return e&&A.alternate===null&&(A.flags|=2),A}function E(A,b,M,z){return b===null||b.tag!==6?(b=Fl(M,A.mode,z),b.return=A,b):(b=u(b,M),b.return=A,b)}function C(A,b,M,z){var Z=M.type;return Z===ee?F(A,b,M.props.children,z,M.key):b!==null&&(b.elementType===Z||typeof Z=="object"&&Z!==null&&Z.$$typeof===ve&&ld(Z)===b.type)?(z=u(b,M.props),z.ref=vi(A,b,M),z.return=A,z):(z=cs(M.type,M.key,M.props,null,A.mode,z),z.ref=vi(A,b,M),z.return=A,z)}function B(A,b,M,z){return b===null||b.tag!==4||b.stateNode.containerInfo!==M.containerInfo||b.stateNode.implementation!==M.implementation?(b=Vl(M,A.mode,z),b.return=A,b):(b=u(b,M.children||[]),b.return=A,b)}function F(A,b,M,z,Z){return b===null||b.tag!==7?(b=Xn(M,A.mode,z,Z),b.return=A,b):(b=u(b,M),b.return=A,b)}function V(A,b,M){if(typeof b=="string"&&b!==""||typeof b=="number")return b=Fl(""+b,A.mode,M),b.return=A,b;if(typeof b=="object"&&b!==null){switch(b.$$typeof){case j:return M=cs(b.type,b.key,b.props,null,A.mode,M),M.ref=vi(A,null,b),M.return=A,M;case G:return b=Vl(b,A.mode,M),b.return=A,b;case ve:var z=b._init;return V(A,z(b._payload),M)}if(Gr(b)||J(b))return b=Xn(b,A.mode,M,null),b.return=A,b;ja(A,b)}return null}function O(A,b,M,z){var Z=b!==null?b.key:null;
vendor: 12,472 bytes, line 30
30if(typeof M=="string"&&M!==""||typeof M=="number")return Z!==null?null:E(A,b,""+M,z);if(typeof M=="object"&&M!==null){switch(M.$$typeof){case j:return M.key===Z?C(A,b,M,z):null;case G:return M.key===Z?B(A,b,M,z):null;case ve:return Z=M._init,O(A,b,Z(M._payload),z)}if(Gr(M)||J(M))return Z!==null?null:F(A,b,M,z,null);ja(A,M)}return null}function H(A,b,M,z,Z){if(typeof z=="string"&&z!==""||typeof z=="number")return A=A.get(M)||null,E(b,A,""+z,Z);if(typeof z=="object"&&z!==null){switch(z.$$typeof){case j:return A=A.get(z.key===null?M:z.key)||null,C(b,A,z,Z);case G:return A=A.get(z.key===null?M:z.key)||null,B(b,A,z,Z);case ve:var te=z._init;return H(A,b,M,te(z._payload),Z)}if(Gr(z)||J(z))return A=A.get(M)||null,F(b,A,z,Z,null);ja(b,z)}return null}function q(A,b,M,z){for(var Z=null,te=null,ne=b,ae=b=0,Ye=null;ne!==null&&ae<M.length;ae++){ne.index>ae?(Ye=ne,ne=null):Ye=ne.sibling;var he=O(A,ne,M[ae],z);if(he===null){ne===null&&(ne=Ye);break}e&&ne&&he.alternate===null&&n(A,ne),b=h(he,b,ae),te===null?Z=he:te.sibling=he,te=he,ne=Ye}if(ae===M.length)return i(A,ne),Re&&Un(A,ae),Z;if(ne===null){for(;ae<M.length;ae++)ne=V(A,M[ae],z),ne!==null&&(b=h(ne,b,ae),te===null?Z=ne:te.sibling=ne,te=ne);return Re&&Un(A,ae),Z}for(ne=o(A,ne);ae<M.length;ae++)Ye=H(ne,A,ae,M[ae],z),Ye!==null&&(e&&Ye.alternate!==null&&ne.delete(Ye.key===null?ae:Ye.key),b=h(Ye,b,ae),te===null?Z=Ye:te.sibling=Ye,te=Ye);return e&&ne.forEach(function(Ln){return n(A,Ln)}),Re&&Un(A,ae),Z}function X(A,b,M,z){var Z=J(M);if(typeof Z!="function")throw Error(a(150));if(M=Z.call(M),M==null)throw Error(a(151));for(var te=Z=null,ne=b,ae=b=0,Ye=null,he=M.next();ne!==null&&!he.done;ae++,he=M.next()){ne.index>ae?(Ye=ne,ne=null):Ye=ne.sibling;var Ln=O(A,ne,he.value,z);if(Ln===null){ne===null&&(ne=Ye);break}e&&ne&&Ln.alternate===null&&n(A,ne),b=h(Ln,b,ae),te===null?Z=Ln:te.sibling=Ln,te=Ln,ne=Ye}if(he.done)return i(A,ne),Re&&Un(A,ae),Z;if(ne===null){for(;!he.done;ae++,he=M.next())he=V(A,he.value,z),he!==null&&(b=h(he,b,ae),te===null?Z=he:te.sibling=he,te=he);return Re&&Un(A,ae),Z}for(ne=o(A,ne);!he.done;ae++,he=M.next())he=H(ne,A,ae,he.value,z),he!==null&&(e&&he.alternate!==null&&ne.delete(he.key===null?ae:he.key),b=h(he,b,ae),te===null?Z=he:te.sibling=he,te=he);return e&&ne.forEach(function(x0){return n(A,x0)}),Re&&Un(A,ae),Z}function je(A,b,M,z){if(typeof M=="object"&&M!==null&&M.type===ee&&M.key===null&&(M=M.props.children),typeof M=="object"&&M!==null){switch(M.$$typeof){case j:e:{for(var Z=M.key,te=b;te!==null;){if(te.key===Z){if(Z=M.type,Z===ee){if(te.tag===7){i(A,te.sibling),b=u(te,M.props.children),b.return=A,A=b;break e}}else if(te.elementType===Z||typeof Z=="object"&&Z!==null&&Z.$$typeof===ve&&ld(Z)===te.type){i(A,te.sibling),b=u(te,M.props),b.ref=vi(A,te,M),b.return=A,A=b;break e}i(A,te);break}else n(A,te);te=te.sibling}M.type===ee?(b=Xn(M.props.children,A.mode,z,M.key),b.return=A,A=b):(z=cs(M.type,M.key,M.props,null,A.mode,z),z.ref=vi(A,b,M),z.return=A,A=z)}return v(A);case G:e:{for(te=M.key;b!==null;){if(b.key===te)if(b.tag===4&&b.stateNode.containerInfo===M.containerInfo&&b.stateNode.implementation===M.implementation){i(A,b.sibling),b=u(b,M.children||[]),b.return=A,A=b;break e}else{i(A,b);break}else n(A,b);b=b.sibling}b=Vl(M,A.mode,z),b.return=A,A=b}return v(A);case ve:return te=M._init,je(A,b,te(M._payload),z)}if(Gr(M))return q(A,b,M,z);if(J(M))return X(A,b,M,z);ja(A,M)}return typeof M=="string"&&M!==""||typeof M=="number"?(M=""+M,b!==null&&b.tag===6?(i(A,b.sibling),b=u(b,M),b.return=A,A=b):(i(A,b),b=Fl(M,A.mode,z),b.return=A,A=b),v(A)):i(A,b)}return je}var kr=ud(!0),cd=ud(!1),$a=Sn(null),za=null,Sr=null,Yo=null;function qo(){Yo=Sr=za=null}function Qo(e){var n=$a.current;be($a),e._currentValue=n}function Xo(e,n,i){for(;e!==null;){var o=e.alternate;if((e.childLanes&n)!==n?(e.childLanes|=n,o!==null&&(o.childLanes|=n)):o!==null&&(o.childLanes&n)!==n&&(o.childLanes|=n),e===i)break;e=e.return}}function Tr(e,n){za=e,Yo=Sr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&n)!==0&&(dt=!0),e.firstContext=null)}function Ct(e){var n=e._currentValue;if(Yo!==e)if(e={context:e,memoizedValue:n,next:null},Sr===null){if(za===null)throw Error(a(308));Sr=e,za.dependencies={lanes:0,firstContext:e}}else Sr=Sr.next=e;return n}var Wn=null;function Zo(e){Wn===null?Wn=[e]:Wn.push(e)}function fd(e,n,i,o){var u=n.interleaved;return u===null?(i.next=i,Zo(n)):(i.next=u.next,u.next=i),n.interleaved=i,sn(e,o)}function sn(e,n){e.lanes|=n;var i=e.alternate;for(i!==null&&(i.lanes|=n),i=e,e=e.return;e!==null;)e.childLanes|=n,i=e.alternate,i!==null&&(i.childLanes|=n),i=e,e=e.return;return i.tag===3?i.stateNode:null}var bn=!1;function Jo(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function dd(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function on(e,n){return{eventTime:e,lane:n,tag:0,payload:null,callback:null,next:null}}function Pn(e,n,i){var o=e.updateQueue;if(o===null)return null;if(o=o.shared,(fe&2)!==0){var u=o.pending;return u===null?n.next=n:(n.next=u.next,u.next=n),o.pending=n,sn(e,i)}return u=o.interleaved,u===null?(n.next=n,Zo(o)):(n.next=u.next,u.next=n),o.interleaved=n,sn(e,i)}function Ua(e,n,i){if(n=n.updateQueue,n!==null&&(n=n.shared,(i&4194240)!==0)){var o=n.lanes;o&=e.pendingLanes,i|=o,n.lanes=i,mo(e,i)}}function md(e,n){var i=e.updateQueue,o=e.alternate;if(o!==null&&(o=o.updateQueue,i===o)){var u=null,h=null;if(i=i.firstBaseUpdate,i!==null){do{var v={eventTime:i.eventTime,lane:i.lane,tag:i.tag,payload:i.payload,callback:i.callback,next:null};h===null?u=h=v:h=h.next=v,i=i.next}while(i!==null);h===null?u=h=n:h=h.next=n}else u=h=n;i={baseState:o.baseState,firstBaseUpdate:u,lastBaseUpdate:h,shared:o.shared,effects:o.effects},e.updateQueue=i;return}e=i.lastBaseUpdate,e===null?i.firstBaseUpdate=n:e.next=n,i.lastBaseUpdate=n}function Wa(e,n,i,o){var u=e.updateQueue;bn=!1;var h=u.firstBaseUpdate,v=u.lastBaseUpdate,E=u.shared.pending;if(E!==null){u.shared.pending=null;var C=E,B=C.next;C.next=null,v===null?h=B:v.next=B,v=C;var F=e.alternate;F!==null&&(F=F.updateQueue,E=F.lastBaseUpdate,E!==v&&(E===null?F.firstBaseUpdate=B:E.next=B,F.lastBaseUpdate=C))}if(h!==null){var V=u.baseState;v=0,F=B=C=null,E=h;do{var O=E.lane,H=E.eventTime;if((o&O)===O){F!==null&&(F=F.next={eventTime:H,lane:0,tag:E.tag,payload:E.payload,callback:E.callback,next:null});e:{var q=e,X=E;switch(O=n,H=i,X.tag){case 1:if(q=X.payload,typeof q=="function"){V=q.call(H,V,O);break e}V=q;break e;case 3:q.flags=q.flags&-65537|128;case 0:if(q=X.payload,O=typeof q=="function"?q.call(H,V,O):q,O==null)break e;V=K({},V,O);break e;case 2:bn=!0}}E.callback!==null&&E.lane!==0&&(e.flags|=64,O=u.effects,O===null?u.effects=[E]:O.push(E))}else H={eventTime:H,lane:O,tag:E.tag,payload:E.payload,callback:E.callback,next:null},F===null?(B=F=H,C=V):F=F.next=H,v|=O;if(E=E.next,E===null){if(E=u.shared.pending,E===null)break;O=E,E=O.next,O.next=null,u.lastBaseUpdate=O,u.shared.pending=null}}while(!0);if(F===null&&(C=V),u.baseState=C,u.firstBaseUpdate=B,u.lastBaseUpdate=F,n=u.shared.interleaved,n!==null){u=n;do v|=u.lane,u=u.next;while(u!==n)}else h===null&&(u.shared.lanes=0);Gn|=v,e.lanes=v,e.memoizedState=V}}function pd(e,n,i){if(e=n.effects,n.effects=null,e!==null)for(n=0;n<e.length;n++){var o=e[n],u=o.callback;if(u!==null){if(o.callback=null,o=i,typeof u!="function")throw Error(a(191,u));u.call(o)}}}var wi={},Yt=Sn(wi),xi=Sn(wi),Ei=Sn(wi);function Hn(e){if(e===wi)throw Error(a(174));return e}function el(e,n){switch(Te(Ei,n),Te(xi,e),Te(Yt,wi),e=n.nodeType,e){case 9:case 11:n=(n=n.documentElement)?n.namespaceURI:eo(null,"");break;default:e=e===8?n.parentNode:n,n=e.namespaceURI||null,e=e.tagName,n=eo(n,e)}be(Yt),Te(Yt,n)}function Cr(){be(Yt),be(xi),be(Ei)}function hd(e){Hn(Ei.current);var n=Hn(Yt.current),i=eo(n,e.type);n!==i&&(Te(xi,e),Te(Yt,i))}function tl(e){xi.current===e&&(be(Yt),be(xi))}var Me=Sn(0);function Ha(e){for(var n=e;n!==null;){if(n.tag===13){var i=n.memoizedState;if(i!==null&&(i=i.dehydrated,i===null||i.data==="$?"||i.data==="$!"))return n}else if(n.tag===19&&n.memoizedProps.revealOrder!==void 0){if((n.flags&128)!==0)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var nl=[];function rl(){for(var e=0;e<nl.length;e++)nl[e]._workInProgressVersionPrimary=null;nl.length=0}var Ka=$.ReactCurrentDispatcher,il=$.ReactCurrentBatchConfig,Kn=0,Be=null,Ue=null,Ke=null,Ga=!1,ki=!1,Si=0,zv=0;function tt(){throw Error(a(321))}function al(e,n){if(n===null)return!1;for(var i=0;i<n.length&&i<e.length;i++)if(!Lt(e[i],n[i]))return!1;return!0}function sl(e,n,i,o,u,h){if(Kn=h,Be=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,Ka.current=e===null||e.memoizedState===null?Kv:Gv,e=i(o,u),ki){h=0;do{if(ki=!1,Si=0,25<=h)throw Error(a(301));h+=1,Ke=Ue=null,n.updateQueue=null,Ka.current=Yv,e=i(o,u)}while(ki)}if(Ka.current=Qa,n=Ue!==null&&Ue.next!==null,Kn=0,Ke=Ue=Be=null,Ga=!1,n)throw Error(a(300));return e}function ol(){var e=Si!==0;return Si=0,e}function qt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Ke===null?Be.memoizedState=Ke=e:Ke=Ke.next=e,Ke}function bt(){if(Ue===null){var e=Be.alternate;e=e!==null?e.memoizedState:null}else e=Ue.next;var n=Ke===null?Be.memoizedState:Ke.next;if(n!==null)Ke=n,Ue=e;else{if(e===null)throw Error(a(310));Ue=e,e={memoizedState:Ue.memoizedState,baseState:Ue.baseState,baseQueue:Ue.baseQueue,queue:Ue.queue,next:null},Ke===null?Be.memoizedState=Ke=e:Ke=Ke.next=e}return Ke}function Ti(e,n){return typeof n=="function"?n(e):n}function ll(e){var n=bt(),i=n.queue;if(i===null)throw Error(a(311));i.lastRenderedReducer=e;var o=Ue,u=o.baseQueue,h=i.pending;if(h!==null){if(u!==null){var v=u.next;u.next=h.next,h.next=v}o.baseQueue=u=h,i.pending=null}if(u!==null){h=u.next,o=o.baseState;var E=v=null,C=null,B=h;do{var F=B.lane;if((Kn&F)===F)C!==null&&(C=C.next={lane:0,action:B.action,hasEagerState:B.hasEagerState,eagerState:B.eagerState,next:null}),o=B.hasEagerState?B.eagerState:e(o,B.action);else{var V={lane:F,action:B.action,hasEagerState:B.hasEagerState,eagerState:B.eagerState,next:null};C===null?(E=C=V,v=o):C=C.next=V,Be.lanes|=F,Gn|=F}B=B.next}while(B!==null&&B!==h);C===null?v=o:C.next=E,Lt(o,n.memoizedState)||(dt=!0),n.memoizedState=o,n.baseState=v,n.baseQueue=C,i.lastRenderedState=o}if(e=i.interleaved,e!==null){u=e;do h=u.lane,Be.lanes|=h,Gn|=h,u=u.next;while(u!==e)}else u===null&&(i.lanes=0);return[n.memoizedState,i.dispatch]}function ul(e){var n=bt(),i=n.queue;if(i===null)throw Error(a(311));i.lastRenderedReducer=e;var o=i.dispatch,u=i.pending,h=n.memoizedState;if(u!==null){i.pending=null;var v=u=u.next;do h=e(h,v.action),v=v.next;while(v!==u);Lt(h,n.memoizedState)||(dt=!0),n.memoizedState=h,n.baseQueue===null&&(n.baseState=h),i.lastRenderedState=h}return[h,o]}function gd(){}function yd(e,n){var i=Be,o=bt(),u=n(),h=!Lt(o.memoizedState,u);if(h&&(o.memoizedState=u,dt=!0),o=o.queue,cl(xd.bind(null,i,o,e),[e]),o.getSnapshot!==n||h||Ke!==null&&Ke.memoizedState.tag&1){if(i.flags|=2048,Ci(9,wd.bind(null,i,o,u,n),void 0,null),Ge===null)throw Error(a(349));(Kn&30)!==0||vd(i,n,u)}return u}function vd(e,n,i){e.flags|=16384,e={getSnapshot:n,value:i},n=Be.updateQueue,n===null?(n={lastEffect:null,stores:null},Be.updateQueue=n,n.stores=[e]):(i=n.stores,i===null?n.stores=[e]:i.push(e))}function wd(e,n,i,o){n.value=i,n.getSnapshot=o,Ed(n)&&kd(e)}function xd(e,n,i){return i(function(){Ed(n)&&kd(e)})}function Ed(e){var n=e.getSnapshot;e=e.value;try{var i=n();return!Lt(e,i)}catch{return!0}}function kd(e){var n=sn(e,1);n!==null&&Vt(n,e,1,-1)}function Sd(e){var n=qt();return typeof e=="function"&&(e=e()),n.memoizedState=n.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Ti,lastRenderedState:e},n.queue=e,e=e.dispatch=Hv.bind(null,Be,e),[n.memoizedState,e]}function Ci(e,n,i,o){return e={tag:e,create:n,destroy:i,deps:o,next:null},n=Be.updateQueue,n===null?(n={lastEffect:null,stores:null},Be.updateQueue=n,n.lastEffect=e.next=e):(i=n.lastEffect,i===null?n.lastEffect=e.next=e:(o=i.next,i.next=e,e.next=o,n.lastEffect=e)),e}function Td(){return bt().memoizedState}function Ya(e,n,i,o){var u=qt();
vendor: 7,807 bytes, lines 30-32
30Be.flags|=e,u.memoizedState=Ci(1|n,i,void 0,o===void 0?null:o)}function qa(e,n,i,o){var u=bt();o=o===void 0?null:o;var h=void 0;if(Ue!==null){var v=Ue.memoizedState;if(h=v.destroy,o!==null&&al(o,v.deps)){u.memoizedState=Ci(n,i,h,o);return}}Be.flags|=e,u.memoizedState=Ci(1|n,i,h,o)}function Cd(e,n){return Ya(8390656,8,e,n)}function cl(e,n){return qa(2048,8,e,n)}function bd(e,n){return qa(4,2,e,n)}function Pd(e,n){return qa(4,4,e,n)}function Rd(e,n){if(typeof n=="function")return e=e(),n(e),function(){n(null)};if(n!=null)return e=e(),n.current=e,function(){n.current=null}}function Nd(e,n,i){return i=i!=null?i.concat([e]):null,qa(4,4,Rd.bind(null,n,e),i)}function fl(){}function Id(e,n){var i=bt();n=n===void 0?null:n;var o=i.memoizedState;return o!==null&&n!==null&&al(n,o[1])?o[0]:(i.memoizedState=[e,n],e)}function Ad(e,n){var i=bt();n=n===void 0?null:n;var o=i.memoizedState;return o!==null&&n!==null&&al(n,o[1])?o[0]:(e=e(),i.memoizedState=[e,n],e)}function Md(e,n,i){return(Kn&21)===0?(e.baseState&&(e.baseState=!1,dt=!0),e.memoizedState=i):(Lt(i,n)||(i=lf(),Be.lanes|=i,Gn|=i,e.baseState=!0),n)}function Uv(e,n){var i=Ee;Ee=i!==0&&4>i?i:4,e(!0);var o=il.transition;il.transition={};try{e(!1),n()}finally{Ee=i,il.transition=o}}function Bd(){return bt().memoizedState}function Wv(e,n,i){var o=An(e);if(i={lane:o,action:i,hasEagerState:!1,eagerState:null,next:null},Ld(e))Dd(n,i);else if(i=fd(e,n,i,o),i!==null){var u=lt();Vt(i,e,o,u),Od(i,n,o)}}function Hv(e,n,i){var o=An(e),u={lane:o,action:i,hasEagerState:!1,eagerState:null,next:null};if(Ld(e))Dd(n,u);else{var h=e.alternate;if(e.lanes===0&&(h===null||h.lanes===0)&&(h=n.lastRenderedReducer,h!==null))try{var v=n.lastRenderedState,E=h(v,i);if(u.hasEagerState=!0,u.eagerState=E,Lt(E,v)){var C=n.interleaved;C===null?(u.next=u,Zo(n)):(u.next=C.next,C.next=u),n.interleaved=u;return}}catch{}finally{}i=fd(e,n,u,o),i!==null&&(u=lt(),Vt(i,e,o,u),Od(i,n,o))}}function Ld(e){var n=e.alternate;return e===Be||n!==null&&n===Be}function Dd(e,n){ki=Ga=!0;var i=e.pending;i===null?n.next=n:(n.next=i.next,i.next=n),e.pending=n}function Od(e,n,i){if((i&4194240)!==0){var o=n.lanes;o&=e.pendingLanes,i|=o,n.lanes=i,mo(e,i)}}var Qa={readContext:Ct,useCallback:tt,useContext:tt,useEffect:tt,useImperativeHandle:tt,useInsertionEffect:tt,useLayoutEffect:tt,useMemo:tt,useReducer:tt,useRef:tt,useState:tt,useDebugValue:tt,useDeferredValue:tt,useTransition:tt,useMutableSource:tt,useSyncExternalStore:tt,useId:tt,unstable_isNewReconciler:!1},Kv={readContext:Ct,useCallback:function(e,n){return qt().memoizedState=[e,n===void 0?null:n],e},useContext:Ct,useEffect:Cd,useImperativeHandle:function(e,n,i){return i=i!=null?i.concat([e]):null,Ya(4194308,4,Rd.bind(null,n,e),i)},useLayoutEffect:function(e,n){return Ya(4194308,4,e,n)},useInsertionEffect:function(e,n){return Ya(4,2,e,n)},useMemo:function(e,n){var i=qt();return n=n===void 0?null:n,e=e(),i.memoizedState=[e,n],e},useReducer:function(e,n,i){var o=qt();return n=i!==void 0?i(n):n,o.memoizedState=o.baseState=n,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:n},o.queue=e,e=e.dispatch=Wv.bind(null,Be,e),[o.memoizedState,e]},useRef:function(e){var n=qt();return e={current:e},n.memoizedState=e},useState:Sd,useDebugValue:fl,useDeferredValue:function(e){return qt().memoizedState=e},useTransition:function(){var e=Sd(!1),n=e[0];return e=Uv.bind(null,e[1]),qt().memoizedState=e,[n,e]},useMutableSource:function(){},useSyncExternalStore:function(e,n,i){var o=Be,u=qt();if(Re){if(i===void 0)throw Error(a(407));i=i()}else{if(i=n(),Ge===null)throw Error(a(349));(Kn&30)!==0||vd(o,n,i)}u.memoizedState=i;var h={value:i,getSnapshot:n};return u.queue=h,Cd(xd.bind(null,o,h,e),[e]),o.flags|=2048,Ci(9,wd.bind(null,o,h,i,n),void 0,null),i},useId:function(){var e=qt(),n=Ge.identifierPrefix;if(Re){var i=an,o=rn;i=(o&~(1<<32-Bt(o)-1)).toString(32)+i,n=":"+n+"R"+i,i=Si++,0<i&&(n+="H"+i.toString(32)),n+=":"}else i=zv++,n=":"+n+"r"+i.toString(32)+":";return e.memoizedState=n},unstable_isNewReconciler:!1},Gv={readContext:Ct,useCallback:Id,useContext:Ct,useEffect:cl,useImperativeHandle:Nd,useInsertionEffect:bd,useLayoutEffect:Pd,useMemo:Ad,useReducer:ll,useRef:Td,useState:function(){return ll(Ti)},useDebugValue:fl,useDeferredValue:function(e){var n=bt();return Md(n,Ue.memoizedState,e)},useTransition:function(){var e=ll(Ti)[0],n=bt().memoizedState;return[e,n]},useMutableSource:gd,useSyncExternalStore:yd,useId:Bd,unstable_isNewReconciler:!1},Yv={readContext:Ct,useCallback:Id,useContext:Ct,useEffect:cl,useImperativeHandle:Nd,useInsertionEffect:bd,useLayoutEffect:Pd,useMemo:Ad,useReducer:ul,useRef:Td,useState:function(){return ul(Ti)},useDebugValue:fl,useDeferredValue:function(e){var n=bt();return Ue===null?n.memoizedState=e:Md(n,Ue.memoizedState,e)},useTransition:function(){var e=ul(Ti)[0],n=bt().memoizedState;return[e,n]},useMutableSource:gd,useSyncExternalStore:yd,useId:Bd,unstable_isNewReconciler:!1};function Ot(e,n){if(e&&e.defaultProps){n=K({},n),e=e.defaultProps;for(var i in e)n[i]===void 0&&(n[i]=e[i]);return n}return n}function dl(e,n,i,o){n=e.memoizedState,i=i(o,n),i=i==null?n:K({},n,i),e.memoizedState=i,e.lanes===0&&(e.updateQueue.baseState=i)}var Xa={isMounted:function(e){return(e=e._reactInternals)?Vn(e)===e:!1},enqueueSetState:function(e,n,i){e=e._reactInternals;var o=lt(),u=An(e),h=on(o,u);h.payload=n,i!=null&&(h.callback=i),n=Pn(e,h,u),n!==null&&(Vt(n,e,u,o),Ua(n,e,u))},enqueueReplaceState:function(e,n,i){e=e._reactInternals;var o=lt(),u=An(e),h=on(o,u);h.tag=1,h.payload=n,i!=null&&(h.callback=i),n=Pn(e,h,u),n!==null&&(Vt(n,e,u,o),Ua(n,e,u))},enqueueForceUpdate:function(e,n){e=e._reactInternals;var i=lt(),o=An(e),u=on(i,o);u.tag=2,n!=null&&(u.callback=n),n=Pn(e,u,o),n!==null&&(Vt(n,e,o,i),Ua(n,e,o))}};function _d(e,n,i,o,u,h,v){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(o,h,v):n.prototype&&n.prototype.isPureReactComponent?!fi(i,o)||!fi(u,h):!0}function Fd(e,n,i){var o=!1,u=Tn,h=n.contextType;return typeof h=="object"&&h!==null?h=Ct(h):(u=ft(n)?$n:et.current,o=n.contextTypes,h=(o=o!=null)?vr(e,u):Tn),n=new n(i,h),e.memoizedState=n.state!==null&&n.state!==void 0?n.state:null,n.updater=Xa,e.stateNode=n,n._reactInternals=e,o&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=u,e.__reactInternalMemoizedMaskedChildContext=h),n}function Vd(e,n,i,o){e=n.state,typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(i,o),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(i,o),n.state!==e&&Xa.enqueueReplaceState(n,n.state,null)}function ml(e,n,i,o){var u=e.stateNode;u.props=i,u.state=e.memoizedState,u.refs={},Jo(e);var h=n.contextType;typeof h=="object"&&h!==null?u.context=Ct(h):(h=ft(n)?$n:et.current,u.context=vr(e,h)),u.state=e.memoizedState,h=n.getDerivedStateFromProps,typeof h=="function"&&(dl(e,n,h,i),u.state=e.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof u.getSnapshotBeforeUpdate=="function"||typeof u.UNSAFE_componentWillMount!="function"&&typeof u.componentWillMount!="function"||(n=u.state,typeof u.componentWillMount=="function"&&u.componentWillMount(),typeof u.UNSAFE_componentWillMount=="function"&&u.UNSAFE_componentWillMount(),n!==u.state&&Xa.enqueueReplaceState(u,u.state,null),Wa(e,i,u,o),u.state=e.memoizedState),typeof u.componentDidMount=="function"&&(e.flags|=4194308)}function br(e,n){try{var i="",o=n;do i+=me(o),o=o.return;while(o);var u=i}catch(h){u=`
31Error generating stack: `+h.message+`
32`+h.stack}return{value:e,source:n,stack:u,digest:null}}function pl(e,n,i){return{value:e,source:null,stack:i??null,digest:n??null}}function hl(e,n){try{console.error(n.value)}catch(i){setTimeout(function(){throw i})}}var qv=typeof WeakMap=="function"?WeakMap:Map;
vendor: 43,515 bytes, line 32
32function jd(e,n,i){i=on(-1,i),i.tag=3,i.payload={element:null};var o=n.value;return i.callback=function(){is||(is=!0,Il=o),hl(e,n)},i}function $d(e,n,i){i=on(-1,i),i.tag=3;var o=e.type.getDerivedStateFromError;if(typeof o=="function"){var u=n.value;i.payload=function(){return o(u)},i.callback=function(){hl(e,n)}}var h=e.stateNode;return h!==null&&typeof h.componentDidCatch=="function"&&(i.callback=function(){hl(e,n),typeof o!="function"&&(Nn===null?Nn=new Set([this]):Nn.add(this));var v=n.stack;this.componentDidCatch(n.value,{componentStack:v!==null?v:""})}),i}function zd(e,n,i){var o=e.pingCache;if(o===null){o=e.pingCache=new qv;var u=new Set;o.set(n,u)}else u=o.get(n),u===void 0&&(u=new Set,o.set(n,u));u.has(i)||(u.add(i),e=u0.bind(null,e,n,i),n.then(e,e))}function Ud(e){do{var n;if((n=e.tag===13)&&(n=e.memoizedState,n=n!==null?n.dehydrated!==null:!0),n)return e;e=e.return}while(e!==null);return null}function Wd(e,n,i,o,u){return(e.mode&1)===0?(e===n?e.flags|=65536:(e.flags|=128,i.flags|=131072,i.flags&=-52805,i.tag===1&&(i.alternate===null?i.tag=17:(n=on(-1,1),n.tag=2,Pn(i,n,1))),i.lanes|=1),e):(e.flags|=65536,e.lanes=u,e)}var Qv=$.ReactCurrentOwner,dt=!1;function ot(e,n,i,o){n.child=e===null?cd(n,null,i,o):kr(n,e.child,i,o)}function Hd(e,n,i,o,u){i=i.render;var h=n.ref;return Tr(n,u),o=sl(e,n,i,o,h,u),i=ol(),e!==null&&!dt?(n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~u,ln(e,n,u)):(Re&&i&&Uo(n),n.flags|=1,ot(e,n,o,u),n.child)}function Kd(e,n,i,o,u){if(e===null){var h=i.type;return typeof h=="function"&&!_l(h)&&h.defaultProps===void 0&&i.compare===null&&i.defaultProps===void 0?(n.tag=15,n.type=h,Gd(e,n,h,o,u)):(e=cs(i.type,null,o,n,n.mode,u),e.ref=n.ref,e.return=n,n.child=e)}if(h=e.child,(e.lanes&u)===0){var v=h.memoizedProps;if(i=i.compare,i=i!==null?i:fi,i(v,o)&&e.ref===n.ref)return ln(e,n,u)}return n.flags|=1,e=Bn(h,o),e.ref=n.ref,e.return=n,n.child=e}function Gd(e,n,i,o,u){if(e!==null){var h=e.memoizedProps;if(fi(h,o)&&e.ref===n.ref)if(dt=!1,n.pendingProps=o=h,(e.lanes&u)!==0)(e.flags&131072)!==0&&(dt=!0);else return n.lanes=e.lanes,ln(e,n,u)}return gl(e,n,i,o,u)}function Yd(e,n,i){var o=n.pendingProps,u=o.children,h=e!==null?e.memoizedState:null;if(o.mode==="hidden")if((n.mode&1)===0)n.memoizedState={baseLanes:0,cachePool:null,transitions:null},Te(Rr,kt),kt|=i;else{if((i&1073741824)===0)return e=h!==null?h.baseLanes|i:i,n.lanes=n.childLanes=1073741824,n.memoizedState={baseLanes:e,cachePool:null,transitions:null},n.updateQueue=null,Te(Rr,kt),kt|=e,null;n.memoizedState={baseLanes:0,cachePool:null,transitions:null},o=h!==null?h.baseLanes:i,Te(Rr,kt),kt|=o}else h!==null?(o=h.baseLanes|i,n.memoizedState=null):o=i,Te(Rr,kt),kt|=o;return ot(e,n,u,i),n.child}function qd(e,n){var i=n.ref;(e===null&&i!==null||e!==null&&e.ref!==i)&&(n.flags|=512,n.flags|=2097152)}function gl(e,n,i,o,u){var h=ft(i)?$n:et.current;return h=vr(n,h),Tr(n,u),i=sl(e,n,i,o,h,u),o=ol(),e!==null&&!dt?(n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~u,ln(e,n,u)):(Re&&o&&Uo(n),n.flags|=1,ot(e,n,i,u),n.child)}function Qd(e,n,i,o,u){if(ft(i)){var h=!0;Da(n)}else h=!1;if(Tr(n,u),n.stateNode===null)Ja(e,n),Fd(n,i,o),ml(n,i,o,u),o=!0;else if(e===null){var v=n.stateNode,E=n.memoizedProps;v.props=E;var C=v.context,B=i.contextType;typeof B=="object"&&B!==null?B=Ct(B):(B=ft(i)?$n:et.current,B=vr(n,B));var F=i.getDerivedStateFromProps,V=typeof F=="function"||typeof v.getSnapshotBeforeUpdate=="function";V||typeof v.UNSAFE_componentWillReceiveProps!="function"&&typeof v.componentWillReceiveProps!="function"||(E!==o||C!==B)&&Vd(n,v,o,B),bn=!1;var O=n.memoizedState;v.state=O,Wa(n,o,v,u),C=n.memoizedState,E!==o||O!==C||ct.current||bn?(typeof F=="function"&&(dl(n,i,F,o),C=n.memoizedState),(E=bn||_d(n,i,E,o,O,C,B))?(V||typeof v.UNSAFE_componentWillMount!="function"&&typeof v.componentWillMount!="function"||(typeof v.componentWillMount=="function"&&v.componentWillMount(),typeof v.UNSAFE_componentWillMount=="function"&&v.UNSAFE_componentWillMount()),typeof v.componentDidMount=="function"&&(n.flags|=4194308)):(typeof v.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=o,n.memoizedState=C),v.props=o,v.state=C,v.context=B,o=E):(typeof v.componentDidMount=="function"&&(n.flags|=4194308),o=!1)}else{v=n.stateNode,dd(e,n),E=n.memoizedProps,B=n.type===n.elementType?E:Ot(n.type,E),v.props=B,V=n.pendingProps,O=v.context,C=i.contextType,typeof C=="object"&&C!==null?C=Ct(C):(C=ft(i)?$n:et.current,C=vr(n,C));var H=i.getDerivedStateFromProps;(F=typeof H=="function"||typeof v.getSnapshotBeforeUpdate=="function")||typeof v.UNSAFE_componentWillReceiveProps!="function"&&typeof v.componentWillReceiveProps!="function"||(E!==V||O!==C)&&Vd(n,v,o,C),bn=!1,O=n.memoizedState,v.state=O,Wa(n,o,v,u);var q=n.memoizedState;E!==V||O!==q||ct.current||bn?(typeof H=="function"&&(dl(n,i,H,o),q=n.memoizedState),(B=bn||_d(n,i,B,o,O,q,C)||!1)?(F||typeof v.UNSAFE_componentWillUpdate!="function"&&typeof v.componentWillUpdate!="function"||(typeof v.componentWillUpdate=="function"&&v.componentWillUpdate(o,q,C),typeof v.UNSAFE_componentWillUpdate=="function"&&v.UNSAFE_componentWillUpdate(o,q,C)),typeof v.componentDidUpdate=="function"&&(n.flags|=4),typeof v.getSnapshotBeforeUpdate=="function"&&(n.flags|=1024)):(typeof v.componentDidUpdate!="function"||E===e.memoizedProps&&O===e.memoizedState||(n.flags|=4),typeof v.getSnapshotBeforeUpdate!="function"||E===e.memoizedProps&&O===e.memoizedState||(n.flags|=1024),n.memoizedProps=o,n.memoizedState=q),v.props=o,v.state=q,v.context=C,o=B):(typeof v.componentDidUpdate!="function"||E===e.memoizedProps&&O===e.memoizedState||(n.flags|=4),typeof v.getSnapshotBeforeUpdate!="function"||E===e.memoizedProps&&O===e.memoizedState||(n.flags|=1024),o=!1)}return yl(e,n,i,o,h,u)}function yl(e,n,i,o,u,h){qd(e,n);var v=(n.flags&128)!==0;if(!o&&!v)return u&&td(n,i,!1),ln(e,n,h);o=n.stateNode,Qv.current=n;var E=v&&typeof i.getDerivedStateFromError!="function"?null:o.render();return n.flags|=1,e!==null&&v?(n.child=kr(n,e.child,null,h),n.child=kr(n,null,E,h)):ot(e,n,E,h),n.memoizedState=o.state,u&&td(n,i,!0),n.child}function Xd(e){var n=e.stateNode;n.pendingContext?Jf(e,n.pendingContext,n.pendingContext!==n.context):n.context&&Jf(e,n.context,!1),el(e,n.containerInfo)}function Zd(e,n,i,o,u){return Er(),Go(u),n.flags|=256,ot(e,n,i,o),n.child}var vl={dehydrated:null,treeContext:null,retryLane:0};function wl(e){return{baseLanes:e,cachePool:null,transitions:null}}function Jd(e,n,i){var o=n.pendingProps,u=Me.current,h=!1,v=(n.flags&128)!==0,E;if((E=v)||(E=e!==null&&e.memoizedState===null?!1:(u&2)!==0),E?(h=!0,n.flags&=-129):(e===null||e.memoizedState!==null)&&(u|=1),Te(Me,u&1),e===null)return Ko(n),e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?((n.mode&1)===0?n.lanes=1:e.data==="$!"?n.lanes=8:n.lanes=1073741824,null):(v=o.children,e=o.fallback,h?(o=n.mode,h=n.child,v={mode:"hidden",children:v},(o&1)===0&&h!==null?(h.childLanes=0,h.pendingProps=v):h=fs(v,o,0,null),e=Xn(e,o,i,null),h.return=n,e.return=n,h.sibling=e,n.child=h,n.child.memoizedState=wl(i),n.memoizedState=vl,e):xl(n,v));if(u=e.memoizedState,u!==null&&(E=u.dehydrated,E!==null))return Xv(e,n,v,o,E,u,i);if(h){h=o.fallback,v=n.mode,u=e.child,E=u.sibling;var C={mode:"hidden",children:o.children};return(v&1)===0&&n.child!==u?(o=n.child,o.childLanes=0,o.pendingProps=C,n.deletions=null):(o=Bn(u,C),o.subtreeFlags=u.subtreeFlags&14680064),E!==null?h=Bn(E,h):(h=Xn(h,v,i,null),h.flags|=2),h.return=n,o.return=n,o.sibling=h,n.child=o,o=h,h=n.child,v=e.child.memoizedState,v=v===null?wl(i):{baseLanes:v.baseLanes|i,cachePool:null,transitions:v.transitions},h.memoizedState=v,h.childLanes=e.childLanes&~i,n.memoizedState=vl,o}return h=e.child,e=h.sibling,o=Bn(h,{mode:"visible",children:o.children}),(n.mode&1)===0&&(o.lanes=i),o.return=n,o.sibling=null,e!==null&&(i=n.deletions,i===null?(n.deletions=[e],n.flags|=16):i.push(e)),n.child=o,n.memoizedState=null,o}function xl(e,n){return n=fs({mode:"visible",children:n},e.mode,0,null),n.return=e,e.child=n}function Za(e,n,i,o){return o!==null&&Go(o),kr(n,e.child,null,i),e=xl(n,n.pendingProps.children),e.flags|=2,n.memoizedState=null,e}function Xv(e,n,i,o,u,h,v){if(i)return n.flags&256?(n.flags&=-257,o=pl(Error(a(422))),Za(e,n,v,o)):n.memoizedState!==null?(n.child=e.child,n.flags|=128,null):(h=o.fallback,u=n.mode,o=fs({mode:"visible",children:o.children},u,0,null),h=Xn(h,u,v,null),h.flags|=2,o.return=n,h.return=n,o.sibling=h,n.child=o,(n.mode&1)!==0&&kr(n,e.child,null,v),n.child.memoizedState=wl(v),n.memoizedState=vl,h);if((n.mode&1)===0)return Za(e,n,v,null);if(u.data==="$!"){if(o=u.nextSibling&&u.nextSibling.dataset,o)var E=o.dgst;return o=E,h=Error(a(419)),o=pl(h,o,void 0),Za(e,n,v,o)}if(E=(v&e.childLanes)!==0,dt||E){if(o=Ge,o!==null){switch(v&-v){case 4:u=2;break;case 16:u=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:u=32;break;case 536870912:u=268435456;break;default:u=0}u=(u&(o.suspendedLanes|v))!==0?0:u,u!==0&&u!==h.retryLane&&(h.retryLane=u,sn(e,u),Vt(o,e,u,-1))}return Ol(),o=pl(Error(a(421))),Za(e,n,v,o)}return u.data==="$?"?(n.flags|=128,n.child=e.child,n=c0.bind(null,e),u._reactRetry=n,null):(e=h.treeContext,Et=kn(u.nextSibling),xt=n,Re=!0,Dt=null,e!==null&&(St[Tt++]=rn,St[Tt++]=an,St[Tt++]=zn,rn=e.id,an=e.overflow,zn=n),n=xl(n,o.children),n.flags|=4096,n)}function em(e,n,i){e.lanes|=n;var o=e.alternate;o!==null&&(o.lanes|=n),Xo(e.return,n,i)}function El(e,n,i,o,u){var h=e.memoizedState;h===null?e.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:o,tail:i,tailMode:u}:(h.isBackwards=n,h.rendering=null,h.renderingStartTime=0,h.last=o,h.tail=i,h.tailMode=u)}function tm(e,n,i){var o=n.pendingProps,u=o.revealOrder,h=o.tail;if(ot(e,n,o.children,i),o=Me.current,(o&2)!==0)o=o&1|2,n.flags|=128;else{if(e!==null&&(e.flags&128)!==0)e:for(e=n.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&em(e,i,n);else if(e.tag===19)em(e,i,n);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===n)break e;for(;e.sibling===null;){if(e.return===null||e.return===n)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}o&=1}if(Te(Me,o),(n.mode&1)===0)n.memoizedState=null;else switch(u){case"forwards":for(i=n.child,u=null;i!==null;)e=i.alternate,e!==null&&Ha(e)===null&&(u=i),i=i.sibling;i=u,i===null?(u=n.child,n.child=null):(u=i.sibling,i.sibling=null),El(n,!1,u,i,h);break;case"backwards":for(i=null,u=n.child,n.child=null;u!==null;){if(e=u.alternate,e!==null&&Ha(e)===null){n.child=u;break}e=u.sibling,u.sibling=i,i=u,u=e}El(n,!0,i,null,h);break;case"together":El(n,!1,null,null,void 0);break;default:n.memoizedState=null}return n.child}function Ja(e,n){(n.mode&1)===0&&e!==null&&(e.alternate=null,n.alternate=null,n.flags|=2)}function ln(e,n,i){if(e!==null&&(n.dependencies=e.dependencies),Gn|=n.lanes,(i&n.childLanes)===0)return null;if(e!==null&&n.child!==e.child)throw Error(a(153));if(n.child!==null){for(e=n.child,i=Bn(e,e.pendingProps),n.child=i,i.return=n;e.sibling!==null;)e=e.sibling,i=i.sibling=Bn(e,e.pendingProps),i.return=n;i.sibling=null}return n.child}function Zv(e,n,i){switch(n.tag){case 3:Xd(n),Er();break;case 5:hd(n);break;case 1:ft(n.type)&&Da(n);break;case 4:el(n,n.stateNode.containerInfo);break;case 10:var o=n.type._context,u=n.memoizedProps.value;Te($a,o._currentValue),o._currentValue=u;break;case 13:if(o=n.memoizedState,o!==null)return o.dehydrated!==null?(Te(Me,Me.current&1),n.flags|=128,null):(i&n.child.childLanes)!==0?Jd(e,n,i):(Te(Me,Me.current&1),e=ln(e,n,i),e!==null?e.sibling:null);Te(Me,Me.current&1);break;case 19:if(o=(i&n.childLanes)!==0,(e.flags&128)!==0){if(o)return tm(e,n,i);n.flags|=128}if(u=n.memoizedState,u!==null&&(u.rendering=null,u.tail=null,u.lastEffect=null),Te(Me,Me.current),o)break;return null;case 22:case 23:return n.lanes=0,Yd(e,n,i)}return ln(e,n,i)}var nm,kl,rm,im;nm=function(e,n){for(var i=n.child;i!==null;){if(i.tag===5||i.tag===6)e.appendChild(i.stateNode);else if(i.tag!==4&&i.child!==null){i.child.return=i,i=i.child;continue}if(i===n)break;for(;i.sibling===null;){if(i.return===null||i.return===n)return;i=i.return}i.sibling.return=i.return,i=i.sibling}},kl=function(){},rm=function(e,n,i,o){var u=e.memoizedProps;if(u!==o){e=n.stateNode,Hn(Yt.current);var h=null;switch(i){case"input":u=Qs(e,u),o=Qs(e,o),h=[];break;case"select":u=K({},u,{value:void 0}),o=K({},o,{value:void 0}),h=[];break;case"textarea":u=Js(e,u),o=Js(e,o),h=[];break;default:typeof u.onClick!="function"&&typeof o.onClick=="function"&&(e.onclick=Ma)}to(i,o);var v;i=null;for(B in u)if(!o.hasOwnProperty(B)&&u.hasOwnProperty(B)&&u[B]!=null)if(B==="style"){var E=u[B];for(v in E)E.hasOwnProperty(v)&&(i||(i={}),i[v]="")}else B!=="dangerouslySetInnerHTML"&&B!=="children"&&B!=="suppressContentEditableWarning"&&B!=="suppressHydrationWarning"&&B!=="autoFocus"&&(l.hasOwnProperty(B)?h||(h=[]):(h=h||[]).push(B,null));for(B in o){var C=o[B];if(E=u!=null?u[B]:void 0,o.hasOwnProperty(B)&&C!==E&&(C!=null||E!=null))if(B==="style")if(E){for(v in E)!E.hasOwnProperty(v)||C&&C.hasOwnProperty(v)||(i||(i={}),i[v]="");for(v in C)C.hasOwnProperty(v)&&E[v]!==C[v]&&(i||(i={}),i[v]=C[v])}else i||(h||(h=[]),h.push(B,i)),i=C;else B==="dangerouslySetInnerHTML"?(C=C?C.__html:void 0,E=E?E.__html:void 0,C!=null&&E!==C&&(h=h||[]).push(B,C)):B==="children"?typeof C!="string"&&typeof C!="number"||(h=h||[]).push(B,""+C):B!=="suppressContentEditableWarning"&&B!=="suppressHydrationWarning"&&(l.hasOwnProperty(B)?(C!=null&&B==="onScroll"&&Ce("scroll",e),h||E===C||(h=[])):(h=h||[]).push(B,C))}i&&(h=h||[]).push("style",i);var B=h;(n.updateQueue=B)&&(n.flags|=4)}},im=function(e,n,i,o){i!==o&&(n.flags|=4)};function bi(e,n){if(!Re)switch(e.tailMode){case"hidden":n=e.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?e.tail=null:i.sibling=null;break;case"collapsed":i=e.tail;for(var o=null;i!==null;)i.alternate!==null&&(o=i),i=i.sibling;o===null?n||e.tail===null?e.tail=null:e.tail.sibling=null:o.sibling=null}}function nt(e){var n=e.alternate!==null&&e.alternate.child===e.child,i=0,o=0;if(n)for(var u=e.child;u!==null;)i|=u.lanes|u.childLanes,o|=u.subtreeFlags&14680064,o|=u.flags&14680064,u.return=e,u=u.sibling;else for(u=e.child;u!==null;)i|=u.lanes|u.childLanes,o|=u.subtreeFlags,o|=u.flags,u.return=e,u=u.sibling;return e.subtreeFlags|=o,e.childLanes=i,n}function Jv(e,n,i){var o=n.pendingProps;switch(Wo(n),n.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return nt(n),null;case 1:return ft(n.type)&&La(),nt(n),null;case 3:return o=n.stateNode,Cr(),be(ct),be(et),rl(),o.pendingContext&&(o.context=o.pendingContext,o.pendingContext=null),(e===null||e.child===null)&&(Va(n)?n.flags|=4:e===null||e.memoizedState.isDehydrated&&(n.flags&256)===0||(n.flags|=1024,Dt!==null&&(Bl(Dt),Dt=null))),kl(e,n),nt(n),null;case 5:tl(n);var u=Hn(Ei.current);if(i=n.type,e!==null&&n.stateNode!=null)rm(e,n,i,o,u),e.ref!==n.ref&&(n.flags|=512,n.flags|=2097152);else{if(!o){if(n.stateNode===null)throw Error(a(166));return nt(n),null}if(e=Hn(Yt.current),Va(n)){o=n.stateNode,i=n.type;var h=n.memoizedProps;switch(o[Gt]=n,o[gi]=h,e=(n.mode&1)!==0,i){case"dialog":Ce("cancel",o),Ce("close",o);break;case"iframe":case"object":case"embed":Ce("load",o);break;case"video":case"audio":for(u=0;u<mi.length;u++)Ce(mi[u],o);break;case"source":Ce("error",o);break;case"img":case"image":case"link":Ce("error",o),Ce("load",o);break;case"details":Ce("toggle",o);break;case"input":_c(o,h),Ce("invalid",o);break;case"select":o._wrapperState={wasMultiple:!!h.multiple},Ce("invalid",o);break;case"textarea":jc(o,h),Ce("invalid",o)}to(i,h),u=null;for(var v in h)if(h.hasOwnProperty(v)){var E=h[v];v==="children"?typeof E=="string"?o.textContent!==E&&(h.suppressHydrationWarning!==!0&&Aa(o.textContent,E,e),u=["children",E]):typeof E=="number"&&o.textContent!==""+E&&(h.suppressHydrationWarning!==!0&&Aa(o.textContent,E,e),u=["children",""+E]):l.hasOwnProperty(v)&&E!=null&&v==="onScroll"&&Ce("scroll",o)}switch(i){case"input":la(o),Vc(o,h,!0);break;case"textarea":la(o),zc(o);break;case"select":case"option":break;default:typeof h.onClick=="function"&&(o.onclick=Ma)}o=u,n.updateQueue=o,o!==null&&(n.flags|=4)}else{v=u.nodeType===9?u:u.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=Uc(i)),e==="http://www.w3.org/1999/xhtml"?i==="script"?(e=v.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof o.is=="string"?e=v.createElement(i,{is:o.is}):(e=v.createElement(i),i==="select"&&(v=e,o.multiple?v.multiple=!0:o.size&&(v.size=o.size))):e=v.createElementNS(e,i),e[Gt]=n,e[gi]=o,nm(e,n,!1,!1),n.stateNode=e;e:{switch(v=no(i,o),i){case"dialog":Ce("cancel",e),Ce("close",e),u=o;break;case"iframe":case"object":case"embed":Ce("load",e),u=o;break;case"video":case"audio":for(u=0;u<mi.length;u++)Ce(mi[u],e);u=o;break;case"source":Ce("error",e),u=o;break;case"img":case"image":case"link":Ce("error",e),Ce("load",e),u=o;break;case"details":Ce("toggle",e),u=o;break;case"input":_c(e,o),u=Qs(e,o),Ce("invalid",e);break;case"option":u=o;break;case"select":e._wrapperState={wasMultiple:!!o.multiple},u=K({},o,{value:void 0}),Ce("invalid",e);break;case"textarea":jc(e,o),u=Js(e,o),Ce("invalid",e);break;default:u=o}to(i,u),E=u;for(h in E)if(E.hasOwnProperty(h)){var C=E[h];h==="style"?Kc(e,C):h==="dangerouslySetInnerHTML"?(C=C?C.__html:void 0,C!=null&&Wc(e,C)):h==="children"?typeof C=="string"?(i!=="textarea"||C!=="")&&Yr(e,C):typeof C=="number"&&Yr(e,""+C):h!=="suppressContentEditableWarning"&&h!=="suppressHydrationWarning"&&h!=="autoFocus"&&(l.hasOwnProperty(h)?C!=null&&h==="onScroll"&&Ce("scroll",e):C!=null&&L(e,h,C,v))}switch(i){case"input":la(e),Vc(e,o,!1);break;case"textarea":la(e),zc(e);break;case"option":o.value!=null&&e.setAttribute("value",""+xe(o.value));break;case"select":e.multiple=!!o.multiple,h=o.value,h!=null?sr(e,!!o.multiple,h,!1):o.defaultValue!=null&&sr(e,!!o.multiple,o.defaultValue,!0);break;default:typeof u.onClick=="function"&&(e.onclick=Ma)}switch(i){case"button":case"input":case"select":case"textarea":o=!!o.autoFocus;break e;case"img":o=!0;break e;default:o=!1}}o&&(n.flags|=4)}n.ref!==null&&(n.flags|=512,n.flags|=2097152)}return nt(n),null;case 6:if(e&&n.stateNode!=null)im(e,n,e.memoizedProps,o);else{if(typeof o!="string"&&n.stateNode===null)throw Error(a(166));if(i=Hn(Ei.current),Hn(Yt.current),Va(n)){if(o=n.stateNode,i=n.memoizedProps,o[Gt]=n,(h=o.nodeValue!==i)&&(e=xt,e!==null))switch(e.tag){case 3:Aa(o.nodeValue,i,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Aa(o.nodeValue,i,(e.mode&1)!==0)}h&&(n.flags|=4)}else o=(i.nodeType===9?i:i.ownerDocument).createTextNode(o),o[Gt]=n,n.stateNode=o}return nt(n),null;case 13:if(be(Me),o=n.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(Re&&Et!==null&&(n.mode&1)!==0&&(n.flags&128)===0)od(),Er(),n.flags|=98560,h=!1;else if(h=Va(n),o!==null&&o.dehydrated!==null){if(e===null){if(!h)throw Error(a(318));if(h=n.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(a(317));h[Gt]=n}else Er(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;nt(n),h=!1}else Dt!==null&&(Bl(Dt),Dt=null),h=!0;if(!h)return n.flags&65536?n:null}return(n.flags&128)!==0?(n.lanes=i,n):(o=o!==null,o!==(e!==null&&e.memoizedState!==null)&&o&&(n.child.flags|=8192,(n.mode&1)!==0&&(e===null||(Me.current&1)!==0?We===0&&(We=3):Ol())),n.updateQueue!==null&&(n.flags|=4),nt(n),null);case 4:return Cr(),kl(e,n),e===null&&pi(n.stateNode.containerInfo),nt(n),null;case 10:return Qo(n.type._context),nt(n),null;case 17:return ft(n.type)&&La(),nt(n),null;case 19:if(be(Me),h=n.memoizedState,h===null)return nt(n),null;if(o=(n.flags&128)!==0,v=h.rendering,v===null)if(o)bi(h,!1);else{if(We!==0||e!==null&&(e.flags&128)!==0)for(e=n.child;e!==null;){if(v=Ha(e),v!==null){for(n.flags|=128,bi(h,!1),o=v.updateQueue,o!==null&&(n.updateQueue=o,n.flags|=4),n.subtreeFlags=0,o=i,i=n.child;i!==null;)h=i,e=o,h.flags&=14680066,v=h.alternate,v===null?(h.childLanes=0,h.lanes=e,h.child=null,h.subtreeFlags=0,h.memoizedProps=null,h.memoizedState=null,h.updateQueue=null,h.dependencies=null,h.stateNode=null):(h.childLanes=v.childLanes,h.lanes=v.lanes,h.child=v.child,h.subtreeFlags=0,h.deletions=null,h.memoizedProps=v.memoizedProps,h.memoizedState=v.memoizedState,h.updateQueue=v.updateQueue,h.type=v.type,e=v.dependencies,h.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),i=i.sibling;return Te(Me,Me.current&1|2),n.child}e=e.sibling}h.tail!==null&&Ve()>Nr&&(n.flags|=128,o=!0,bi(h,!1),n.lanes=4194304)}else{if(!o)if(e=Ha(v),e!==null){if(n.flags|=128,o=!0,i=e.updateQueue,i!==null&&(n.updateQueue=i,n.flags|=4),bi(h,!0),h.tail===null&&h.tailMode==="hidden"&&!v.alternate&&!Re)return nt(n),null}else 2*Ve()-h.renderingStartTime>Nr&&i!==1073741824&&(n.flags|=128,o=!0,bi(h,!1),n.lanes=4194304);h.isBackwards?(v.sibling=n.child,n.child=v):(i=h.last,i!==null?i.sibling=v:n.child=v,h.last=v)}return h.tail!==null?(n=h.tail,h.rendering=n,h.tail=n.sibling,h.renderingStartTime=Ve(),n.sibling=null,i=Me.current,Te(Me,o?i&1|2:i&1),n):(nt(n),null);case 22:case 23:return Dl(),o=n.memoizedState!==null,e!==null&&e.memoizedState!==null!==o&&(n.flags|=8192),o&&(n.mode&1)!==0?(kt&1073741824)!==0&&(nt(n),n.subtreeFlags&6&&(n.flags|=8192)):nt(n),null;case 24:return null;case 25:return null}throw Error(a(156,n.tag))}function e0(e,n){switch(Wo(n),n.tag){case 1:return ft(n.type)&&La(),e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 3:return Cr(),be(ct),be(et),rl(),e=n.flags,(e&65536)!==0&&(e&128)===0?(n.flags=e&-65537|128,n):null;case 5:return tl(n),null;case 13:if(be(Me),e=n.memoizedState,e!==null&&e.dehydrated!==null){if(n.alternate===null)throw Error(a(340));Er()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 19:return be(Me),null;case 4:return Cr(),null;case 10:return Qo(n.type._context),null;case 22:case 23:return Dl(),null;case 24:return null;default:return null}}var es=!1,rt=!1,t0=typeof WeakSet=="function"?WeakSet:Set,Y=null;function Pr(e,n){var i=e.ref;if(i!==null)if(typeof i=="function")try{i(null)}catch(o){_e(e,n,o)}else i.current=null}function Sl(e,n,i){try{i()}catch(o){_e(e,n,o)}}var am=!1;function n0(e,n){if(Do=xa,e=_f(),Po(e)){if("selectionStart"in e)var i={start:e.selectionStart,end:e.selectionEnd};else e:{i=(i=e.ownerDocument)&&i.defaultView||window;var o=i.getSelection&&i.getSelection();if(o&&o.rangeCount!==0){i=o.anchorNode;var u=o.anchorOffset,h=o.focusNode;o=o.focusOffset;try{i.nodeType,h.nodeType}catch{i=null;break e}var v=0,E=-1,C=-1,B=0,F=0,V=e,O=null;t:for(;;){for(var H;V!==i||u!==0&&V.nodeType!==3||(E=v+u),V!==h||o!==0&&V.nodeType!==3||(C=v+o),V.nodeType===3&&(v+=V.nodeValue.length),(H=V.firstChild)!==null;)O=V,V=H;for(;;){if(V===e)break t;if(O===i&&++B===u&&(E=v),O===h&&++F===o&&(C=v),(H=V.nextSibling)!==null)break;V=O,O=V.parentNode}V=H}i=E===-1||C===-1?null:{start:E,end:C}}else i=null}i=i||{start:0,end:0}}else i=null;for(Oo={focusedElem:e,selectionRange:i},xa=!1,Y=n;Y!==null;)if(n=Y,e=n.child,(n.subtreeFlags&1028)!==0&&e!==null)e.return=n,Y=e;else for(;Y!==null;){n=Y;try{var q=n.alternate;if((n.flags&1024)!==0)switch(n.tag){case 0:case 11:case 15:break;case 1:if(q!==null){var X=q.memoizedProps,je=q.memoizedState,A=n.stateNode,b=A.getSnapshotBeforeUpdate(n.elementType===n.type?X:Ot(n.type,X),je);A.__reactInternalSnapshotBeforeUpdate=b}break;case 3:var M=n.stateNode.containerInfo;M.nodeType===1?M.textContent="":M.nodeType===9&&M.documentElement&&M.removeChild(M.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(a(163))}}catch(z){_e(n,n.return,z)}if(e=n.sibling,e!==null){e.return=n.return,Y=e;break}Y=n.return}return q=am,am=!1,q}function Pi(e,n,i){var o=n.updateQueue;if(o=o!==null?o.lastEffect:null,o!==null){var u=o=o.next;do{if((u.tag&e)===e){var h=u.destroy;u.destroy=void 0,h!==void 0&&Sl(n,i,h)}u=u.next}while(u!==o)}}function ts(e,n){if(n=n.updateQueue,n=n!==null?n.lastEffect:null,n!==null){var i=n=n.next;do{if((i.tag&e)===e){var o=i.create;i.destroy=o()}i=i.next}while(i!==n)}}function Tl(e){var n=e.ref;if(n!==null){var i=e.stateNode;switch(e.tag){case 5:e=i;break;default:e=i}typeof n=="function"?n(e):n.current=e}}function sm(e){var n=e.alternate;n!==null&&(e.alternate=null,sm(n)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(n=e.stateNode,n!==null&&(delete n[Gt],delete n[gi],delete n[jo],delete n[Fv],delete n[Vv])),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 om(e){return e.tag===5||e.tag===3||e.tag===4}function lm(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||om(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 Cl(e,n,i){var o=e.tag;if(o===5||o===6)e=e.stateNode,n?i.nodeType===8?i.parentNode.insertBefore(e,n):i.insertBefore(e,n):(i.nodeType===8?(n=i.parentNode,n.insertBefore(e,i)):(n=i,n.appendChild(e)),i=i._reactRootContainer,i!=null||n.onclick!==null||(n.onclick=Ma));else if(o!==4&&(e=e.child,e!==null))for(Cl(e,n,i),e=e.sibling;e!==null;)Cl(e,n,i),e=e.sibling}function bl(e,n,i){var o=e.tag;if(o===5||o===6)e=e.stateNode,n?i.insertBefore(e,n):i.appendChild(e);else if(o!==4&&(e=e.child,e!==null))for(bl(e,n,i),e=e.sibling;e!==null;)bl(e,n,i),e=e.sibling}var Qe=null,_t=!1;function Rn(e,n,i){for(i=i.child;i!==null;)um(e,n,i),i=i.sibling}function um(e,n,i){if(Kt&&typeof Kt.onCommitFiberUnmount=="function")try{Kt.onCommitFiberUnmount(pa,i)}catch{}switch(i.tag){case 5:rt||Pr(i,n);case 6:var o=Qe,u=_t;Qe=null,Rn(e,n,i),Qe=o,_t=u,Qe!==null&&(_t?(e=Qe,i=i.stateNode,e.nodeType===8?e.parentNode.removeChild(i):e.removeChild(i)):Qe.removeChild(i.stateNode));break;case 18:Qe!==null&&(_t?(e=Qe,i=i.stateNode,e.nodeType===8?Vo(e.parentNode,i):e.nodeType===1&&Vo(e,i),ai(e)):Vo(Qe,i.stateNode));break;case 4:o=Qe,u=_t,Qe=i.stateNode.containerInfo,_t=!0,Rn(e,n,i),Qe=o,_t=u;break;case 0:case 11:case 14:case 15:if(!rt&&(o=i.updateQueue,o!==null&&(o=o.lastEffect,o!==null))){u=o=o.next;do{var h=u,v=h.destroy;h=h.tag,v!==void 0&&((h&2)!==0||(h&4)!==0)&&Sl(i,n,v),u=u.next}while(u!==o)}Rn(e,n,i);break;case 1:if(!rt&&(Pr(i,n),o=i.stateNode,typeof o.componentWillUnmount=="function"))try{o.props=i.memoizedProps,o.state=i.memoizedState,o.componentWillUnmount()}catch(E){_e(i,n,E)}Rn(e,n,i);break;case 21:Rn(e,n,i);break;case 22:i.mode&1?(rt=(o=rt)||i.memoizedState!==null,Rn(e,n,i),rt=o):Rn(e,n,i);break;default:Rn(e,n,i)}}function cm(e){var n=e.updateQueue;if(n!==null){e.updateQueue=null;var i=e.stateNode;i===null&&(i=e.stateNode=new t0),n.forEach(function(o){var u=f0.bind(null,e,o);i.has(o)||(i.add(o),o.then(u,u))})}}function Ft(e,n){var i=n.deletions;if(i!==null)for(var o=0;o<i.length;o++){var u=i[o];try{var h=e,v=n,E=v;e:for(;E!==null;){switch(E.tag){case 5:Qe=E.stateNode,_t=!1;break e;case 3:Qe=E.stateNode.containerInfo,_t=!0;break e;case 4:Qe=E.stateNode.containerInfo,_t=!0;break e}E=E.return}if(Qe===null)throw Error(a(160));um(h,v,u),Qe=null,_t=!1;var C=u.alternate;C!==null&&(C.return=null),u.return=null}catch(B){_e(u,n,B)}}if(n.subtreeFlags&12854)for(n=n.child;n!==null;)fm(n,e),n=n.sibling}function fm(e,n){var i=e.alternate,o=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Ft(n,e),Qt(e),o&4){try{Pi(3,e,e.return),ts(3,e)}catch(X){_e(e,e.return,X)}try{Pi(5,e,e.return)}catch(X){_e(e,e.return,X)}}break;case 1:Ft(n,e),Qt(e),o&512&&i!==null&&Pr(i,i.return);break;case 5:if(Ft(n,e),Qt(e),o&512&&i!==null&&Pr(i,i.return),e.flags&32){var u=e.stateNode;try{Yr(u,"")}catch(X){_e(e,e.return,X)}}if(o&4&&(u=e.stateNode,u!=null)){var h=e.memoizedProps,v=i!==null?i.memoizedProps:h,E=e.type,C=e.updateQueue;if(e.updateQueue=null,C!==null)try{E==="input"&&h.type==="radio"&&h.name!=null&&Fc(u,h),no(E,v);var B=no(E,h);for(v=0;v<C.length;v+=2){var F=C[v],V=C[v+1];F==="style"?Kc(u,V):F==="dangerouslySetInnerHTML"?Wc(u,V):F==="children"?Yr(u,V):L(u,F,V,B)}switch(E){case"input":Xs(u,h);break;case"textarea":$c(u,h);break;case"select":var O=u._wrapperState.wasMultiple;u._wrapperState.wasMultiple=!!h.multiple;var H=h.value;H!=null?sr(u,!!h.multiple,H,!1):O!==!!h.multiple&&(h.defaultValue!=null?sr(u,!!h.multiple,h.defaultValue,!0):sr(u,!!h.multiple,h.multiple?[]:"",!1))}u[gi]=h}catch(X){_e(e,e.return,X)}}break;case 6:if(Ft(n,e),Qt(e),o&4){if(e.stateNode===null)throw Error(a(162));u=e.stateNode,h=e.memoizedProps;try{u.nodeValue=h}catch(X){_e(e,e.return,X)}}break;case 3:if(Ft(n,e),Qt(e),o&4&&i!==null&&i.memoizedState.isDehydrated)try{ai(n.containerInfo)}catch(X){_e(e,e.return,X)}break;case 4:Ft(n,e),Qt(e);break;case 13:Ft(n,e),Qt(e),u=e.child,u.flags&8192&&(h=u.memoizedState!==null,u.stateNode.isHidden=h,!h||u.alternate!==null&&u.alternate.memoizedState!==null||(Nl=Ve())),o&4&&cm(e);break;case 22:if(F=i!==null&&i.memoizedState!==null,e.mode&1?(rt=(B=rt)||F,Ft(n,e),rt=B):Ft(n,e),Qt(e),o&8192){if(B=e.memoizedState!==null,(e.stateNode.isHidden=B)&&!F&&(e.mode&1)!==0)for(Y=e,F=e.child;F!==null;){for(V=Y=F;Y!==null;){switch(O=Y,H=O.child,O.tag){case 0:case 11:case 14:case 15:Pi(4,O,O.return);break;case 1:Pr(O,O.return);var q=O.stateNode;if(typeof q.componentWillUnmount=="function"){o=O,i=O.return;try{n=o,q.props=n.memoizedProps,q.state=n.memoizedState,q.componentWillUnmount()}catch(X){_e(o,i,X)}}break;case 5:Pr(O,O.return);break;case 22:if(O.memoizedState!==null){pm(V);continue}}H!==null?(H.return=O,Y=H):pm(V)}F=F.sibling}e:for(F=null,V=e;;){if(V.tag===5){if(F===null){F=V;try{u=V.stateNode,B?(h=u.style,typeof h.setProperty=="function"?h.setProperty("display","none","important"):h.display="none"):(E=V.stateNode,C=V.memoizedProps.style,v=C!=null&&C.hasOwnProperty("display")?C.display:null,E.style.display=Hc("display",v))}catch(X){_e(e,e.return,X)}}}else if(V.tag===6){if(F===null)try{V.stateNode.nodeValue=B?"":V.memoizedProps}catch(X){_e(e,e.return,X)}}else if((V.tag!==22&&V.tag!==23||V.memoizedState===null||V===e)&&V.child!==null){V.child.return=V,V=V.child;continue}if(V===e)break e;for(;V.sibling===null;){if(V.return===null||V.return===e)break e;F===V&&(F=null),V=V.return}F===V&&(F=null),V.sibling.return=V.return,V=V.sibling}}break;case 19:Ft(n,e),Qt(e),o&4&&cm(e);break;case 21:break;default:Ft(n,e),Qt(e)}}function Qt(e){var n=e.flags;if(n&2){try{e:{for(var i=e.return;i!==null;){if(om(i)){var o=i;break e}i=i.return}throw Error(a(160))}switch(o.tag){case 5:var u=o.stateNode;o.flags&32&&(Yr(u,""),o.flags&=-33);var h=lm(e);bl(e,h,u);break;case 3:case 4:var v=o.stateNode.containerInfo,E=lm(e);Cl(e,E,v);break;default:throw Error(a(161))}}catch(C){_e(e,e.return,C)}e.flags&=-3}n&4096&&(e.flags&=-4097)}function r0(e,n,i){Y=e,dm(e)}function dm(e,n,i){for(var o=(e.mode&1)!==0;Y!==null;){var u=Y,h=u.child;if(u.tag===22&&o){var v=u.memoizedState!==null||es;if(!v){var E=u.alternate,C=E!==null&&E.memoizedState!==null||rt;E=es;var B=rt;if(es=v,(rt=C)&&!B)for(Y=u;Y!==null;)v=Y,C=v.child,v.tag===22&&v.memoizedState!==null?hm(u):C!==null?(C.return=v,Y=C):hm(u);for(;h!==null;)Y=h,dm(h),h=h.sibling;Y=u,es=E,rt=B}mm(e)}else(u.subtreeFlags&8772)!==0&&h!==null?(h.return=u,Y=h):mm(e)}}function mm(e){for(;Y!==null;){var n=Y;if((n.flags&8772)!==0){var i=n.alternate;try{if((n.flags&8772)!==0)switch(n.tag){case 0:case 11:case 15:rt||ts(5,n);break;case 1:var o=n.stateNode;if(n.flags&4&&!rt)if(i===null)o.componentDidMount();else{var u=n.elementType===n.type?i.memoizedProps:Ot(n.type,i.memoizedProps);o.componentDidUpdate(u,i.memoizedState,o.__reactInternalSnapshotBeforeUpdate)}var h=n.updateQueue;h!==null&&pd(n,h,o);break;case 3:var v=n.updateQueue;if(v!==null){if(i=null,n.child!==null)switch(n.child.tag){case 5:i=n.child.stateNode;break;case 1:i=n.child.stateNode}pd(n,v,i)}break;case 5:var E=n.stateNode;if(i===null&&n.flags&4){i=E;var C=n.memoizedProps;switch(n.type){case"button":case"input":case"select":case"textarea":C.autoFocus&&i.focus();break;case"img":C.src&&(i.src=C.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(n.memoizedState===null){var B=n.alternate;if(B!==null){var F=B.memoizedState;if(F!==null){var V=F.dehydrated;V!==null&&ai(V)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(a(163))}rt||n.flags&512&&Tl(n)}catch(O){_e(n,n.return,O)}}if(n===e){Y=null;break}if(i=n.sibling,i!==null){i.return=n.return,Y=i;break}Y=n.return}}function pm(e){for(;Y!==null;){var n=Y;if(n===e){Y=null;break}var i=n.sibling;if(i!==null){i.return=n.return,Y=i;break}Y=n.return}}function hm(e){for(;Y!==null;){var n=Y;try{switch(n.tag){case 0:case 11:case 15:var i=n.return;try{ts(4,n)}catch(C){_e(n,i,C)}break;case 1:var o=n.stateNode;if(typeof o.componentDidMount=="function"){var u=n.return;try{o.componentDidMount()}catch(C){_e(n,u,C)}}var h=n.return;try{Tl(n)}catch(C){_e(n,h,C)}break;case 5:var v=n.return;try{Tl(n)}catch(C){_e(n,v,C)}}}catch(C){_e(n,n.return,C)}if(n===e){Y=null;break}var E=n.sibling;if(E!==null){E.return=n.return,Y=E;break}Y=n.return}}var i0=Math.ceil,ns=$.ReactCurrentDispatcher,Pl=$.ReactCurrentOwner,Pt=$.ReactCurrentBatchConfig,fe=0,Ge=null,ze=null,Xe=0,kt=0,Rr=Sn(0),We=0,Ri=null,Gn=0,rs=0,Rl=0,Ni=null,mt=null,Nl=0,Nr=1/0,un=null,is=!1,Il=null,Nn=null,as=!1,In=null,ss=0,Ii=0,Al=null,os=-1,ls=0;function lt(){return(fe&6)!==0?Ve():os!==-1?os:os=Ve()}function An(e){return(e.mode&1)===0?1:(fe&2)!==0&&Xe!==0?Xe&-Xe:$v.transition!==null?(ls===0&&(ls=lf()),ls):(e=Ee,e!==0||(e=window.event,e=e===void 0?16:yf(e.type)),e)}function Vt(e,n,i,o){if(50<Ii)throw Ii=0,Al=null,Error(a(185));ei(e,i,o),((fe&2)===0||e!==Ge)&&(e===Ge&&((fe&2)===0&&(rs|=i),We===4&&Mn(e,Xe)),pt(e,o),i===1&&fe===0&&(n.mode&1)===0&&(Nr=Ve()+500,Oa&&Cn()))}function pt(e,n){var i=e.callbackNode;$y(e,n);var o=ya(e,e===Ge?Xe:0);if(o===0)i!==null&&af(i),e.callbackNode=null,e.callbackPriority=0;else if(n=o&-o,e.callbackPriority!==n){if(i!=null&&af(i),n===1)e.tag===0?jv(ym.bind(null,e)):nd(ym.bind(null,e)),Ov(function(){(fe&6)===0&&Cn()}),i=null;else{switch(uf(o)){case 1:i=uo;break;case 4:i=sf;break;case 16:i=ma;break;case 536870912:i=of;break;default:i=ma}i=Cm(i,gm.bind(null,e))}e.callbackPriority=n,e.callbackNode=i}}function gm(e,n){if(os=-1,ls=0,(fe&6)!==0)throw Error(a(327));var i=e.callbackNode;if(Ir()&&e.callbackNode!==i)return null;var o=ya(e,e===Ge?Xe:0);if(o===0)return null;if((o&30)!==0||(o&e.expiredLanes)!==0||n)n=us(e,o);else{n=o;var u=fe;fe|=2;var h=wm();(Ge!==e||Xe!==n)&&(un=null,Nr=Ve()+500,qn(e,n));do try{o0();break}catch(E){vm(e,E)}while(!0);qo(),ns.current=h,fe=u,ze!==null?n=0:(Ge=null,Xe=0,n=We)}if(n!==0){if(n===2&&(u=co(e),u!==0&&(o=u,n=Ml(e,u))),n===1)throw i=Ri,qn(e,0),Mn(e,o),pt(e,Ve()),i;if(n===6)Mn(e,o);else{if(u=e.current.alternate,(o&30)===0&&!a0(u)&&(n=us(e,o),n===2&&(h=co(e),h!==0&&(o=h,n=Ml(e,h))),n===1))throw i=Ri,qn(e,0),Mn(e,o),pt(e,Ve()),i;switch(e.finishedWork=u,e.finishedLanes=o,n){case 0:case 1:throw Error(a(345));case 2:Qn(e,mt,un);break;case 3:if(Mn(e,o),(o&130023424)===o&&(n=Nl+500-Ve(),10<n)){if(ya(e,0)!==0)break;if(u=e.suspendedLanes,(u&o)!==o){lt(),e.pingedLanes|=e.suspendedLanes&u;break}e.timeoutHandle=Fo(Qn.bind(null,e,mt,un),n);break}Qn(e,mt,un);break;case 4:if(Mn(e,o),(o&4194240)===o)break;for(n=e.eventTimes,u=-1;0<o;){var v=31-Bt(o);h=1<<v,v=n[v],v>u&&(u=v),o&=~h}if(o=u,o=Ve()-o,o=(120>o?120:480>o?480:1080>o?1080:1920>o?1920:3e3>o?3e3:4320>o?4320:1960*i0(o/1960))-o,10<o){e.timeoutHandle=Fo(Qn.bind(null,e,mt,un),o);break}Qn(e,mt,un);break;case 5:Qn(e,mt,un);break;default:throw Error(a(329))}}}return pt(e,Ve()),e.callbackNode===i?gm.bind(null,e):null}function Ml(e,n){var i=Ni;return e.current.memoizedState.isDehydrated&&(qn(e,n).flags|=256),e=us(e,n),e!==2&&(n=mt,mt=i,n!==null&&Bl(n)),e}function Bl(e){mt===null?mt=e:mt.push.apply(mt,e)}function a0(e){for(var n=e;;){if(n.flags&16384){var i=n.updateQueue;if(i!==null&&(i=i.stores,i!==null))for(var o=0;o<i.length;o++){var u=i[o],h=u.getSnapshot;u=u.value;try{if(!Lt(h(),u))return!1}catch{return!1}}}if(i=n.child,n.subtreeFlags&16384&&i!==null)i.return=n,n=i;else{if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function Mn(e,n){for(n&=~Rl,n&=~rs,e.suspendedLanes|=n,e.pingedLanes&=~n,e=e.expirationTimes;0<n;){var i=31-Bt(n),o=1<<i;e[i]=-1,n&=~o}}function ym(e){if((fe&6)!==0)throw Error(a(327));Ir();var n=ya(e,0);if((n&1)===0)return pt(e,Ve()),null;var i=us(e,n);if(e.tag!==0&&i===2){var o=co(e);o!==0&&(n=o,i=Ml(e,o))}if(i===1)throw i=Ri,qn(e,0),Mn(e,n),pt(e,Ve()),i;if(i===6)throw Error(a(345));return e.finishedWork=e.current.alternate,e.finishedLanes=n,Qn(e,mt,un),pt(e,Ve()),null}function Ll(e,n){var i=fe;fe|=1;try{return e(n)}finally{fe=i,fe===0&&(Nr=Ve()+500,Oa&&Cn())}}function Yn(e){In!==null&&In.tag===0&&(fe&6)===0&&Ir();var n=fe;fe|=1;var i=Pt.transition,o=Ee;try{if(Pt.transition=null,Ee=1,e)return e()}finally{Ee=o,Pt.transition=i,fe=n,(fe&6)===0&&Cn()}}function Dl(){kt=Rr.current,be(Rr)}function qn(e,n){e.finishedWork=null,e.finishedLanes=0;var i=e.timeoutHandle;if(i!==-1&&(e.timeoutHandle=-1,Dv(i)),ze!==null)for(i=ze.return;i!==null;){var o=i;switch(Wo(o),o.tag){case 1:o=o.type.childContextTypes,o!=null&&La();break;case 3:Cr(),be(ct),be(et),rl();break;case 5:tl(o);break;case 4:Cr();break;case 13:be(Me);break;case 19:be(Me);break;case 10:Qo(o.type._context);break;case 22:case 23:Dl()}i=i.return}if(Ge=e,ze=e=Bn(e.current,null),Xe=kt=n,We=0,Ri=null,Rl=rs=Gn=0,mt=Ni=null,Wn!==null){for(n=0;n<Wn.length;n++)if(i=Wn[n],o=i.interleaved,o!==null){i.interleaved=null;var u=o.next,h=i.pending;if(h!==null){var v=h.next;h.next=u,o.next=v}i.pending=o}Wn=null}return e}function vm(e,n){do{var i=ze;try{if(qo(),Ka.current=Qa,Ga){for(var o=Be.memoizedState;o!==null;){var u=o.queue;u!==null&&(u.pending=null),o=o.next}Ga=!1}if(Kn=0,Ke=Ue=Be=null,ki=!1,Si=0,Pl.current=null,i===null||i.return===null){We=1,Ri=n,ze=null;break}e:{var h=e,v=i.return,E=i,C=n;if(n=Xe,E.flags|=32768,C!==null&&typeof C=="object"&&typeof C.then=="function"){var B=C,F=E,V=F.tag;if((F.mode&1)===0&&(V===0||V===11||V===15)){var O=F.alternate;O?(F.updateQueue=O.updateQueue,F.memoizedState=O.memoizedState,F.lanes=O.lanes):(F.updateQueue=null,F.memoizedState=null)}var H=Ud(v);if(H!==null){H.flags&=-257,Wd(H,v,E,h,n),H.mode&1&&zd(h,B,n),n=H,C=B;var q=n.updateQueue;if(q===null){var X=new Set;X.add(C),n.updateQueue=X}else q.add(C);break e}else{if((n&1)===0){zd(h,B,n),Ol();break e}C=Error(a(426))}}else if(Re&&E.mode&1){var je=Ud(v);if(je!==null){(je.flags&65536)===0&&(je.flags|=256),Wd(je,v,E,h,n),Go(br(C,E));break e}}h=C=br(C,E),We!==4&&(We=2),Ni===null?Ni=[h]:Ni.push(h),h=v;do{switch(h.tag){case 3:h.flags|=65536,n&=-n,h.lanes|=n;var A=jd(h,C,n);md(h,A);break e;case 1:E=C;var b=h.type,M=h.stateNode;if((h.flags&128)===0&&(typeof b.getDerivedStateFromError=="function"||M!==null&&typeof M.componentDidCatch=="function"&&(Nn===null||!Nn.has(M)))){h.flags|=65536,n&=-n,h.lanes|=n;var z=$d(h,E,n);md(h,z);break e}}h=h.return}while(h!==null)}Em(i)}catch(Z){n=Z,ze===i&&i!==null&&(ze=i=i.return);continue}break}while(!0)}function wm(){var e=ns.current;return ns.current=Qa,e===null?Qa:e}function Ol(){(We===0||We===3||We===2)&&(We=4),Ge===null||(Gn&268435455)===0&&(rs&268435455)===0||Mn(Ge,Xe)}function us(e,n){var i=fe;fe|=2;var o=wm();(Ge!==e||Xe!==n)&&(un=null,qn(e,n));do try{s0();break}catch(u){vm(e,u)}while(!0);if(qo(),fe=i,ns.current=o,ze!==null)throw Error(a(261));return Ge=null,Xe=0,We}function s0(){for(;ze!==null;)xm(ze)}function o0(){for(;ze!==null&&!My();)xm(ze)}function xm(e){var n=Tm(e.alternate,e,kt);e.memoizedProps=e.pendingProps,n===null?Em(e):ze=n,Pl.current=null}function Em(e){var n=e;do{var i=n.alternate;if(e=n.return,(n.flags&32768)===0){if(i=Jv(i,n,kt),i!==null){ze=i;return}}else{if(i=e0(i,n),i!==null){i.flags&=32767,ze=i;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{We=6,ze=null;return}}if(n=n.sibling,n!==null){ze=n;return}ze=n=e}while(n!==null);We===0&&(We=5)}function Qn(e,n,i){var o=Ee,u=Pt.transition;try{Pt.transition=null,Ee=1,l0(e,n,i,o)}finally{Pt.transition=u,Ee=o}return null}function l0(e,n,i,o){do Ir();while(In!==null);if((fe&6)!==0)throw Error(a(327));i=e.finishedWork;var u=e.finishedLanes;if(i===null)return null;if(e.finishedWork=null,e.finishedLanes=0,i===e.current)throw Error(a(177));e.callbackNode=null,e.callbackPriority=0;var h=i.lanes|i.childLanes;if(zy(e,h),e===Ge&&(ze=Ge=null,Xe=0),(i.subtreeFlags&2064)===0&&(i.flags&2064)===0||as||(as=!0,Cm(ma,function(){return Ir(),null})),h=(i.flags&15990)!==0,(i.subtreeFlags&15990)!==0||h){h=Pt.transition,Pt.transition=null;var v=Ee;Ee=1;var E=fe;fe|=4,Pl.current=null,n0(e,i),fm(i,e),Rv(Oo),xa=!!Do,Oo=Do=null,e.current=i,r0(i),By(),fe=E,Ee=v,Pt.transition=h}else e.current=i;if(as&&(as=!1,In=e,ss=u),h=e.pendingLanes,h===0&&(Nn=null),Oy(i.stateNode),pt(e,Ve()),n!==null)for(o=e.onRecoverableError,i=0;i<n.length;i++)u=n[i],o(u.value,{componentStack:u.stack,digest:u.digest});if(is)throw is=!1,e=Il,Il=null,e;return(ss&1)!==0&&e.tag!==0&&Ir(),h=e.pendingLanes,(h&1)!==0?e===Al?Ii++:(Ii=0,Al=e):Ii=0,Cn(),null}function Ir(){if(In!==null){var e=uf(ss),n=Pt.transition,i=Ee;try{if(Pt.transition=null,Ee=16>e?16:e,In===null)var o=!1;else{if(e=In,In=null,ss=0,(fe&6)!==0)throw Error(a(331));var u=fe;for(fe|=4,Y=e.current;Y!==null;){var h=Y,v=h.child;if((Y.flags&16)!==0){var E=h.deletions;if(E!==null){for(var C=0;C<E.length;C++){var B=E[C];for(Y=B;Y!==null;){var F=Y;switch(F.tag){case 0:case 11:case 15:Pi(8,F,h)}var V=F.child;if(V!==null)V.return=F,Y=V;else for(;Y!==null;){F=Y;var O=F.sibling,H=F.return;if(sm(F),F===B){Y=null;break}if(O!==null){O.return=H,Y=O;break}Y=H}}}var q=h.alternate;if(q!==null){var X=q.child;if(X!==null){q.child=null;do{var je=X.sibling;X.sibling=null,X=je}while(X!==null)}}Y=h}}if((h.subtreeFlags&2064)!==0&&v!==null)v.return=h,Y=v;else e:for(;Y!==null;){if(h=Y,(h.flags&2048)!==0)switch(h.tag){case 0:case 11:case 15:Pi(9,h,h.return)}var A=h.sibling;if(A!==null){A.return=h.return,Y=A;break e}Y=h.return}}var b=e.current;for(Y=b;Y!==null;){v=Y;var M=v.child;if((v.subtreeFlags&2064)!==0&&M!==null)M.return=v,Y=M;else e:for(v=b;Y!==null;){if(E=Y,(E.flags&2048)!==0)try{switch(E.tag){case 0:case 11:case 15:ts(9,E)}}catch(Z){_e(E,E.return,Z)}if(E===v){Y=null;break e}var z=E.sibling;if(z!==null){z.return=E.return,Y=z;break e}Y=E.return}}if(fe=u,Cn(),Kt&&typeof Kt.onPostCommitFiberRoot=="function")try{Kt.onPostCommitFiberRoot(pa,e)}catch{}o=!0}return o}finally{Ee=i,Pt.transition=n}}return!1}function km(e,n,i){n=br(i,n),n=jd(e,n,1),e=Pn(e,n,1),n=lt(),e!==null&&(ei(e,1,n),pt(e,n))}function _e(e,n,i){if(e.tag===3)km(e,e,i);else for(;n!==null;){if(n.tag===3){km(n,e,i);break}else if(n.tag===1){var o=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof o.componentDidCatch=="function"&&(Nn===null||!Nn.has(o))){e=br(i,e),e=$d(n,e,1),n=Pn(n,e,1),e=lt(),n!==null&&(ei(n,1,e),pt(n,e));break}}n=n.return}}function u0(e,n,i){var o=e.pingCache;o!==null&&o.delete(n),n=lt(),e.pingedLanes|=e.suspendedLanes&i,Ge===e&&(Xe&i)===i&&(We===4||We===3&&(Xe&130023424)===Xe&&500>Ve()-Nl?qn(e,0):Rl|=i),pt(e,n)}function Sm(e,n){n===0&&((e.mode&1)===0?n=1:(n=ga,ga<<=1,(ga&130023424)===0&&(ga=4194304)));var i=lt();e=sn(e,n),e!==null&&(ei(e,n,i),pt(e,i))}function c0(e){var n=e.memoizedState,i=0;n!==null&&(i=n.retryLane),Sm(e,i)}
vendor: 4,259 bytes, line 32
32function f0(e,n){var i=0;switch(e.tag){case 13:var o=e.stateNode,u=e.memoizedState;u!==null&&(i=u.retryLane);break;case 19:o=e.stateNode;break;default:throw Error(a(314))}o!==null&&o.delete(n),Sm(e,i)}var Tm;Tm=function(e,n,i){if(e!==null)if(e.memoizedProps!==n.pendingProps||ct.current)dt=!0;else{if((e.lanes&i)===0&&(n.flags&128)===0)return dt=!1,Zv(e,n,i);dt=(e.flags&131072)!==0}else dt=!1,Re&&(n.flags&1048576)!==0&&rd(n,Fa,n.index);switch(n.lanes=0,n.tag){case 2:var o=n.type;Ja(e,n),e=n.pendingProps;var u=vr(n,et.current);Tr(n,i),u=sl(null,n,o,e,u,i);var h=ol();return n.flags|=1,typeof u=="object"&&u!==null&&typeof u.render=="function"&&u.$$typeof===void 0?(n.tag=1,n.memoizedState=null,n.updateQueue=null,ft(o)?(h=!0,Da(n)):h=!1,n.memoizedState=u.state!==null&&u.state!==void 0?u.state:null,Jo(n),u.updater=Xa,n.stateNode=u,u._reactInternals=n,ml(n,o,e,i),n=yl(null,n,o,!0,h,i)):(n.tag=0,Re&&h&&Uo(n),ot(null,n,u,i),n=n.child),n;case 16:o=n.elementType;e:{switch(Ja(e,n),e=n.pendingProps,u=o._init,o=u(o._payload),n.type=o,u=n.tag=m0(o),e=Ot(o,e),u){case 0:n=gl(null,n,o,e,i);break e;case 1:n=Qd(null,n,o,e,i);break e;case 11:n=Hd(null,n,o,e,i);break e;case 14:n=Kd(null,n,o,Ot(o.type,e),i);break e}throw Error(a(306,o,""))}return n;case 0:return o=n.type,u=n.pendingProps,u=n.elementType===o?u:Ot(o,u),gl(e,n,o,u,i);case 1:return o=n.type,u=n.pendingProps,u=n.elementType===o?u:Ot(o,u),Qd(e,n,o,u,i);case 3:e:{if(Xd(n),e===null)throw Error(a(387));o=n.pendingProps,h=n.memoizedState,u=h.element,dd(e,n),Wa(n,o,null,i);var v=n.memoizedState;if(o=v.element,h.isDehydrated)if(h={element:o,isDehydrated:!1,cache:v.cache,pendingSuspenseBoundaries:v.pendingSuspenseBoundaries,transitions:v.transitions},n.updateQueue.baseState=h,n.memoizedState=h,n.flags&256){u=br(Error(a(423)),n),n=Zd(e,n,o,i,u);break e}else if(o!==u){u=br(Error(a(424)),n),n=Zd(e,n,o,i,u);break e}else for(Et=kn(n.stateNode.containerInfo.firstChild),xt=n,Re=!0,Dt=null,i=cd(n,null,o,i),n.child=i;i;)i.flags=i.flags&-3|4096,i=i.sibling;else{if(Er(),o===u){n=ln(e,n,i);break e}ot(e,n,o,i)}n=n.child}return n;case 5:return hd(n),e===null&&Ko(n),o=n.type,u=n.pendingProps,h=e!==null?e.memoizedProps:null,v=u.children,_o(o,u)?v=null:h!==null&&_o(o,h)&&(n.flags|=32),qd(e,n),ot(e,n,v,i),n.child;case 6:return e===null&&Ko(n),null;case 13:return Jd(e,n,i);case 4:return el(n,n.stateNode.containerInfo),o=n.pendingProps,e===null?n.child=kr(n,null,o,i):ot(e,n,o,i),n.child;case 11:return o=n.type,u=n.pendingProps,u=n.elementType===o?u:Ot(o,u),Hd(e,n,o,u,i);case 7:return ot(e,n,n.pendingProps,i),n.child;case 8:return ot(e,n,n.pendingProps.children,i),n.child;case 12:return ot(e,n,n.pendingProps.children,i),n.child;case 10:e:{if(o=n.type._context,u=n.pendingProps,h=n.memoizedProps,v=u.value,Te($a,o._currentValue),o._currentValue=v,h!==null)if(Lt(h.value,v)){if(h.children===u.children&&!ct.current){n=ln(e,n,i);break e}}else for(h=n.child,h!==null&&(h.return=n);h!==null;){var E=h.dependencies;if(E!==null){v=h.child;for(var C=E.firstContext;C!==null;){if(C.context===o){if(h.tag===1){C=on(-1,i&-i),C.tag=2;var B=h.updateQueue;if(B!==null){B=B.shared;var F=B.pending;F===null?C.next=C:(C.next=F.next,F.next=C),B.pending=C}}h.lanes|=i,C=h.alternate,C!==null&&(C.lanes|=i),Xo(h.return,i,n),E.lanes|=i;break}C=C.next}}else if(h.tag===10)v=h.type===n.type?null:h.child;else if(h.tag===18){if(v=h.return,v===null)throw Error(a(341));v.lanes|=i,E=v.alternate,E!==null&&(E.lanes|=i),Xo(v,i,n),v=h.sibling}else v=h.child;if(v!==null)v.return=h;else for(v=h;v!==null;){if(v===n){v=null;break}if(h=v.sibling,h!==null){h.return=v.return,v=h;break}v=v.return}h=v}ot(e,n,u.children,i),n=n.child}return n;case 9:return u=n.type,o=n.pendingProps.children,Tr(n,i),u=Ct(u),o=o(u),n.flags|=1,ot(e,n,o,i),n.child;case 14:return o=n.type,u=Ot(o,n.pendingProps),u=Ot(o.type,u),Kd(e,n,o,u,i);case 15:return Gd(e,n,n.type,n.pendingProps,i);case 17:return o=n.type,u=n.pendingProps,u=n.elementType===o?u:Ot(o,u),Ja(e,n),n.tag=1,ft(o)?(e=!0,Da(n)):e=!1,Tr(n,i),Fd(n,o,u),ml(n,o,u,i),yl(null,n,o,!0,e,i);case 19:return tm(e,n,i);case 22:return Yd(e,n,i)}throw Error(a(156,n.tag))};function Cm(e,n){return rf(e,n)}function d0(e,n,i,o){this.tag=e,this.key=i,this.sibling=this.child=this.return=this.stateNode=this.t
vendor: 6,636 bytes, line 32
32ype=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=o,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Rt(e,n,i,o){return new d0(e,n,i,o)}function _l(e){return e=e.prototype,!(!e||!e.isReactComponent)}function m0(e){if(typeof e=="function")return _l(e)?1:0;if(e!=null){if(e=e.$$typeof,e===He)return 11;if(e===ke)return 14}return 2}function Bn(e,n){var i=e.alternate;return i===null?(i=Rt(e.tag,n,e.key,e.mode),i.elementType=e.elementType,i.type=e.type,i.stateNode=e.stateNode,i.alternate=e,e.alternate=i):(i.pendingProps=n,i.type=e.type,i.flags=0,i.subtreeFlags=0,i.deletions=null),i.flags=e.flags&14680064,i.childLanes=e.childLanes,i.lanes=e.lanes,i.child=e.child,i.memoizedProps=e.memoizedProps,i.memoizedState=e.memoizedState,i.updateQueue=e.updateQueue,n=e.dependencies,i.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},i.sibling=e.sibling,i.index=e.index,i.ref=e.ref,i}function cs(e,n,i,o,u,h){var v=2;if(o=e,typeof e=="function")_l(e)&&(v=1);else if(typeof e=="string")v=5;else e:switch(e){case ee:return Xn(i.children,u,h,n);case Q:v=8,u|=8;break;case W:return e=Rt(12,i,n,u|2),e.elementType=W,e.lanes=h,e;case ge:return e=Rt(13,i,n,u),e.elementType=ge,e.lanes=h,e;case Oe:return e=Rt(19,i,n,u),e.elementType=Oe,e.lanes=h,e;case se:return fs(i,u,h,n);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case re:v=10;break e;case de:v=9;break e;case He:v=11;break e;case ke:v=14;break e;case ve:v=16,o=null;break e}throw Error(a(130,e==null?e:typeof e,""))}return n=Rt(v,i,n,u),n.elementType=e,n.type=o,n.lanes=h,n}function Xn(e,n,i,o){return e=Rt(7,e,o,n),e.lanes=i,e}function fs(e,n,i,o){return e=Rt(22,e,o,n),e.elementType=se,e.lanes=i,e.stateNode={isHidden:!1},e}function Fl(e,n,i){return e=Rt(6,e,null,n),e.lanes=i,e}function Vl(e,n,i){return n=Rt(4,e.children!==null?e.children:[],e.key,n),n.lanes=i,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}function p0(e,n,i,o,u){this.tag=n,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=fo(0),this.expirationTimes=fo(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=fo(0),this.identifierPrefix=o,this.onRecoverableError=u,this.mutableSourceEagerHydrationData=null}function jl(e,n,i,o,u,h,v,E,C){return e=new p0(e,n,i,E,C),n===1?(n=1,h===!0&&(n|=8)):n=0,h=Rt(3,null,null,n),e.current=h,h.stateNode=e,h.memoizedState={element:o,isDehydrated:i,cache:null,transitions:null,pendingSuspenseBoundaries:null},Jo(h),e}function h0(e,n,i){var o=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:G,key:o==null?null:""+o,children:e,containerInfo:n,implementation:i}}function bm(e){if(!e)return Tn;e=e._reactInternals;e:{if(Vn(e)!==e||e.tag!==1)throw Error(a(170));var n=e;do{switch(n.tag){case 3:n=n.stateNode.context;break e;case 1:if(ft(n.type)){n=n.stateNode.__reactInternalMemoizedMergedChildContext;break e}}n=n.return}while(n!==null);throw Error(a(171))}if(e.tag===1){var i=e.type;if(ft(i))return ed(e,i,n)}return n}function Pm(e,n,i,o,u,h,v,E,C){return e=jl(i,o,!0,e,u,h,v,E,C),e.context=bm(null),i=e.current,o=lt(),u=An(i),h=on(o,u),h.callback=n??null,Pn(i,h,u),e.current.lanes=u,ei(e,u,o),pt(e,o),e}function ds(e,n,i,o){var u=n.current,h=lt(),v=An(u);return i=bm(i),n.context===null?n.context=i:n.pendingContext=i,n=on(h,v),n.payload={element:e},o=o===void 0?null:o,o!==null&&(n.callback=o),e=Pn(u,n,v),e!==null&&(Vt(e,u,v,h),Ua(e,u,v)),v}function ms(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 Rm(e,n){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var i=e.retryLane;e.retryLane=i!==0&&i<n?i:n}}function $l(e,n){Rm(e,n),(e=e.alternate)&&Rm(e,n)}function g0(){return null}var Nm=typeof reportError=="function"?reportError:function(e){console.error(e)};function zl(e){this._internalRoot=e}ps.prototype.render=zl.prototype.render=function(e){var n=this._internalRoot;if(n===null)throw Error(a(409));ds(e,n,null,null)},ps.prototype.unmount=zl.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var n=e.containerInfo;Yn(function(){ds(null,e,null,null)}),n[tn]=null}};function ps(e){this._internalRoot=e}ps.prototype.unstable_scheduleHydration=function(e){if(e){var n=df();e={blockedOn:null,target:e,priority:n};for(var i=0;i<wn.length&&n!==0&&n<wn[i].priority;i++);wn.splice(i,0,e),i===0&&hf(e)}};function Ul(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function hs(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Im(){}function y0(e,n,i,o,u){if(u){if(typeof o=="function"){var h=o;o=function(){var B=ms(v);h.call(B)}}var v=Pm(n,o,e,0,null,!1,!1,"",Im);return e._reactRootContainer=v,e[tn]=v.current,pi(e.nodeType===8?e.parentNode:e),Yn(),v}for(;u=e.lastChild;)e.removeChild(u);if(typeof o=="function"){var E=o;o=function(){var B=ms(C);E.call(B)}}var C=jl(e,0,!1,null,null,!1,!1,"",Im);return e._reactRootContainer=C,e[tn]=C.current,pi(e.nodeType===8?e.parentNode:e),Yn(function(){ds(n,C,i,o)}),C}function gs(e,n,i,o,u){var h=i._reactRootContainer;if(h){var v=h;if(typeof u=="function"){var E=u;u=function(){var C=ms(v);E.call(C)}}ds(n,v,e,u)}else v=y0(i,n,e,u,o);return ms(v)}cf=function(e){switch(e.tag){case 3:var n=e.stateNode;if(n.current.memoizedState.isDehydrated){var i=Jr(n.pendingLanes);i!==0&&(mo(n,i|1),pt(n,Ve()),(fe&6)===0&&(Nr=Ve()+500,Cn()))}break;case 13:Yn(function(){var o=sn(e,1);if(o!==null){var u=lt();Vt(o,e,1,u)}}),$l(e,1)}},po=function(e){if(e.tag===13){var n=sn(e,134217728);if(n!==null){var i=lt();Vt(n,e,134217728,i)}$l(e,134217728)}},ff=function(e){if(e.tag===13){var n=An(e),i=sn(e,n);if(i!==null){var o=lt();Vt(i,e,n,o)}$l(e,n)}},df=function(){return Ee},mf=function(e,n){var i=Ee;try{return Ee=e,n()}finally{Ee=i}},ao=function(e,n,i){switch(n){case"input":if(Xs(e,i),n=i.name,i.type==="radio"&&n!=null){for(i=e;i.parentNode;)i=i.parentNode;for(i=i.querySelectorAll("input[name="+JSON.stringify(""+n)+'][type="radio"]'),n=0;n<i.length;n++){var o=i[n];if(o!==e&&o.form===e.form){var u=Ba(o);if(!u)throw Error(a(90));Oc(o),Xs(o,u)}}}break;case"textarea":$c(e,i);break;
32case"select":n=i.value,n!=null&&sr(e,!!i.multiple,n,!1)}},Qc=Ll,Xc=Yn;var v0={usingClientEntryPoint:!1,Events:[yi,gr,Ba,Yc,qc,Ll]},Ai={findFiberByHostInstance:jn,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},w0={bundleType:Ai.bundleType,version:Ai.version,rendererPackageName:Ai.rendererPackageName,rendererConfig:Ai.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:$.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=tf(e),e===null?null:e.stateNode},findFiberByHostInstance:Ai.findFiberByHostInstance||g0,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 ys=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!ys.isDisabled&&ys.supportsFiber)try{pa=ys.inject(w0),Kt=ys}catch{}}return ht.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=v0,ht.createPortal=function(e,n){var i=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Ul(n))throw Error(a(200));return h0(e,n,null,i)},ht.createRoot=function(e,n){if(!Ul(e))throw Error(a(299));var i=!1,o="",u=Nm;return n!=null&&(n.unstable_strictMode===!0&&(i=!0),n.identifierPrefix!==void 0&&(o=n.identifierPrefix),n.onRecoverableError!==void 0&&(u=n.onRecoverableError)),n=jl(e,1,!1,null,null,i,!1,o,u),e[tn]=n.current,pi(e.nodeType===8?e.parentNode:e),new zl(n)},ht.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var n=e._reactInternals;if(n===void 0)throw typeof e.render=="function"?Error(a(188)):(e=Object.keys(e).join(","),Error(a(268,e)));return e=tf(n),e=e===null?null:e.stateNode,e},ht.flushSync=function(e){return Yn(e)},ht.hydrate=function(e,n,i){if(!hs(n))throw Error(a(200));return gs(null,e,n,!0,i)},ht.hydrateRoot=function(e,n,i){if(!Ul(e))throw Error(a(405));var o=i!=null&&i.hydratedSources||null,u=!1,h="",v=Nm;if(i!=null&&(i.unstable_strictMode===!0&&(u=!0),i.identifierPrefix!==void 0&&(h=i.identifierPrefix),i.onRecoverableError!==void 0&&(v=i.onRecoverableError)),n=Pm(n,null,e,1,i??null,u,!1,h,v),e[tn]=n.current,pi(e),o)for(e=0;e<o.length;e++)i=o[e],u=i._getVersion,u=u(i._source),n.mutableSourceEagerHydrationData==null?n.mutableSourceEagerHydrationData=[i,u]:n.mutableSourceEagerHydrationData.push(i,u);return new ps(n)},ht.render=function(e,n,i){if(!hs(n))throw Error(a(200));return gs(null,e,n,!1,i)},ht.unmountComponentAtNode=function(e){if(!hs(e))throw Error(a(40));return e._reactRootContainer?(Yn(function(){gs(null,null,e,!1,function(){e._reactRootContainer=null,e[tn]=null})}),!0):!1},ht.unstable_batchedUpdates=Ll,ht.unstable_renderSubtreeIntoContainer=function(e,n,i,o){if(!hs(i))throw Error(a(200));if(e==null||e._reactInternals===void 0)throw Error(a(38));return gs(e,n,i,!1,o)},ht.version="18.3.1-next-f1338f8080-20240426",ht}var Om;function P0(){if(Om)return Hl.exports;Om=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(r){console.error(r)}}return t(),Hl.exports=b0(),Hl.exports}var _m;function R0(){if(_m)return vs;_m=1;var t=P0();return vs.createRoot=t.createRoot,vs.hydrateRoot=t.hydrateRoot,vs}var N0=R0();const I0=jr(N0);var Yl,Fm;function A0(){if(Fm)return Yl;Fm=1;var t=typeof Element<"u",r=typeof Map=="function",a=typeof Set=="function",s=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function l(f,d){if(f===d)return!0;if(f&&d&&typeof f=="object"&&typeof d=="object"){if(f.constructor!==d.constructor)return!1;var m,p,g;if(Array.isArray(f)){if(m=f.length,m!=d.length)return!1;for(p=m;p--!==0;)if(!l(f[p],d[p]))return!1;return!0}var y;if(r&&f instanceof Map&&d instanceof Map){if(f.size!==d.size)return!1;for(y=f.entries();!(p=y.next()).done;)if(!d.has(p.value[0]))return!1;for(y=f.entries();!(p=y.next()).done;)if(!l(p.value[1],d.get(p.value[0])))return!1;return!0}if(a&&f instanceof Set&&d instanceof Set){if(f.size!==d.size)return!1;for(y=f.entries();!(p=y.next()).done;)if(!d.has(p.value[0]))return!1;return!0}if(s&&ArrayBuffer.isView(f)&&ArrayBuffer.isView(d)){if(m=f.length,m!=d.length)return!1;for(p=m;p--!==0;)if(f[p]!==d[p])return!1;return!0}if(f.constructor===RegExp)return f.source===d.source&&f.flags===d.flags;if(f.valueOf!==Object.prototype.valueOf&&typeof f.valueOf=="function"&&typeof d.valueOf=="function")return f.valueOf()===d.valueOf();if(f.toString!==Object.prototype.toString&&typeof f.toString=="function"&&typeof d.toString=="function")return f.toString()===d.toString();if(g=Object.keys(f),m=g.length,m!==Object.keys(d).length)return!1;for(p=m;p--!==0;)if(!Object.prototype.hasOwnProperty.call(d,g[p]))return!1;if(t&&f instanceof Element)return!1;for(p=m;p--!==0;)if(!((g[p]==="_owner"||g[p]==="__v"||g[p]==="__o")&&f.$$typeof)&&!l(f[g[p]],d[g[p]]))return!1;return!0}return f!==f&&d!==d}return Yl=function(d,m){try{return l(d,m)}catch(p){if((p.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw p}},Yl}var M0=A0();const B0=jr(M0);var Sh=(t=>(t.BASE="base",t.BODY="body",t.HEAD="head",t.HTML="html",t.LINK="link",t.META="meta",t.NOSCRIPT="noscript",t.SCRIPT="script",t.STYLE="style",t.TITLE="title",t.FRAGMENT="Symbol(react.fragment)",t))(Sh||{}),ql={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]}
32,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"]}};Object.values(Sh);var Ku={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"};Object.entries(Ku).reduce((t,[r,a])=>(t[a]=r,t),{});var Hi="data-rh",L0=t=>Array.isArray(t)?t.join(""):t,D0=(t,r)=>{const a=Object.keys(t);for(let s=0;s<a.length;s+=1)if(r[a[s]]&&r[a[s]].includes(t[a[s]]))return!0;return!1},Ql=(t,r)=>Array.isArray(t)?t.reduce((a,s)=>(D0(s,r)?a.priority.push(s):a.default.push(s),a),{priority:[],default:[]}):{default:t,priority:[]},O0=["noscript","script","style"],xu=(t,r=!0)=>r===!1?String(t):String(t).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;"),Th=t=>Object.keys(t).reduce((r,a)=>{const s=typeof t[a]<"u"?`${a}="${t[a]}"`:`${a}`;return r?`${r} ${s}`:s},""),_0=(t,r,a,s)=>{const l=Th(a),f=L0(r);return l?`<${t} ${Hi}="true" ${l}>${xu(f,s)}</${t}>`:`<${t} ${Hi}="true">${xu(f,s)}</${t}>`},F0=(t,r,a=!0)=>r.reduce((s,l)=>{const f=l,d=Object.keys(f).filter(g=>!(g==="innerHTML"||g==="cssText")).reduce((g,y)=>{const w=typeof f[y]>"u"?y:`${y}="${xu(f[y],a)}"`;return g?`${g} ${w}`:w},""),m=f.innerHTML||f.cssText||"",p=O0.indexOf(t)===-1;return`${s}<${t} ${Hi}="true" ${d}${p?"/>":`>${m}</${t}>`}`},""),Ch=(t,r={})=>Object.keys(t).reduce((a,s)=>{const l=Ku[s];return a[l||s]=t[s],a},r),V0=(t,r,a)=>{const s={key:r,[Hi]:!0},l=Ch(a,s);return[c.createElement("title",l,r)]},Rs=(t,r)=>r.map((a,s)=>{const l={key:s,[Hi]:!0};return Object.keys(a).forEach(f=>{const m=Ku[f]||f;if(m==="innerHTML"||m==="cssText"){const p=a.innerHTML||a.cssText;l.dangerouslySetInnerHTML={__html:p}}else l[m]=a[f]}),c.createElement(t,l)}),At=(t,r,a=!0)=>{switch(t){case"title":return{toComponent:()=>V0(t,r.title,r.titleAttributes),toString:()=>_0(t,r.title,r.titleAttributes,a)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>Ch(r),toString:()=>Th(r)};default:return{toComponent:()=>Rs(t,r),toString:()=>F0(t,r,a)}}},j0=({metaTags:t,linkTags:r,scriptTags:a,encode:s})=>{const l=Ql(t,ql.meta),f=Ql(r,ql.link),d=Ql(a,ql.script);return{priorityMethods:{toComponent:()=>[...Rs("meta",l.priority),...Rs("link",f.priority),...Rs("script",d.priority)],toString:()=>`${At("meta",l.priority,s)} ${At("link",f.priority,s)} ${At("script",d.priority,s)}`},metaTags:l.default,linkTags:f.default,scriptTags:d.default}},$0=t=>{const{baseTag:r,bodyAttributes:a,encode:s=!0,htmlAttributes:l,noscriptTags:f,styleTags:d,title:m="",titleAttributes:p,prioritizeSeoTags:g}=t;let{linkTags:y,metaTags:w,scriptTags:x}=t,k={toComponent:()=>{},toString:()=>""};return g&&({priorityMethods:k,linkTags:y,metaTags:w,scriptTags:x}=j0(t)),{priority:k,base:At("base",r,s),bodyAttributes:At("bodyAttributes",a,s),htmlAttributes:At("htmlAttributes",l,s),link:At("link",y,s),meta:At("meta",w,s),noscript:At("noscript",f,s),script:At("script",x,s),style:At("style",d,s),title:At("title",{title:m,titleAttributes:p},s)}},z0=$0,ws=[],bh=!!(typeof window<"u"&&window.document&&window.document.createElement),U0=class{constructor(t,r){Zn(this,"instances",[]);Zn(this,"canUseDOM",bh);Zn(this,"context");Zn(this,"value",{setHelmet:t=>{this.context.helmet=t},helmetInstances:{get:()=>this.canUseDOM?ws:this.instances,add:t=>{(this.canUseDOM?ws:this.instances).push(t)},remove:t=>{const r=(this.canUseDOM?ws:this.instances).indexOf(t);(this.canUseDOM?ws:this.instances).splice(r,1)}}});this.context=t,this.canUseDOM=r||!1,r||(t.helmet=z0({baseTag:[],bodyAttributes:{},htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},W0={},H0=c.createContext(W0),rr,K0=(rr=class extends T.Component{constructor(a){super(a);Zn(this,"helmetData");this.helmetData=new U0(this.props.context||{},rr.canUseDOM)}render(){return c.createElement(H0.Provider,{value:this.helmetData.value},this.props.children)}},Zn(rr,"canUseDOM",bh),rr),Mi={},Vm;function G0(){if(Vm)return Mi;Vm=1,Object.defineProperty(Mi,"__esModule",{value:!0}),Mi.parse=d,Mi.serialize=g;const t=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,r=/^[\u0021-\u003A\u003C-\u007E]*$/,a=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,s=/^[\u0020-\u003A\u003D-\u007E]*$/,l=Object.prototype.toString,f=(()=>{const x=function(){};return x.prototype=Object.create(null),x})();function d(x,k){const S=new f,P=x.length;if(P<2)return S;const I=(k==null?void 0:k.decode)||y;let R=0;do{const D=x.indexOf("=",R);if(D===-1)break;const L=x.indexOf(";",R),$=L===-1?P:L;if(D>$){R=x.lastIndexOf(";",D-1)+1;continue}const j=m(x,R,D),G=p(x,D,j),ee=x.slice(j,G);if(S[ee]===void 0){let Q=m(x,D+1,$),W=p(x,$,Q);const re=I(x.slice(Q,W));S[ee]=re}R=$+1}while(R<P);return S}
32function m(x,k,S){do{const P=x.charCodeAt(k);if(P!==32&&P!==9)return k}while(++k<S);return S}function p(x,k,S){for(;k>S;){const P=x.charCodeAt(--k);if(P!==32&&P!==9)return k+1}return S}function g(x,k,S){const P=(S==null?void 0:S.encode)||encodeURIComponent;if(!t.test(x))throw new TypeError(`argument name is invalid: ${x}`);const I=P(k);if(!r.test(I))throw new TypeError(`argument val is invalid: ${k}`);let R=x+"="+I;if(!S)return R;if(S.maxAge!==void 0){if(!Number.isInteger(S.maxAge))throw new TypeError(`option maxAge is invalid: ${S.maxAge}`);R+="; Max-Age="+S.maxAge}if(S.domain){if(!a.test(S.domain))throw new TypeError(`option domain is invalid: ${S.domain}`);R+="; Domain="+S.domain}if(S.path){if(!s.test(S.path))throw new TypeError(`option path is invalid: ${S.path}`);R+="; Path="+S.path}if(S.expires){if(!w(S.expires)||!Number.isFinite(S.expires.valueOf()))throw new TypeError(`option expires is invalid: ${S.expires}`);R+="; Expires="+S.expires.toUTCString()}if(S.httpOnly&&(R+="; HttpOnly"),S.secure&&(R+="; Secure"),S.partitioned&&(R+="; Partitioned"),S.priority)switch(typeof S.priority=="string"?S.priority.toLowerCase():void 0){case"low":R+="; Priority=Low";break;case"medium":R+="; Priority=Medium";break;case"high":R+="; Priority=High";break;
32default:throw new TypeError(`option priority is invalid: ${S.priority}`)}if(S.sameSite)switch(typeof S.sameSite=="string"?S.sameSite.toLowerCase():S.sameSite){case!0:case"strict":R+="; SameSite=Strict";break;case"lax":R+="; SameSite=Lax";break;case"none":R+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${S.sameSite}`)}return R}function y(x){if(x.indexOf("%")===-1)return x;try{return decodeURIComponent(x)}catch{return x}}function w(x){return l.call(x)==="[object Date]"}return Mi}G0();var jm="popstate";function Y0(t={}){function r(s,l){let{pathname:f,search:d,hash:m}=s.location;return Eu("",{pathname:f,search:d,hash:m},l.state&&l.state.usr||null,l.state&&l.state.key||"default")}function a(s,l){return typeof l=="string"?l:Ki(l)}return Q0(r,a,null,t)}function Ae(t,r){if(t===!1||t===null||typeof t>"u")throw new Error(r)}function zt(t,r){if(!t){typeof console<"u"&&console.warn(r);try{throw new Error(r)}catch{}}}function q0(){return Math.random().toString(36).substring(2,10)}function $m(t,r){return{usr:t.state,key:t.key,idx:r}}function Eu(t,r,a=null,s){return{pathname:typeof t=="string"?t:t.pathname,search:"",hash:"",...typeof r=="string"?$r(r):r,state:a,key:r&&r.key||s||q0()}}function Ki({pathname:t="/",search:r="",hash:a=""}){return r&&r!=="?"&&(t+=r.charAt(0)==="?"?r:"?"+r),a&&a!=="#"&&(t+=a.charAt(0)==="#"?a:"#"+a),t}function $r(t){let r={};if(t){let a=t.indexOf("#");a>=0&&(r.hash=t.substring(a),t=t.substring(0,a));let s=t.indexOf("?");s>=0&&(r.search=t.substring(s),t=t.substring(0,s)),t&&(r.pathname=t)}return r}function Q0(t,r,a,s={}){let{window:l=document.defaultView,v5Compat:f=!1}=s,d=l.history,m="POP",p=null,g=y();g==null&&(g=0,d.replaceState({...d.state,idx:g},""));function y(){return(d.state||{idx:null}).idx}function w(){m="POP";let I=y(),R=I==null?null:I-g;g=I,p&&p({action:m,location:P.location,delta:R})}function x(I,R){m="PUSH";let D=Eu(P.location,I,R);g=y()+1;let L=$m(D,g),$=P.createHref(D);try{d.pushState(L,"",$)}catch(j){if(j instanceof DOMException&&j.name==="DataCloneError")throw j;l.location.assign($)}f&&p&&p({action:m,location:P.location,delta:1})}function k(I,R){m="REPLACE";let D=Eu(P.location,I,R);g=y();let L=$m(D,g),$=P.createHref(D);d.replaceState(L,"",$),f&&p&&p({action:m,location:P.location,delta:0})}function S(I){let R=l.location.origin!=="null"?l.location.origin:l.location.href,D=typeof I=="string"?I:Ki(I);return D=D.replace(/ $/,"%20"),Ae(R,`No window.location.(origin|href) available to create URL for href: ${D}`),new URL(D,R)}let P={get action(){return m},get location(){return t(l,d)},listen(I){if(p)throw new Error("A history only accepts one active listener");return l.addEventListener(jm,w),p=I,()=>{l.removeEventListener(jm,w),p=null}},createHref(I){return r(l,I)},createURL:S,encodeLocation(I){let R=S(I);return{pathname:R.pathname,search:R.search,hash:R.hash}},push:x,replace:k,go(I){return d.go(I)}};return P}function Ph(t,r,a="/"){return X0(t,r,a,!1)}function X0(t,r,a,s){let l=typeof r=="string"?$r(r):r,f=mn(l.pathname||"/",a);if(f==null)return null;let d=Rh(t);Z0(d);let m=null;for(let p=0;m==null&&p<d.length;++p){let g=uw(f);m=ow(d[p],g,s)}return m}function Rh(t,r=[],a=[],s=""){let l=(f,d,m)=>{let p={relativePath:m===void 0?f.path||"":m,caseSensitive:f.caseSensitive===!0,childrenIndex:d,route:f};p.relativePath.startsWith("/")&&(Ae(p.relativePath.startsWith(s),`Absolute route path "${p.relativePath}" nested under path "${s}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),p.relativePath=p.relativePath.slice(s.length));let g=fn([s,p.relativePath]),y=a.concat(p);f.children&&f.children.length>0&&(Ae(f.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${g}".`),Rh(f.children,r,y,g)),!(f.path==null&&!f.index)&&r.push({path:g,score:aw(g,f.index),routesMeta:y})};return t.forEach((f,d)=>{var m;if(f.path===""||!((m=f.path)!=null&&m.includes("?")))l(f,d);else for(let p of Nh(f.path))l(f,d,p)}),r}function Nh(t){let r=t.split("/");if(r.length===0)return[];let[a,...s]=r,l=a.endsWith("?"),f=a.replace(/\?$/,"");if(s.length===0)return l?[f,""]:[f];let d=Nh(s.join("/")),m=[];return m.push(...d.map(p=>p===""?f:[f,p].join("/"))),l&&m.push(...d),m.map(p=>t.startsWith("/")&&p===""?"/":p)}function Z0(t){t.sort((r,a)=>r.score!==a.score?a.score-r.score:sw(r.routesMeta.map(s=>s.childrenIndex),a.routesMeta.map(s=>s.childrenIndex)))}var J0=/^:[\w-]+$/,ew=3,tw=2,nw=1,rw=10,iw=-2,zm=t=>t==="*";function aw(t,r){let a=t.split("/"),s=a.length;return a.some(zm)&&(s+=iw),r&&(s+=tw),a.filter(l=>!zm(l)).reduce((l,f)=>l+(J0.test(f)?ew:f===""?nw:rw),s)}function sw(t,r){return t.length===r.length&&t.slice(0,-1).every((s,l)=>s===r[l])?t[t.length-1]-r[r.length-1]:0}function ow(t,r,a=!1){let{routesMeta:s}=t,l={},f="/",d=[];for(let m=0;m<s.length;++m){let p=s[m],g=m===s.length-1,y=f==="/"?r:r.slice(f.length)||"/",w=Ls({path:p.relativePath,caseSensitive:p.caseSensitive,end:g},y),x=p.route;if(!w&&g&&a&&!s[s.length-1].route.index&&(w=Ls({path:p.relativePath,caseSensitive:p.caseSensitive,end:!1},y)),!w)return null;
32Object.assign(l,w.params),d.push({params:l,pathname:fn([f,w.pathname]),pathnameBase:mw(fn([f,w.pathnameBase])),route:x}),w.pathnameBase!=="/"&&(f=fn([f,w.pathnameBase]))}return d}function Ls(t,r){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[a,s]=lw(t.path,t.caseSensitive,t.end),l=r.match(a);if(!l)return null;let f=l[0],d=f.replace(/(.)\/+$/,"$1"),m=l.slice(1);return{params:s.reduce((g,{paramName:y,isOptional:w},x)=>{if(y==="*"){let S=m[x]||"";d=f.slice(0,f.length-S.length).replace(/(.)\/+$/,"$1")}const k=m[x];return w&&!k?g[y]=void 0:g[y]=(k||"").replace(/%2F/g,"/"),g},{}),pathname:f,pathnameBase:d,pattern:t}}function lw(t,r=!1,a=!0){zt(t==="*"||!t.endsWith("*")||t.endsWith("/*"),`Route path "${t}" will be treated as if it were "${t.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${t.replace(/\*$/,"/*")}".`);let s=[],l="^"+t.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(d,m,p)=>(s.push({paramName:m,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)"));return t.endsWith("*")?(s.push({paramName:"*"}),l+=t==="*"||t==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):a?l+="\\/*$":t!==""&&t!=="/"&&(l+="(?:(?=\\/|$))"),[new RegExp(l,r?void 0:"i"),s]}function uw(t){try{return t.split("/").map(r=>decodeURIComponent(r).replace(/\//g,"%2F")).join("/")}catch(r){return zt(!1,`The URL path "${t}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${r}).`),t}}function mn(t,r){if(r==="/")return t;if(!t.toLowerCase().startsWith(r.toLowerCase()))return null;let a=r.endsWith("/")?r.length-1:r.length,s=t.charAt(a);return s&&s!=="/"?null:t.slice(a)||"/"}function cw(t,r="/"){let{pathname:a,search:s="",hash:l=""}=typeof t=="string"?$r(t):t;return{pathname:a?a.startsWith("/")?a:fw(a,r):r,search:pw(s),hash:hw(l)}}function fw(t,r){let a=r.replace(/\/+$/,"").split("/");return t.split("/").forEach(l=>{l===".."?a.length>1&&a.pop():l!=="."&&a.push(l)}),a.length>1?a.join("/"):"/"}function Xl(t,r,a,s){return`Cannot include a '${t}' character in a manually specified \`to.${r}\` field [${JSON.stringify(s)}].  Please separate it out to the \`to.${a}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function dw(t){return t.filter((r,a)=>a===0||r.route.path&&r.route.path.length>0)}function Gu(t){let r=dw(t);return r.map((a,s)=>s===r.length-1?a.pathname:a.pathnameBase)}function Yu(t,r,a,s=!1){let l;typeof t=="string"?l=$r(t):(l={...t},Ae(!l.pathname||!l.pathname.includes("?"),Xl("?","pathname","search",l)),Ae(!l.pathname||!l.pathname.includes("#"),Xl("#","pathname","hash",l)),Ae(!l.search||!l.search.includes("#"),Xl("#","search","hash",l)));let f=t===""||l.pathname==="",d=f?"/":l.pathname,m;if(d==null)m=a;else{let w=r.length-1;if(!s&&d.startsWith("..")){let x=d.split("/");for(;x[0]==="..";)x.shift(),w-=1;l.pathname=x.join("/")}m=w>=0?r[w]:"/"}let p=cw(l,m),g=d&&d!=="/"&&d.endsWith("/"),y=(f||d===".")&&a.endsWith("/");return!p.pathname.endsWith("/")&&(g||y)&&(p.pathname+="/"),p}var fn=t=>t.join("/").replace(/\/\/+/g,"/"),mw=t=>t.replace(/\/+$/,"").replace(/^\/*/,"/"),pw=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,hw=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t;function gw(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.internal=="boolean"&&"data"in t}var Ih=["POST","PUT","PATCH","DELETE"];new Set(Ih);var yw=["GET",...Ih];new Set(yw);var zr=T.createContext(null);zr.displayName="DataRouter";var Us=T.createContext(null);Us.displayName="DataRouterState";var Ah=T.createContext({isTransitioning:!1});Ah.displayName="ViewTransition";var vw=T.createContext(new Map);vw.displayName="Fetchers";var ww=T.createContext(null);ww.displayName="Await";var Ut=T.createContext(null);Ut.displayName="Navigation";var na=T.createContext(null);na.displayName="Location";var Wt=T.createContext({outlet:null,matches:[],isDataRoute:!1});Wt.displayName="Route";var qu=T.createContext(null);qu.displayName="RouteError";function xw(t,{relative:r}={}){Ae(Ur(),"useHref() may be used only in the context of a <Router> component.");let{basename:a,navigator:s}=T.useContext(Ut),{hash:l,pathname:f,search:d}=ra(t,{relative:r}),m=f;return a!=="/"&&(m=f==="/"?a:fn([a,f])),s.createHref({pathname:m,search:d,hash:l})}function Ur(){return T.useContext(na)!=null}function en(){return Ae(Ur(),"useLocation() may be used only in the context of a <Router> component."),T.useContext(na).location}var Mh="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Bh(t){T.useContext(Ut).static||T.useLayoutEffect(t)}function Qu(){let{isDataRoute:t}=T.useContext(Wt);return t?Bw():Ew()}function Ew(){Ae(Ur(),"useNavigate() may be used only in the context of a <Router> component.");let t=T.useContext(zr),{basename:r,navigator:a}=T.useContext(Ut),{matches:s}=T.useContext(Wt),{pathname:l}=en(),f=JSON.stringify(Gu(s)),d=T.useRef(!1);return Bh(()=>{d.current=!0}),T.useCallback((p,g={})=>
32{if(zt(d.current,Mh),!d.current)return;if(typeof p=="number"){a.go(p);return}let y=Yu(p,JSON.parse(f),l,g.relative==="path");t==null&&r!=="/"&&(y.pathname=y.pathname==="/"?r:fn([r,y.pathname])),(g.replace?a.replace:a.push)(y,g.state,g)},[r,a,f,l,t])}T.createContext(null);function Ws(){let{matches:t}=T.useContext(Wt),r=t[t.length-1];return r?r.params:{}}function ra(t,{relative:r}={}){let{matches:a}=T.useContext(Wt),{pathname:s}=en(),l=JSON.stringify(Gu(a));return T.useMemo(()=>Yu(t,JSON.parse(l),s,r==="path"),[t,l,s,r])}function kw(t,r){return Lh(t,r)}function Lh(t,r,a,s){var D;Ae(Ur(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:l,static:f}=T.useContext(Ut),{matches:d}=T.useContext(Wt),m=d[d.length-1],p=m?m.params:{},g=m?m.pathname:"/",y=m?m.pathnameBase:"/",w=m&&m.route;{let L=w&&w.path||"";Dh(g,!w||L.endsWith("*")||L.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${g}" (under <Route path="${L}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
33
34Please change the parent <Route path="${L}"> to <Route path="${L==="/"?"*":`${L}/*`}">.`)}let x=en(),k;if(r){let L=typeof r=="string"?$r(r):r;Ae(y==="/"||((D=L.pathname)==null?void 0:D.startsWith(y)),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${y}" but pathname "${L.pathname}" was given in the \`location\` prop.`),k=L}else k=x;let S=k.pathname||"/",P=S;if(y!=="/"){let L=y.replace(/^\//,"").split("/");P="/"+S.replace(/^\//,"").split("/").slice(L.length).join("/")}let I=!f&&a&&a.matches&&a.matches.length>0?a.matches:Ph(t,{pathname:P});zt(w||I!=null,`No routes matched location "${k.pathname}${k.search}${k.hash}" `),zt(I==null||I[I.length-1].route.element!==void 0||I[I.length-1].route.Component!==void 0||I[I.length-1].route.lazy!==void 0,`Matched leaf route at location "${k.pathname}${k.search}${k.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let R=Pw(I&&I.map(L=>Object.assign({},L,{params:Object.assign({},p,L.params),pathname:fn([y,l.encodeLocation?l.encodeLocation(L.pathname).pathname:L.pathname]),pathnameBase:L.pathnameBase==="/"?y:fn([y,l.encodeLocation?l.encodeLocation(L.pathnameBase).pathname:L.pathnameBase])})),d,a,s);return r&&R?T.createElement(na.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...k},navigationType:"POP"}},R):R}function Sw(){let t=Mw(),r=gw(t)?`${t.status} ${t.statusText}`:t instanceof Error?t.message:JSON.stringify(t),a=t instanceof Error?t.stack:null,s="rgba(200,200,200, 0.5)",l={padding:"0.5rem",backgroundColor:s},f={padding:"2px 4px",backgroundColor:s},d=null;return console.error("Error handled by React Router default ErrorBoundary:",t),d=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:f},"ErrorBoundary")," or"," ",T.createElement("code",{style:f},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},r),a?T.createElement("pre",{style:l},a):null,d)}var Tw=T.createElement(Sw,null),Cw=class extends T.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,r){return r.location!==t.location||r.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:r.error,location:r.location,revalidation:t.revalidation||r.revalidation}}componentDidCatch(t,r){console.error("React Router caught the following error during render",t,r)}render(){return this.state.error!==void 0?T.createElement(Wt.Provider,{value:this.props.routeContext},T.createElement(qu.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function bw({routeContext:t,match:r,children:a}){let s=T.useContext(zr);return s&&s.static&&s.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(s.staticContext._deepestRenderedBoundaryId=r.route.id),T.createElement(Wt.Provider,{value:t},a)}function Pw(t,r=[],a=null,s=null){if(t==null){if(!a)return null;if(a.errors)t=a.matches;else if(r.length===0&&!a.initialized&&a.matches.length>0)t=a.matches;else return null}let l=t,f=a==null?void 0:a.errors;if(f!=null){let p=l.findIndex(g=>g.route.id&&(f==null?void 0:f[g.route.id])!==void 0);Ae(p>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(f).join(",")}`),l=l.slice(0,Math.min(l.length,p+1))}let d=!1,m=-1;if(a)for(let p=0;p<l.length;p++){let g=l[p];if((g.route.HydrateFallback||g.route.hydrateFallbackElement)&&(m=p),g.route.id){let{loaderData:y,errors:w}
34=a,x=g.route.loader&&!y.hasOwnProperty(g.route.id)&&(!w||w[g.route.id]===void 0);if(g.route.lazy||x){d=!0,m>=0?l=l.slice(0,m+1):l=[l[0]];break}}}return l.reduceRight((p,g,y)=>{let w,x=!1,k=null,S=null;a&&(w=f&&g.route.id?f[g.route.id]:void 0,k=g.route.errorElement||Tw,d&&(m<0&&y===0?(Dh("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),x=!0,S=null):m===y&&(x=!0,S=g.route.hydrateFallbackElement||null)));let P=r.concat(l.slice(0,y+1)),I=()=>{let R;return w?R=k:x?R=S:g.route.Component?R=T.createElement(g.route.Component,null):g.route.element?R=g.route.element:R=p,T.createElement(bw,{match:g,routeContext:{outlet:p,matches:P,isDataRoute:a!=null},children:R})};return a&&(g.route.ErrorBoundary||g.route.errorElement||y===0)?T.createElement(Cw,{location:a.location,revalidation:a.revalidation,component:k,error:w,children:I(),routeContext:{outlet:null,matches:P,isDataRoute:!0}}):I()},null)}function Xu(t){return`${t} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function Rw(t){let r=T.useContext(zr);return Ae(r,Xu(t)),r}function Nw(t){let r=T.useContext(Us);return Ae(r,Xu(t)),r}function Iw(t){let r=T.useContext(Wt);return Ae(r,Xu(t)),r}function Zu(t){let r=Iw(t),a=r.matches[r.matches.length-1];return Ae(a.route.id,`${t} can only be used on routes that contain a unique "id"`),a.route.id}function Aw(){return Zu("useRouteId")}function Mw(){var s;let t=T.useContext(qu),r=Nw("useRouteError"),a=Zu("useRouteError");return t!==void 0?t:(s=r.errors)==null?void 0:s[a]}function Bw(){let{router:t}=Rw("useNavigate"),r=Zu("useNavigate"),a=T.useRef(!1);return Bh(()=>{a.current=!0}),T.useCallback(async(l,f={})=>{zt(a.current,Mh),a.current&&(typeof l=="number"?t.navigate(l):await t.navigate(l,{fromRouteId:r,...f}))},[t,r])}var Um={};function Dh(t,r,a){!r&&!Um[t]&&(Um[t]=!0,zt(!1,a))}T.memo(Lw);function Lw({routes:t,future:r,state:a}){return Lh(t,void 0,a,r)}function Wm({to:t,replace:r,state:a,relative:s}){Ae(Ur(),"<Navigate> may be used only in the context of a <Router> component.");let{static:l}=T.useContext(Ut);zt(!l,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:f}=T.useContext(Wt),{pathname:d}=en(),m=Qu(),p=Yu(t,Gu(f),d,s==="path"),g=JSON.stringify(p);return T.useEffect(()=>{m(JSON.parse(g),{replace:r,state:a,relative:s})},[m,g,s,r,a]),null}function it(t){Ae(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function Dw({basename:t="/",children:r=null,location:a,navigationType:s="POP",navigator:l,static:f=!1}){Ae(!Ur(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let d=t.replace(/^\/*/,"/"),m=T.useMemo(()=>({basename:d,navigator:l,static:f,future:{}}),[d,l,f]);typeof a=="string"&&(a=$r(a));let{pathname:p="/",search:g="",hash:y="",state:w=null,key:x="default"}=a,k=T.useMemo(()=>{let S=mn(p,d);return S==null?null:{location:{pathname:S,search:g,hash:y,state:w,key:x},navigationType:s}},[d,p,g,y,w,x,s]);return zt(k!=null,`<Router basename="${d}"> is not able to match the URL "${p}${g}${y}" because it does not start with the basename, so the <Router> won't render anything.`),k==null?null:T.createElement(Ut.Provider,{value:m},T.createElement(na.Provider,{children:r,value:k}))}function Oh({children:t,location:r}){return kw(ku(t),r)}function ku(t,r=[]){let a=[];return T.Children.forEach(t,(s,l)=>{if(!T.isValidElement(s))return;let f=[...r,l];if(s.type===T.Fragment){a.push.apply(a,ku(s.props.children,f));return}Ae(s.type===it,`[${typeof s.type=="string"?s.type:s.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),Ae(!s.props.index||!s.props.children,"An index route cannot have child routes.");let d={id:s.props.id||f.join("-"),caseSensitive:s.props.caseSensitive,element:s.props.element,Component:s.props.Component,index:s.props.index,path:s.props.path,loader:s.props.loader,action:s.props.action,hydrateFallbackElement:s.props.hydrateFallbackElement,HydrateFallback:s.props.HydrateFallback,errorElement:s.props.errorElement,ErrorBoundary:s.props.ErrorBoundary,hasErrorBoundary:s.props.hasErrorBoundary===!0||s.props.ErrorBoundary!=null||s.props.errorElement!=null,
34shouldRevalidate:s.props.shouldRevalidate,handle:s.props.handle,lazy:s.props.lazy};s.props.children&&(d.children=ku(s.props.children,f)),a.push(d)}),a}var Ns="get",Is="application/x-www-form-urlencoded";function Hs(t){return t!=null&&typeof t.tagName=="string"}function Ow(t){return Hs(t)&&t.tagName.toLowerCase()==="button"}function _w(t){return Hs(t)&&t.tagName.toLowerCase()==="form"}function Fw(t){return Hs(t)&&t.tagName.toLowerCase()==="input"}function Vw(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}function jw(t,r){return t.button===0&&(!r||r==="_self")&&!Vw(t)}var xs=null;function $w(){if(xs===null)try{new FormData(document.createElement("form"),0),xs=!1}catch{xs=!0}return xs}var zw=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Zl(t){return t!=null&&!zw.has(t)?(zt(!1,`"${t}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Is}"`),null):t}function Uw(t,r){let a,s,l,f,d;if(_w(t)){let m=t.getAttribute("action");s=m?mn(m,r):null,a=t.getAttribute("method")||Ns,l=Zl(t.getAttribute("enctype"))||Is,f=new FormData(t)}else if(Ow(t)||Fw(t)&&(t.type==="submit"||t.type==="image")){let m=t.form;if(m==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let p=t.getAttribute("formaction")||m.getAttribute("action");if(s=p?mn(p,r):null,a=t.getAttribute("formmethod")||m.getAttribute("method")||Ns,l=Zl(t.getAttribute("formenctype"))||Zl(m.getAttribute("enctype"))||Is,f=new FormData(m,t),!$w()){let{name:g,type:y,value:w}=t;if(y==="image"){let x=g?`${g}.`:"";f.append(`${x}x`,"0"),f.append(`${x}y`,"0")}else g&&f.append(g,w)}}else{if(Hs(t))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');a=Ns,s=null,l=Is,d=t}return f&&l==="text/plain"&&(d=f,f=void 0),{action:s,method:a.toLowerCase(),encType:l,formData:f,body:d}}function Ju(t,r){if(t===!1||t===null||typeof t>"u")throw new Error(r)}async function Ww(t,r){if(t.id in r)return r[t.id];try{let a=await import(t.module);return r[t.id]=a,a}catch(a){return console.error(`Error loading route module \`${t.module}\`, reloading page...`),console.error(a),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Hw(t){return t==null?!1:t.href==null?t.rel==="preload"&&typeof t.imageSrcSet=="string"&&typeof t.imageSizes=="string":typeof t.rel=="string"&&typeof t.href=="string"}async function Kw(t,r,a){let s=await Promise.all(t.map(async l=>{let f=r.routes[l.route.id];if(f){let d=await Ww(f,a);return d.links?d.links():[]}return[]}));return Qw(s.flat(1).filter(Hw).filter(l=>l.rel==="stylesheet"||l.rel==="preload").map(l=>l.rel==="stylesheet"?{...l,rel:"prefetch",as:"style"}:{...l,rel:"prefetch"}))}function Hm(t,r,a,s,l,f){let d=(p,g)=>a[g]?p.route.id!==a[g].route.id:!0,m=(p,g)=>{var y;return a[g].pathname!==p.pathname||((y=a[g].route.path)==null?void 0:y.endsWith("*"))&&a[g].params["*"]!==p.params["*"]};return f==="assets"?r.filter((p,g)=>d(p,g)||m(p,g)):f==="data"?r.filter((p,g)=>{var w;let y=s.routes[p.route.id];if(!y||!y.hasLoader)return!1;if(d(p,g)||m(p,g))return!0;if(p.route.shouldRevalidate){let x=p.route.shouldRevalidate({currentUrl:new URL(l.pathname+l.search+l.hash,window.origin),currentParams:((w=a[0])==null?void 0:w.params)||{},nextUrl:new URL(t,window.origin),nextParams:p.params,defaultShouldRevalidate:!0});if(typeof x=="boolean")return x}return!0}):[]}function Gw(t,r,{includeHydrateFallback:a}={}){return Yw(t.map(s=>{let l=r.routes[s.route.id];if(!l)return[];let f=[l.module];return l.clientActionModule&&(f=f.concat(l.clientActionModule)),l.clientLoaderModule&&(f=f.concat(l.clientLoaderModule)),a&&l.hydrateFallbackModule&&(f=f.concat(l.hydrateFallbackModule)),l.imports&&(f=f.concat(l.imports)),f}).flat(1))}function Yw(t){return[...new Set(t)]}function qw(t){let r={},a=Object.keys(t).sort();for(let s of a)r[s]=t[s];return r}function Qw(t,r){let a=new Set;return new Set(r),t.reduce((s,l)=>{let f=JSON.stringify(qw(l));return a.has(f)||(a.add(f),s.push({key:f,link:l})),s},[])}var Xw=new Set([100,101,204,205]);function Zw(t,r){let a=typeof t=="string"?new URL(t,typeof window>"u"?"server://singlefetch/":window.location.origin):t;return a.pathname==="/"?a.pathname="_root.data":r&&mn(a.pathname,r)==="/"?a.pathname=`${r.replace(/\/$/,"")}/_root.data`:a.pathname=`${a.pathname.replace(/\/$/,"")}.data`,a}function _h(){let t=T.useContext(zr);return Ju(t,"You must render this element inside a <DataRouterContext.Provider> element"),t}function Jw(){let t=T.useContext(Us);return Ju(t,"You must render this element inside a <DataRouterStateContext.Provider> element"),t}var ec=T.createContext(void 0);ec.displayName="FrameworkContext";function Fh(){let t=T.useContext(ec);return Ju(t,"You must render this element inside a <HydratedRouter> element"),t}function ex(t,r){let a=T.useContext(ec),[s,l]=T.useState(!1),[f,d]=T.useState(!1),{onFocus:m,onBlur:p,onMouseEnter:g,onMouseLeave:y,onTouchStart:w}=r,x=T.useRef(null);T.useEffect(()=>{if(t==="render"&&d(!0),t==="viewport"){let P=R=>{R.forEach(D=>{d(D.isIntersecting)})},I=new IntersectionObserver(P,{threshold:.5});return x.current&&I.observe(x.current),()=>{I.disconnect()}}},[t]),T.useEffect(()=>{if(s){let P=setTimeout(()=>{d(!0)},100);return()=>{clearTimeout(P)}}},[s]);let k=()=>
34{l(!0)},S=()=>{l(!1),d(!1)};return a?t!=="intent"?[f,x,{}]:[f,x,{onFocus:Bi(m,k),onBlur:Bi(p,S),onMouseEnter:Bi(g,k),onMouseLeave:Bi(y,S),onTouchStart:Bi(w,k)}]:[!1,x,{}]}function Bi(t,r){return a=>{t&&t(a),a.defaultPrevented||r(a)}}function tx({page:t,...r}){let{router:a}=_h(),s=T.useMemo(()=>Ph(a.routes,t,a.basename),[a.routes,t,a.basename]);return s?T.createElement(rx,{page:t,matches:s,...r}):null}function nx(t){let{manifest:r,routeModules:a}=Fh(),[s,l]=T.useState([]);return T.useEffect(()=>{let f=!1;return Kw(t,r,a).then(d=>{f||l(d)}),()=>{f=!0}},[t,r,a]),s}function rx({page:t,matches:r,...a}){let s=en(),{manifest:l,routeModules:f}=Fh(),{basename:d}=_h(),{loaderData:m,matches:p}=Jw(),g=T.useMemo(()=>Hm(t,r,p,l,s,"data"),[t,r,p,l,s]),y=T.useMemo(()=>Hm(t,r,p,l,s,"assets"),[t,r,p,l,s]),w=T.useMemo(()=>{if(t===s.pathname+s.search+s.hash)return[];let S=new Set,P=!1;if(r.forEach(R=>{var L;let D=l.routes[R.route.id];!D||!D.hasLoader||(!g.some($=>$.route.id===R.route.id)&&R.route.id in m&&((L=f[R.route.id])!=null&&L.shouldRevalidate)||D.hasClientLoader?P=!0:S.add(R.route.id))}),S.size===0)return[];let I=Zw(t,d);return P&&S.size>0&&I.searchParams.set("_routes",r.filter(R=>S.has(R.route.id)).map(R=>R.route.id).join(",")),[I.pathname+I.search]},[d,m,s,l,g,r,t,f]),x=T.useMemo(()=>Gw(y,l),[y,l]),k=nx(y);return T.createElement(T.Fragment,null,w.map(S=>T.createElement("link",{key:S,rel:"prefetch",as:"fetch",href:S,...a})),x.map(S=>T.createElement("link",{key:S,rel:"modulepreload",href:S,...a})),k.map(({key:S,link:P})=>T.createElement("link",{key:S,...P})))}function ix(...t){return r=>{t.forEach(a=>{typeof a=="function"?a(r):a!=null&&(a.current=r)})}}var Vh=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{Vh&&(window.__reactRouterVersion="7.5.3")}catch{}function ax({basename:t,children:r,window:a}){let s=T.useRef();s.current==null&&(s.current=Y0({window:a,v5Compat:!0}));let l=s.current,[f,d]=T.useState({action:l.action,location:l.location}),m=T.useCallback(p=>{T.startTransition(()=>d(p))},[d]);return T.useLayoutEffect(()=>l.listen(m),[l,m]),T.createElement(Dw,{basename:t,children:r,location:f.location,navigationType:f.action,navigator:l})}var jh=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ye=T.forwardRef(function({onClick:r,discover:a="render",prefetch:s="none",relative:l,reloadDocument:f,replace:d,state:m,target:p,to:g,preventScrollReset:y,viewTransition:w,...x},k){let{basename:S}=T.useContext(Ut),P=typeof g=="string"&&jh.test(g),I,R=!1;if(typeof g=="string"&&P&&(I=g,Vh))try{let W=new URL(window.location.href),re=g.startsWith("//")?new URL(W.protocol+g):new URL(g),de=mn(re.pathname,S);re.origin===W.origin&&de!=null?g=de+re.search+re.hash:R=!0}catch{zt(!1,`<Link to="${g}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}let D=xw(g,{relative:l}),[L,$,j]=ex(s,x),G=ux(g,{replace:d,state:m,target:p,preventScrollReset:y,relative:l,viewTransition:w});function ee(W){r&&r(W),W.defaultPrevented||G(W)}let Q=T.createElement("a",{...x,...j,href:I||D,onClick:R||f?r:ee,ref:ix(k,$),target:p,"data-discover":!P&&a==="render"?"true":void 0});return L&&!P?T.createElement(T.Fragment,null,Q,T.createElement(tx,{page:D})):Q});ye.displayName="Link";var sx=T.forwardRef(function({"aria-current":r="page",caseSensitive:a=!1,className:s="",end:l=!1,style:f,to:d,viewTransition:m,children:p,...g},y){let w=ra(d,{relative:g.relative}),x=en(),k=T.useContext(Us),{navigator:S,basename:P}=T.useContext(Ut),I=k!=null&&px(w)&&m===!0,R=S.encodeLocation?S.encodeLocation(w).pathname:w.pathname,D=x.pathname,L=k&&k.navigation&&k.navigation.location?k.navigation.location.pathname:null;a||(D=D.toLowerCase(),L=L?L.toLowerCase():null,R=R.toLowerCase()),L&&P&&(L=mn(L,P)||L);const $=R!=="/"&&R.endsWith("/")?R.length-1:R.length;let j=D===R||!l&&D.startsWith(R)&&D.charAt($)==="/",G=L!=null&&(L===R||!l&&L.startsWith(R)&&L.charAt(R.length)==="/"),ee={isActive:j,isPending:G,isTransitioning:I},Q=j?r:void 0,W;typeof s=="function"?W=s(ee):W=[s,j?"active":null,G?"pending":null,I?"transitioning":null].filter(
34Boolean).join(" ");let re=typeof f=="function"?f(ee):f;return T.createElement(ye,{...g,"aria-current":Q,className:W,ref:y,style:re,to:d,viewTransition:m},typeof p=="function"?p(ee):p)});sx.displayName="NavLink";var ox=T.forwardRef(({discover:t="render",fetcherKey:r,navigate:a,reloadDocument:s,replace:l,state:f,method:d=Ns,action:m,onSubmit:p,relative:g,preventScrollReset:y,viewTransition:w,...x},k)=>{let S=dx(),P=mx(m,{relative:g}),I=d.toLowerCase()==="get"?"get":"post",R=typeof m=="string"&&jh.test(m),D=L=>{if(p&&p(L),L.defaultPrevented)return;L.preventDefault();let $=L.nativeEvent.submitter,j=($==null?void 0:$.getAttribute("formmethod"))||d;S($||L.currentTarget,{fetcherKey:r,method:j,navigate:a,replace:l,state:f,relative:g,preventScrollReset:y,viewTransition:w})};return T.createElement("form",{ref:k,method:I,action:P,onSubmit:s?p:D,...x,"data-discover":!R&&t==="render"?"true":void 0})});ox.displayName="Form";function lx(t){return`${t} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function $h(t){let r=T.useContext(zr);return Ae(r,lx(t)),r}function ux(t,{target:r,replace:a,state:s,preventScrollReset:l,relative:f,viewTransition:d}={}){let m=Qu(),p=en(),g=ra(t,{relative:f});return T.useCallback(y=>{if(jw(y,r)){y.preventDefault();let w=a!==void 0?a:Ki(p)===Ki(g);m(t,{replace:w,state:s,preventScrollReset:l,relative:f,viewTransition:d})}},[p,m,g,a,s,r,t,l,f,d])}var cx=0,fx=()=>`__${String(++cx)}__`;function dx(){let{router:t}=$h("useSubmit"),{basename:r}=T.useContext(Ut),a=Aw();return T.useCallback(async(s,l={})=>{let{action:f,method:d,encType:m,formData:p,body:g}=Uw(s,r);if(l.navigate===!1){let y=l.fetcherKey||fx();await t.fetch(y,a,l.action||f,{preventScrollReset:l.preventScrollReset,formData:p,body:g,formMethod:l.method||d,formEncType:l.encType||m,flushSync:l.flushSync})}else await t.navigate(l.action||f,{preventScrollReset:l.preventScrollReset,formData:p,body:g,formMethod:l.method||d,formEncType:l.encType||m,replace:l.replace,state:l.state,fromRouteId:a,flushSync:l.flushSync,viewTransition:l.viewTransition})},[t,r,a])}function mx(t,{relative:r}={}){let{basename:a}=T.useContext(Ut),s=T.useContext(Wt);Ae(s,"useFormAction must be used inside a RouteContext");let[l]=s.matches.slice(-1),f={...ra(t||".",{relative:r})},d=en();if(t==null){f.search=d.search;let m=new URLSearchParams(f.search),p=m.getAll("index");if(p.some(y=>y==="")){m.delete("index"),p.filter(w=>w).forEach(w=>m.append("index",w));let y=m.toString();f.search=y?`?${y}`:""}}return(!t||t===".")&&l.route.index&&(f.search=f.search?f.search.replace(/^\?/,"?index&"):"?index"),a!=="/"&&(f.pathname=f.pathname==="/"?a:fn([a,f.pathname])),Ki(f)}function px(t,r={}){let a=T.useContext(Ah);Ae(a!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`.  Did you accidentally import `RouterProvider` from `react-router`?");let{basename:s}=$h("useViewTransitionState"),l=ra(t,{relative:r.relative});if(!a.isTransitioning)return!1;let f=mn(a.currentLocation.pathname,s)||a.currentLocation.pathname,d=mn(a.nextLocation.pathname,s)||a.nextLocation.pathname;return Ls(l.pathname,d)!=null||Ls(l.pathname,f)!=null}new TextEncoder;[...Xw];var Jl={exports:{}},Li={};/**
35 * @license React
36 * react-jsx-runtime.production.min.js
37 *
38 * Copyright (c) Facebook, Inc. and its affiliates.
39 *
40 * This source code is licensed under the MIT license found in the
41 * LICENSE file in the root directory of this source tree.
42 */var Km;function hx(){if(Km)return Li;Km=1;var t=zs(),r=Symbol.for("react.element"),a=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,l=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,f={key:!0,ref:!0,__self:!0,__source:!0};function d(m,p,g){var y,w={},x=null,k=null;g!==void 0&&(x=""+g),p.key!==void 0&&(x=""+p.key),p.ref!==void 0&&(k=p.ref);for(y in p)s.call(p,y)&&!f.hasOwnProperty(y)&&(w[y]=p[y]);if(m&&m.defaultProps)for(y in p=m.defaultProps,p)w[y]===void 0&&(w[y]=p[y]);return{$$typeof:r,type:m,key:x,ref:k,props:w,_owner:l.current}}return Li.Fragment=a,Li.jsx=d,Li.jsxs=d,Li}var Gm;function gx(){return Gm||(Gm=1,Jl.exports=hx()),Jl.exports}var dn=gx();const tc=T.createContext({});function nc(t){const r=T.useRef(null);return r.current===null&&(r.current=t()),r.current}const rc=typeof window<"u",zh=rc?T.useLayoutEffect:T.useEffect,Ks=T.createContext(null),ic=T.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"});class yx extends T.Component{getSnapshotBeforeUpdate(r){const a=this.props.childRef.current;if(a&&r.isPresent&&!this.props.isPresent){const s=a.offsetParent,l=s instanceof HTMLElement&&s.offsetWidth||0,f=this.props.sizeRef.current;f.height=a.offsetHeight||0,f.width=a.offsetWidth||0,f.top=a.offsetTop,f.left=a.offsetLeft,f.right=l-f.width-f.left}return null}componentDidUpdate(){}render(){return this.props.children}}function vx({children:t,isPresent:r,anchorX:a}){const s=T.useId(),l=T.useRef(null),f=T.useRef({width:0,height:0,top:0,left:0,right:0}),{nonce:d}=T.useContext(ic);return T.useInsertionEffect(()=>{const{width:m,height:p,top:g,left:y,right:w}=f.current;if(r||!l.current||!m||!p)return;
vendor: 4,170 bytes, lines 42-50
42const x=a==="left"?`left: ${y}`:`right: ${w}`;l.current.dataset.motionPopId=s;const k=document.createElement("style");return d&&(k.nonce=d),document.head.appendChild(k),k.sheet&&k.sheet.insertRule(`
43          [data-motion-pop-id="${s}"] {
44            position: absolute !important;
45            width: ${m}px !important;
46            height: ${p}px !important;
47            ${x}px !important;
48            top: ${g}px !important;
49          }
50        `),()=>{document.head.removeChild(k)}},[r]),dn.jsx(yx,{isPresent:r,childRef:l,sizeRef:f,children:T.cloneElement(t,{ref:l})})}const wx=({children:t,initial:r,isPresent:a,onExitComplete:s,custom:l,presenceAffectsLayout:f,mode:d,anchorX:m})=>{const p=nc(xx),g=T.useId();let y=!0,w=T.useMemo(()=>(y=!1,{id:g,initial:r,isPresent:a,custom:l,onExitComplete:x=>{p.set(x,!0);for(const k of p.values())if(!k)return;s&&s()},register:x=>(p.set(x,!1),()=>p.delete(x))}),[a,p,s]);return f&&y&&(w={...w}),T.useMemo(()=>{p.forEach((x,k)=>p.set(k,!1))},[a]),T.useEffect(()=>{!a&&!p.size&&s&&s()},[a]),d==="popLayout"&&(t=dn.jsx(vx,{isPresent:a,anchorX:m,children:t})),dn.jsx(Ks.Provider,{value:w,children:t})};function xx(){return new Map}function Uh(t=!0){const r=T.useContext(Ks);if(r===null)return[!0,null];const{isPresent:a,onExitComplete:s,register:l}=r,f=T.useId();T.useEffect(()=>{if(t)return l(f)},[t]);const d=T.useCallback(()=>t&&s&&s(f),[f,s,t]);return!a&&s?[!1,d]:[!0]}const Es=t=>t.key||"";function Ym(t){const r=[];return T.Children.forEach(t,a=>{T.isValidElement(a)&&r.push(a)}),r}const Wh=({children:t,custom:r,initial:a=!0,onExitComplete:s,presenceAffectsLayout:l=!0,mode:f="sync",propagate:d=!1,anchorX:m="left"})=>{const[p,g]=Uh(d),y=T.useMemo(()=>Ym(t),[t]),w=d&&!p?[]:y.map(Es),x=T.useRef(!0),k=T.useRef(y),S=nc(()=>new Map),[P,I]=T.useState(y),[R,D]=T.useState(y);zh(()=>{x.current=!1,k.current=y;for(let j=0;j<R.length;j++){const G=Es(R[j]);w.includes(G)?S.delete(G):S.get(G)!==!0&&S.set(G,!1)}},[R,w.length,w.join("-")]);const L=[];if(y!==P){let j=[...y];for(let G=0;G<R.length;G++){const ee=R[G],Q=Es(ee);w.includes(Q)||(j.splice(G,0,ee),L.push(ee))}return f==="wait"&&L.length&&(j=L),D(Ym(j)),I(y),null}const{forceRender:$}=T.useContext(tc);return dn.jsx(dn.Fragment,{children:R.map(j=>{const G=Es(j),ee=d&&!p?!1:y===R||w.includes(G),Q=()=>{if(S.has(G))S.set(G,!0);else return;let W=!0;S.forEach(re=>{re||(W=!1)}),W&&($==null||$(),D(k.current),d&&(g==null||g()),s&&s())};return dn.jsx(wx,{isPresent:ee,initial:!x.current||a?void 0:!1,custom:r,presenceAffectsLayout:l,mode:f,onExitComplete:ee?void 0:Q,anchorX:m,children:j},G)})})};function ac(t,r){t.indexOf(r)===-1&&t.push(r)}function sc(t,r){const a=t.indexOf(r);a>-1&&t.splice(a,1)}const pn=(t,r,a)=>a>r?r:a<t?t:a;let oc=()=>{};const hn={},Hh=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t),Kh=t=>/^0[^.\s]+$/u.test(t);function lc(t){let r;return()=>(r===void 0&&(r=t()),r)}const Mt=t=>t,Ex=(t,r)=>a=>r(t(a)),ia=(...t)=>t.reduce(Ex),Gi=(t,r,a)=>{const s=r-t;return s===0?1:(a-t)/s};class uc{constructor(){this.subscriptions=[]}add(r){return ac(this.subscriptions,r),()=>sc(this.subscriptions,r)}notify(r,a,s){const l=this.subscriptions.length;if(l)if(l===1)this.subscriptions[0](r,a,s);else for(let f=0;f<l;f++){const d=this.subscriptions[f];d&&d(r,a,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const Xt=t=>t*1e3,Zt=t=>t/1e3;function Gh(t,r){return r?t*(1e3/r):0}const Yh=(t,r,a)=>(((1-3*a+3*r)*t+(3*a-6*r))*t+3*r)*t,kx=1e-7,Sx=12;function Tx(t,r,a,s,l){let f,d,m=0;do d=r+(a-r)/2,f=Yh(d,s,l)-t,f>0?a=d:r=d;while(Math.abs(f)>kx&&++m<Sx);return d}function aa(t,r,a,s){if(t===r&&a===s)return Mt;const l=f=>Tx(f,0,1,t,a);return f=>f===0||f===1?f:Yh(l(f),r,s)}const qh=t=>r=>r<=.5?t(2*r)/2:(2-t(2*(1-r)))/2,Qh=t=>r=>1-t(1-r),Xh=aa(.33,1.53,.69,.99),cc=Qh(Xh),Zh=qh(cc),Jh=t=>(t*=2)<1?.5*cc(t):.5*(2-Math.pow(2,-10*(t-1))),fc=t=>1-Math.sin(Math.acos(t)),eg=Qh(fc),tg=qh(fc),Cx=aa(.42,0,1,1),bx=aa(0,0,.58,1),ng=aa(.42,0,.58,1),Px=t=>Array.isArray(t)&&typeof t[0]!="number",rg=t=>Array.isArray(t)&&typeof t[0]=="number",Rx={linear:Mt,easeIn:Cx,easeInOut:ng,easeOut:bx,circIn:fc,circInOut:tg,circOut:eg,backIn:cc,backInOut:Zh,backOut:X
vendor: 5,272 bytes, line 50
50h,anticipate:Jh},Nx=t=>typeof t=="string",qm=t=>{if(rg(t)){oc(t.length===4);const[r,a,s,l]=t;return aa(r,a,s,l)}else if(Nx(t))return Rx[t];return t},ks=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"],Qm={value:null};function Ix(t,r){let a=new Set,s=new Set,l=!1,f=!1;const d=new WeakSet;let m={delta:0,timestamp:0,isProcessing:!1},p=0;function g(w){d.has(w)&&(y.schedule(w),t()),p++,w(m)}const y={schedule:(w,x=!1,k=!1)=>{const P=k&&l?a:s;return x&&d.add(w),P.has(w)||P.add(w),w},cancel:w=>{s.delete(w),d.delete(w)},process:w=>{if(m=w,l){f=!0;return}l=!0,[a,s]=[s,a],a.forEach(g),r&&Qm.value&&Qm.value.frameloop[r].push(p),p=0,a.clear(),l=!1,f&&(f=!1,y.process(w))}};return y}const Ax=40;function ig(t,r){let a=!1,s=!0;const l={delta:0,timestamp:0,isProcessing:!1},f=()=>a=!0,d=ks.reduce((L,$)=>(L[$]=Ix(f,r?$:void 0),L),{}),{setup:m,read:p,resolveKeyframes:g,preUpdate:y,update:w,preRender:x,render:k,postRender:S}=d,P=()=>{const L=hn.useManualTiming?l.timestamp:performance.now();a=!1,hn.useManualTiming||(l.delta=s?1e3/60:Math.max(Math.min(L-l.timestamp,Ax),1)),l.timestamp=L,l.isProcessing=!0,m.process(l),p.process(l),g.process(l),y.process(l),w.process(l),x.process(l),k.process(l),S.process(l),l.isProcessing=!1,a&&r&&(s=!1,t(P))},I=()=>{a=!0,s=!0,l.isProcessing||t(P)};return{schedule:ks.reduce((L,$)=>{const j=d[$];return L[$]=(G,ee=!1,Q=!1)=>(a||I(),j.schedule(G,ee,Q)),L},{}),cancel:L=>{for(let $=0;$<ks.length;$++)d[ks[$]].cancel(L)},state:l,steps:d}}const{schedule:De,cancel:On,state:Ze,steps:eu}=ig(typeof requestAnimationFrame<"u"?requestAnimationFrame:Mt,!0);let As;function Mx(){As=void 0}const yt={now:()=>(As===void 0&&yt.set(Ze.isProcessing||hn.useManualTiming?Ze.timestamp:performance.now()),As),set:t=>{As=t,queueMicrotask(Mx)}},ag=t=>r=>typeof r=="string"&&r.startsWith(t),dc=ag("--"),Bx=ag("var(--"),mc=t=>Bx(t)?Lx.test(t.split("/*")[0].trim()):!1,Lx=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,Wr={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},Yi={...Wr,transform:t=>pn(0,1,t)},Ss={...Wr,default:1},ji=t=>Math.round(t*1e5)/1e5,pc=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Dx(t){return t==null}const Ox=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,hc=(t,r)=>a=>!!(typeof a=="string"&&Ox.test(a)&&a.startsWith(t)||r&&!Dx(a)&&Object.prototype.hasOwnProperty.call(a,r)),sg=(t,r,a)=>s=>{if(typeof s!="string")return s;const[l,f,d,m]=s.match(pc);return{[t]:parseFloat(l),[r]:parseFloat(f),[a]:parseFloat(d),alpha:m!==void 0?parseFloat(m):1}},_x=t=>pn(0,255,t),tu={...Wr,transform:t=>Math.round(_x(t))},tr={test:hc("rgb","red"),parse:sg("red","green","blue"),transform:({red:t,green:r,blue:a,alpha:s=1})=>"rgba("+tu.transform(t)+", "+tu.transform(r)+", "+tu.transform(a)+", "+ji(Yi.transform(s))+")"};function Fx(t){let r="",a="",s="",l="";return t.length>5?(r=t.substring(1,3),a=t.substring(3,5),s=t.substring(5,7),l=t.substring(7,9)):(r=t.substring(1,2),a=t.substring(2,3),s=t.substring(3,4),l=t.substring(4,5),r+=r,a+=a,s+=s,l+=l),{red:parseInt(r,16),green:parseInt(a,16),blue:parseInt(s,16),alpha:l?parseInt(l,16)/255:1}}const Su={test:hc("#"),parse:Fx,transform:tr.transform},sa=t=>({test:r=>typeof r=="string"&&r.endsWith(t)&&r.split(" ").length===1,parse:parseFloat,transform:r=>`${r}${t}`}),Dn=sa("deg"),Jt=sa("%"),ie=sa("px"),Vx=sa("vh"),jx=sa("vw"),Xm={...Jt,parse:t=>Jt.parse(t)/100,transform:t=>Jt.transform(t*100)},Mr={test:hc("hsl","hue"),parse:sg("hue","saturation","lightness"),transform:({hue:t,saturation:r,lightness:a,alpha:s=1})=>"hsla("+Math.round(t)+", "+Jt.transform(ji(r))+", "+Jt.transform(ji(a))+", "+ji(Yi.transform(s))+")"},at={test:t=>tr.test(t)||Su.test(t)||Mr.test(t),parse:t=>tr.test(t)?tr.parse(t):Mr.test(t)?Mr.parse(t):Su.parse(t),transform:t=>typeof t=="string"?t:t.hasOwnProperty("red")?tr.transform(t):Mr.transform(t)},$x=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function zx(t){var r,a;return isNaN(t)&&typeof t=="string"&&(((r=t.match(pc))==null?void 0:r.length)||0)+(((a=t.match($x))==null?void 0:a.length)||0)>0}const og="number",lg="color",Ux="var",Wx="var(",Zm="${}",Hx=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function qi(t){const r=t.toString(),a=[],s={color:[],number:[],var:[]},l=[];let f=0;const m=r.replace(Hx,p=>(at.test(p)?(s.color.push(f),l.push(lg),a.push(at.parse(p))):p.startsWith(Wx)?(s.var.push(f),l.push(Ux),a.push(p)):(s.number.push(f),l.push(og),a.push(parseFloat(p))),++f,Zm)).split(Zm);return{values:a,split:m,indexes:s,types:l}}function ug(t){return qi(t).values}function cg(t){const{split:r,types:a}=qi(t),s=r.length;return l=>{let f="";for(let d=0;d<s;d++)if(f+=r[d],l[d]!==void 0){const m=a[d];m===og?f+=ji(l[d]):m===lg?f+=at.transform(l[d]):f+=l[d]}return f}}const Kx=t=>typeof t=="number"?0:t;function Gx(t){const r=ug(t);return cg(t)(r.map(Kx))}const _n={test:zx,parse:ug,createTransformer:cg,getAnimatableNone:Gx};function nu(t,r,a){return a<0&&(a+=1),a>
vendor: 15,826 bytes, line 50
501&&(a-=1),a<1/6?t+(r-t)*6*a:a<1/2?r:a<2/3?t+(r-t)*(2/3-a)*6:t}function Yx({hue:t,saturation:r,lightness:a,alpha:s}){t/=360,r/=100,a/=100;let l=0,f=0,d=0;if(!r)l=f=d=a;else{const m=a<.5?a*(1+r):a+r-a*r,p=2*a-m;l=nu(p,m,t+1/3),f=nu(p,m,t),d=nu(p,m,t-1/3)}return{red:Math.round(l*255),green:Math.round(f*255),blue:Math.round(d*255),alpha:s}}function Ds(t,r){return a=>a>0?r:t}const Le=(t,r,a)=>t+(r-t)*a,ru=(t,r,a)=>{const s=t*t,l=a*(r*r-s)+s;return l<0?0:Math.sqrt(l)},qx=[Su,tr,Mr],Qx=t=>qx.find(r=>r.test(t));function Jm(t){const r=Qx(t);if(!r)return!1;let a=r.parse(t);return r===Mr&&(a=Yx(a)),a}const ep=(t,r)=>{const a=Jm(t),s=Jm(r);if(!a||!s)return Ds(t,r);const l={...a};return f=>(l.red=ru(a.red,s.red,f),l.green=ru(a.green,s.green,f),l.blue=ru(a.blue,s.blue,f),l.alpha=Le(a.alpha,s.alpha,f),tr.transform(l))},Tu=new Set(["none","hidden"]);function Xx(t,r){return Tu.has(t)?a=>a<=0?t:r:a=>a>=1?r:t}function Zx(t,r){return a=>Le(t,r,a)}function gc(t){return typeof t=="number"?Zx:typeof t=="string"?mc(t)?Ds:at.test(t)?ep:tE:Array.isArray(t)?fg:typeof t=="object"?at.test(t)?ep:Jx:Ds}function fg(t,r){const a=[...t],s=a.length,l=t.map((f,d)=>gc(f)(f,r[d]));return f=>{for(let d=0;d<s;d++)a[d]=l[d](f);return a}}function Jx(t,r){const a={...t,...r},s={};for(const l in a)t[l]!==void 0&&r[l]!==void 0&&(s[l]=gc(t[l])(t[l],r[l]));return l=>{for(const f in s)a[f]=s[f](l);return a}}function eE(t,r){const a=[],s={color:0,var:0,number:0};for(let l=0;l<r.values.length;l++){const f=r.types[l],d=t.indexes[f][s[f]],m=t.values[d]??0;a[l]=m,s[f]++}return a}const tE=(t,r)=>{const a=_n.createTransformer(r),s=qi(t),l=qi(r);return s.indexes.var.length===l.indexes.var.length&&s.indexes.color.length===l.indexes.color.length&&s.indexes.number.length>=l.indexes.number.length?Tu.has(t)&&!l.values.length||Tu.has(r)&&!s.values.length?Xx(t,r):ia(fg(eE(s,l),l.values),a):Ds(t,r)};function dg(t,r,a){return typeof t=="number"&&typeof r=="number"&&typeof a=="number"?Le(t,r,a):gc(t)(t,r)}const nE=t=>{const r=({timestamp:a})=>t(a);return{start:()=>De.update(r,!0),stop:()=>On(r),now:()=>Ze.isProcessing?Ze.timestamp:yt.now()}},mg=(t,r,a=10)=>{let s="";const l=Math.max(Math.round(r/a),2);for(let f=0;f<l;f++)s+=t(f/(l-1))+", ";return`linear(${s.substring(0,s.length-2)})`},Os=2e4;function yc(t){let r=0;const a=50;let s=t.next(r);for(;!s.done&&r<Os;)r+=a,s=t.next(r);return r>=Os?1/0:r}function rE(t,r=100,a){const s=a({...t,keyframes:[0,r]}),l=Math.min(yc(s),Os);return{type:"keyframes",ease:f=>s.next(l*f).value/r,duration:Zt(l)}}const iE=5;function pg(t,r,a){const s=Math.max(r-iE,0);return Gh(a-t(s),r-s)}const Fe={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},tp=.001;function aE({duration:t=Fe.duration,bounce:r=Fe.bounce,velocity:a=Fe.velocity,mass:s=Fe.mass}){let l,f,d=1-r;d=pn(Fe.minDamping,Fe.maxDamping,d),t=pn(Fe.minDuration,Fe.maxDuration,Zt(t)),d<1?(l=g=>{const y=g*d,w=y*t,x=y-a,k=Cu(g,d),S=Math.exp(-w);return tp-x/k*S},f=g=>{const w=g*d*t,x=w*a+a,k=Math.pow(d,2)*Math.pow(g,2)*t,S=Math.exp(-w),P=Cu(Math.pow(g,2),d);return(-l(g)+tp>0?-1:1)*((x-k)*S)/P}):(l=g=>{const y=Math.exp(-g*t),w=(g-a)*t+1;return-.001+y*w},f=g=>{const y=Math.exp(-g*t),w=(a-g)*(t*t);return y*w});const m=5/t,p=oE(l,f,m);if(t=Xt(t),isNaN(p))return{stiffness:Fe.stiffness,damping:Fe.damping,duration:t};{const g=Math.pow(p,2)*s;return{stiffness:g,damping:d*2*Math.sqrt(s*g),duration:t}}}const sE=12;function oE(t,r,a){let s=a;for(let l=1;l<sE;l++)s=s-t(s)/r(s);return s}function Cu(t,r){return t*Math.sqrt(1-r*r)}const lE=["duration","bounce"],uE=["stiffness","damping","mass"];function np(t,r){return r.some(a=>t[a]!==void 0)}function cE(t){let r={velocity:Fe.velocity,stiffness:Fe.stiffness,damping:Fe.damping,mass:Fe.mass,isResolvedFromDuration:!1,...t};if(!np(t,uE)&&np(t,lE))if(t.visualDuration){const a=t.visualDuration,s=2*Math.PI/(a*1.2),l=s*s,f=2*pn(.05,1,1-(t.bounce||0))*Math.sqrt(l);r={...r,mass:Fe.mass,stiffness:l,damping:f}}else{const a=aE(t);r={...r,...a,mass:Fe.mass},r.isResolvedFromDuration=!0}return r}function _s(t=Fe.visualDuration,r=Fe.bounce){const a=typeof t!="object"?{visualDuration:t,keyframes:[0,1],bounce:r}:t;let{restSpeed:s,restDelta:l}=a;const f=a.keyframes[0],d=a.keyframes[a.keyframes.length-1],m={done:!1,value:f},{stiffness:p,damping:g,mass:y,duration:w,velocity:x,isResolvedFromDuration:k}=cE({...a,velocity:-Zt(a.velocity||0)}),S=x||0,P=g/(2*Math.sqrt(p*y)),I=d-f,R=Zt(Math.sqrt(p/y)),D=Math.abs(I)<5;s||(s=D?Fe.restSpeed.granular:Fe.restSpeed.default),l||(l=D?Fe.restDelta.granular:Fe.restDelta.default);let L;if(P<1){const j=Cu(R,P);L=G=>{const ee=Math.exp(-P*R*G);return d-ee*((S+P*R*I)/j*Math.sin(j*G)+I*Math.cos(j*G))}}else if(P===1)L=j=>d-Math.exp(-R*j)*(I+(S+R*I)*j);else{const j=R*Math.sqrt(P*P-1);L=G=>{const ee=Math.exp(-P*R*G),Q=Math.min(j*G,300);return d-ee*((S+P*R*I)*Math.sinh(Q)+j*I*Math.cosh(Q))/j}}const $={calculatedDuration:k&&w||null,next:j=>{const G=L(j);if(k)m.done=j>=w;else{let ee=j===0?S:0;P<1&&(ee=j===0?Xt(S):pg(L,j,G));const Q=Math.abs(ee)<=s,W=Math.abs(d-G)<=l;m.done=Q&&W}return m.value=m.done?d:G,m},toString:()=>{const j=Math.min(yc($),Os),G=mg(ee=>$.next(j*ee).value,j,30);return j+"ms "+G},toTransition:()=>{}};return $}_s.applyToOptions=t=>{const r=rE(t,100,_s);return t.ease=r.ease,t.duration=Xt(r.duration),t.type="keyframes",t};function bu({keyframes:t,velocity:r=0,power:a=.8,timeConstant:s=325,bounceDamping:l=10,bounceStiffness:f=500,modifyTarget:d,min:m,max:p,restDelta:g=.5,restSpeed:y}){const w=t[0],x={done:!1,value:w},k=Q=>m!==void 0&&Q<m||p!==void 0&&Q>p,S=Q=>m===void 0?p:p===void 0||Math.abs(m-Q)<Math.abs(p-Q)?m:p;let P=a*r;const I=w+P,R=d===void 0?I:d(I);R!==I&&(P=R-w);const D=Q=>-P*Math.exp(-Q/s),L=Q=>R+D(Q),$=Q=>{const W=D(Q),re=L(Q);x.done=Math.abs(W)<=g,x.value=x.done?R:re};let j,G;const ee=Q=>{k(x.value)&&(j=Q,G=_s({keyframes:[x.value,S(x.value)],velocity:pg(L,Q,x.value),damping:l,stiffness:f,restDelta:g,restSpeed:y}))};return ee(0),{calculatedDuration:null,next:Q=>{let W=!1;return!G&&j===void 0&&(W=!0,$(Q),ee(Q)),j!==void 0&&Q>=j?G.next(Q-j):(!W&&$(Q),x)}}}function fE(t,r,a){const s=[],l=a||hn.mix||dg,f=t.length-1;for(let d=0;d<f;d++){let m=l(t[d],t[d+1]);if(r){const p=Array.isArray(r)?r[d]||Mt:r;m=ia(p,m)}s.push(m)}return s}function dE(t,r,{clamp:a=!0,ease:s,mixer:l}={}){const f=t.length;if(oc(f===r.length),f===1)return()=>r[0];if(f===2&&r[0]===r[1])return()=>r[1];const d=t[0]===t[1];t[0]>t[f-1]&&(t=[...t].reverse(),r=[...r].reverse());const m=fE(r,s,l),p=m.length,g=y=>{if(d&&y<t[0])return r[0];let w=0;if(p>1)for(;w<t.length-2&&!(y<t[w+1]);w++);const x=Gi(t[w],t[w+1],y);return m[w](x)};return a?y=>g(pn(t[0],t[f-1],y)):g}function mE(t,r){const a=t[t.length-1];for(let s=1;s<=r;s++){const l=Gi(0,r,s);t.push(Le(a,1,l))}}function pE(t){const r=[0];return mE(r,t.length-1),r}function hE(t,r){return t.map(a=>a*r)}function gE(t,r){return t.map(()=>r||ng).splice(0,t.length-1)}function $i({duration:t=300,keyframes:r,times:a,ease:s="easeInOut"}){const l=Px(s)?s.map(qm):qm(s),f={done:!1,value:r[0]},d=hE(a&&a.length===r.length?a:pE(r),t),m=dE(d,r,{ease:Array.isArray(l)?l:gE(r,l)});return{calculatedDuration:t,next:p=>(f.value=m(p),f.done=p>=t,f)}}const yE=t=>t!==null;function vc(t,{repeat:r,repeatType:a="loop"},s,l=1){const f=t.filter(yE),m=l<0||r&&a!=="loop"&&r%2===1?0:f.length-1;return!m||s===void 0?f[m]:s}const vE={decay:bu,inertia:bu,tween:$i,keyframes:$i,spring:_s};function hg(t){typeof t.type=="string"&&(t.type=vE[t.type])}class wc{constructor(){this.count=0,this.updateFinished()}get finished(){return this._finished}updateFinished(){this.count++,this._finished=new Promise(r=>{this.resolve=r})}notifyFinished(){this.resolve()}then(r,a){return this.finished.then(r,a)}}const wE=t=>t/100;class gg extends wc{constructor(r){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:a}=this.options;if(a&&a.updatedAt!==yt.now()&&this.tick(yt.now()),this.isStopped=!0,this.state==="idle")return;this.teardown();const{onStop:s}=this.options;s&&s()},this.options=r,this.initAnimation(),this.play(),r.autoplay===!1&&this.pause()}initAnimation(){const{options:r}=this;hg(r);const{type:a=$i,repeat:s=0,repeatDelay:l=0,repeatType:f,velocity:d=0}=r;let{keyframes:m}=r;const p=a||$i;p!==$i&&typeof m[0]!="number"&&(this.mixKeyframes=ia(wE,dg(m[0],m[1])),m=[0,100]);const g=p({...r,keyframes:m});f==="mirror"&&(this.mirroredGenerator=p({...r,keyframes:[...m].reverse(),velocity:-d})),g.calculatedDuration===null&&(g.calculatedDuration=yc(g));const{calculatedDuration:y}=g;this.calculatedDuration=y,this.resolvedDuration=y+l,this.totalDuration=this.resolvedDuration*(s+1)-l,this.generator=g}updateTime(r){const a=Math.round(r-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=a}tick(r,a=!1){const{generator:s,totalDuration:l,mixKeyframes:f,mirroredGenerator:d,resolvedDuration:m,calculatedDuration:p}=this;if(this.startTime===null)return s.next(0);const{delay:g=0,keyframes:y,repeat:w,repeatType:x,repeatDelay:k,type:S,onUpdate:P,finalKeyframe:I}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,r):this.speed<0&&(this.startTime=Math.min(r-l/this.speed,this.startTime)),a?this.currentTime=r:this.updateTime(r);const R=this.currentTime-g*(this.playbackSpeed>=0?1:-1),D=this.playbackSpeed>=0?R<0:R>l;this.currentTime=Math.max(R,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=l);let L=this.currentTime,$=s;if(w){const Q=Math.min(this.currentTime,l)/m;let W=Math.floor(Q),re=Q%1;!re&&Q>=1&&(re=1),re===1&&W--,W=Math.min(W,w+1),!!(W%2)&&(x==="reverse"?(re=1-re,k&&(re-=k/m)):x==="mirror"&&($=d)),L=pn(0,1,re)*m}const j=D?{done:!1,value:y[0]}:$.next(L);f&&(j.value=f(j.value));let{done:G}=j;!D&&p!==null&&(G=this.playbackSpeed>=0?this.currentTime>=l:this.currentTime<=0);const ee=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&G);return ee&&S!==bu&&(j.value=vc(y,this.options,I,this.speed)),P&&P(j.value),ee&&this.finish(),j}then(r,a){return this.finished.then(r,a)}get duration(){return Zt(this.calculatedDuration)}get time(){return Zt(this.currentTime)}set time(r){r=Xt(r),this.currentTime=r,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=r:this.driver&&(this.startTime=this.driver.now()-r/this.playbackSpeed)}get speed(){return this.playbackSpeed}set speed(r){this.updateTime(yt.now());const a=this.playbackSpeed!==r;this.playbackSpeed=r,a&&(this.time=Zt(this.currentTime))}play(){if(this.isStopped)return;const{driver:r=nE,onPlay:a,startTime:s}=this.options;this.driver||(this.driver=r(f=>this.tick(f))),a&&a();const l=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=l):this.holdTime!==null?this.startTime=l-this.holdTime:this.startTime||(this.startTime=s??l),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(yt.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.teardown(),this.state="finished";const{onComplete:r}=this.options;r&&r()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown()}teardown(){this.notifyFinished(),this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(r){return this.startTime=0,this.tick(r,!0)}attachTimeline(r){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),r.observe(this)}}function xE(t){for(let r=1;r<t.length;r++)t[r]??(t[r]=t[r-1])}const nr=t=>t*180/Math.PI,Pu=t=>{const r=nr(Math.atan2(t[1],t[0]));return Ru(r)},EE={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:Pu,rotateZ:Pu,skewX:t=>nr(Math.atan(t[1])),skewY:t=>nr(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},Ru=t=>(t=t%360,t<0&&(t+=360),t),rp=Pu,ip=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),ap=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),kE={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:ip,scaleY:ap,scale:t=>(ip(t)+ap(t))/2,rotateX:t=>Ru(nr(Math.atan2(t[6],t[5]))),rotateY:t=>Ru(nr(Math.atan2(-t[2],t[0]))),rotateZ:rp,rotate:rp,skewX:t=>nr(Math.atan(t[4])),skewY:t=>nr(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function sp(t){return t.includes("scale")?1:0}function Nu(t,r){if(!t||t==="none")return sp(r);const a=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let s,l;if(a)s=kE,l=a;else{const m=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);s=EE,l=m}if(!l)return sp(r);const f=s[r],d=l[1].split(",").map(TE);return typeof f=="function"?f(d):d[f]}const SE=(t,r)=>{const{transform:a="none"}=getComputedStyle(t);return Nu(a,r)};function TE(t){return parseFloat(t.trim())}const Hr=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Kr=new Set(Hr),op=t=>t===Wr||t===ie,CE=new Set(["x","y","z"]),bE=Hr.filter(t=>!CE.has(t));function PE(t){const r=[];return bE.forEach(a=>{const s=t.getValue(a);s!==void 0&&(r.push([a,s.get()]),s.set(a.startsWith("scale")?1:0))}),r}const Fr={width:({x:t},{paddingLeft:r="0",paddingRight:a="0"})=>t.max-t.min-parseFloat(r)-parseFloat(a),height:({y:t},{paddingTop:r="0",paddingBottom:a="0"})=>t.max-t.min-parseFloat(r)-parseFloat(a),top:(t,{top:r})=>parseFloat(r),left:(t,{left:r})=>parseFloat(r),bottom:({y:t},{top:r})=>parseFloat(r)+(t.max-t.min),right:({x:t},{left:r})=>parseFloat(r)+(t.max-t.min),x:(t,{transform:r})=>Nu(r,"x"),y:(t,{transform:r})=>Nu(r,"y")};Fr.translateX=Fr.x;Fr.translateY=Fr.y;const ir=new Set;let Iu=!1,Au=!1,Mu=!1;function yg(){if(Au){const t=Array.from(ir).filter(s=>s.needsMeasurement),r=new Set(t.map(s=>s.element)),a=new Map;r.forEach(s=>{const l=PE(s);l.length&&(a.set(s,l),s.render())}),t.forEach(s=>s.measureInitialState()),r.forEach(s=>{s.render();const l=a.get(s);l&&l.forEach(([f,d])=>{var m;(m=s.getValue(f))==null||m.set(d)})}),t.forEach(s=>s.measureEndState()),t.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}Au=!1,Iu=!1,ir.forEach(t=>t.complete(Mu)),ir.clear()}function vg(){ir.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(Au=!0)})}function RE(){Mu=!0,vg(),yg(),Mu=!1}class xc{constructor(r,a,s,l,f,d=!1){this.isComplete=!1,this.isAsync=!1,this.needsMeasurement=!1,this.isScheduled=!1,this.unresolvedKeyframes=[...r],this.onComplete=a,this.name=s,this.motionValue=l,this.element=f,this.isAsync=d}scheduleResolve(){this.isScheduled=!0,this.isAsync?(ir.add(this),Iu||(Iu=!0,De.read(vg),De.resolveKeyframes(yg))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:r,name:a,element:s,motionValue:l}=this;if(r[0]===null){const f=l==null?void 0:l.get(),d=r[r.length-1];if(f!==void 0)r[0]=f;else if(s&&a){const m=s.readValue(a,d);m!=null&&(r[0]=m)}r[0]===void 0&&(r[0]=d),l&&f===void 0&&l.set(r[0])}xE(r)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(r=!1){this.isComplete=!0,this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,r),ir.delete(this)}cancel(){this.isComplete||(this.isScheduled=!1,ir.delete(this))}resume(){this.isComplete||this.scheduleResolve()}}const NE=t=>t.startsWith("--");function IE(t,r,a){NE(r)?t.style.setProperty(r,a):t.style[r]=a}const AE=lc(()=>window.ScrollTimeline!==void 0),ME={};function BE(t,r){const a=lc(t);return()=>ME[r]??a()}const wg=BE(()=>{try{document.createElement("div").animate({opacity:0}
50,{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Fi=([t,r,a,s])=>`cubic-bezier(${t}, ${r}, ${a}, ${s})`,lp={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Fi([0,.65,.55,1]),circOut:Fi([.55,0,1,.45]),backIn:Fi([.31,.01,.66,-.59]),backOut:Fi([.33,1.53,.69,.99])};function xg(t,r){if(t)return typeof t=="function"?wg()?mg(t,r):"ease-out":rg(t)?Fi(t):Array.isArray(t)?t.map(a=>xg(a,r)||lp.easeOut):lp[t]}function LE(t,r,a,{delay:s=0,duration:l=300,repeat:f=0,repeatType:d="loop",ease:m="easeOut",times:p}={},g=void 0){const y={[r]:a};p&&(y.offset=p);const w=xg(m,l);Array.isArray(w)&&(y.easing=w);const x={delay:s,duration:l,easing:Array.isArray(w)?"linear":w,fill:"both",iterations:f+1,direction:d==="reverse"?"alternate":"normal"};return g&&(x.pseudoElement=g),t.animate(y,x)}function Eg(t){return typeof t=="function"&&"applyToOptions"in t}function DE({type:t,...r}){return Eg(t)&&wg()?t.applyToOptions(r):(r.duration??(r.duration=300),r.ease??(r.ease="easeOut"),r)}class OE extends wc{constructor(r){if(super(),this.finishedTime=null,this.isStopped=!1,!r)return;const{element:a,name:s,keyframes:l,pseudoElement:f,allowFlatten:d=!1,finalKeyframe:m,onComplete:p}=r;this.isPseudoElement=!!f,this.allowFlatten=d,this.options=r,oc(typeof r.type!="string");const g=DE(r);this.animation=LE(a,s,l,g,f),g.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!f){const y=vc(l,this.options,m,this.speed);this.updateMotionValue?this.updateMotionValue(y):IE(a,s,y),this.animation.cancel()}p==null||p(),this.notifyFinished()},this.animation.oncancel=()=>this.notifyFinished()}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){var r,a;(a=(r=this.animation).finish)==null||a.call(r)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:r}=this;r==="idle"||r==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var r,a;this.isPseudoElement||(a=(r=this.animation).commitStyles)==null||a.call(r)}get duration(){var a,s;const r=((s=(a=this.animation.effect)==null?void 0:a.getComputedTiming)==null?void 0:s.call(a).duration)||0;return Zt(Number(r))}get time(){return Zt(Number(this.animation.currentTime)||0)}set time(r){this.finishedTime=null,this.animation.currentTime=Xt(r)}get speed(){return this.animation.playbackRate}set speed(r){r<0&&(this.finishedTime=null),this.animation.playbackRate=r}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(r){this.animation.startTime=r}attachTimeline({timeline:r,observe:a}){var s;return this.allowFlatten&&((s=this.animation.effect)==null||s.updateTiming({easing:"linear"})),this.animation.onfinish=null,r&&AE()?(this.animation.timeline=r,Mt):a(this)}}const kg={anticipate:Jh,backInOut:Zh,circInOut:tg};function _E(t){return t in kg}function FE(t){typeof t.ease=="string"&&_E(t.ease)&&(t.ease=kg[t.ease])}const up=10;class VE extends OE{constructor(r){FE(r),hg(r),super(r),r.startTime&&(this.startTime=r.startTime),this.options=r}updateMotionValue(r){const{motionValue:a,onUpdate:s,onComplete:l,element:f,...d}=this.options;if(!a)return;if(r!==void 0){a.set(r);return}const m=new gg({...d,autoplay:!1}),p=Xt(this.finishedTime??this.time);a.setWithVelocity(m.sample(p-up).value,m.sample(p).value,up),m.stop()}}const cp=(t,r)=>r==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&(_n.test(t)||t==="0")&&!t.startsWith("url("));function jE(t){const r=t[0];if(t.length===1)return!0;for(let a=0;a<t.length;a++)if(t[a]!==r)return!0}function $E(t,r,a,s){const l=t[0];if(l===null)return!1;if(r==="display"||r==="visibility")return!0;const f=t[t.length-1],d=cp(l,r),m=cp(f,r);return!d||!m?!1:jE(t)||(a==="spring"||Eg(a))&&s}const zE=new Set(["opacity","clipPath","filter","transform"]),UE=lc(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function WE(t){const{motionValue:r,name:a,repeatDelay:s,repeatType:l,damping:f,type:d}=t;if(!r||!r.owner||!(r.owner.current instanceof HTMLElement))return!1;const{onUpdate:m,transformTemplate:p}=r.owner.getProps();return UE()&&a&&zE.has(a)&&(a!=="transform"||!p)&&!m&&!s&&l!=="mirror"&&f!==0&&d!=="inertia"}const HE=40;class KE extends wc{constructor({autoplay:r=!0,delay:a=0,type:s="
50keyframes",repeat:l=0,repeatDelay:f=0,repeatType:d="loop",keyframes:m,name:p,motionValue:g,element:y,...w}){var S;super(),this.stop=()=>{var P,I;this._animation?(this._animation.stop(),(P=this.stopTimeline)==null||P.call(this)):(I=this.keyframeResolver)==null||I.cancel()},this.createdAt=yt.now();const x={autoplay:r,delay:a,type:s,repeat:l,repeatDelay:f,repeatType:d,name:p,motionValue:g,element:y,...w},k=(y==null?void 0:y.KeyframeResolver)||xc;this.keyframeResolver=new k(m,(P,I,R)=>this.onKeyframesResolved(P,I,x,!R),p,g,y),(S=this.keyframeResolver)==null||S.scheduleResolve()}onKeyframesResolved(r,a,s,l){this.keyframeResolver=void 0;const{name:f,type:d,velocity:m,delay:p,isHandoff:g,onUpdate:y}=s;this.resolvedAt=yt.now(),$E(r,f,d,m)||((hn.instantAnimations||!p)&&(y==null||y(vc(r,s,a))),r[0]=r[r.length-1],s.duration=0,s.repeat=0);const x={startTime:l?this.resolvedAt?this.resolvedAt-this.createdAt>HE?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:a,...s,keyframes:r},k=!g&&WE(x)?new VE({...x,element:x.motionValue.owner.current}):new gg(x);k.finished.then(()=>this.notifyFinished()).catch(Mt),this.pendingTimeline&&(this.stopTimeline=k.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=k}get finished(){return this._animation?this.animation.finished:this._finished}then(r,a){return this.finished.finally(r).then(()=>{})}get animation(){return this._animation||RE(),this._animation}get duration(){return this.animation.duration}get time(){return this.animation.time}set time(r){this.animation.time=r}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(r){this.animation.speed=r}get startTime(){return this.animation.startTime}attachTimeline(r){return this._animation?this.stopTimeline=this.animation.attachTimeline(r):this.pendingTimeline=r,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this.animation.cancel()}}const GE=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function YE(t){const r=GE.exec(t);if(!r)return[,];const[,a,s,l]=r;return[`--${a??s}`,l]}function Sg(t,r,a=1){const[s,l]=YE(t);if(!s)return;const f=window.getComputedStyle(r).getPropertyValue(s);if(f){const d=f.trim();return Hh(d)?parseFloat(d):d}return mc(l)?Sg(l,r,a+1):l}function Ec(t,r){return(t==null?void 0:t[r])??(t==null?void 0:t.default)??t}const Tg=new Set(["width","height","top","left","right","bottom",...Hr]),qE={test:t=>t==="auto",parse:t=>t},Cg=t=>r=>r.test(t),bg=[Wr,ie,Jt,Dn,jx,Vx,qE],fp=t=>bg.find(Cg(t));function QE(t){return typeof t=="number"?t===0:t!==null?t==="none"||t==="0"||Kh(t):!0}const XE=new Set(["brightness","contrast","saturate","opacity"]);function ZE(t){const[r,a]=t.slice(0,-1).split("(");if(r==="drop-shadow")return t;const[s]=a.match(pc)||[];if(!s)return t;const l=a.replace(s,"");let f=XE.has(r)?1:0;return s!==a&&(f*=100),r+"("+f+l+")"}const JE=/\b([a-z-]*)\(.*?\)/gu,Bu={..._n,getAnimatableNone:t=>{const r=t.match(JE);return r?r.map(ZE).join(" "):t}},dp={...Wr,transform:Math.round},e1={rotate:Dn,rotateX:Dn,rotateY:Dn,rotateZ:Dn,scale:Ss,scaleX:Ss,scaleY:Ss,scaleZ:Ss,skew:Dn,skewX:Dn,skewY:Dn,distance:ie,translateX:ie,translateY:ie,translateZ:ie,x:ie,y:ie,z:ie,perspective:ie,transformPerspective:ie,opacity:Yi,originX:Xm,originY:Xm,originZ:ie},kc={borderWidth:ie,borderTopWidth:ie,borderRightWidth:ie,borderBottomWidth:ie,borderLeftWidth:ie,borderRadius:ie,radius:ie,borderTopLeftRadius:ie,borderTopRightRadius:ie,borderBottomRightRadius:ie,borderBottomLeftRadius:ie,width:ie,maxWidth:ie,height:ie,maxHeight:ie,top:ie,right:ie,bottom:ie,left:ie,padding:ie,paddingTop:ie,paddingRight:ie,paddingBottom:ie,paddingLeft:ie,margin:ie,marginTop:ie,marginRight:ie,marginBottom:ie,marginLeft:ie,backgroundPositionX:ie,backgroundPositionY:ie,...e1,zIndex:dp,fillOpacity:Yi,strokeOpacity:Yi,numOctaves:dp},t1={...kc,color:at,backgroundColor:at,outlineColor:at,fill:at,stroke:at,borderColor:at,borderTopColor:at,borderRightColor:at,borderBottomColor:at,borderLeftColor:at,filter:Bu,WebkitFilter:Bu},Pg=t=>t1[t];function Rg(t,r){let a=Pg(t);return a!==Bu&&(a=_n),a.getAnimatableNone?a.getAnimatableNone(r):void 0}
vendor: 76,106 bytes, line 50
50const n1=new Set(["auto","none","0"]);function r1(t,r,a){let s=0,l;for(;s<t.length&&!l;){const f=t[s];typeof f=="string"&&!n1.has(f)&&qi(f).values.length&&(l=t[s]),s++}if(l&&a)for(const f of r)t[f]=Rg(a,l)}class i1 extends xc{constructor(r,a,s,l,f){super(r,a,s,l,f,!0)}readKeyframes(){const{unresolvedKeyframes:r,element:a,name:s}=this;if(!a||!a.current)return;super.readKeyframes();for(let p=0;p<r.length;p++){let g=r[p];if(typeof g=="string"&&(g=g.trim(),mc(g))){const y=Sg(g,a.current);y!==void 0&&(r[p]=y),p===r.length-1&&(this.finalKeyframe=g)}}if(this.resolveNoneKeyframes(),!Tg.has(s)||r.length!==2)return;const[l,f]=r,d=fp(l),m=fp(f);if(d!==m)if(op(d)&&op(m))for(let p=0;p<r.length;p++){const g=r[p];typeof g=="string"&&(r[p]=parseFloat(g))}else this.needsMeasurement=!0}resolveNoneKeyframes(){const{unresolvedKeyframes:r,name:a}=this,s=[];for(let l=0;l<r.length;l++)(r[l]===null||QE(r[l]))&&s.push(l);s.length&&r1(r,s,a)}measureInitialState(){const{element:r,unresolvedKeyframes:a,name:s}=this;if(!r||!r.current)return;s==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=Fr[s](r.measureViewportBox(),window.getComputedStyle(r.current)),a[0]=this.measuredOrigin;const l=a[a.length-1];l!==void 0&&r.getValue(s,l).jump(l,!1)}measureEndState(){var m;const{element:r,name:a,unresolvedKeyframes:s}=this;if(!r||!r.current)return;const l=r.getValue(a);l&&l.jump(this.measuredOrigin,!1);const f=s.length-1,d=s[f];s[f]=Fr[a](r.measureViewportBox(),window.getComputedStyle(r.current)),d!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=d),(m=this.removedTransforms)!=null&&m.length&&this.removedTransforms.forEach(([p,g])=>{r.getValue(p).set(g)}),this.resolveNoneKeyframes()}}function a1(t,r,a){if(t instanceof EventTarget)return[t];if(typeof t=="string"){let s=document;const l=(a==null?void 0:a[t])??s.querySelectorAll(t);return l?Array.from(l):[]}return Array.from(t)}const{schedule:Sc}=ig(queueMicrotask,!1),jt={x:!1,y:!1};function Ng(){return jt.x||jt.y}function s1(t){return t==="x"||t==="y"?jt[t]?null:(jt[t]=!0,()=>{jt[t]=!1}):jt.x||jt.y?null:(jt.x=jt.y=!0,()=>{jt.x=jt.y=!1})}function Ig(t,r){const a=a1(t),s=new AbortController,l={passive:!0,...r,signal:s.signal};return[a,l,()=>s.abort()]}function mp(t){return!(t.pointerType==="touch"||Ng())}function o1(t,r,a={}){const[s,l,f]=Ig(t,a),d=m=>{if(!mp(m))return;const{target:p}=m,g=r(p,m);if(typeof g!="function"||!p)return;const y=w=>{mp(w)&&(g(w),p.removeEventListener("pointerleave",y))};p.addEventListener("pointerleave",y,l)};return s.forEach(m=>{m.addEventListener("pointerenter",d,l)}),f}const Ag=(t,r)=>r?t===r?!0:Ag(t,r.parentElement):!1,Tc=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1,l1=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function u1(t){return l1.has(t.tagName)||t.tabIndex!==-1}const Vi=new WeakSet;function pp(t){return r=>{r.key==="Enter"&&t(r)}}function iu(t,r){t.dispatchEvent(new PointerEvent("pointer"+r,{isPrimary:!0,bubbles:!0}))}const c1=(t,r)=>{const a=t.currentTarget;if(!a)return;const s=pp(()=>{if(Vi.has(a))return;iu(a,"down");const l=pp(()=>{iu(a,"up")}),f=()=>iu(a,"cancel");a.addEventListener("keyup",l,r),a.addEventListener("blur",f,r)});a.addEventListener("keydown",s,r),a.addEventListener("blur",()=>a.removeEventListener("keydown",s),r)};function hp(t){return Tc(t)&&!Ng()}function f1(t,r,a={}){const[s,l,f]=Ig(t,a),d=m=>{const p=m.currentTarget;if(!hp(m)||Vi.has(p))return;Vi.add(p);const g=r(p,m),y=(k,S)=>{window.removeEventListener("pointerup",w),window.removeEventListener("pointercancel",x),!(!hp(k)||!Vi.has(p))&&(Vi.delete(p),typeof g=="function"&&g(k,{success:S}))},w=k=>{y(k,p===window||p===document||a.useGlobalTarget||Ag(p,k.target))},x=k=>{y(k,!1)};window.addEventListener("pointerup",w,l),window.addEventListener("pointercancel",x,l)};return s.forEach(m=>{(a.useGlobalTarget?window:m).addEventListener("pointerdown",d,l),m instanceof HTMLElement&&(m.addEventListener("focus",g=>c1(g,l)),!u1(m)&&!m.hasAttribute("tabindex")&&(m.tabIndex=0))}),f}const gp=30,d1=t=>!isNaN(parseFloat(t));class m1{constructor(r,a={}){this.version="__VERSION__",this.canTrackVelocity=null,this.events={},this.updateAndNotify=(s,l=!0)=>{var d,m;const f=yt.now();this.updatedAt!==f&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&((d=this.events.change)==null||d.notify(this.current)),l&&((m=this.events.renderRequest)==null||m.notify(this.current))},this.hasAnimated=!1,this.setCurrent(r),this.owner=a.owner}setCurrent(r){this.current=r,this.updatedAt=yt.now(),this.canTrackVelocity===null&&r!==void 0&&(this.canTrackVelocity=d1(this.current))}setPrevFrameValue(r=this.current){this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt}onChange(r){return this.on("change",r)}on(r,a){this.events[r]||(this.events[r]=new uc);const s=this.events[r].add(a);return r==="change"?()=>{s(),De.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const r in this.events)this.events[r].clear()}attach(r,a){this.passiveEffect=r,this.stopPassiveEffect=a}set(r,a=!0){!a||!this.passiveEffect?this.updateAndNotify(r,a):this.passiveEffect(r,this.updateAndNotify)}setWithVelocity(r,a,s){this.set(a),this.prev=void 0,this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt-s}jump(r,a=!0){this.updateAndNotify(r),this.prev=r,this.prevUpdatedAt=this.prevFrameValue=void 0,a&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const r=yt.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||r-this.updatedAt>gp)return 0;const a=Math.min(this.updatedAt-this.prevUpdatedAt,gp);return Gh(parseFloat(this.current)-parseFloat(this.prevFrameValue),a)}start(r){return this.stop(),new Promise(a=>{this.hasAnimated=!0,this.animation=r(a),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){var r;(r=this.events.destroy)==null||r.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Qi(t,r){return new m1(t,r)}const p1=[...bg,at,_n],h1=t=>p1.find(Cg(t)),Mg=(t,r)=>r&&typeof t=="number"?r.transform(t):t,Bg=T.createContext({strict:!1}),yp={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},Vr={};for(const t in yp)Vr[t]={isEnabled:r=>yp[t].some(a=>!!r[a])};function g1(t){for(const r in t)Vr[r]={...Vr[r],...t[r]}}const y1=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function Fs(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||y1.has(t)}let Lg=t=>!Fs(t);function v1(t){t&&(Lg=r=>r.startsWith("on")?!Fs(r):t(r))}try{v1(require("@emotion/is-prop-valid").default)}catch{}function w1(t,r,a){const s={};for(const l in t)l==="values"&&typeof t.values=="object"||(Lg(l)||a===!0&&Fs(l)||!r&&!Fs(l)||t.draggable&&l.startsWith("onDrag"))&&(s[l]=t[l]);return s}function x1(t){if(typeof Proxy>"u")return t;const r=new Map,a=(...s)=>t(...s);return new Proxy(a,{get:(s,l)=>l==="create"?t:(r.has(l)||r.set(l,t(l)),r.get(l))})}const Gs=T.createContext({});function Ys(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}function Xi(t){return typeof t=="string"||Array.isArray(t)}const Cc=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],bc=["initial",...Cc];function qs(t){return Ys(t.animate)||bc.some(r=>Xi(t[r]))}function Dg(t){return!!(qs(t)||t.variants)}function E1(t,r){if(qs(t)){const{initial:a,animate:s}=t;return{initial:a===!1||Xi(a)?a:void 0,animate:Xi(s)?s:void 0}}return t.inherit!==!1?r:{}}function k1(t){const{initial:r,animate:a}=E1(t,T.useContext(Gs));return T.useMemo(()=>({initial:r,animate:a}),[vp(r),vp(a)])}function vp(t){return Array.isArray(t)?t.join(" "):t}const S1=Symbol.for("motionComponentSymbol");function Br(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function T1(t,r,a){return T.useCallback(s=>{s&&t.onMount&&t.onMount(s),r&&(s?r.mount(s):r.unmount()),a&&(typeof a=="function"?a(s):Br(a)&&(a.current=s))},[r])}const Pc=t=>t.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),C1="framerAppearId",Og="data-"+Pc(C1),_g=T.createContext({});function b1(t,r,a,s,l){var P,I;const{visualElement:f}=T.useContext(Gs),d=T.useContext(Bg),m=T.useContext(Ks),p=T.useContext(ic).reducedMotion,g=T.useRef(null);s=s||d.renderer,!g.current&&s&&(g.current=s(t,{visualState:r,parent:f,props:a,presenceContext:m,blockInitialAnimation:m?m.initial===!1:!1,reducedMotionConfig:p}));const y=g.current,w=T.useContext(_g);y&&!y.projection&&l&&(y.type==="html"||y.type==="svg")&&P1(g.current,a,l,w);const x=T.useRef(!1);T.useInsertionEffect(()=>{y&&x.current&&y.update(a,m)});const k=a[Og],S=T.useRef(!!k&&!((P=window.MotionHandoffIsComplete)!=null&&P.call(window,k))&&((I=window.MotionHasOptimisedAnimation)==null?void 0:I.call(window,k)));return zh(()=>{y&&(x.current=!0,window.MotionIsMounted=!0,y.updateFeatures(),Sc.render(y.render),S.current&&y.animationState&&y.animationState.animateChanges())}),T.useEffect(()=>{y&&(!S.current&&y.animationState&&y.animationState.animateChanges(),S.current&&(queueMicrotask(()=>{var R;(R=window.MotionHandoffMarkAsComplete)==null||R.call(window,k)}),S.current=!1))}),y}function P1(t,r,a,s){const{layoutId:l,layout:f,drag:d,dragConstraints:m,layoutScroll:p,layoutRoot:g,layoutCrossfade:y}=r;t.projection=new a(t.latestValues,r["data-framer-portal-id"]?void 0:Fg(t.parent)),t.projection.setOptions({layoutId:l,layout:f,alwaysMeasureLayout:!!d||m&&Br(m),visualElement:t,animationType:typeof f=="string"?f:"both",initialPromotionConfig:s,crossfade:y,layoutScroll:p,layoutRoot:g})}function Fg(t){if(t)return t.options.allowProjection!==!1?t.projection:Fg(t.parent)}function R1({preloadedFeatures:t,createVisualElement:r,useRender:a,useVisualState:s,Component:l}){t&&g1(t);function f(m,p){let g;const y={...T.useContext(ic),...m,layoutId:N1(m)},{isStatic:w}=y,x=k1(m),k=s(m,w);if(!w&&rc){I1();const S=A1(y);g=S.MeasureLayout,x.visualElement=b1(l,k,y,r,S.ProjectionNode)}return dn.jsxs(Gs.Provider,{value:x,children:[g&&x.visualElement?dn.jsx(g,{visualElement:x.visualElement,...y}):null,a(l,m,T1(k,x.visualElement,p),k,w,x.visualElement)]})}f.displayName=`motion.${typeof l=="string"?l:`create(${l.displayName??l.name??""})`}`;const d=T.forwardRef(f);return d[S1]=l,d}function N1({layoutId:t}){const r=T.useContext(tc).id;return r&&t!==void 0?r+"-"+t:t}function I1(t,r){T.useContext(Bg).strict}function A1(t){const{drag:r,layout:a}=Vr;if(!r&&!a)return{};const s={...r,...a};return{MeasureLayout:r!=null&&r.isEnabled(t)||a!=null&&a.isEnabled(t)?s.MeasureLayout:void 0,ProjectionNode:s.ProjectionNode}}const Zi={};function M1(t){for(const r in t)Zi[r]=t[r],dc(r)&&(Zi[r].isCSSVariable=!0)}function Vg(t,{layout:r,layoutId:a}){return Kr.has(t)||t.startsWith("origin")||(r||a!==void 0)&&(!!Zi[t]||t==="opacity")}const st=t=>!!(t&&t.getVelocity),B1={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},L1=Hr.length;function D1(t,r,a){let s="",l=!0;for(let f=0;f<L1;f++){const d=Hr[f],m=t[d];if(m===void 0)continue;let p=!0;if(typeof m=="number"?p=m===(d.startsWith("scale")?1:0):p=parseFloat(m)===0,!p||a){const g=Mg(m,kc[d]);if(!p){l=!1;const y=B1[d]||d;s+=`${y}(${g}) `}a&&(r[d]=g)}}return s=s.trim(),a?s=a(r,l?"":s):l&&(s="none"),s}function Rc(t,r,a){const{style:s,vars:l,transformOrigin:f}=t;let d=!1,m=!1;for(const p in r){const g=r[p];if(Kr.has(p)){d=!0;continue}else if(dc(p)){l[p]=g;continue}else{const y=Mg(g,kc[p]);p.startsWith("origin")?(m=!0,f[p]=y):s[p]=y}}if(r.transform||(d||a?s.transform=D1(r,t.transform,a):s.transform&&(s.transform="none")),m){const{originX:p="50%",originY:g="50%",originZ:y=0}=f;s.transformOrigin=`${p} ${g} ${y}`}}const Nc=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function jg(t,r,a){for(const s in r)!st(r[s])&&!Vg(s,a)&&(t[s]=r[s])}function O1({transformTemplate:t},r){return T.useMemo(()=>{const a=Nc();return Rc(a,r,t),Object.assign({},a.vars,a.style)},[r])}function _1(t,r){const a=t.style||{},s={};return jg(s,a,t),Object.assign(s,O1(t,r)),s}function F1(t,r){const a={},s=_1(t,r);return t.drag&&t.dragListener!==!1&&(a.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(a.tabIndex=0),a.style=s,a}const V1=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Ic(t){return typeof t!="string"||t.includes("-")?!1:!!(V1.indexOf(t)>-1||/[A-Z]/u.test(t))}const j1={offset:"stroke-dashoffset",array:"stroke-dasharray"},$1={offset:"strokeDashoffset",array:"strokeDasharray"};function z1(t,r,a=1,s=0,l=!0){t.pathLength=1;const f=l?j1:$1;t[f.offset]=ie.transform(-s);const d=ie.transform(r),m=ie.transform(a);t[f.array]=`${d} ${m}`}function $g(t,{attrX:r,attrY:a,attrScale:s,pathLength:l,pathSpacing:f=1,pathOffset:d=0,...m},p,g){if(Rc(t,m,g),p){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:y,style:w}=t;y.transform&&(w.transform=y.transform,delete y.transform),(w.transform||y.transformOrigin)&&(w.transformOrigin=y.transformOrigin??"50% 50%",delete y.transformOrigin),w.transform&&(w.transformBox="fill-box",delete y.transformBox),r!==void 0&&(y.x=r),a!==void 0&&(y.y=a),s!==void 0&&(y.scale=s),l!==void 0&&z1(y,l,f,d,!1)}const zg=()=>({...Nc(),attrs:{}}),Ug=t=>typeof t=="string"&&t.toLowerCase()==="svg";function U1(t,r,a,s){const l=T.useMemo(()=>{const f=zg();return $g(f,r,Ug(s),t.transformTemplate),{...f.attrs,style:{...f.style}}},[r]);if(t.style){const f={};jg(f,t.style,t),l.style={...f,...l.style}}return l}function W1(t=!1){return(a,s,l,{latestValues:f},d)=>{const p=(Ic(a)?U1:F1)(s,f,d,a),g=w1(s,typeof a=="string",t),y=a!==T.Fragment?{...g,...p,ref:l}:{},{children:w}=s,x=T.useMemo(()=>st(w)?w.get():w,[w]);return T.createElement(a,{...y,children:x})}}function wp(t){const r=[{},{}];return t==null||t.values.forEach((a,s)=>{r[0][s]=a.get(),r[1][s]=a.getVelocity()}),r}function Ac(t,r,a,s){if(typeof r=="function"){const[l,f]=wp(s);r=r(a!==void 0?a:t.custom,l,f)}if(typeof r=="string"&&(r=t.variants&&t.variants[r]),typeof r=="function"){const[l,f]=wp(s);r=r(a!==void 0?a:t.custom,l,f)}return r}function Ms(t){return st(t)?t.get():t}function H1({scrapeMotionValuesFromProps:t,createRenderState:r},a,s,l){return{latestValues:K1(a,s,l,t),renderState:r()}}const Wg=t=>(r,a)=>{const s=T.useContext(Gs),l=T.useContext(Ks),f=()=>H1(t,r,s,l);return a?f():nc(f)};function K1(t,r,a,s){const l={},f=s(t,{});for(const x in f)l[x]=Ms(f[x]);let{initial:d,animate:m}=t;const p=qs(t),g=Dg(t);r&&g&&!p&&t.inherit!==!1&&(d===void 0&&(d=r.initial),m===void 0&&(m=r.animate));let y=a?a.initial===!1:!1;y=y||d===!1;const w=y?m:d;if(w&&typeof w!="boolean"&&!Ys(w)){const x=Array.isArray(w)?w:[w];for(let k=0;k<x.length;k++){const S=Ac(t,x[k]);if(S){const{transitionEnd:P,transition:I,...R}=S;for(const D in R){let L=R[D];if(Array.isArray(L)){const $=y?L.length-1:0;L=L[$]}L!==null&&(l[D]=L)}for(const D in P)l[D]=P[D]}}}return l}function Mc(t,r,a){var f;const{style:s}=t,l={};for(const d in s)(st(s[d])||r.style&&st(r.style[d])||Vg(d,t)||((f=a==null?void 0:a.getValue(d))==null?void 0:f.liveStyle)!==void 0)&&(l[d]=s[d]);return l}const G1={useVisualState:Wg({scrapeMotionValuesFromProps:Mc,createRenderState:Nc})};function Hg(t,r,a){const s=Mc(t,r,a);for(const l in t)if(st(t[l])||st(r[l])){const f=Hr.indexOf(l)!==-1?"attr"+l.charAt(0).toUpperCase()+l.substring(1):l;s[f]=t[l]}return s}const Y1={useVisualState:Wg({scrapeMotionValuesFromProps:Hg,createRenderState:zg})};function q1(t,r){return function(s,{forwardMotionProps:l}={forwardMotionProps:!1}){const d={...Ic(s)?Y1:G1,preloadedFeatures:t,useRender:W1(l),createVisualElement:r,Component:s};return R1(d)}}function Ji(t,r,a){const s=t.getProps();return Ac(s,r,a!==void 0?a:s.custom,t)}const Lu=t=>Array.isArray(t);function Q1(t,r,a){t.hasValue(r)?t.getValue(r).set(a):t.addValue(r,Qi(a))}function X1(t){return Lu(t)?t[t.length-1]||0:t}function Z1(t,r){const a=Ji(t,r);let{transitionEnd:s={},transition:l={},...f}=a||{};f={...f,...s};for(const d in f){const m=X1(f[d]);Q1(t,d,m)}}function J1(t){return!!(st(t)&&t.add)}function Du(t,r){const a=t.getValue("willChange");if(J1(a))return a.add(r);if(!a&&hn.WillChange){const s=new hn.WillChange("auto");t.addValue("willChange",s),s.add(r)}}function Kg(t){return t.props[Og]}const ek=t=>t!==null;function tk(t,{repeat:r,repeatType:a="loop"},s){const l=t.filter(ek),f=r&&a!=="loop"&&r%2===1?0:l.length-1;return l[f]}const nk={type:"spring",stiffness:500,damping:25,restSpeed:10},rk=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),ik={type:"keyframes",duration:.8},ak={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},sk=(t,{keyframes:r})=>r.length>2?ik:Kr.has(t)?t.startsWith("scale")?rk(r[1]):nk:ak;function ok({when:t,delay:r,delayChildren:a,staggerChildren:s,staggerDirection:l,repeat:f,repeatType:d,repeatDelay:m,from:p,elapsed:g,...y}){return!!Object.keys(y).length}const Bc=(t,r,a,s={},l,f)=>d=>{const m=Ec(s,t)||{},p=m.delay||s.delay||0;let{elapsed:g=0}=s;g=g-Xt(p);const y={keyframes:Array.isArray(a)?a:[null,a],ease:"easeOut",velocity:r.getVelocity(),...m,delay:-g,onUpdate:x=>{r.set(x),m.onUpdate&&m.onUpdate(x)},onComplete:()=>{d(),m.onComplete&&m.onComplete()},name:t,motionValue:r,element:f?void 0:l};ok(m)||Object.assign(y,sk(t,y)),y.duration&&(y.duration=Xt(y.duration)),y.repeatDelay&&(y.repeatDelay=Xt(y.repeatDelay)),y.from!==void 0&&(y.keyframes[0]=y.from);let w=!1;if((y.type===!1||y.duration===0&&!y.repeatDelay)&&(y.duration=0,y.delay===0&&(w=!0)),(hn.instantAnimations||hn.skipAnimations)&&(w=!0,y.duration=0,y.delay=0),y.allowFlatten=!m.type&&!m.ease,w&&!f&&r.get()!==void 0){const x=tk(y.keyframes,m);if(x!==void 0){De.update(()=>{y.onUpdate(x),y.onComplete()});return}}return new KE(y)};function lk({protectedKeys:t,needsAnimating:r},a){const s=t.hasOwnProperty(a)&&r[a]!==!0;return r[a]=!1,s}function Gg(t,r,{delay:a=0,transitionOverride:s,type:l}={}){let{transition:f=t.getDefaultTransition(),transitionEnd:d,...m}=r;s&&(f=s);const p=[],g=l&&t.animationState&&t.animationState.getState()[l];for(const y in m){const w=t.getValue(y,t.latestValues[y]??null),x=m[y];if(x===void 0||g&&lk(g,y))continue;const k={delay:a,...Ec(f||{},y)},S=w.get();if(S!==void 0&&!w.isAnimating&&!Array.isArray(x)&&x===S&&!k.velocity)continue;let P=!1;if(window.MotionHandoffAnimation){const R=Kg(t);if(R){const D=window.MotionHandoffAnimation(R,y,De);D!==null&&(k.startTime=D,P=!0)}}Du(t,y),w.start(Bc(y,w,x,t.shouldReduceMotion&&Tg.has(y)?{type:!1}:k,t,P));const I=w.animation;I&&p.push(I)}return d&&Promise.all(p).then(()=>{De.update(()=>{d&&Z1(t,d)})}),p}function Ou(t,r,a={}){var p;const s=Ji(t,r,a.type==="exit"?(p=t.presenceContext)==null?void 0:p.custom:void 0);let{transition:l=t.getDefaultTransition()||{}}=s||{};a.transitionOverride&&(l=a.transitionOverride);const f=s?()=>Promise.all(Gg(t,s,a)):()=>Promise.resolve(),d=t.variantChildren&&t.variantChildren.size?(g=0)=>{const{delayChildren:y=0,staggerChildren:w,staggerDirection:x}=l;return uk(t,r,y+g,w,x,a)}:()=>Promise.resolve(),{when:m}=l;if(m){const[g,y]=m==="beforeChildren"?[f,d]:[d,f];return g().then(()=>y())}else return Promise.all([f(),d(a.delay)])}function uk(t,r,a=0,s=0,l=1,f){const d=[],m=(t.variantChildren.size-1)*s,p=l===1?(g=0)=>g*s:(g=0)=>m-g*s;return Array.from(t.variantChildren).sort(ck).forEach((g,y)=>{g.notify("AnimationStart",r),d.push(Ou(g,r,{...f,delay:a+p(y)}).then(()=>g.notify("AnimationComplete",r)))}),Promise.all(d)}function ck(t,r){return t.sortNodePosition(r)}function fk(t,r,a={}){t.notify("AnimationStart",r);let s;if(Array.isArray(r)){const l=r.map(f=>Ou(t,f,a));s=Promise.all(l)}else if(typeof r=="string")s=Ou(t,r,a);else{const l=typeof r=="function"?Ji(t,r,a.custom):r;s=Promise.all(Gg(t,l,a))}return s.then(()=>{t.notify("AnimationComplete",r)})}function Yg(t,r){if(!Array.isArray(r))return!1;const a=r.length;if(a!==t.length)return!1;for(let s=0;s<a;s++)if(r[s]!==t[s])return!1;return!0}const dk=bc.length;function qg(t){if(!t)return;if(!t.isControllingVariants){const a=t.parent?qg(t.parent)||{}:{};return t.props.initial!==void 0&&(a.initial=t.props.initial),a}const r={};for(let a=0;a<dk;a++){const s=bc[a],l=t.props[s];(Xi(l)||l===!1)&&(r[s]=l)}return r}const mk=[...Cc].reverse(),pk=Cc.length;function hk(t){return r=>Promise.all(r.map(({animation:a,options:s})=>fk(t,a,s)))}function gk(t){let r=hk(t),a=xp(),s=!0;const l=p=>(g,y)=>{var x;const w=Ji(t,y,p==="exit"?(x=t.presenceContext)==null?void 0:x.custom:void 0);if(w){const{transition:k,transitionEnd:S,...P}=w;g={...g,...P,...S}}return g};function f(p){r=p(t)}function d(p){const{props:g}=t,y=qg(t.parent)||{},w=[],x=new Set;let k={},S=1/0;for(let I=0;I<pk;I++){const R=mk[I],D=a[R],L=g[R]!==void 0?g[R]:y[R],$=Xi(L),j=R===p?D.isActive:null;j===!1&&(S=I);let G=L===y[R]&&L!==g[R]&&$;if(G&&s&&t.manuallyAnimateOnMount&&(G=!1),D.protectedKeys={...k},!D.isActive&&j===null||!L&&!D.prevProp||Ys(L)||typeof L=="boolean")continue;const ee=yk(D.prevProp,L);let Q=ee||R===p&&D.isActive&&!G&&$||I>S&&$,W=!1;const re=Array.isArray(L)?L:[L];let de=re.reduce(l(R),{});j===!1&&(de={});const{prevResolvedValues:He={}}=D,ge={...He,...de},Oe=se=>{Q=!0,x.has(se)&&(W=!0,x.delete(se)),D.needsAnimating[se]=!0;const U=t.getValue(se);U&&(U.liveStyle=!1)};for(const se in ge){const U=de[se],J=He[se];if(k.hasOwnProperty(se))continue;let K=!1;Lu(U)&&Lu(J)?K=!Yg(U,J):K=U!==J,K?U!=null?Oe(se):x.add(se):U!==void 0&&x.has(se)?Oe(se):D.protectedKeys[se]=!0}D.prevProp=L,D.prevResolvedValues=de,D.isActive&&(k={...k,...de}),s&&t.blockInitialAnimation&&(Q=!1),Q&&(!(G&&ee)||W)&&w.push(...re.map(se=>({animation:se,options:{type:R}})))}if(x.size){const I={};if(typeof g.initial!="boolean"){const R=Ji(t,Array.isArray(g.initial)?g.initial[0]:g.initial);R&&R.transition&&(I.transition=R.transition)}x.forEach(R=>{const D=t.getBaseTarget(R),L=t.getValue(R);L&&(L.liveStyle=!0),I[R]=D??null}),w.push({animation:I})}let P=!!w.length;return s&&(g.initial===!1||g.initial===g.animate)&&!t.manuallyAnimateOnMount&&(P=!1),s=!1,P?r(w):Promise.resolve()}function m(p,g){var w;if(a[p].isActive===g)return Promise.resolve();(w=t.variantChildren)==null||w.forEach(x=>{var k;return(k=x.animationState)==null?void 0:k.setActive(p,g)}),a[p].isActive=g;const y=d(p);for(const x in a)a[x].protectedKeys={};return y}return{animateChanges:d,setActive:m,setAnimateFunction:f,getState:()=>a,reset:()=>{a=xp(),s=!0}}}function yk(t,r){return typeof r=="string"?r!==t:Array.isArray(r)?!Yg(r,t):!1}function Jn(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function xp(){return{animate:Jn(!0),whileInView:Jn(),whileHover:Jn(),whileTap:Jn(),whileDrag:Jn(),whileFocus:Jn(),exit:Jn()}}class Fn{constructor(r){this.isMounted=!1,this.node=r}update(){}}class vk extends Fn{constructor(r){super(r),r.animationState||(r.animationState=gk(r))}updateAnimationControlsSubscription(){const{animate:r}=this.node.getProps();Ys(r)&&(this.unmountControls=r.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:r}=this.node.getProps(),{animate:a}=this.node.prevProps||{};r!==a&&this.updateAnimationControlsSubscription()}unmount(){var r;this.node.animationState.reset(),(r=this.unmountControls)==null||r.call(this)}}let wk=0;class xk extends Fn{constructor(){super(...arguments),this.id=wk++}update(){if(!this.node.presenceContext)return;const{isPresent:r,onExitComplete:a}=this.node.presenceContext,{isPresent:s}=this.node.prevPresenceContext||{};if(!this.node.animationState||r===s)return;const l=this.node.animationState.setActive("exit",!r);a&&!r&&l.then(()=>{a(this.id)})}mount(){const{register:r,onExitComplete:a}=this.node.presenceContext||{};a&&a(this.id),r&&(this.unmount=r(this.id))}unmount(){}}const Ek={animation:{Feature:vk},exit:{Feature:xk}};function ea(t,r,a,s={passive:!0}){return t.addEventListener(r,a,s),()=>t.removeEventListener(r,a)}function oa(t){return{point:{x:t.pageX,y:t.pageY}}}const kk=t=>r=>Tc(r)&&t(r,oa(r));function zi(t,r,a,s){return ea(t,r,kk(a),s)}function Qg({top:t,left:r,right:a,bottom:s}){return{x:{min:r,max:a},y:{min:t,max:s}}}function Sk({x:t,y:r}){return{top:r.min,right:t.max,bottom:r.max,left:t.min}}function Tk(t,r){if(!r)return t;const a=r({x:t.left,y:t.top}),s=r({x:t.right,y:t.bottom});return{top:a.y,left:a.x,bottom:s.y,right:s.x}}const Xg=1e-4,Ck=1-Xg,bk=1+Xg,Zg=.01,Pk=0-Zg,Rk=0+Zg;function ut(t){return t.max-t.min}function Nk(t,r,a){return Math.abs(t-r)<=a}function Ep(t,r,a,s=.5){t.origin=s,t.originPoint=Le(r.min,r.max,t.origin),t.scale=ut(a)/ut(r),t.translate=Le(a.min,a.max,t.origin)-t.originPoint,(t.scale>=Ck&&t.scale<=bk||isNaN(t.scale))&&(t.scale=1),(t.translate>=Pk&&t.translate<=Rk||isNaN(t.translate))&&(t.translate=0)}function Ui(t,r,a,s){Ep(t.x,r.x,a.x,s?s.originX:void 0),Ep(t.y,r.y,a.y,s?s.originY:void 0)}function kp(t,r,a){t.min=a.min+r.min,t.max=t.min+ut(r)}function Ik(t,r,a){kp(t.x,r.x,a.x),kp(t.y,r.y,a.y)}function Sp(t,r,a){t.min=r.min-a.min,t.max=t.min+ut(r)}function Wi(t,r,a){Sp(t.x,r.x,a.x),Sp(t.y,r.y,a.y)}const Tp=()=>({translate:0,scale:1,origin:0,originPoint:0}),Lr=()=>({x:Tp(),y:Tp()}),Cp=()=>({min:0,max:0}),$e=()=>({x:Cp(),y:Cp()});function It(t){return[t("x"),t("y")]}function au(t){return t===void 0||t===1}function _u({scale:t,scaleX:r,scaleY:a}){return!au(t)||!au(r)||!au(a)}function er(t){return _u(t)||Jg(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function Jg(t){return bp(t.x)||bp(t.y)}function bp(t){return t&&t!=="0%"}function Vs(t,r,a){const s=t-a,l=r*s;return a+l}function Pp(t,r,a,s,l){return l!==void 0&&(t=Vs(t,l,s)),Vs(t,a,s)+r}function Fu(t,r=0,a=1,s,l){t.min=Pp(t.min,r,a,s,l),t.max=Pp(t.max,r,a,s,l)}function ey(t,{x:r,y:a}){Fu(t.x,r.translate,r.scale,r.originPoint),Fu(t.y,a.translate,a.scale,a.originPoint)}const Rp=.999999999999,Np=1.0000000000001;function Ak(t,r,a,s=!1){const l=a.length;if(!l)return;r.x=r.y=1;let f,d;for(let m=0;m<l;m++){f=a[m],d=f.projectionDelta;const{visualElement:p}=f.options;p&&p.props.style&&p.props.style.display==="contents"||(s&&f.options.layoutScroll&&f.scroll&&f!==f.root&&Or(t,{x:-f.scroll.offset.x,y:-f.scroll.offset.y}),d&&(r.x*=d.x.scale,r.y*=d.y.scale,ey(t,d)),s&&er(f.latestValues)&&Or(t,f.latestValues))}r.x<Np&&r.x>Rp&&(r.x=1),r.y<Np&&r.y>Rp&&(r.y=1)}function Dr(t,r){t.min=t.min+r,t.max=t.max+r}function Ip(t,r,a,s,l=.5){const f=Le(t.min,t.max,l);Fu(t,r,a,f,s)}function Or(t,r){Ip(t.x,r.x,r.scaleX,r.scale,r.originX),Ip(t.y,r.y,r.scaleY,r.scale,r.originY)}function ty(t,r){return Qg(Tk(t.getBoundingClientRect(),r))}function Mk(t,r,a){const s=ty(t,a),{scroll:l}=r;return l&&(Dr(s.x,l.offset.x),Dr(s.y,l.offset.y)),s}const ny=({current:t})=>t?t.ownerDocument.defaultView:null,Ap=(t,r)=>Math.abs(t-r);function Bk(t,r){const a=Ap(t.x,r.x),s=Ap(t.y,r.y);return Math.sqrt(a**2+s**2)}class ry{constructor(r,a,{transformPagePoint:s,contextWindow:l,dragSnapToOrigin:f=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const w=ou(this.lastMoveEventInfo,this.history),x=this.startEvent!==null,k=Bk(w.offset,{x:0,y:0})>=3;if(!x&&!k)return;const{point:S}=w,{timestamp:P}=Ze;this.history.push({...S,timestamp:P});const{onStart:I,onMove:R}=this.handlers;x||(I&&I(this.lastMoveEvent,w),this.startEvent=this.lastMoveEvent),R&&R(this.lastMoveEvent,w)},this.handlePointerMove=(w,x)=>{this.lastMoveEvent=w,this.lastMoveEventInfo=su(x,this.transformPagePoint),De.update(this.updatePoint,!0)},this.handlePointerUp=(w,x)=>{this.end();const{onEnd:k,onSessionEnd:S,resumeAnimation:P}=this.handlers;if(this.dragSnapToOrigin&&P&&P(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const I=ou(w.type==="pointercancel"?this.lastMoveEventInfo:su(x,this.transformPagePoint),this.history);this.startEvent&&k&&k(w,I),S&&S(w,I)},!Tc(r))return;this.dragSnapToOrigin=f,this.handlers=a,this.transformPagePoint=s,this.contextWindow=l||window;const d=oa(r),m=su(d,this.transformPagePoint),{point:p}=m,{timestamp:g}=Ze;this.history=[{...p,timestamp:g}];const{onSessionStart:y}=a;y&&y(r,ou(m,this.history)),this.removeListeners=ia(zi(this.contextWindow,"pointermove",this.handlePointerMove),zi(this.contextWindow,"pointerup",this.handlePointerUp),zi(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(r){this.handlers=r}end(){this.removeListeners&&this.removeListeners(),On(this.updatePoint)}}function su(t,r){return r?{point:r(t.point)}:t}function Mp(t,r){return{x:t.x-r.x,y:t.y-r.y}}function ou({point:t},r){return{point:t,delta:Mp(t,iy(r)),offset:Mp(t,Lk(r)),velocity:Dk(r,.1)}}function Lk(t){return t[0]}function iy(t){return t[t.length-1]}function Dk(t,r){if(t.length<2)return{x:0,y:0};let a=t.length-1,s=null;const l=iy(t);for(;a>=0&&(s=t[a],!(l.timestamp-s.timestamp>Xt(r)));)a--;if(!s)return{x:0,y:0};const f=Zt(l.timestamp-s.timestamp);if(f===0)return{x:0,y:0};const d={x:(l.x-s.x)/f,y:(l.y-s.y)/f};return d.x===1/0&&(d.x=0),d.y===1/0&&(d.y=0),d}function Ok(t,{min:r,max:a},s){return r!==void 0&&t<r?t=s?Le(r,t,s.min):Math.max(t,r):a!==void 0&&t>a&&(t=s?Le(a,t,s.max):Math.min(t,a)),t}function Bp(t,r,a){return{min:r!==void 0?t.min+r:void 0,max:a!==void 0?t.max+a-(t.max-t.min):void 0}}function _k(t,{top:r,left:a,bottom:s,right:l}){return{x:Bp(t.x,a,l),y:Bp(t.y,r,s)}}function Lp(t,r){let a=r.min-t.min,s=r.max-t.max;return r.max-r.min<t.max-t.min&&([a,s]=[s,a]),{min:a,max:s}}function Fk(t,r){return{x:Lp(t.x,r.x),y:Lp(t.y,r.y)}}function Vk(t,r){let a=.5;const s=ut(t),l=ut(r);return l>s?a=Gi(r.min,r.max-s,t.min):s>l&&(a=Gi(t.min,t.max-l,r.min)),pn(0,1,a)}function jk(t,r){const a={};return r.min!==void 0&&(a.min=r.min-t.min),r.max!==void 0&&(a.max=r.max-t.min),a}const Vu=.35;function $k(t=Vu){return t===!1?t=0:t===!0&&(t=Vu),{x:Dp(t,"left","right"),y:Dp(t,"top","bottom")}}function Dp(t,r,a){return{min:Op(t,r),max:Op(t,a)}}function Op(t,r){return typeof t=="number"?t:t[r]||0}const zk=new WeakMap;class Uk{constructor(r){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=$e(),this.visualElement=r}start(r,{snapToCursor:a=!1}={}){const{presenceContext:s}=this.visualElement;if(s&&s.isPresent===!1)return;const l=y=>{const{dragSnapToOrigin:w}=this.getProps();w?this.pauseAnimation():this.stopAnimation(),a&&this.snapToCursor(oa(y).point)},f=(y,w)=>{const{drag:x,dragPropagation:k,onDragStart:S}=this.getProps();if(x&&!k&&(this.openDragLock&&this.openDragLock(),this.openDragLock=s1(x),!this.openDragLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),It(I=>{let R=this.getAxisMotionValue(I).get()||0;if(Jt.test(R)){const{projection:D}=this.visualElement;if(D&&D.layout){const L=D.layout.layoutBox[I];L&&(R=ut(L)*(parseFloat(R)/100))}}this.originPoint[I]=R}),S&&De.postRender(()=>S(y,w)),Du(this.visualElement,"transform");const{animationState:P}=this.visualElement;P&&P.setActive("whileDrag",!0)},d=(y,w)=>{const{dragPropagation:x,dragDirectionLock:k,onDirectionLock:S,onDrag:P}=this.getProps();if(!x&&!this.openDragLock)return;const{offset:I}=w;if(k&&this.currentDirection===null){this.currentDirection=Wk(I),this.currentDirection!==null&&S&&S(this.currentDirection);return}this.updateAxis("x",w.point,I),this.updateAxis("y",w.point,I),this.visualElement.render(),P&&P(y,w)},m=(y,w)=>this.stop(y,w),p=()=>It(y=>{var w;return this.getAnimationState(y)==="paused"&&((w=this.getAxisMotionValue(y).animation)==null?void 0:w.play())}),{dragSnapToOrigin:g}=this.getProps();this.panSession=new ry(r,{onSessionStart:l,onStart:f,onMove:d,onSessionEnd:m,resumeAnimation:p},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:g,contextWindow:ny(this.visualElement)})}stop(r,a){const s=this.isDragging;if(this.cancel(),!s)return;const{velocity:l}=a;this.startAnimation(l);const{onDragEnd:f}=this.getProps();f&&De.postRender(()=>f(r,a))}cancel(){this.isDragging=!1;const{projection:r,animationState:a}=this.visualElement;r&&(r.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:s}=this.getProps();!s&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),a&&a.setActive("whileDrag",!1)}updateAxis(r,a,s){const{drag:l}=this.getProps();if(!s||!Ts(r,l,this.currentDirection))return;const f=this.getAxisMotionValue(r);let d=this.originPoint[r]+s[r];this.constraints&&this.constraints[r]&&(d=Ok(d,this.constraints[r],this.elastic[r])),f.set(d)}resolveConstraints(){var f;const{dragConstraints:r,dragElastic:a}=this.getProps(),s=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(f=this.visualElement.projection)==null?void 0:f.layout,l=this.constraints;r&&Br(r)?this.constraints||(this.constraints=this.resolveRefConstraints()):r&&s?this.constraints=_k(s.layoutBox,r):this.constraints=!1,this.elastic=$k(a),l!==this.constraints&&s&&this.constraints&&!this.hasMutatedConstraints&&It(d=>{this.constraints!==!1&&this.getAxisMotionValue(d)&&(this.constraints[d]=jk(s.layoutBox[d],this.constraints[d]))})}resolveRefConstraints(){const{dragConstraints:r,onMeasureDragConstraints:a}=this.getProps();if(!r||!Br(r))return!1;const s=r.current,{projection:l}=this.visualElement;if(!l||!l.layout)return!1;const f=Mk(s,l.root,this.visualElement.getTransformPagePoint());let d=Fk(l.layout.layoutBox,f);if(a){const m=a(Sk(d));this.hasMutatedConstraints=!!m,m&&(d=Qg(m))}return d}startAnimation(r){const{drag:a,dragMomentum:s,dragElastic:l,dragTransition:f,dragSnapToOrigin:d,onDragTransitionEnd:m}=this.getProps(),p=this.constraints||{},g=It(y=>{if(!Ts(y,a,this.currentDirection))return;let w=p&&p[y]||{};d&&(w={min:0,max:0});const x=l?200:1e6,k=l?40:1e7,S={type:"inertia",velocity:s?r[y]:0,bounceStiffness:x,bounceDamping:k,timeConstant:750,restDelta:1,restSpeed:10,...f,...w};return this.startAxisValueAnimation(y,S)});return Promise.all(g).then(m)}startAxisValueAnimation(r,a){const s=this.getAxisMotionValue(r);return Du(this.visualElement,r),s.start(Bc(r,s,0,a,this.visualElement,!1))}stopAnimation(){It(r=>this.getAxisMotionValue(r).stop())}pauseAnimation(){It(r=>{var a;return(a=this.getAxisMotionValue(r).animation)==null?void 0:a.pause()})}getAnimationState(r){var a;return(a=this.getAxisMotionValue(r).animation)==null?void 0:a.state}getAxisMotionValue(r){const a=`_drag${r.toUpperCase()}`,s=this.visualElement.getProps(),l=s[a];return l||this.visualElement.getValue(r,(s.initial?s.initial[r]:void 0)||0)}snapToCursor(r){It(a=>{const{drag:s}=this.getProps();if(!Ts(a,s,this.currentDirection))return;const{projection:l}=this.visualElement,f=this.getAxisMotionValue(a);if(l&&l.layout){const{min:d,max:m}=l.layout.layoutBox[a];f.set(r[a]-Le(d,m,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:r,dragConstraints:a}=this.getProps(),{projection:s}=this.visualElement;if(!Br(a)||!s||!this.constraints)return;this.stopAnimation();const l={x:0,y:0};It(d=>{const m=this.getAxisMotionValue(d);if(m&&this.constraints!==!1){const p=m.get();l[d]=Vk({min:p,max:p},this.constraints[d])}});const{transformTemplate:f}=this.visualElement.getProps();this.visualElement.current.style.transform=f?f({},""):"none",s.root&&s.root.updateScroll(),s.updateLayout(),this.resolveConstraints(),It(d=>{if(!Ts(d,r,null))return;const m=this.getAxisMotionValue(d),{min:p,max:g}=this.constraints[d];m.set(Le(p,g,l[d]))})}addListeners(){if(!this.visualElement.current)return;zk.set(this.visualElement,this);const r=this.visualElement.current,a=zi(r,"pointerdown",p=>{const{drag:g,dragListener:y=!0}=this.getProps();g&&y&&this.start(p)}),s=()=>{const{dragConstraints:p}=this.getProps();Br(p)&&p.current&&(this.constraints=this.resolveRefConstraints())},{projection:l}=this.visualElement,f=l.addEventListener("measure",s);l&&!l.layout&&(l.root&&l.root.updateScroll(),l.updateLayout()),De.read(s);const d=ea(window,"resize",()=>this.scalePositionWithinConstraints()),m=l.addEventListener("didUpdate",({delta:p,hasLayoutChanged:g})=>{this.isDragging&&g&&(It(y=>{const w=this.getAxisMotionValue(y);w&&(this.originPoint[y]+=p[y].translate,w.set(w.get()+p[y].translate))}),this.visualElement.render())});return()=>{d(),a(),f(),m&&m()}}getProps(){const r=this.visualElement.getProps(),{drag:a=!1,dragDirectionLock:s=!1,dragPropagation:l=!1,dragConstraints:f=!1,dragElastic:d=Vu,dragMomentum:m=!0}=r;return{...r,drag:a,dragDirectionLock:s,dragPropagation:l,dragConstraints:f,dragElastic:d,dragMomentum:m}}}function Ts(t,r,a){return(r===!0||r===t)&&(a===null||a===t)}function Wk(t,r=10){let a=null;return Math.abs(t.y)>r?a="y":Math.abs(t.x)>r&&(a="x"),a}class Hk extends Fn{constructor(r){super(r),this.removeGroupControls=Mt,this.removeListeners=Mt,this.controls=new Uk(r)}mount(){const{dragControls:r}=this.node.getProps();r&&(this.removeGroupControls=r.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Mt}unmount(){this.removeGroupControls(),this.removeListeners()}}const _p=t=>(r,a)=>{t&&De.postRender(()=>t(r,a))};class Kk extends Fn{constructor(){super(...arguments),this.removePointerDownListener=Mt}onPointerDown(r){this.session=new ry(r,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:ny(this.node)})}createPanHandlers(){const{onPanSessionStart:r,onPanStart:a,onPan:s,onPanEnd:l}=this.node.getProps();return{onSessionStart:_p(r),onStart:_p(a),onMove:s,onEnd:(f,d)=>{delete this.session,l&&De.postRender(()=>l(f,d))}}}mount(){this.removePointerDownListener=zi(this.node.current,"pointerdown",r=>this.onPointerDown(r))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const Bs={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Fp(t,r){return r.max===r.min?0:t/(r.max-r.min)*100}const Di={correct:(t,r)=>{if(!r.target)return t;if(typeof t=="string")if(ie.test(t))t=parseFloat(t);else return t;const a=Fp(t,r.target.x),s=Fp(t,r.target.y);return`${a}% ${s}%`}},Gk={correct:(t,{treeScale:r,projectionDelta:a})=>{const s=t,l=_n.parse(t);if(l.length>5)return s;const f=_n.createTransformer(t),d=typeof l[0]!="number"?1:0,m=a.x.scale*r.x,p=a.y.scale*r.y;l[0+d]/=m,l[1+d]/=p;const g=Le(m,p,.5);return typeof l[2+d]=="number"&&(l[2+d]/=g),typeof l[3+d]=="number"&&(l[3+d]/=g),f(l)}};class Yk extends T.Component{componentDidMount(){const{visualElement:r,layoutGroup:a,switchLayoutGroup:s,layoutId:l}=this.props,{projection:f}=r;M1(qk),f&&(a.group&&a.group.add(f),s&&s.register&&l&&s.register(f),f.root.didUpdate(),f.addEventListener("animationComplete",()=>{this.safeToRemove()}),f.setOptions({...f.options,onExitComplete:()=>this.safeToRemove()})),Bs.hasEverUpdated=!0}getSnapshotBeforeUpdate(r){const{layoutDependency:a,visualElement:s,drag:l,isPresent:f}=this.props,d=s.projection;return d&&(d.isPresent=f,l||r.layoutDependency!==a||a===void 0||r.isPresent!==f?d.willUpdate():this.safeToRemove(),r.isPresent!==f&&(f?d.promote():d.relegate()||De.postRender(()=>{const m=d.getStack();(!m||!m.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:r}=this.props.visualElement;r&&(r.root.didUpdate(),Sc.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:r,layoutGroup:a,switchLayoutGroup:s}=this.props,{projection:l}=r;l&&(l.scheduleCheckAfterUnmount(),a&&a.group&&a.group.remove(l),s&&s.deregister&&s.deregister(l))}safeToRemove(){const{safeToRemove:r}=this.props;r&&r()}render(){return null}}function ay(t){const[r,a]=Uh(),s=T.useContext(tc);return dn.jsx(Yk,{...t,layoutGroup:s,switchLayoutGroup:T.useContext(_g),isPresent:r,safeToRemove:a})}const qk={borderRadius:{...Di,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Di,borderTopRightRadius:Di,borderBottomLeftRadius:Di,borderBottomRightRadius:Di,boxShadow:Gk};function Qk(t,r,a){const s=st(t)?t:Qi(t);return s.start(Bc("",s,r,a)),s.animation}function Xk(t){return t instanceof SVGElement&&t.tagName!=="svg"}const Zk=(t,r)=>t.depth-r.depth;class Jk{constructor(){this.children=[],this.isDirty=!1}add(r){ac(this.children,r),this.isDirty=!0}remove(r){sc(this.children,r),this.isDirty=!0}forEach(r){this.isDirty&&this.children.sort(Zk),this.isDirty=!1,this.children.forEach(r)}}function eS(t,r){const a=yt.now(),s=({timestamp:l})=>{const f=l-a;f>=r&&(On(s),t(f-r))};return De.setup(s,!0),()=>On(s)}const sy=["TopLeft","TopRight","BottomLeft","BottomRight"],tS=sy.length,Vp=t=>typeof t=="string"?parseFloat(t):t,jp=t=>typeof t=="number"||ie.test(t);function nS(t,r,a,s,l,f){l?(t.opacity=Le(0,a.opacity??1,rS(s)),t.opacityExit=Le(r.opacity??1,0,iS(s))):f&&(t.opacity=Le(r.opacity??1,a.opacity??1,s));for(let d=0;d<tS;d++){const m=`border${sy[d]}Radius`;let p=$p(r,m),g=$p(a,m);if(p===void 0&&g===void 0)continue;p||(p=0),g||(g=0),p===0||g===0||jp(p)===jp(g)?(t[m]=Math.max(Le(Vp(p),Vp(g),s),0),(Jt.test(g)||Jt.test(p))&&(t[m]+="%")):t[m]=g}(r.rotate||a.rotate)&&(t.rotate=Le(r.rotate||0,a.rotate||0,s))}function $p(t,r){return t[r]!==void 0?t[r]:t.borderRadius}const rS=oy(0,.5,eg),iS=oy(.5,.95,Mt);function oy(t,r,a){return s=>s<t?0:s>r?1:a(Gi(t,r,s))}function zp(t,r){t.min=r.min,t.max=r.max}function Nt(t,r){zp(t.x,r.x),zp(t.y,r.y)}function Up(t,r){t.translate=r.translate,t.scale=r.scale,t.originPoint=r.originPoint,t.origin=r.origin}function Wp(t,r,a,s,l){return t-=r,t=Vs(t,1/a,s),l!==void 0&&(t=Vs(t,1/l,s)),t}function aS(t,r=0,a=1,s=.5,l,f=t,d=t){if(Jt.test(r)&&(r=parseFloat(r),r=Le(d.min,d.max,r/100)-d.min),typeof r!="number")return;let m=Le(f.min,f.max,s);t===f&&(m-=r),t.min=Wp(t.min,r,a,m,l),t.max=Wp(t.max,r,a,m,l)}function Hp(t,r,[a,s,l],f,d){aS(t,r[a],r[s],r[l],r.scale,f,d)}const sS=["x","scaleX","originX"],oS=["y","scaleY","originY"];function Kp(t,r,a,s){Hp(t.x,r,sS,a?a.x:void 0,s?s.x:void 0),Hp(t.y,r,oS,a?a.y:void 0,s?s.y:void 0)}function Gp(t){return t.translate===0&&t.scale===1}function ly(t){return Gp(t.x)&&Gp(t.y)}function Yp(t,r){return t.min===r.min&&t.max===r.max}function lS(t,r){return Yp(t.x,r.x)&&Yp(t.y,r.y)}function qp(t,r){return Math.round(t.min)===Math.round(r.min)&&Math.round(t.max)===Math.round(r.max)}function uy(t,r){return qp(t.x,r.x)&&qp(t.y,r.y)}function Qp(t){return ut(t.x)/ut(t.y)}function Xp(t,r){return t.translate===r.translate&&t.scale===r.scale&&t.originPoint===r.originPoint}class uS{constructor(){this.members=[]}add(r){ac(this.members,r),r.scheduleRender()}remove(r){if(sc(this.members,r),r===this.prevLead&&(this.prevLead=void 0),r===this.lead){const a=this.members[this.members.length-1];a&&this.promote(a)}}relegate(r){const a=this.members.findIndex(l=>r===l);if(a===0)return!1;let s;for(let l=a;l>=0;l--){const f=this.members[l];if(f.isPresent!==!1){s=f;break}}return s?(this.promote(s),!0):!1}promote(r,a){const s=this.lead;if(r!==s&&(this.prevLead=s,this.lead=r,r.show(),s)){s.instance&&s.scheduleRender(),r.scheduleRender(),r.resumeFrom=s,a&&(r.resumeFrom.preserveOpacity=!0),s.snapshot&&(r.snapshot=s.snapshot,r.snapshot.latestValues=s.animationValues||s.latestValues),r.root&&r.root.isUpdating&&(r.isLayoutDirty=!0);const{crossfade:l}=r.options;l===!1&&s.hide()}}exitAnimationComplete(){this.members.forEach(r=>{const{options:a,resumingFrom:s}=r;a.onExitComplete&&a.onExitComplete(),s&&s.options.onExitComplete&&s.options.onExitComplete()})}scheduleRender(){this.members.forEach(r=>{r.instance&&r.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function cS(t,r,a){let s="";const l=t.x.translate/r.x,f=t.y.translate/r.y,d=(a==null?void 0:a.z)||0;if((l||f||d)&&(s=`translate3d(${l}px, ${f}px, ${d}px) `),(r.x!==1||r.y!==1)&&(s+=`scale(${1/r.x}, ${1/r.y}) `),a){const{transformPerspective:g,rotate:y,rotateX:w,rotateY:x,skewX:k,skewY:S}=a;g&&(s=`perspective(${g}px) ${s}`),y&&(s+=`rotate(${y}deg) `),w&&(s+=`rotateX(${w}deg) `),x&&(s+=`rotateY(${x}deg) `),k&&(s+=`skewX(${k}deg) `),S&&(s+=`skewY(${S}deg) `)}const m=t.x.scale*r.x,p=t.y.scale*r.y;return(m!==1||p!==1)&&(s+=`scale(${m}, ${p})`),s||"none"}const lu=["","X","Y","Z"],fS={visibility:"hidden"},Zp=1e3;let dS=0;function uu(t,r,a,s){const{latestValues:l}=r;l[t]&&(a[t]=l[t],r.setStaticValue(t,0),s&&(s[t]=0))}function cy(t){if(t.hasCheckedOptimisedAppear=!0,t.root===t)return;const{visualElement:r}=t.options;if(!r)return;const a=Kg(r);if(window.MotionHasOptimisedAnimation(a,"transform")){const{layout:l,layoutId:f}=t.options;window.MotionCancelOptimisedAnimation(a,"transform",De,!(l||f))}const{parent:s}=t;s&&!s.hasCheckedOptimisedAppear&&cy(s)}function fy({attachResizeListener:t,defaultParent:r,measureScroll:a,checkIsScrollRoot:s,resetTransform:l}){return class{constructor(d={},m=r==null?void 0:r()){this.id=dS++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(hS),this.nodes.forEach(xS),this.nodes.forEach(ES),this.nodes.forEach(gS)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=d,this.root=m?m.root||m:this,this.path=m?[...m.path,m]:[],this.parent=m,this.depth=m?m.depth+1:0;for(let p=0;p<this.path.length;p++)this.path[p].shouldResetTransform=!0;this.root===this&&(this.nodes=new Jk)}addEventListener(d,m){return this.eventHandlers.has(d)||this.eventHandlers.set(d,new uc),this.eventHandlers.get(d).add(m)}notifyListeners(d,...m){const p=this.eventHandlers.get(d);p&&p.notify(...m)}hasListeners(d){return this.eventHandlers.has(d)}mount(d,m=this.root.hasTreeAnimated){if(this.instance)return;this.isSVG=Xk(d),this.instance=d;const{layoutId:p,layout:g,visualElement:y}=this.options;if(y&&!y.current&&y.mount(d),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),m&&(g||p)&&(this.isLayoutDirty=!0),t){let w;const x=()=>this.root.updateBlockedByResize=!1;t(d,()=>{this.root.updateBlockedByResize=!0,w&&w(),w=eS(x,250),Bs.hasAnimatedSinceResize&&(Bs.hasAnimatedSinceResize=!1,this.nodes.forEach(eh))})}p&&this.root.registerSharedNode(p,this),this.options.animate!==!1&&y&&(p||g)&&this.addEventListener("didUpdate",({delta:w,hasLayoutChanged:x,hasRelativeLayoutChanged:k,layout:S})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const P=this.options.transition||y.getDefaultTransition()||bS,{onLayoutAnimationStart:I,onLayoutAnimationComplete:R}=y.getProps(),D=!this.targetLayout||!uy(this.targetLayout,S),L=!x&&k;if(this.options.layoutRoot||this.resumeFrom||L||x&&(D||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(w,L);const $={...Ec(P,"layout"),onPlay:I,onComplete:R};(y.shouldReduceMotion||this.options.layoutRoot)&&($.delay=0,$.type=!1),this.startAnimation($)}else x||eh(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=S})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const d=this.getStack();d&&d.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),On(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(kS),this.animationId++)}getTransformTemplate(){const{visualElement:d}=this.options;return d&&d.getProps().transformTemplate}willUpdate(d=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&cy(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let y=0;y<this.path.length;y++){const w=this.path[y];w.shouldResetTransform=!0,w.updateScroll("snapshot"),w.options.layoutRoot&&w.willUpdate(!1)}const{layoutId:m,layout:p}=this.options;if(m===void 0&&!p)return;const g=this.getTransformTemplate();this.prevTransformTemplateValue=g?g(this.latestValues,""):void 0,this.updateSnapshot(),d&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(Jp);return}this.isUpdating||this.nodes.forEach(vS),this.isUpdating=!1,this.nodes.forEach(wS),this.nodes.forEach(mS),this.nodes.forEach(pS),this.clearAllSnapshots();const m=yt.now();Ze.delta=pn(0,1e3/60,m-Ze.timestamp),Ze.timestamp=m,Ze.isProcessing=!0,eu.update.process(Ze),eu.preRender.process(Ze),eu.render.process(Ze),Ze.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,Sc.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(yS),this.sharedNodes.forEach(SS)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,De.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){De.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!ut(this.snapshot.measuredBox.x)&&!ut(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let p=0;p<this.path.length;p++)this.path[p].updateScroll();const d=this.layout;this.layout=this.measure(!1),this.layoutCorrected=$e(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:m}=this.options;m&&m.notify("LayoutMeasure",this.layout.layoutBox,d?d.layoutBox:void 0)}updateScroll(d="measure"){let m=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===d&&(m=!1),m){const p=s(this.instance);this.scroll={animationId:this.root.animationId,phase:d,isRoot:p,offset:a(this.instance),wasRoot:this.scroll?this.scroll.isRoot:p}}}resetTransform(){if(!l)return;const d=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,m=this.projectionDelta&&!ly(this.projectionDelta),p=this.getTransformTemplate(),g=p?p(this.latestValues,""):void 0,y=g!==this.prevTransformTemplateValue;d&&(m||er(this.latestValues)||y)&&(l(this.instance,g),this.shouldResetTransform=!1,this.scheduleRender())}measure(d=!0){const m=this.measurePageBox();let p=this.removeElementScroll(m);return d&&(p=this.removeTransform(p)),PS(p),{animationId:this.root.animationId,measuredBox:m,layoutBox:p,latestValues:{},source:this.id}}measurePageBox(){var g;const{visualElement:d}=this.options;if(!d)return $e();const m=d.measureViewportBox();if(!(((g=this.scroll)==null?void 0:g.wasRoot)||this.path.some(RS))){const{scroll:y}=this.root;y&&(Dr(m.x,y.offset.x),Dr(m.y,y.offset.y))}return m}removeElementScroll(d){var p;const m=$e();if(Nt(m,d),(p=this.scroll)!=null&&p.wasRoot)return m;for(let g=0;g<this.path.length;g++){const y=this.path[g],{scroll:w,options:x}=y;y!==this.root&&w&&x.layoutScroll&&(w.wasRoot&&Nt(m,d),Dr(m.x,w.offset.x),Dr(m.y,w.offset.y))}return m}applyTransform(d,m=!1){const p=$e();Nt(p,d);for(let g=0;g<this.path.length;g++){const y=this.path[g];!m&&y.options.layoutScroll&&y.scroll&&y!==y.root&&Or(p,{x:-y.scroll.offset.x,y:-y.scroll.offset.y}),er(y.latestValues)&&Or(p,y.latestValues)}return er(this.latestValues)&&Or(p,this.latestValues),p}removeTransform(d){const m=$e();Nt(m,d);for(let p=0;p<this.path.length;p++){const g=this.path[p];if(!g.instance||!er(g.latestValues))continue;_u(g.latestValues)&&g.updateSnapshot();const y=$e(),w=g.measurePageBox();Nt(y,w),Kp(m,g.latestValues,g.snapshot?g.snapshot.layoutBox:void 0,y)}return er(this.latestValues)&&Kp(m,this.latestValues),m}setTargetDelta(d){this.targetDelta=d,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(d){this.options={...this.options,...d,crossfade:d.crossfade!==void 0?d.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==Ze.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(d=!1){var x;const m=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=m.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=m.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=m.isSharedProjectionDirty);const p=!!this.resumingFrom||this!==m;if(!(d||p&&this.isSharedProjectionDirty||this.isProjectionDirty||(x=this.parent)!=null&&x.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:y,layoutId:w}=this.options;if(!(!this.layout||!(y||w))){if(this.resolvedRelativeTargetAt=Ze.timestamp,!this.targetDelta&&!this.relativeTarget){const k=this.getClosestProjectingParent();k&&k.layout&&this.animationProgress!==1?(this.relativeParent=k,this.forceRelativeParentToResolveTarget(),this.relativeTarget=$e(),this.relativeTargetOrigin=$e(),Wi(this.relativeTargetOrigin,this.layout.layoutBox,k.layout.layoutBox),Nt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=$e(),this.targetWithTransforms=$e()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),Ik(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):Nt(this.target,this.layout.layoutBox),ey(this.target,this.targetDelta)):Nt(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget)){this.attemptToResolveRelativeTarget=!1;const k=this.getClosestProjectingParent();k&&!!k.resumingFrom==!!this.resumingFrom&&!k.options.layoutScroll&&k.target&&this.animationProgress!==1?(this.relativeParent=k,this.forceRelativeParentToResolveTarget(),this.relativeTarget=$e(),this.relativeTargetOrigin=$e(),Wi(this.relativeTargetOrigin,this.target,k.target),Nt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}}}getClosestProjectingParent(){if(!(!this.parent||_u(this.parent.latestValues)||Jg(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}calcProjection(){var S;const d=this.getLead(),m=!!this.resumingFrom||this!==d;let p=!0;if((this.isProjectionDirty||(S=this.parent)!=null&&S.isProjectionDirty)&&(p=!1),m&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(p=!1),this.resolvedRelativeTargetAt===Ze.timestamp&&(p=!1),p)return;const{layout:g,layoutId:y}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(g||y))return;Nt(this.layoutCorrected,this.layout.layoutBox);const w=this.treeScale.x,x=this.treeScale.y;Ak(this.layoutCorrected,this.treeScale,this.path,m),d.layout&&!d.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(d.target=d.layout.layoutBox,d.targetWithTransforms=$e());const{target:k}=d;if(!k){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(Up(this.prevProjectionDelta.x,this.projectionDelta.x),Up(this.prevProjectionDelta.y,this.projectionDelta.y)),Ui(this.projectionDelta,this.layoutCorrected,k,this.latestValues),(this.treeScale.x!==w||this.treeScale.y!==x||!Xp(this.projectionDelta.x,this.prevProjectionDelta.x)||!Xp(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",k))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(d=!0){var m;if((m=this.options.visualElement)==null||m.scheduleRender(),d){const p=this.getStack();p&&p.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=Lr(),this.projectionDelta=Lr(),this.projectionDeltaWithTransform=Lr()}setAnimationOrigin(d,m=!1){const p=this.snapshot,g=p?p.latestValues:{},y={...this.latestValues},w=Lr();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!m;const x=$e(),k=p?p.source:void 0,S=this.layout?this.layout.source:void 0,P=k!==S,I=this.getStack(),R=!I||I.members.length<=1,D=!!(P&&!R&&this.options.crossfade===!0&&!this.path.some(CS));this.animationProgress=0;let L;this.mixTargetDelta=$=>{const j=$/1e3;th(w.x,d.x,j),th(w.y,d.y,j),this.setTargetDelta(w),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Wi(x,this.layout.layoutBox,this.relativeParent.layout.layoutBox),TS(this.relativeTarget,this.relativeTargetOrigin,x,j),L&&lS(this.relativeTarget,L)&&(this.isProjectionDirty=!1),L||(L=$e()),Nt(L,this.relativeTarget)),P&&(this.animationValues=y,nS(y,g,this.latestValues,j,D,R)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=j},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(d){this.notifyListeners("animationStart"),this.currentAnimation&&this.currentAnimation.stop(),this.resumingFrom&&this.resumingFrom.currentAnimation&&this.resumingFrom.currentAnimation.stop(),this.pendingAnimation&&(On(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=De.update(()=>{Bs.hasAnimatedSinceResize=!0,this.currentAnimation=Qk(0,Zp,{...d,onUpdate:m=>{this.mixTargetDelta(m),d.onUpdate&&d.onUpdate(m)},onStop:()=>{},onComplete:()=>{d.onComplete&&d.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const d=this.getStack();d&&d.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Zp),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const d=this.getLead();let{targetWithTransforms:m,target:p,layout:g,latestValues:y}=d;if(!(!m||!p||!g)){if(this!==d&&this.layout&&g&&dy(this.options.animationType,this.layout.layoutBox,g.layoutBox)){p=this.target||$e();const w=ut(this.layout.layoutBox.x);p.x.min=d.target.x.min,p.x.max=p.x.min+w;const x=ut(this.layout.layoutBox.y);p.y.min=d.target.y.min,p.y.max=p.y.min+x}Nt(m,p),Or(m,y),Ui(this.projectionDeltaWithTransform,this.layoutCorrected,m,y)}}registerSharedNode(d,m){this.sharedNodes.has(d)||this.sharedNodes.set(d,new uS),this.sharedNodes.get(d).add(m);const g=m.options.initialPromotionConfig;m.promote({transition:g?g.transition:void 0,preserveFollowOpacity:g&&g.shouldPreserveFollowOpacity?g.shouldPreserveFollowOpacity(m):void 0})}isLead(){const d=this.getStack();return d?d.lead===this:!0}getLead(){var m;const{layoutId:d}=this.options;return d?((m=this.getStack())==null?void 0:m.lead)||this:this}getPrevLead(){var m;const{layoutId:d}=this.options;return d?(m=this.getStack())==null?void 0:m.prevLead:void 0}getStack(){const{layoutId:d}=this.options;if(d)return this.root.sharedNodes.get(d)}promote({needsReset:d,transition:m,preserveFollowOpacity:p}={}){const g=this.getStack();g&&g.promote(this,p),d&&(this.projectionDelta=void 0,this.needsReset=!0),m&&this.setOptions({transition:m})}relegate(){const d=this.getStack();return d?d.relegate(this):!1}resetSkewAndRotation(){const{visualElement:d}=this.options;if(!d)return;let m=!1;const{latestValues:p}=d;if((p.z||p.rotate||p.rotateX||p.rotateY||p.rotateZ||p.skewX||p.skewY)&&(m=!0),!m)return;const g={};p.z&&uu("z",d,g,this.animationValues);for(let y=0;y<lu.length;y++)uu(`rotate${lu[y]}`,d,g,this.animationValues),uu(`skew${lu[y]}`,d,g,this.animationValues);d.render();for(const y in g)d.setStaticValue(y,g[y]),this.animationValues&&(this.animationValues[y]=g[y]);d.scheduleRender()}getProjectionStyles(d){if(!this.instance||this.isSVG)return;if(!this.isVisible)return fS;const m={visibility:""},p=this.getTransformTemplate();if(this.needsReset)return this.needsReset=!1,m.opacity="",m.pointerEvents=Ms(d==null?void 0:d.pointerEvents)||"",m.transform=p?p(this.latestValues,""):"none",m;const g=this.getLead();if(!this.projectionDelta||!this.layout||!g.target){const k={};return this.options.layoutId&&(k.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,k.pointerEvents=Ms(d==null?void 0:d.pointerEvents)||""),this.hasProjected&&!er(this.latestValues)&&(k.transform=p?p({},""):"none",this.hasProjected=!1),k}const y=g.animationValues||g.latestValues;this.applyTransformsToTarget(),m.transform=cS(this.projectionDeltaWithTransform,this.treeScale,y),p&&(m.transform=p(y,m.transform));const{x:w,y:x}=this.projectionDelta;m.transformOrigin=`${w.origin*100}% ${x.origin*100}% 0`,g.animationValues?m.opacity=g===this?y.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:y.opacityExit:m.opacity=g===this?y.opacity!==void 0?y.opacity:"":y.opacityExit!==void 0?y.opacityExit:0;for(const k in Zi){if(y[k]===void 0)continue;const{correct:S,applyTo:P,isCSSVariable:I}=Zi[k],R=m.transform==="none"?y[k]:S(y[k],g);if(P){const D=P.length;for(let L=0;L<D;L++)m[P[L]]=R}else I?this.options.visualElement.renderState.vars[k]=R:m[k]=R}return this.options.layoutId&&(m.pointerEvents=g===this?Ms(d==null?void 0:d.pointerEvents)||"":"none"),m}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(d=>{var m;return(m=d.currentAnimation)==null?void 0:m.stop()}),this.root.nodes.forEach(Jp),this.root.sharedNodes.clear()}}}function mS(t){t.updateLayout()}function pS(t){var a;const r=((a=t.resumeFrom)==null?void 0:a.snapshot)||t.snapshot;if(t.isLead()&&t.layout&&r&&t.hasListeners("didUpdate")){const{layoutBox:s,measuredBox:l}=t.layout,{animationType:f}=t.options,d=r.source!==t.layout.source;f==="size"?It(w=>{const x=d?r.measuredBox[w]:r.layoutBox[w],k=ut(x);x.min=s[w].min,x.max=x.min+k}):dy(f,r.layoutBox,s)&&It(w=>{const x=d?r.measuredBox[w]:r.layoutBox[w],k=ut(s[w]);x.max=x.min+k,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[w].max=t.relativeTarget[w].min+k)});const m=Lr();Ui(m,s,r.layoutBox);const p=Lr();d?Ui(p,t.applyTransform(l,!0),r.measuredBox):Ui(p,s,r.layoutBox);const g=!ly(m);let y=!1;if(!t.resumeFrom){const w=t.getClosestProjectingParent();if(w&&!w.resumeFrom){const{snapshot:x,layout:k}=w;if(x&&k){const S=$e();Wi(S,r.layoutBox,x.layoutBox);const P=$e();Wi(P,s,k.layoutBox),uy(S,P)||(y=!0),w.options.layoutRoot&&(t.relativeTarget=P,t.relativeTargetOrigin=S,t.relativeParent=w)}}}t.notifyListeners("didUpdate",{layout:s,snapshot:r,delta:p,layoutDelta:m,hasLayoutChanged:g,hasRelativeLayoutChanged:y})}else if(t.isLead()){const{onExitComplete:s}=t.options;s&&s()}t.options.transition=void 0}function hS(t){t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=!!(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function gS(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function yS(t){t.clearSnapshot()}function Jp(t){t.clearMeasurements()}function vS(t){t.isLayoutDirty=!1}function wS(t){const{visualElement:r}=t.options;r&&r.getProps().onBeforeLayoutMeasure&&r.notify("BeforeLayoutMeasure"),t.resetTransform()}function eh(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function xS(t){t.resolveTargetDelta()}function ES(t){t.calcProjection()}function kS(t){t.resetSkewAndRotation()}function SS(t){t.removeLeadSnapshot()}function th(t,r,a){t.translate=Le(r.translate,0,a),t.scale=Le(r.scale,1,a),t.origin=r.origin,t.originPoint=r.originPoint}function nh(t,r,a,s){t.min=Le(r.min,a.min,s),t.max=Le(r.max,a.max,s)}function TS(t,r,a,s){nh(t.x,r.x,a.x,s),nh(t.y,r.y,a.y,s)}function CS(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const bS={duration:.45,ease:[.4,0,.1,1]},rh=t=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),ih=rh("applewebkit/")&&!rh("chrome/")?Math.round:Mt;function ah(t){t.min=ih(t.min),t.max=ih(t.max)}function PS(t){ah(t.x),ah(t.y)}function dy(t,r,a){return t==="position"||t==="preserve-aspect"&&!Nk(Qp(r),Qp(a),.2)}function RS(t){var r;return t!==t.root&&((r=t.scroll)==null?void 0:r.wasRoot)}const NS=fy({attachResizeListener:(t,r)=>ea(t,"resize",r),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),cu={current:void 0},my=fy({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!cu.current){const t=new NS({});t.mount(window),t.setOptions({layoutScroll:!0}),cu.current=t}return cu.current},resetTransform:(t,r)=>{t.style.transform=r!==void 0?r:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),IS={pan:{Feature:Kk},drag:{Feature:Hk,ProjectionNode:my,MeasureLayout:ay}};function sh(t,r,a){const{props:s}=t;t.animationState&&s.whileHover&&t.animationState.setActive("whileHover",a==="Start");const l="onHover"+a,f=s[l];f&&De.postRender(()=>f(r,oa(r)))}class AS extends Fn{mount(){const{current:r}=this.node;r&&(this.unmount=o1(r,(a,s)=>(sh(this.node,s,"Start"),l=>sh(this.node,l,"End"))))}unmount(){}}class MS extends Fn{constructor(){super(...arguments),this.isActive=!1}onFocus(){let r=!1;try{r=this.node.current.matches(":focus-visible")}catch{r=!0}!r||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=ia(ea(this.node.current,"focus",()=>this.onFocus()),ea(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function oh(t,r,a){const{props:s}=t;if(t.current instanceof HTMLButtonElement&&t.current.disabled)return;t.animationState&&s.whileTap&&t.animationState.setActive("whileTap",a==="Start");const l="onTap"+(a==="End"?"":a),f=s[l];f&&De.postRender(()=>f(r,oa(r)))}class BS extends Fn{mount(){const{current:r}=this.node;r&&(this.unmount=f1(r,(a,s)=>(oh(this.node,s,"Start"),(l,{success:f})=>oh(this.node,l,f?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const ju=new WeakMap,fu=new WeakMap,LS=t=>{const r=ju.get(t.target);r&&r(t)},DS=t=>{t.forEach(LS)};function OS({root:t,...r}){const a=t||document;fu.has(a)||fu.set(a,{});const s=fu.get(a),l=JSON.stringify(r);return s[l]||(s[l]=new IntersectionObserver(DS,{root:t,...r})),s[l]}function _S(t,r,a){const s=OS(r);return ju.set(t,a),s.observe(t),()=>{ju.delete(t),s.unobserve(t)}}const FS={some:0,all:1};class VS extends Fn{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:r={}}=this.node.getProps(),{root:a,margin:s,amount:l="some",once:f}=r,d={root:a?a.current:void 0,rootMargin:s,threshold:typeof l=="number"?l:FS[l]},m=p=>{const{isIntersecting:g}=p;if(this.isInView===g||(this.isInView=g,f&&!g&&this.hasEnteredView))return;g&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",g);const{onViewportEnter:y,onViewportLeave:w}=this.node.getProps(),x=g?y:w;x&&x(p)};return _S(this.node.current,d,m)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:r,prevProps:a}=this.node;["amount","margin","root"].some(jS(r,a))&&this.startObserver()}unmount(){}}function jS({viewport:t={}},{viewport:r={}}={}){return a=>t[a]!==r[a]}const $S={inView:{Feature:VS},tap:{Feature:BS},focus:{Feature:MS},hover:{Feature:AS}},zS={layout:{ProjectionNode:my,MeasureLayout:ay}},js={current:null},Lc={current:!1};function py(){if(Lc.current=!0,!!rc)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),r=()=>js.current=t.matches;t.addListener(r),r()}else js.current=!1}const US=new WeakMap;function WS(t,r,a){for(const s in r){const l=r[s],f=a[s];if(st(l))t.addValue(s,l);else if(st(f))t.addValue(s,Qi(l,{owner:t}));else if(f!==l)if(t.hasValue(s)){const d=t.getValue(s);d.liveStyle===!0?d.jump(l):d.hasAnimated||d.set(l)}else{const d=t.getStaticValue(s);t.addValue(s,Qi(d!==void 0?d:l,{owner:t}))}}for(const s in a)r[s]===void 0&&t.removeValue(s);return r}const lh=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class HS{scrapeMotionValuesFromProps(r,a,s){return{}}constructor({parent:r,props:a,presenceContext:s,reducedMotionConfig:l,blockInitialAnimation:f,visualState:d},m={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=xc,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const x=yt.now();this.renderScheduledAt<x&&(this.renderScheduledAt=x,De.render(this.render,!1,!0))};const{latestValues:p,renderState:g}=d;this.latestValues=p,this.baseTarget={...p},this.initialValues=a.initial?{...p}:{},this.renderState=g,this.parent=r,this.props=a,this.presenceContext=s,this.depth=r?r.depth+1:0,this.reducedMotionConfig=l,this.options=m,this.blockInitialAnimation=!!f,this.isControllingVariants=qs(a),this.isVariantNode=Dg(a),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(r&&r.current);const{willChange:y,...w}=this.scrapeMotionValuesFromProps(a,{},this);for(const x in w){const k=w[x];p[x]!==void 0&&st(k)&&k.set(p[x],!1)}}mount(r){this.current=r,US.set(r,this),this.projection&&!this.projection.instance&&this.projection.mount(r),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((a,s)=>this.bindToMotionValue(s,a)),Lc.current||py(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:js.current,this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),this.projection=void 0,On(this.notifyUpdate),On(this.render),this.valueSubscriptions.forEach(r=>r()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const r in this.events)this.events[r].clear();for(const r in this.features){const a=this.features[r];a&&(a.unmount(),a.isMounted=!1)}this.current=null}bindToMotionValue(r,a){this.valueSubscriptions.has(r)&&this.valueSubscriptions.get(r)();const s=Kr.has(r);s&&this.onBindTransform&&this.onBindTransform();const l=a.on("change",m=>{this.latestValues[r]=m,this.props.onUpdate&&De.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0)}),f=a.on("renderRequest",this.scheduleRender);let d;window.MotionCheckAppearSync&&(d=window.MotionCheckAppearSync(this,r,a)),this.valueSubscriptions.set(r,()=>{l(),f(),d&&d(),a.owner&&a.stop()})}sortNodePosition(r){return!this.current||!this.sortInstanceNodePosition||this.type!==r.type?0:this.sortInstanceNodePosition(this.current,r.current)}updateFeatures(){let r="animation";for(r in Vr){const a=Vr[r];if(!a)continue;const{isEnabled:s,Feature:l}=a;if(!this.features[r]&&l&&s(this.props)&&(this.features[r]=new l(this)),this.features[r]){const f=this.features[r];f.isMounted?f.update():(f.mount(),f.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):$e()}getStaticValue(r){return this.latestValues[r]}setStaticValue(r,a){this.latestValues[r]=a}update(r,a){(r.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=r,this.prevPresenceContext=this.presenceContext,this.presenceContext=a;for(let s=0;s<lh.length;s++){const l=lh[s];this.propEventSubscriptions[l]&&(this.propEventSubscriptions[l](),delete this.propEventSubscriptions[l]);const f="on"+l,d=r[f];d&&(this.propEventSubscriptions[l]=this.on(l,d))}this.prevMotionValues=WS(this,this.scrapeMotionValuesFromProps(r,this.prevProps,this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(r){return this.props.variants?this.props.variants[r]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}
50addVariantChild(r){const a=this.getClosestVariantNode();if(a)return a.variantChildren&&a.variantChildren.add(r),()=>a.variantChildren.delete(r)}addValue(r,a){const s=this.values.get(r);a!==s&&(s&&this.removeValue(r),this.bindToMotionValue(r,a),this.values.set(r,a),this.latestValues[r]=a.get())}removeValue(r){this.values.delete(r);const a=this.valueSubscriptions.get(r);a&&(a(),this.valueSubscriptions.delete(r)),delete this.latestValues[r],this.removeValueFromRenderState(r,this.renderState)}hasValue(r){return this.values.has(r)}getValue(r,a){if(this.props.values&&this.props.values[r])return this.props.values[r];let s=this.values.get(r);return s===void 0&&a!==void 0&&(s=Qi(a===null?void 0:a,{owner:this}),this.addValue(r,s)),s}readValue(r,a){let s=this.latestValues[r]!==void 0||!this.current?this.latestValues[r]:this.getBaseTargetFromProps(this.props,r)??this.readValueFromInstance(this.current,r,this.options);return s!=null&&(typeof s=="string"&&(Hh(s)||Kh(s))?s=parseFloat(s):!h1(s)&&_n.test(a)&&(s=Rg(r,a)),this.setBaseTarget(r,st(s)?s.get():s)),st(s)?s.get():s}setBaseTarget(r,a){this.baseTarget[r]=a}getBaseTarget(r){var f;const{initial:a}=this.props;let s;if(typeof a=="string"||typeof a=="object"){const d=Ac(this.props,a,(f=this.presenceContext)==null?void 0:f.custom);d&&(s=d[r])}if(a&&s!==void 0)return s;const l=this.getBaseTargetFromProps(this.props,r);return l!==void 0&&!st(l)?l:this.initialValues[r]!==void 0&&s===void 0?void 0:this.baseTarget[r]}on(r,a){return this.events[r]||(this.events[r]=new uc),this.events[r].add(a)}notify(r,...a){this.events[r]&&this.events[r].notify(...a)}}class hy extends HS{constructor(){super(...arguments),this.KeyframeResolver=i1}sortInstanceNodePosition(r,a){return r.compareDocumentPosition(a)&2?1:-1}getBaseTargetFromProps(r,a){return r.style?r.style[a]:void 0}removeValueFromRenderState(r,{vars:a,style:s}){delete a[r],delete s[r]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:r}=this.props;st(r)&&(this.childSubscription=r.on("change",a=>{this.current&&(this.current.textContent=`${a}`)}))}}function gy(t,{style:r,vars:a},s,l){Object.assign(t.style,r,l&&l.getProjectionStyles(s));for(const f in a)t.style.setProperty(f,a[f])}function KS(t){return window.getComputedStyle(t)}class GS extends hy{constructor(){super(...arguments),this.type="html",this.renderInstance=gy}readValueFromInstance(r,a){if(Kr.has(a))return SE(r,a);{const s=KS(r),l=(dc(a)?s.getPropertyValue(a):s[a])||0;return typeof l=="string"?l.trim():l}}measureInstanceViewportBox(r,{transformPagePoint:a}){return ty(r,a)}build(r,a,s){Rc(r,a,s.transformTemplate)}scrapeMotionValuesFromProps(r,a,s){return Mc(r,a,s)}}const yy=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function YS(t,r,a,s){gy(t,r,void 0,s);for(const l in r.attrs)t.setAttribute(yy.has(l)?l:Pc(l),r.attrs[l])}class qS extends hy{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=$e}getBaseTargetFromProps(r,a){return r[a]}readValueFromInstance(r,a){if(Kr.has(a)){const s=Pg(a);return s&&s.default||0}return a=yy.has(a)?a:Pc(a),r.getAttribute(a)}scrapeMotionValuesFromProps(r,a,s){return Hg(r,a,s)}build(r,a,s){$g(r,a,this.isSVGTag,s.transformTemplate)}renderInstance(r,a,s,l){YS(r,a,s,l)}mount(r){this.isSVGTag=Ug(r.tagName),super.mount(r)}}const QS=(t,r)=>Ic(t)?new qS(r):new GS(r,{allowProjection:t!==T.Fragment}),XS=q1({...Ek,...$S,...IS,...zS},QS),we=x1(XS);function ZS(){!Lc.current&&py();const[t]=T.useState(js.current);return t}const vy=T.createContext(),Je=()=>T.useContext(vy),JS=({lang:t="uk",children:r})=>{const[a,s]=T.useState(t);return T.useEffect(()=>{t&&t!==a&&s(t)},[t]),console.log("Current language:",a),c.createElement(vy.Provider,{value:{language:a,setLanguage:s}},r)},du=["uk","en","ka"],uh={uk:{about:"Про нас",services:"Послуги",integration:"Як це працює",aicompanion:"AI-Компаньйон",pricing:"Тарифи",articles:"Статті",call:"Дзвінки",aria:"Головна навігація"},en:{about:"Home",services:"Services",integration:"How it works",aicompanion:"AI Companion",pricing:"Pricing",articles:"Articles",call:"Call",aria:"Main navigation"},ka:{about:"ჩვენს შესახებ",services:"სერვისები",integration:"როგორ მუშაობს",aicompanion:"AI კომპანიონი",pricing:"ტარიფები",articles:"სტატიები",call:"ზარები",aria:"მთავარი ნავიგაცია"}},ch=[{key:"about",path:""},{key:"services",path:"services"},{key:"integration",path:"integration"},{key:"pricing",path:"pricing"},{key:"articles",path:"articles"},{key:"call",path:"call"}],eT=()=>{const{language:t,setLanguage:r}=Je(),a=Qu(),s=en(),[l,f]=T.useState(!1),d=()=>{document.body.style.transition="opacity 0.3s",document.body.style.opacity=.3,setTimeout(()=>{const y=du.indexOf(t),w=du[(y+1)%du.length],x=s.pathname.replace(`/${t}`,`/${w}`);r(w),a(x),setTimeout(()=>{document.body.style.opacity=1},200)},150)},m=uh[t]||uh.uk,p=()=>f(!1),g=y=>{const w=s.pathname.replace(`/${t}`,"")||"/",x=y?`/${y}`:"/";return w===x};return c.createElement(we.nav,{id:"navbar","aria-label":m.aria,className:"relative flex w-full items-center justify-between bg-bone/95 backdrop-blur-sm z-20 text-ink font-sans px-5 py-3 shadow-[0_1px_0_rgba(17,21,29,0.08)] lg:fixed lg:top-3 lg:rou
50nded-full lg:mx-auto lg:max-w-5xl lg:px-6",initial:{opacity:0,y:-12},animate:{opacity:1,y:0},transition:{duration:.5}},c.createElement("div",{className:"flex items-center gap-3"},c.createElement("button",{onClick:()=>f(y=>!y),className:"lg:hidden text-ink rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-signal-teal","aria-label":m.aria,"aria-expanded":l},c.createElement("svg",{className:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},c.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M4 6h16M4 12h16M4 18h16"}))),c.createElement(ye,{to:`/${t}`,className:"flex items-center","aria-label":"BandBI homepage"},c.createElement("div",{className:"w-[150px] h-[64px] lg:w-[136px] lg:h-[58px]"},c.createElement("img",{src:"/logo-big.svg",alt:"BandBI",className:"w-full h-full object-contain"})))),c.createElement("div",{className:"hidden lg:flex items-center gap-1"},ch.map(y=>c.createElement(ye,{key:y.key,to:`/${t}${y.path?`/${y.path}`:""}`,className:`relative px-3 py-2 text-sm font-medium font-display tracking-wide transition-colors ${g(y.path)?"text-ink":"text-ink/55 hover:text-ink"}`},m[y.key],g(y.path)&&c.createElement(we.span,{layoutId:"nav-underline",className:"absolute left-3 right-3 -bottom-0.5 h-[2px] rounded-full bg-signal-teal"}))),c.createElement(ye,{to:`/${t}/aicompanion`,className:`px-3 py-2 text-sm font-semibold font-display tracking-wide ${g("aicompanion")?"text-signal-teal":"text-ink hover:text-signal-teal"}`},m.aicompanion)),c.createElement("div",{className:"flex items-center gap-3"},c.createElement("a",{href:"https://t.me/bandbi_bot",target:"_blank",rel:"noopener noreferrer",className:"w-8 h-8 opacity-70 transition-opacity hover:opacity-100","aria-label":"Open BandBI Telegram bot"},c.createElement("img",{src:"/telegram-icon.svg",alt:"",className:"w-full h-full object-contain"})),c.createElement("button",{onClick:d,className:"rounded-full border border-ink/15 px-3 py-1.5 font-mono text-xs uppercase tracking-widest2 text-ink transition-colors hover:border-signal-teal hover:text-signal-teal focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-signal-teal"},t)),c.createElement(Wh,null,l&&c.createElement(we.div,{initial:{opacity:0,y:-8},animate:{opacity:1,y:0},exit:{opacity:0,y:-8},transition:{duration:.2},className:"absolute left-0 right-0 top-full mx-4 mt-2 overflow-hidden rounded-2xl border border-ink/10 bg-bone shadow-xl lg:hidden"},ch.map(y=>c.createElement(ye,{key:y.key,to:`/${t}${y.path?`/${y.path}`:""}`,onClick:p,className:`block px-5 py-3 text-sm font-display ${g(y.path)?"bg-ink/5 text-signal-teal":"text-ink"}`},m[y.key])),c.createElement(ye,{to:`/${t}/aicompanion`,onClick:p,className:"block border-t border-ink/10 px-5 py-3 text-sm font-display font-semibold text-signal-teal"},m.aicompanion))))};/**
51 * @license lucide-react v0.507.0 - ISC
52 *
53 * This source code is licensed under the ISC license.
54 * See the LICENSE file in the root directory of this source tree.
55 */const tT=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),nT=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(r,a,s)=>s?s.toUpperCase():a.toLowerCase()),fh=t=>{const r=nT(t);return r.charAt(0).toUpperCase()+r.slice(1)},wy=(...t)=>t.filter((r,a,s)=>!!r&&r.trim()!==""&&s.indexOf(r)===a).join(" ").trim(),rT=t=>{for(const r in t)if(r.startsWith("aria-")||r==="role"||r==="title")return!0};/**
56 * @license lucide-react v0.507.0 - ISC
57 *
58 * This source code is licensed under the ISC license.
59 * See the LICENSE file in the root directory of this source tree.
60 */var iT={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"};/**
61 * @license lucide-react v0.507.0 - ISC
62 *
63 * This source code is licensed under the ISC license.
64 * See the LICENSE file in the root directory of this source tree.
65 */const aT=T.forwardRef(({color:t="currentColor",size:r=24,strokeWidth:a=2,absoluteStrokeWidth:s,className:l="",children:f,iconNode:d,...m},p)=>T.createElement("svg",{ref:p,...iT,width:r,height:r,stroke:t,strokeWidth:s?Number(a)*24/Number(r):a,className:wy("lucide",l),...!f&&!rT(m)&&{"aria-hidden":"true"},...m},[...d.map(([g,y])=>T.createElement(g,y)),...Array.isArray(f)?f:[f]]));/**
66 * @license lucide-react v0.507.0 - ISC
67 *
68 * This source code is licensed under the ISC license.
69 * See the LICENSE file in the root directory of this source tree.
70 */const Dc=(t,r)=>{const a=T.forwardRef(({className:s,...l},f)=>T.createElement(aT,{ref:f,iconNode:r,className:wy(`lucide-${tT(fh(t))}`,`lucide-${t}`,s),...l}));return a.displayName=fh(t),a};/**
71 * @license lucide-react v0.507.0 - ISC
72 *
73 * This source code is licensed under the ISC license.
74 * See the LICENSE file in the root directory of this source tree.
75 */const sT=[["path",{d:"M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z",key:"1jg4f8"}]],oT=Dc("facebook",sT);/**
76 * @license lucide-react v0.507.0 - ISC
77 *
78 * This source code is licensed under the ISC license.
79 * See the LICENSE file in the root directory of this source tree.
80 */const lT=[["path",{d:"M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z",key:"c2jq9f"}],["rect",{width:"4",height:"12",x:"2",y:"9",key:"mk3on5"}],["circle",{cx:"4",cy:"4",r:"2",key:"bt5ra8"}]],uT=Dc("linkedin",lT);
80/**
81 * @license lucide-react v0.507.0 - ISC
82 *
83 * This source code is licensed under the ISC license.
84 * See the LICENSE file in the root directory of this source tree.
85 */const cT=[["path",{d:"M2.5 17a24.12 24.12 0 0 1 0-10 2 2 0 0 1 1.4-1.4 49.56 49.56 0 0 1 16.2 0A2 2 0 0 1 21.5 7a24.12 24.12 0 0 1 0 10 2 2 0 0 1-1.4 1.4 49.55 49.55 0 0 1-16.2 0A2 2 0 0 1 2.5 17",key:"1q2vi4"}],["path",{d:"m10 15 5-3-5-3z",key:"1jp15x"}]],fT=Dc("youtube",cT);function dT(){const{language:t}=Je(),r=()=>new Date().getFullYear(),a={uk:"Усі права захищено.",en:"All rights reserved.",ka:"ყველა უფლება დაცულია."},s={uk:"Пошта",en:"Email",ka:"ელ.ფოსტა"},l={uk:"Телефон",en:"Phone",ka:"ტელეფონი"},f={uk:"091 481 17 41",en:"+995 555 024 665",ka:"555 024 665"},d={uk:"Виявляємо сенс у цифрах",en:"We find meaning in numbers",ka:"ვპოულობთ მნიშვნელობას ციფრებში"},m="[email protected]";return c.createElement("footer",{id:"footer",className:"w-full bg-ink text-bone"},c.createElement("div",{className:"mx-auto flex max-w-5xl flex-col items-center gap-7 px-6 py-14 text-center"},c.createElement("div",null,c.createElement("p",{className:"font-display text-lg font-semibold tracking-wide"},"BandBI"),c.createElement("p",{className:"mt-1 font-mono text-xs uppercase tracking-widest2 text-bone/45"},d[t])),c.createElement("div",{className:"flex flex-col items-center gap-2 text-sm text-bone/75 sm:flex-row sm:gap-6"},c.createElement("a",{href:`mailto:${m}`,className:"transition-colors hover:text-signal-teal"},s[t],": ",m),c.createElement("span",{className:"hidden text-bone/25 sm:inline"},"·"),c.createElement("a",{href:`tel:${f[t].replace(/\s+/g,"")}`,className:"transition-colors hover:text-signal-teal"},l[t],": ",f[t])),c.createElement("div",{className:"flex items-center gap-5"},c.createElement("a",{href:"https://www.linkedin.com/company/bandbiltd",target:"_blank",rel:"noopener noreferrer","aria-label":"LinkedIn",className:"text-bone/55 transition-colors hover:text-signal-teal"},c.createElement(uT,{size:18})),c.createElement("a",{href:"https://www.facebook.com/bandbiltd",target:"_blank",rel:"noopener noreferrer","aria-label":"Facebook",className:"text-bone/55 transition-colors hover:text-signal-teal"},c.createElement(oT,{size:18})),c.createElement("a",{href:"https://www.youtube.com/@bandbiltd",target:"_blank",rel:"noopener noreferrer","aria-label":"YouTube",className:"text-bone/55 transition-colors hover:text-signal-teal"},c.createElement(fT,{size:18}))),c.createElement("p",{className:"font-mono text-[11px] tracking-wide text-bone/35"},r()," BandBI © — ",a[t])))}var mu={exports:{}},pu,dh;function mT(){if(dh)return pu;dh=1;var t="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return pu=t,pu}var hu,mh;function pT(){if(mh)return hu;mh=1;var t=mT();function r(){}function a(){}return a.resetWarningCache=r,hu=function(){function s(d,m,p,g,y,w){if(w!==t){var x=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 x.name="Invariant Violation",x}}s.isRequired=s;function l(){return s}var f={array:s,bigint:s,bool:s,func:s,number:s,object:s,string:s,symbol:s,any:s,arrayOf:l,element:s,elementType:s,instanceOf:l,node:s,objectOf:l,oneOf:l,oneOfType:l,shape:l,exact:l,checkPropTypes:a,resetWarningCache:r};return f.PropTypes=f,f},hu}var ph;function hT(){return ph||(ph=1,mu.exports=pT()()),mu.exports}var gT=hT();const Ne=jr(gT);var gu,hh;function yT(){if(hh)return gu;hh=1;function t(m){return m&&typeof m=="object"&&"default"in m?m.default:m}var r=zs(),a=t(r);function s(m,p,g){return p in m?Object.defineProperty(m,p,{value:g,enumerable:!0,configurable:!0,writable:!0}):m[p]=g,m}function l(m,p){m.prototype=Object.create(p.prototype),m.prototype.constructor=m,m.__proto__=p}var f=!!(typeof window<"u"&&window.document&&window.document.createElement);function d(m,p,g){if(typeof m!="function")throw new Error("Expected reducePropsToState to be a function.");
85if(typeof p!="function")throw new Error("Expected handleStateChangeOnClient to be a function.");if(typeof g<"u"&&typeof g!="function")throw new Error("Expected mapStateOnServer to either be undefined or a function.");function y(w){return w.displayName||w.name||"Component"}return function(x){if(typeof x!="function")throw new Error("Expected WrappedComponent to be a React component.");var k=[],S;function P(){S=m(k.map(function(R){return R.props})),I.canUseDOM?p(S):g&&(S=g(S))}var I=function(R){l(D,R);function D(){return R.apply(this,arguments)||this}D.peek=function(){return S},D.rewind=function(){if(D.canUseDOM)throw new Error("You may only call rewind() on the server. Call peek() to read the current state.");var j=S;return S=void 0,k=[],j};var L=D.prototype;return L.UNSAFE_componentWillMount=function(){k.push(this),P()},L.componentDidUpdate=function(){P()},L.componentWillUnmount=function(){var j=k.indexOf(this);k.splice(j,1),P()},L.render=function(){return a.createElement(x,this.props)},D}(r.PureComponent);return s(I,"displayName","SideEffect("+y(x)+")"),s(I,"canUseDOM",f),I}}return gu=d,gu}var vT=yT();const wT=jr(vT);/*
86object-assign
87(c) Sindre Sorhus
88@license MIT
89*/var yu,gh;function xT(){if(gh)return yu;gh=1;var t=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function s(f){if(f==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(f)}function l(){try{if(!Object.assign)return!1;var f=new String("abc");if(f[5]="de",Object.getOwnPropertyNames(f)[0]==="5")return!1;for(var d={},m=0;m<10;m++)d["_"+String.fromCharCode(m)]=m;var p=Object.getOwnPropertyNames(d).map(function(y){return d[y]});if(p.join("")!=="0123456789")return!1;var g={};return"abcdefghijklmnopqrst".split("").forEach(function(y){g[y]=y}),Object.keys(Object.assign({},g)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return yu=l()?Object.assign:function(f,d){for(var m,p=s(f),g,y=1;y<arguments.length;y++){m=Object(arguments[y]);for(var w in m)r.call(m,w)&&(p[w]=m[w]);if(t){g=t(m);for(var x=0;x<g.length;x++)a.call(m,g[x])&&(p[g[x]]=m[g[x]])}}return p},yu}var ET=xT();const kT=jr(ET);var ar={BODY:"bodyAttributes",HTML:"htmlAttributes",TITLE:"titleAttributes"},oe={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title"};Object.keys(oe).map(function(t){return oe[t]});var Ie={CHARSET:"charset",CSS_TEXT:"cssText",HREF:"href",HTTPEQUIV:"http-equiv",INNER_HTML:"innerHTML",ITEM_PROP:"itemprop",NAME:"name",PROPERTY:"property",REL:"rel",SRC:"src",TARGET:"target"},$s={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},ta={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate"},ST=Object.keys($s).reduce(function(t,r){return t[$s[r]]=r,t},{}),TT=[oe.NOSCRIPT,oe.SCRIPT,oe.STYLE],$t="data-react-helmet",CT=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},bT=function(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")},PT=function(){function t(r,a){for(var s=0;s<a.length;s++){var l=a[s];l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l&&(l.writable=!0),Object.defineProperty(r,l.key,l)}}return function(r,a,s){return a&&t(r.prototype,a),s&&t(r,s),r}}(),gt=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var a=arguments[r];for(var s in a)Object.prototype.hasOwnProperty.call(a,s)&&(t[s]=a[s])}return t},RT=function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof r);t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),r&&(Object.setPrototypeOf?Object.setPrototypeOf(t,r):t.__proto__=r)},yh=function(t,r){var a={};for(var s in t)r.indexOf(s)>=0||Object.prototype.hasOwnProperty.call(t,s)&&(a[s]=t[s]);return a},NT=function(t,r){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return r&&(typeof r=="object"||typeof r=="function")?r:t},$u=function(r){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return a===!1?String(r):String(r).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")},IT=function(r){var a=_r(r,oe.TITLE),s=_r(r,ta.TITLE_TEMPLATE);if(s&&a)return s.replace(/%s/g,function(){return Array.isArray(a)?a.join(""):a});var l=_r(r,ta.DEFAULT_TITLE);return a||l||void 0},AT=function(r){return _r(r,ta.ON_CHANGE_CLIENT_STATE)||function(){}},vu=function(r,a){return a.filter(function(s){return typeof s[r]<"u"}).map(function(s){return s[r]}).reduce(function(s,l){return gt({},s,l)},{})},MT=function(r,a){return a.filter(function(s){return typeof s[oe.BASE]<"u"}).map(function(s){return s[oe.BASE]}).reverse().reduce(function(s,l){if(!s.length)for(var f=Object.keys(l),d=0;d<f.length;
89d++){var m=f[d],p=m.toLowerCase();if(r.indexOf(p)!==-1&&l[p])return s.concat(l)}return s},[])},Oi=function(r,a,s){var l={};return s.filter(function(f){return Array.isArray(f[r])?!0:(typeof f[r]<"u"&&OT("Helmet: "+r+' should be of type "Array". Instead found type "'+CT(f[r])+'"'),!1)}).map(function(f){return f[r]}).reverse().reduce(function(f,d){var m={};d.filter(function(x){for(var k=void 0,S=Object.keys(x),P=0;P<S.length;P++){var I=S[P],R=I.toLowerCase();a.indexOf(R)!==-1&&!(k===Ie.REL&&x[k].toLowerCase()==="canonical")&&!(R===Ie.REL&&x[R].toLowerCase()==="stylesheet")&&(k=R),a.indexOf(I)!==-1&&(I===Ie.INNER_HTML||I===Ie.CSS_TEXT||I===Ie.ITEM_PROP)&&(k=I)}if(!k||!x[k])return!1;var D=x[k].toLowerCase();return l[k]||(l[k]={}),m[k]||(m[k]={}),l[k][D]?!1:(m[k][D]=!0,!0)}).reverse().forEach(function(x){return f.push(x)});for(var p=Object.keys(m),g=0;g<p.length;g++){var y=p[g],w=kT({},l[y],m[y]);l[y]=w}return f},[]).reverse()},_r=function(r,a){for(var s=r.length-1;s>=0;s--){var l=r[s];if(l.hasOwnProperty(a))return l[a]}return null},BT=function(r){return{baseTag:MT([Ie.HREF,Ie.TARGET],r),bodyAttributes:vu(ar.BODY,r),defer:_r(r,ta.DEFER),encode:_r(r,ta.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:vu(ar.HTML,r),linkTags:Oi(oe.LINK,[Ie.REL,Ie.HREF],r),metaTags:Oi(oe.META,[Ie.NAME,Ie.CHARSET,Ie.HTTPEQUIV,Ie.PROPERTY,Ie.ITEM_PROP],r),noscriptTags:Oi(oe.NOSCRIPT,[Ie.INNER_HTML],r),onChangeClientState:AT(r),scriptTags:Oi(oe.SCRIPT,[Ie.SRC,Ie.INNER_HTML],r),styleTags:Oi(oe.STYLE,[Ie.CSS_TEXT],r),title:IT(r),titleAttributes:vu(ar.TITLE,r)}},zu=function(){var t=Date.now();return function(r){var a=Date.now();a-t>16?(t=a,r(a)):setTimeout(function(){zu(r)},0)}}(),vh=function(r){return clearTimeout(r)},LT=typeof window<"u"?window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||zu:global.requestAnimationFrame||zu,DT=typeof window<"u"?window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||vh:global.cancelAnimationFrame||vh,OT=function(r){return console&&typeof console.warn=="function"&&console.warn(r)},_i=null,_T=function(r){_i&&DT(_i),r.defer?_i=LT(function(){wh(r,function(){_i=null})}):(wh(r),_i=null)},wh=function(r,a){var s=r.baseTag,l=r.bodyAttributes,f=r.htmlAttributes,d=r.linkTags,m=r.metaTags,p=r.noscriptTags,g=r.onChangeClientState,y=r.scriptTags,w=r.styleTags,x=r.title,k=r.titleAttributes;Uu(oe.BODY,l),Uu(oe.HTML,f),FT(x,k);var S={baseTag:Ar(oe.BASE,s),linkTags:Ar(oe.LINK,d),metaTags:Ar(oe.META,m),noscriptTags:Ar(oe.NOSCRIPT,p),scriptTags:Ar(oe.SCRIPT,y),styleTags:Ar(oe.STYLE,w)},P={},I={};Object.keys(S).forEach(function(R){var D=S[R],L=D.newTags,$=D.oldTags;L.length&&(P[R]=L),$.length&&(I[R]=S[R].oldTags)}),a&&a(),g(r,P,I)},xy=function(r){return Array.isArray(r)?r.join(""):r},FT=function(r,a){typeof r<"u"&&document.title!==r&&(document.title=xy(r)),Uu(oe.TITLE,a)},Uu=function(r,a){var s=document.getElementsByTagName(r)[0];if(s){for(var l=s.getAttribute($t),f=l?l.split(","):[],d=[].concat(f),m=Object.keys(a),p=0;p<m.length;p++){var g=m[p],y=a[g]||"";s.getAttribute(g)!==y&&s.setAttribute(g,y),f.indexOf(g)===-1&&f.push(g);var w=d.indexOf(g);w!==-1&&d.splice(w,1)}for(var x=d.length-1;x>=0;x--)s.removeAttribute(d[x]);f.length===d.length?s.removeAttribute($t):s.getAttribute($t)!==m.join(",")&&s.setAttribute($t,m.join(","))}},Ar=function(r,a){var s=document.head||document.querySelector(oe.HEAD),l=s.querySelectorAll(r+"["+$t+"]"),f=Array.prototype.slice.call(l),d=[],m=void 0;return a&&a.length&&a.forEach(function(p){var g=document.createElement(r);for(var y in p)if(p.hasOwnProperty(y))if(y===Ie.INNER_HTML)g.innerHTML=p.innerHTML;else if(y===Ie.CSS_TEXT)g.styleSheet?g.styleSheet.cssText=p.cssText:g.appendChild(document.createTextNode(p.cssText));else{var w=typeof p[y]>"u"?"":p[y];g.setAttribute(y,w)}g.setAttribute($t,"true"),f.some(function(x,k){return m=k,g.isEqualNode(x)})?f.splice(m,1):d.push(g)}),f.forEach(function(p){return p.parentNode.removeChild(p)}),d.forEach(function(p){return s.appendChild(p)}),{oldTags:f,newTags:d}},Ey=function(r){return Object.keys(r).reduce(function(a,s){var l=typeof r[s]<"u"?s+'="'+r[s]+'"':""+s;return a?a+" "+l:l},"")},VT=function(r,a,s,l){var f=Ey(s),d=xy(a);return f?"<"+r+" "+$t+'="true" '+f+">"+$u(d,l)+"</"+r+">":"<"+r+" "+$t+'="true">'+$u(d,l)+"</"+r+">"},jT=function(r,a,s){return a.reduce(function(l,f){var d=Object.keys(f).filter(function(g){return!(g===Ie.INNER_HTML||g===Ie.CSS_TEXT)}).reduce(function(g,y){var w=typeof f[y]>"u"?y:y+'="'+$u(f[y],s)+'"';return g?g+" "+w:w},""),m=f.innerHTML||f.cssText||"",p=TT.indexOf(r)===-1;return l+"<"+r+" "+$t+'="true" '+d+(p?"/>":">"+m+"</"+r+">")},"")},ky=function(r){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Object.keys(r).reduce(function(s,l){return s[$s[l]||l]=r[l],s},a)},$T=function(r){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Object.keys(r).reduce(function(s,l){return s[ST[l]||l]=r[l],s},a)},zT=function(r,a,s){var l,f=(l={key:a},l[$t]=!0,l),d=ky(s,f);return[c.createElement(oe.TITLE,d,a)]},UT=function(r,a){return a.map(function(s,l){var f,d=(f={key:l},f[$t]=!0,f);
89return Object.keys(s).forEach(function(m){var p=$s[m]||m;if(p===Ie.INNER_HTML||p===Ie.CSS_TEXT){var g=s.innerHTML||s.cssText;d.dangerouslySetInnerHTML={__html:g}}else d[p]=s[m]}),c.createElement(r,d)})},cn=function(r,a,s){switch(r){case oe.TITLE:return{toComponent:function(){return zT(r,a.title,a.titleAttributes)},toString:function(){return VT(r,a.title,a.titleAttributes,s)}};case ar.BODY:case ar.HTML:return{toComponent:function(){return ky(a)},toString:function(){return Ey(a)}};default:return{toComponent:function(){return UT(r,a)},toString:function(){return jT(r,a,s)}}}},Sy=function(r){var a=r.baseTag,s=r.bodyAttributes,l=r.encode,f=r.htmlAttributes,d=r.linkTags,m=r.metaTags,p=r.noscriptTags,g=r.scriptTags,y=r.styleTags,w=r.title,x=w===void 0?"":w,k=r.titleAttributes;return{base:cn(oe.BASE,a,l),bodyAttributes:cn(ar.BODY,s,l),htmlAttributes:cn(ar.HTML,f,l),link:cn(oe.LINK,d,l),meta:cn(oe.META,m,l),noscript:cn(oe.NOSCRIPT,p,l),script:cn(oe.SCRIPT,g,l),style:cn(oe.STYLE,y,l),title:cn(oe.TITLE,{title:x,titleAttributes:k},l)}},WT=function(r){var a,s;return s=a=function(l){RT(f,l);function f(){return bT(this,f),NT(this,l.apply(this,arguments))}return f.prototype.shouldComponentUpdate=function(m){return!B0(this.props,m)},f.prototype.mapNestedChildrenToProps=function(m,p){if(!p)return null;switch(m.type){case oe.SCRIPT:case oe.NOSCRIPT:return{innerHTML:p};case oe.STYLE:return{cssText:p}}throw new Error("<"+m.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")},f.prototype.flattenArrayTypeChildren=function(m){var p,g=m.child,y=m.arrayTypeChildren,w=m.newChildProps,x=m.nestedChildren;return gt({},y,(p={},p[g.type]=[].concat(y[g.type]||[],[gt({},w,this.mapNestedChildrenToProps(g,x))]),p))},f.prototype.mapObjectTypeChildren=function(m){var p,g,y=m.child,w=m.newProps,x=m.newChildProps,k=m.nestedChildren;switch(y.type){case oe.TITLE:return gt({},w,(p={},p[y.type]=k,p.titleAttributes=gt({},x),p));case oe.BODY:return gt({},w,{bodyAttributes:gt({},x)});case oe.HTML:return gt({},w,{htmlAttributes:gt({},x)})}return gt({},w,(g={},g[y.type]=gt({},x),g))},f.prototype.mapArrayTypeChildrenToProps=function(m,p){var g=gt({},p);return Object.keys(m).forEach(function(y){var w;g=gt({},g,(w={},w[y]=m[y],w))}),g}
89,f.prototype.warnOnInvalidChildren=function(m,p){return!0},f.prototype.mapChildrenToProps=function(m,p){var g=this,y={};return c.Children.forEach(m,function(w){if(!(!w||!w.props)){var x=w.props,k=x.children,S=yh(x,["children"]),P=$T(S);switch(g.warnOnInvalidChildren(w,k),w.type){case oe.LINK:case oe.META:case oe.NOSCRIPT:case oe.SCRIPT:case oe.STYLE:y=g.flattenArrayTypeChildren({child:w,arrayTypeChildren:y,newChildProps:P,nestedChildren:k});break;default:p=g.mapObjectTypeChildren({child:w,newProps:p,newChildProps:P,nestedChildren:k});break}}}),p=this.mapArrayTypeChildrenToProps(y,p),p},f.prototype.render=function(){var m=this.props,p=m.children,g=yh(m,["children"]),y=gt({},g);return p&&(y=this.mapChildrenToProps(p,y)),c.createElement(r,y)},PT(f,null,[{key:"canUseDOM",set:function(m){r.canUseDOM=m}}]),f}(c.Component),a.propTypes={base:Ne.object,bodyAttributes:Ne.object,children:Ne.oneOfType([Ne.arrayOf(Ne.node),Ne.node]),defaultTitle:Ne.string,defer:Ne.bool,encodeSpecialCharacters:Ne.bool,htmlAttributes:Ne.object,link:Ne.arrayOf(Ne.object),meta:Ne.arrayOf(Ne.object),noscript:Ne.arrayOf(Ne.object),onChangeClientState:Ne.func,script:Ne.arrayOf(Ne.object),style:Ne.arrayOf(Ne.object),title:Ne.string,titleAttributes:Ne.object,titleTemplate:Ne.string},a.defaultProps={defer:!0,encodeSpecialCharacters:!0},a.peek=r.peek,a.rewind=function(){var l=r.rewind();return l||(l=Sy({baseTag:[],bodyAttributes:{},htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}})),l},s},HT=function(){return null},KT=wT(BT,_T,Sy)(HT),Wu=WT(KT);Wu.renderStatic=Wu.rewind;const Ht=({titles:t,descriptions:r,keywords:a})=>{const{language:s}=Je(),l=en(),f=(t==null?void 0:t[s])||(t==null?void 0:t.uk),d=(r==null?void 0:r[s])||(r==null?void 0:r.uk),m=(a==null?void 0:a[s])||(a==null?void 0:a.uk),p="https://bandbi.site",g=l.pathname.endsWith("/")?l.pathname.slice(0,-1):l.pathname,y=`${p}${g}`,w=g.replace(/^\/(uk|en|ka)/,"")||"",x=["uk","en","ka"],k={"@context":"https://schema.org","@type":"Organization",name:"BandBI",url:"https://bandbi.site",logo:"https://bandbi.site/logo-big.webp",description:d,foundingDate:"2024",address:{"@type":"PostalAddress",addressCountry:"UA"},contactPoint:{"@type":"ContactPoint",contactType:"customer support",email:"[email protected]",availableLanguage:["Ukrainian","English","Georgian"]},sameAs:["https://www.linkedin.com/company/bandbiltd","https://www.facebook.com/bandbiltd"]};return T.useEffect(()=>{const S=document.createElement("script");return S.type="application/ld+json",S.text=JSON.stringify(k),document.head.appendChild(S),()=>{document.head.removeChild(S)}},[d]),c.createElement(Wu,null,c.createElement("html",{lang:s}),c.createElement("title",null,f),c.createElement("meta",{name:"description",content:d}),c.createElement("meta",{name:"keywords",content:m}),c.createElement("meta",{name:"robots",content:"index, follow"}),c.createElement("link",{rel:"canonical",href:y}),c.createElement("meta",{httpEquiv:"Content-Type",content:"text/html; charset=UTF-8"}),c.createElement("meta",{name:"viewport",content:"width=device-width, initial-scale=1, maximum-scale=5.0"}),c.createElement("meta",{name:"theme-color",content:"#272727"}),x.map(S=>c.createElement("link",{key:S,rel:"alternate",hreflang:S,href:`${p}/${S}${w}`})),c.createElement("link",{rel:"alternate",hreflang:"x-default",href:`${p}/en${w}`}),c.createElement("meta",{property:"og:title",content:f}),c.createElement("meta",{property:"og:description",content:d}),c.createElement("meta",{property:"og:image",content:`${p}/preview.jpg`}),c.createElement("meta",{property:"og:url",content:y}),c.createElement("meta",{property:"og:type",content:"website"}),c.createElement("meta",{name:"twitter:card",content:"summary_large_image"}),c.createElement("meta",{name:"twitter:title",content:f}),c.createElement("meta",{name:"twitter:description",content:d}),c.createElement("meta",{name:"twitter:image",content:`${p}/preview.jpg`}),c.createElement("meta",{name:"twitter:url",content:y}))};var Hu=new Map,Cs=new WeakMap,xh=0,GT=void 0;function YT(t){return t?(Cs.has(t)||(xh+=1,Cs.set(t,xh.toString())),Cs.get(t)):"0"}function qT(t){return Object.keys(t).sort().filter(r=>t[r]!==void 0).map(r=>`${r}_${r==="root"?YT(t.root):t[r]}`).toString()}function QT(t){const r=qT(t);let a=Hu.get(r);if(!a){const s=new Map;let l;const f=new IntersectionObserver(d=>{d.forEach(m=>{var p;const g=m.isIntersecting&&l.some(y=>m.intersectionRatio>=y);t.trackVisibility&&typeof m.isVisible>"u"&&(m.isVisible=g),(p=s.get(m.target))==null||p.forEach(y=>{y(g,m)})})},t);l=f.thresholds||(Array.isArray(t.threshold)?t.threshold:[t.threshold||0]),a={id:r,observer:f,elements:s},Hu.set(r,a)}return a}function XT(t,r,a={},s=GT){if(typeof window.IntersectionObserver>"u"&&s!==void 0){const p=t.getBoundingClientRect();return r(s,{isIntersecting:s,target:t,intersectionRatio:typeof a.threshold=="number"?a.threshold:0,time:0,boundingClientRect:p,intersectionRect:p,rootBounds:p}),()=>{}}const{id:l,observer:f,elements:d}=QT(a),m=d.get(t)||[];return d.has(t)||d.set(t,m),m.push(r),f.observe(t),function(){m.splice(m.indexOf(r),1),m.length===0&&(
89d.delete(t),f.unobserve(t)),d.size===0&&(f.disconnect(),Hu.delete(l))}}function ZT({threshold:t,delay:r,trackVisibility:a,rootMargin:s,root:l,triggerOnce:f,skip:d,initialInView:m,fallbackInView:p,onChange:g}={}){var y;const[w,x]=T.useState(null),k=T.useRef(g),[S,P]=T.useState({inView:!!m,entry:void 0});k.current=g,T.useEffect(()=>{if(d||!w)return;let L;return L=XT(w,($,j)=>{P({inView:$,entry:j}),k.current&&k.current($,j),j.isIntersecting&&f&&L&&(L(),L=void 0)},{root:l,rootMargin:s,threshold:t,trackVisibility:a,delay:r},p),()=>{L&&L()}},[Array.isArray(t)?t.toString():t,w,l,s,f,d,a,p,r]);const I=(y=S.entry)==null?void 0:y.target,R=T.useRef(void 0);!w&&I&&!f&&!d&&R.current!==I&&(R.current=I,P({inView:!!m,entry:void 0}));const D=[x,S.inView,S.entry];return D.ref=D[0],D.inView=D[1],D.entry=D[2],D}const JT=({videoId:t})=>{const[r,a]=T.useState(!1),{ref:s,inView:l}=ZT({triggerOnce:!0,threshold:.1});return l&&!r&&a(!0),c.createElement("div",{ref:s,className:"w-full max-w-2xl aspect-video"},r?c.createElement("iframe",{width:"100%",height:"100%",src:`https://www.youtube.com/embed/${t}`,title:"YouTube video",frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0}):c.createElement("div",{className:"flex justify-center items-center w-full h-full bg-gray-200"},c.createElement("span",{className:"text-xl font-semibold text-gray-600"},"Loading Video...")))},eC=[{x:20,from:28},{x:68,from:122},{x:116,from:52},{x:164,from:104},{x:212,from:38},{x:260,from:112},{x:308,from:58},{x:356,from:98},{x:404,from:34},{x:452,from:108},{x:500,from:62},{x:548,from:92}],bs=80,tC=({className:t=""})=>{const r=ZS();return c.createElement("svg",{viewBox:"0 0 580 160",className:`w-full h-auto max-w-md mx-auto ${t}`,role:"img","aria-label":"Розсіяні дані вирівнюються в чіткий сигнал"},c.createElement(we.line,{x1:"6",y1:bs,x2:"574",y2:bs,stroke:"#16B8A6",strokeWidth:"1.5",initial:r?{pathLength:1,opacity:1}:{pathLength:0,opacity:0},animate:{pathLength:1,opacity:1},transition:r?{duration:0}:{duration:1,delay:.9,ease:"easeOut"}}),eC.map((a,s)=>c.createElement(we.circle,{key:a.x,cx:a.x,r:4,initial:r?{cy:bs,opacity:1,fill:"#16B8A6"}:{cy:a.from,opacity:.55,fill:"#F2A93C"},animate:{cy:bs,opacity:1,fill:"#16B8A6"},transition:r?{duration:0}:{duration:.7,delay:.15+s*.05,ease:"easeInOut"}})))},nC=({tone:t="light",className:r=""})=>{const a=t==="dark"?"bg-bone/10":"bg-ink/10";return c.createElement("div",{className:`relative flex items-center justify-center py-6 ${r}`,"aria-hidden":"true"},c.createElement("span",{className:`h-px w-full ${a}`}),c.createElement("span",{className:"absolute h-1.5 w-1.5 rounded-full bg-signal-teal shadow-[0_0_10px_rgba(22,184,166,0.55)]"}))},qe="text-signal-teal font-medium hover:underline",rC={uk:{heading:"BI-аналітика та CRM-інтеграція для бізнесу",slogan:"Виявляємо сенс у цифрах",paragraphs:[c.createElement(c.Fragment,null,c.createElement("strong",null,"BandBI")," — команда експертів з BI-аналітики та інтеграції CRM-систем, яка допомагає компаніям приймати ефективні рішення на основі даних. Ми працюємо з бізнесами різного масштабу — від стартапів до корпоративних клієнтів — і завжди адаптуємо рішення під конкретні потреби. Наші спеціалісти мають багаторічний досвід у сфері аналітики та технологій, що дає змогу створювати інноваційні рішення для будь-якого бізнесу."),c.createElement(c.Fragment,null,"Ми проєктуємо аналітичні дашборди (див. ",c.createElement(ye,{to:"/uk/services",className:qe},"наші послуги"),"), які дозволяють бачити ключові показники в реальному часі, оптимізувати витрати та прогнозувати майбутні результати. Наша аналітика допомагає вам зрозуміти, що відбувається в бізнесі на всіх рівнях і приймати обґрунтовані рішення на основі фактичних даних."),c.createElement(c.Fragment,null,"Використовуємо сучасні інструменти, такі як Power BI, Tableau, Python, SQL, MongoDB та Prisma, що дозволяє інтегрувати аналітику з будь-яким джерелом даних. Це дає нам змогу працювати з великими масивами даних, автоматизувати процеси обробки та аналізу інформації, що дозволяє вашим командам працювати швидше і ефективніше."),c.createElement(c.Fragment,null,"Наші рішення підсилені технологіями штучного інтелекту, що відкриває нові можливості для бізнесу. Наприклад, ",c.createElement(ye,{to:"/uk/aicompanion",className:qe},"AI Companion")," "," демонструє, як AI допомагає у роботі з даними та прийнятті рішень."),c.createElement(c.Fragment,null,"Ми впроваджуємо CRM-системи (",c.createElement(ye,{to:"/uk/pricing",className:qe},"див. тарифи"),"): HubSpot, Bitrix24, Salesforce. Підбираємо рі
89шення залежно від бізнес-процесів. Це дозволяє вам керувати клієнтами, автоматизувати продажі, комунікацію та знижувати витрати на операційну діяльність."),c.createElement(c.Fragment,null,"Дізнайтесь більше у ",c.createElement(ye,{to:"/uk/articles",className:qe},"нашому блозі")," — про практики BI та CRM в реальних кейсах. Ми ділимося кейсами та практичними порадами, як правильно вибрати інструменти, як інтегрувати їх у ваші бізнес-процеси та як отримати максимальну віддачу від інвестицій у технології."),c.createElement(c.Fragment,null,c.createElement("strong",null,"Автоматизація процесів")," — це одна з основних складових нашої роботи. Ми допомагаємо оптимізувати робочі процеси за допомогою інтеграції з іншими системами, такими як ERP, CRM або кастомні платформи. Це дозволяє знижувати витрати та підвищувати ефективність вашої команди. Автоматизація також дає змогу значно зменшити кількість помилок, знижуючи людський фактор і підвищуючи точність та швидкість роботи."),c.createElement(c.Fragment,null,"У ",c.createElement(ye,{to:"/uk/services",className:qe},"розділі послуг")," ви знайдете деталі щодо наших рішень для автоматизації маркетингових кампаній, роботи з клієнтами та інтеграцій у сфері фінансів. Ми пропонуємо гнучкі рішення для будь-яких бізнес-потреб, від налаштування системи автоматичних звітів до комплексної інтеграції з платіжними системами та іншими інструментами."),c.createElement(c.Fragment,null,"Зокрема, наші клієнти отримують можливість безпосередньо через ",c.createElement(ye,{to:"/uk/services/telegram",className:qe},"Telegram")," автоматизувати сповіщення, взаємодію з клієнтами та обробку запитів. Завдяки нашій інтерграції з Telegram, ви можете мати доступ до даних та управління прямо в месенджері, що зручно і ефективно."),c.createElement(c.Fragment,null,"Впроваджуючи BI та CRM, ми не лише автоматизуємо ваші процеси, а й створюємо цілісну систему, що дозволяє бізнесу масштабуватися та бути конкурентоспроможним у сучасних умовах. Наші рішення дозволяють вам приймати швидкі та обґрунтовані рішення на основі даних, що важливо для росту та розвитку вашого бізнесу.")],benefitsHeading:"Чому обирають BandBI",benefits:["Понад 50 реалізованих проєктів у сфері BI та CRM","Впровадження рішень протягом 1–2 тижнів","Підтримка, навчання та технічний супровід після запуску","Гнучкий підхід та адаптація до будь-якої галузі","Автоматизація бізнес-процесів для підвищення продуктивності","Інтеграція з різними системами для зручності та ефективності роботи","Індивідуальний підхід до кожного клієнта","Аналіз і підбір найкращих рішень вÑ
89–дповідно до специфіки вашого бізнесу","Можливість масштабування рішень по мірі росту бізнесу"]},en:{heading:"BI Analytics and CRM Integration for Business",slogan:"We find meaning in numbers",paragraphs:[c.createElement(c.Fragment,null,c.createElement("strong",null,"BandBI")," is a team of experts in BI analytics and CRM integration that helps companies make data-driven decisions. We work with businesses of all sizes — from startups to enterprises — and always tailor our solutions to the specific needs of each client. Our specialists have extensive experience in analytics and technology, enabling us to create innovative solutions for any business."),c.createElement(c.Fragment,null,"We build analytical dashboards (see ",c.createElement(ye,{to:"/en/services",className:qe},"our services"),") that help visualize key metrics, optimize expenses, and forecast results. Our analytics help you understand what is happening in your business at every level, making it easier for you to make data-backed decisions."),c.createElement(c.Fragment,null,"We use Power BI, Tableau, Python, SQL, MongoDB, and Prisma to connect with any data source and work with large datasets. This enables us to automate data processing and analysis, allowing your teams to work faster and more efficiently."),c.createElement(c.Fragment,null,"Our solutions are powered by artificial intelligence, unlocking new opportunities for businesses. For instance, the ",c.createElement(ye,{to:"/en/aicompanion",className:qe},"AI Companion")," "," ","illustrates how AI supports data-driven decision-making."),c.createElement(c.Fragment,null,"We implement top CRM systems (",c.createElement(ye,{to:"/en/pricing",className:qe},"see pricing"),") like HubSpot, Bitrix24, and Salesforce. Solutions are fully adapted to your business processes. This allows you to manage clients, automate sales, communication, and reduce operational costs."),c.createElement(c.Fragment,null,"Learn more in ",c.createElement(ye,{to:"/en/articles",className:qe},"our blog")," with insights from real-world BI and CRM cases. We share case studies and practical tips on how to choose the right tools, integrate them into your processes, and get the most out of your investments in technology."),c.createElement(c.Fragment,null,c.createElement("strong",null,"Process Automation")," is one of our main focus areas. We help businesses optimize their workflows through integrations with other systems such as ERP, CRM, or custom platforms. This reduces costs and improves team productivity. Automation also helps to reduce errors, minimize human factors, and increase the accuracy and speed of operations."),c.createElement(c.Fragment,null,"In our ",c.createElement(ye,{to:"/en/services",className:qe},"services section"),", you'll find details about our solutions for automating marketing campaigns, customer relationships, and financial processes. We offer flexible solutions for any business needs, from setting up automated reporting systems to complex integrations with payment systems and other tools."),c.createElement(c.Fragment,null,"Specifically, our clients can automate notifications, client interactions, and request processing through ",c.createElement(ye,{to:"/en/services/telegram",className:qe},"Telegram"),". Thanks to our integration with Telegram, you can access data and management directly within the messenger, which is both convenient and efficient."),c.createElement(c.Fragment,null,"By implementing BI and CRM, we not only automate your processes but also create a comprehensive system that allows your business to scale and remain competitive in today's market. Our solutions help you make quick and informed decisions based on data, which is essential for the growth and development of your business.")],benefitsHeading:"Why companies choose BandBI",benefits:["Over 50 completed BI and CRM implementation projects","Fast delivery: solutions launched within 1–2 weeks","Full support and training after deployment","Flexible and industry-agnostic approach","Business process automation to boost productivity","Integration with multiple systems for streamlined workflows","Custom solutions tailored to each client's needs","Analysis and selection of the best solutions for your business's specifics","Scalable solutions that grow with your business"]},ka:{heading:"BI ანალიტიკა და CRM ინტეგრაცია ბიზნესისთვის",slogan:"ვპოულობთ მნიშვნელობას ციფრებში",paragraphs:[c.createElement(c.Fragment,null," ",c.createElement("strong",null,"BandBI")," არის BI ანალიტიკისა და CRM ინტეგრაციის ექსპერტების გუნდი, რომელიც კომპანიებს ეხმარება მონაცემებზე დაფუძნებული გადაწყვეტილებების მიღებაში. ვმუშაობთ როგორც სტარტაპებთან, ისე დიდ კომპანიებთან და გადაწყვეტილებებს ყოველთვის თქვენი ბიზნესის საჭიროებებზე ვარგებთ."," "),c.createElement(c.Fragment,null," ","ვქმნით ანალიტიკურ დაფებს (იხილეთ ",c.createElement(ye,{to:"/ka/services",className:qe},"ჩვენი სერვისები"),"), რომლებიც გეხმარებათ მაჩვენებლების ვიზუალიზაციაში, ხარჯების ოპტიმიზაციაში და პროგნოზირებაში."," "),c.createElement(c.Fragment,null," ","ვიყენებთ Power BI, Tableau, Python, SQL, MongoDB და Prisma-ს — მარტივად ვაერთებთ მონაცემების ნებისმიერ წყაროსთან და ავტომატიზაციას ვახორციელებთ."," "),c.createElement(c.Fragment,null,"ჩვენი გადაწყვეტილებები გამდიდრებულია ხელოვნური ინტელექტის ტექნოლოგიებით, რაც ბიზნესს ახალ შესაძლებლობებს აძლევს. მაგალითად, ",c.createElement(ye,{to:"/ka/aicompanion",className:qe},"AI Companion")," "," ","აჩვენებს, როგორ უწყობს ხელს AI მონაცემებზე დაფუძნებულ გადაწყვეტილებებს."),c.createElement(c.Fragment,null," ","ვნერგავთ CRM სისტემებს (",c.createElement(ye,{to:"/ka/pricing",className:qe},"იხილეთ ტარიფები"),") — HubSpot, Bitrix24, Salesforce. გადაწყვეტილებები მორგებულია თქვენი პროცესების მიხედვით."," "),c.createElement(c.Fragment,null," ","მეტი გაიგეთ ჩვენს ",c.createElement(ye,{to:"/ka/articles",className:qe},"ბლოგში")," — ვუზიარებთ გამოცდილებას BI და CRM-ის წარმატებული გამოყენების შესახებ."," "),c.createElement(c.Fragment,null," ",c.createElement("strong",null,"პროცესების ავტომატიზაცია")," — ჩვენი საქმიანობის ერთ-ერთი ძირითადი მიმართულებაა. ERP, CRM და სხვა სისტემებთან ინტეგრაციით ვუმჯობესებთ ეფექტურობას."," "),c.createElement(c.Fragment,null," ","დეტალები ",c.createElement(ye,{to:"/ka/services",className:qe},"სერვისების")," გვერდზე — მარკეტინგის, ფინანსებისა და კომუნიკაციის ავტომატიზაციისთვის."," "),c.createElement(c.Fragment,null," ",c.createElement(ye,{to:"/ka/services/telegram",className:qe},"Telegram"),"-ით ინტეგრაცია გაძლევთ შესაძლებლობას მართოთ პროცესები პირდაპირ მესენჯერში."," "),c.createElement(c.Fragment,null," ","BI და CRM-ის დანერგვით თქვენ მიიღებთ სრულყოფილ სისტემას, რომელიც განავითარებს და გააძლიერებს თქვენს ბიზნესს."," ")],benef
89itsHeading:"რატომ ირჩევენ BandBI-ს",benefits:["50-ზე მეტი BI და CRM პროექტი","დამუშავება და გაშვება 1–2 კვირაში","მხარდაჭერა და ტრენინგი გაშვების შემდეგ","მორგებული მიდგომა ნებისმიერ სფეროსთან","ბიზნეს პროცესების ავტომატიზაცია","ინტეგრაცია სხვადასხვა სისტემასთან","ინდივიდუალური გადაწყვეტილებები","ანალიზი და ოპტიმალური გადაწყვეტილებების შერჩევა","მასშტაბური გადაწყვეტები ბიზნესის ზრდისთვის"]}},wu={titles:{uk:"BandBI — замовити BI-аналітику, CRM-інтеграцію та AI-рішення",en:"BandBI — Order BI Analytics, CRM Integration & AI Solutions",ka:"BandBI — BI ანალიტიკა, CRM ინტეგრაცია და AI გადაწყვეტები"},descriptions:{uk:"BandBI — ваш надійний партнер у BI-аналітиці, інтеграції CRM та використанні штучного інтелекту (AI). Впроваджуємо Power BI, автоматизуємо процеси, допомагаємо приймати рішення на основі даних. Дізнайтесь більше про AI Companion.",en:"BandBI is your trusted partner in BI analytics, CRM integration, and artificial intelligence (AI) solutions. We implement Power BI, automate processes, and help you make smart, data-driven decisions. Learn more about AI Companion.",ka:"BandBI — თქვენი პარტნიორი BI ანალიტიკასა, CRM ინტეგრაციასა და ხელოვნური ინტელექტის (AI) გადაწყვეტებში. ავტომატიზაციას ვახორციელებთ Power BI-ით და გეხმარებით მონაცემებზე დაფუძნებული გადაწყვეტილებების მიღებაში. გაიგეთ მეტი AI Companion-ის შესახებ."},keywords:{uk:"BI-аналітика, CRM інтеграція, Power BI, AI, штучний інтелект, AI Companion",en:"BI analytics, CRM integration, Power BI, AI, artificial intelligence, AI Companion",ka:"BI ანალიტიკა, CRM ინტეგრაცია, Power BI, AI, ხელოვნური ინტელექტი, AI Companion"}},iC={uk:"Замовити консультацію",en:"Book a consultation",ka:"კონსულტაციის შეკვეთა"},aC={uk:"Подивитись послуги",en:"See our services",ka:"სერვისების ნახვა"},sC=()=>{const{language:t}=Je(),{lang:r}=Ws(),a=rC[t];return c.createElement(c.Fragment,null,c.createElement(Ht,{key:t,titles:wu.titles,descriptions:wu.descriptions,keywords:wu.keywords}),c.createElement("section",{className:"relative w-full overflow-hidden bg-ink text-bone"},c.createElement("div",{className:"mx-auto max-w-4xl px-6 pb-16 pt-16 text-center lg:pb-20 lg:pt-28"},c.createElement(we.p,{className:"mb-4 font-mono text-xs uppercase tracking-widest2 text-signal-teal",initial:{opacity:0}
89,animate:{opacity:1},transition:{duration:.5}},"BI · CRM · AI"),c.createElement(we.h1,{className:"mb-4 font-display text-4xl font-semibold leading-tight sm:text-5xl",initial:{opacity:0,y:12},animate:{opacity:1,y:0},transition:{duration:.5,delay:.1}},a.heading),c.createElement(we.p,{className:"mb-10 text-lg text-bone/70",initial:{opacity:0},animate:{opacity:1},transition:{duration:.5,delay:.2}},a.slogan),c.createElement(tC,null),c.createElement(we.div,{className:"mt-10 flex flex-wrap items-center justify-center gap-4",initial:{opacity:0,y:8},animate:{opacity:1,y:0},transition:{duration:.5,delay:.6}},c.createElement(ye,{to:`/${t}/pricing`,className:"inline-flex items-center justify-center rounded-full bg-signal-teal px-6 py-3 font-display text-sm font-semibold text-ink transition-colors hover:bg-signal-teal/90"},iC[t]),c.createElement(ye,{to:`/${t}/services`,className:"inline-flex items-center justify-center rounded-full border border-bone/20 px-6 py-3 font-display text-sm text-bone transition-colors hover:border-signal-teal hover:text-signal-teal"},aC[t])))),c.createElement("div",{className:"mx-auto max-w-3xl px-6 py-16 font-sans"},a.paragraphs.map((s,l)=>c.createElement(we.p,{key:l,className:"mb-4 leading-relaxed text-ink/80",initial:{opacity:0}
89,whileInView:{opacity:1},viewport:{once:!0},transition:{duration:.5,delay:Math.min(l*.06,.4)}},s)),t==="uk"&&c.createElement(we.div,{className:"my-8 flex justify-center",initial:{opacity:0},whileInView:{opacity:1},viewport:{once:!0},transition:{duration:.5}},c.createElement(JT,{videoId:"RG9z5BxZRLI"})),c.createElement(nC,{tone:"light",className:"mt-12"})),c.createElement("div",{className:"mx-auto max-w-4xl px-6 pb-20"},c.createElement(we.div,{className:"rounded-3xl bg-ink px-6 py-12 text-bone sm:px-10",initial:{opacity:0,y:16},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.6}},c.createElement("h3",{className:"mb-8 text-center font-display text-2xl font-semibold"},a.benefitsHeading),c.createElement("div",{className:"grid gap-3 sm:grid-cols-2"},a.benefits.map((s,l)=>c.createElement(we.div,{key:l,className:"flex items-start gap-3 rounded-xl bg-bone/5 px-4 py-3",initial:{opacity:0,y:8},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:.4,delay:l*.05}},c.createElement("span",{className:"mt-1.5 h-1.5 w-1.5 flex-shrink-0 rounded-full bg-signal-teal"}),c.createElement("span",{className:"text-sm leading-relaxed text-bone/85"},s)))))))},oC={uk:{title:"Тарифні плани",order:"Замовити",plans:[{name:"Start",price:"₴9 900",features:["Сайт-візитка","Телеграм-бот","Інтеграція з календарем","Інтеграція телефонії","CRM-система (1 воронка)"]},{name:"Grow",price:"₴19 900",features:["Усе з пакету Start","До 3 воронок продажів у CRM","Базова BI-аналітика"]},{name:"Scale",price:"₴39 900",features:["Усе з пакету Grow","Розширені BI-панелі для команд","Підтримка декількох команд","Автоматизація бізнес-процесів"]}]},en:{title:"Pricing Plans",order:"Order Now",plans:[{name:"Start",price:"$239",features:["Landing website","Telegram bot","Calendar integration","Telephony integration","CRM system (1 pipeline)"]},{name:"Grow",price:"$479",features:["Everything from Start","Up to 3 CRM pipelines","Basic BI analytics"]},{name:"Scale",price:"$959",features:["Everything from Grow","Advanced BI dashboards","Multi-team support","Business process automation"]}]},ka:{title:"ტარიფების გეგმები",order:"შეუკვეთე",plans:[{name:"Start",price:"₾590",features:["საიტი-ვიზიტკა","Telegram ბოტი","კალენდართან ინტეგრაცია","ტელეფონიასთან ინტეგრაცია","CRM სისტემა (1 ფანელი)"]},{name:"Grow",price:"₾1190",features:["ყველაფერი Start პაკეტიდან","3-მდე CRM ფანელი","ძირითადი BI ანალიტიკა"]},{name:"Scale",price:"₾2290",features:["ყველაფერი Grow პაკეტიდან","გაფართოებული BI დაფები","მრავალჯგუფიანი მხარდაჭერა","ბიზნეს პროცესების ავტომატიზაცია"]}]}},lC=async t=>{const r="https://telegram-bot-worker.dcua.workers.dev/";try{await fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}catch(a){console.error("Error sending to Telegram worker:",a)}},uC=t=>/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(t),cC=T.memo(({plan:t,onClose:r,language:a})=>{const[s,l]=T.useState(!1),[f,d]=T.useState({name:"",email:"",phone:"",tariff:t.name}),[m,p]=T.useState(null),[g,y]=T.useState(!1),x={uk:{title:`Залишити заявку на тариф ${t.name}`,name:"Ім’я *",phone:"Номер телефону *",email:"Email",submit:"Надіслати заявку",success:"Дякуємо! Ми зв’яжемося з вами найближчим часом."},en:{title:`Request plan: ${t.name}`,name:"Name *",phone:"Phone number *",email:"Email",submit:"Send request",success:"Thank y
89ou! We will contact you shortly."},ka:{title:`გეგმის შეკვეთა: ${t.name}`,name:"სახელი *",phone:"ტელეფონის ნომერი *",email:"ელ.ფოსტა",submit:"გაგზავნა",success:"გმადლობთ! მალე დაგიკავშირდებით."}}[a],k=async S=>{if(S.preventDefault(),!g){if(f.email&&!uC(f.email)){p(a==="uk"?"Введено некоректний email.":"Invalid email address.");return}y(!0),p(null),await lC(f),l(!0),y(!1)}};return c.createElement("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-end justify-center z-50 transition-all duration-300"},c.createElement(we.div,{className:"bg-white text-black rounded-t-2xl p-6 max-w-md w-full border shadow-lg",initial:{opacity:0,y:50},animate:{opacity:1,y:0},exit:{opacity:0,y:50},transition:{duration:.1}},c.createElement("button",{onClick:r,className:"relative text-3xl px-3 py-2 font-bold text-gray-600 hover:text-black transition-none"},"×"),s?c.createElement("p",{className:"text-center text-lg text-gray-700"},x.success):c.createElement(c.Fragment,null,c.createElement("h3",{className:"text-xl font-semibold mb-4"},x.title),c.createElement("form",{onSubmit:k,className:"space-y-4"},c.createElement("div",null,c.createElement("label",{className:"block mb-1 text-sm"},x.name),c.createElement("input",{type:"text",value:f.name,onChange:S=>d({...f,name:S.target.value}),required:!0,className:"w-full border rounded px-3 py-2"})),c.createElement("div",null,c.createElement("label",{className:"block mb-1 text-sm"},x.phone),c.createElement("input",{type:"tel",value:f.phone,onChange:S=>d({...f,phone:S.target.value}),required:!0,className:"w-full border rounded px-3 py-2"})),c.createElement("div",null,c.createElement("label",{className:"block mb-1 text-sm"},x.email),c.createElement("input",{type:"email",value:f.email,onChange:S=>d({...f,email:S.target.value}),className:"w-full border rounded px-3 py-2"})),m&&c.createElement("p",{className:"text-red-500 text-sm"},m),c.createElement("button",{type:"submit",disabled:g,className:"w-full bg-black text-white px-6 py-2 rounded-full hover:bg-gray-800 transition"},g?"...":x.submit)))))}),fC=()=>{const{language:t}=Je(),{title:r,plans:a,order:s}=oC[t],[l,f]=T.useState(null),d={uk:"BandBI - Ціни на BI, CRM та автоматизацію",en:"BandBI - Pricing for BI, CRM & Automation",ka:"BandBI - ფასები BI, CRM და ავტომატიზაციაზე"},m={uk:"Оберіть тариф для CRM, BI-аналітики та автоматизації бізнесу.",en:"Select a plan for CRM, BI analytics, and business automation.",ka:"აირჩიეთ ტარიფი CRM-ის, BI ანალიტიკისა და ავტომატიზაციისთვის."},p={uk:"тарифи, BI-аналітика, CRM-системи, автоматизація, ціни, бізнес рішення, BandBI",en:"pricing, BI analytics, CRM systems, automation, business solutions, BandBI",ka:"ფასები, BI ანალიტიკა, CRM, ავტომატიზაცია, ბიზნეს გადაწყვეტილებები, BandBI"},g=T.useCallback(()=>{f(null)},[]);return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:d,descriptions:m,keywords:p}),c.createElement("div",{id:"pricing",className:"relative z-10 pt-12 space-y-2 px-2 sm:px-8 max-w-4xl mx-auto flex flex-col items-center justify-center py-20 text-center font-sans"},c.createElement(we.h1,{className:"font-sans text-3xl font-bold mb-4",initial:{opacity:0}
89,whileInView:{opacity:1},viewport:{once:!0},transition:{duration:1}},r),c.createElement("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8"},a.map(y=>c.createElement(we.div,{key:y.name,className:"border rounded-2xl p-6 shadow hover:shadow-lg transition",initial:{opacity:0},whileInView:{opacity:1},viewport:{once:!0},transition:{duration:1}},c.createElement("h2",{className:"text-2xl font-semibold mb-4 text-center"},y.name),c.createElement("p",{className:"text-3xl font-bold text-center mb-6"},y.price),c.createElement("ul",{className:"space-y-2 mb-6"},y.features.map((w,x)=>c.createElement("li",{key:x,className:"flex items-start gap-2"},c.createElement("span",{className:"text-green-500"},"✔"),c.createElement("span",{className:"text-center"},w)))),c.createElement("div",{className:"text-center"},c.createElement("button",{className:"bg-black text-white px-6 py-2 rounded-full hover:bg-gray-800 transition",onClick:()=>f(y)},s))))),l&&c.createElement(cC,{plan:l,onClose:g,language:t})))};function dC(){const{lang:t}=Ws(),{language:r,setLanguage:a}=Je();T.useEffect(()=>{a(t)},[t,a]);const s={uk:"BandBI - Послуги з автоматизації, CRM та BI",en:"BandBI - Automation, CRM & BI Services",ka:"BandBI - ავტომატიზაცია, CRM და BI სერვისები"},l={uk:"Надаємо послуги з розробки сайтів, впровадження CRM-систем, автоматизації бізнес-процесів та створення BI-звітності.",en:"We provide services in website development, CRM implementation, business process automation, and BI reporting.",ka:"ვაწვდით სერვისებს ვებგვერდის შექმნაში, CRM-ის დანერგვაში, ბიზნეს პროცესების ავტომატიზაციასა და BI-რეპორტინგში."},f={uk:"BI-аналітика, CRM-системи, автоматизація бізнесу, розробка сайтів, Power BI, інтеграції, бізнес-процеси",en:"BI analytics, CRM systems, business automation, website development, Power BI, integrations, business processes",ka:"BI ანალიტიკა, CRM სისტემები, ბიზნესის ავტომატიზაცია, ვებსაიტების განვითარება, Power BI, ინტეგრაცია, პროცესები"},d=()=>{window.open("https://app.powerbi.com/view?r=eyJrIjoiNTBlMGNiY2MtMjljMy00OTU2LTk1NzEtOTExNmE3MjUwY2EyIiwidCI6IjYzNjk0NzNjLWRjZWYtNDAyOS1iY2ZjLWI1YzczMDI1NjQzYSIsImMiOjEwfQ%3D%3D","_blank")},m=()=>{window.open("https://viewer.diagrams.net/?url=https://bandbi.site/example.drawio.xml","_blank")},p={uk:"Наші послуги",en:"Our Services",ka:"ჩვენი სერვისები"},g={site:{uk:"Ми розробляємо та підтримуємо вебсайти, що повністю відповідають потребам вашого бізнесу.",en:"We develop and maintain websites that fully meet the needs of your business.",ka:"ვქმნით და ვუწევთ მხარდაჭერას ვებსაიტებს, რომლებიც სრულად შეესაბამება თქვენი ბიზნესის საჭიროებებს."},crm:{uk:"Наша система CRM дозволяє автоматизувати взаємодію з клієнтами.",en:"Our CRM system allows for automating client interactions.",ka:"ჩვენი CRM სისტემა ავტომატიზაციას უწევს მომხმარებელთან ურთიერთობას."},calendar:{uk:"Ми впроваджуємо автоматизацію процесів через інтеграцію календаря.",en:"We implement process automation through calendar integration.",ka:"ვნერგავთ პროცესების ავტომატიზაციას კალენდართან ინტეგრაციით."},calls:{uk:"Автоматизація телефонних дзвінків дозволяє зменшити час на відповіді.",en:"Automating phone calls reduces response time.",ka:"ზარების ავტომატიზაცია ამცირებს პასუხის დროს."},telegram:{uk:"Інтеграція через Telegram дозволяє автоматизувати взаємодію з клієнтами.",en:"Integration through Telegram allows for automating client interactions.",ka:"Telegram-ის ინტეგრაცია ავტომატიზაციას უწევს მომხმარებელთან კომუნიკაციას."},reportText:{uk:"BI-звітність забезпечує глибокий аналіз даних. Приклад Power BI-звіту:",en:"BI reporting provides in-depth data analysis. Example Power BI report:",ka:"BI რეპორტინგი უზრუნველყოფს მონაცემთა სიღრმისეულ ანალიზს. მაგალითი Power BI ანგარიშის:"},diagramText:{uk:"Ми також моделюємо бізнес-процеси за допомогою схем. Нижче приклад такої діаграми:",en:"We also model business processes using diagrams. Below is an example:",ka:"ბიზნეს პროცესებს ასევე ვიზუალიზაციას ვუწევთ დიაგრამებით. იხილეთ მაგალითი ქვემოთ:"},openReport:{uk:"Відкрити звіт",en:"Open Report",ka:"ანგარიშის გახსნა"},openDiagram:{uk:"Відкрити діаграму",en:"Open Diagram",ka:"დიაგრამის გახსნა"}};return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:s,descriptions:l,keywords:f}),c.createElement("section",{id:"description",className:"relative z-10 pt-12 space-y-2 px-2 sm:px-8 max-w-4xl mx-auto flex flex-col items-center justify-center py-20 text-center font-sans"},c.createElement(we.h1,{className:"font-sans text-3xl font-bold mb-4",initial:{opacity:0,y:50},whileInView:{opacity:1,y:0},transition:{duration:1}},p[r]),c.createElement(we.div,{className:"flex flex-col items-center justify-center lg:flex-row py-2 lg:py-4",initial:{opacity:0,y:50},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:1}},c.createElement(we.div,{className:"flex flex-col items-center mb-4 lg:mb-0 lg:ml-20",initial:{opacity:0,scale:.8},whileInView:{opacity:1,scale:1},transition:{duration:.5}},c.createElement("img",{src:"/services/site.webp",alt:"Site",className:"w-40 h-40 object-contain mb-2"}),c.createElement("p",null,g.site[r])),c.createElement(we.div,{className:"flex flex-col items-center mb-4 lg:mb-0 lg:mr-20",initial:{opacity:0,scale:.8},whileInView:{opacity:1,scale:1},transition:{duration:.5}}
89,c.createElement("img",{src:"/services/crm.webp",alt:"CRM",className:"w-40 h-40 object-contain mb-2"}),c.createElement("p",null,g.crm[r]))),c.createElement(we.div,{className:"flex flex-col items-center justify-center lg:flex-row py-2 lg:py-4",initial:{opacity:0,y:50},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:1}},c.createElement(we.div,{className:"flex flex-col items-center mb-4 lg:mb-0 lg:mr-6",initial:{opacity:0,scale:.8},whileInView:{opacity:1,scale:1},transition:{duration:.5}},c.createElement("img",{src:"/services/calendar.webp",alt:"Calendar",className:"w-40 h-40 object-contain mb-2"}),c.createElement("p",null,g.calendar[r])),c.createElement(we.div,{className:"flex flex-col items-center mb-4 lg:mb-0 lg:mr-6",initial:{opacity:0,scale:.8},whileInView:{opacity:1,scale:1},transition:{duration:.5}},c.createElement("img",{src:"/services/calls.webp",alt:"Calls",className:"w-40 h-40 object-contain mb-2"}),c.createElement("p",null,g.calls[r])),c.createElement(we.div,{className:"flex flex-col items-center mb-4 lg:mb-0 lg:ml-6",initial:{opacity:0,scale:.8},whileInView:{opacity:1,scale:1},transition:{duration:.5}},c.createElement("img",{src:"/services/telegram.webp",alt:"Telegram",className:"w-40 h-40 object-contain mb-2"}),c.createElement("p",null,g.telegram[r]))),c.createElement(we.div,{className:"flex flex-col items-center justify-center lg:flex-row py-2 lg:py-4",initial:{opacity:0,y:50},whileInView:{opacity:1,y:0},viewport:{once:!0},transition:{duration:1}},c.createElement(we.div,{className:"flex flex-col items-center mb-4 lg:mb-0 lg:mr-6",initial:{opacity:0,scale:.8},whileInView:{opacity:1,scale:1},transition:{duration:.5}},c.createElement("p",{className:"mb-2"},g.reportText[r]),c.createElement("button",{onClick:d,className:"w-full border border-gray-400 rounded px-3 py-2 bg-white text-black"},g.openReport[r]),c.createElement("p",{className:"mb-2 mt-4"},g.diagramText[r]),c.createElement("button",{onClick:m,className:"w-full border border-gray-400 rounded px-3 py-2 bg-white text-black"},g.openDiagram[r])))))}const Ty={uk:{articles:[{id:"reasons-to-use-crm",title:"10 причин використовувати CRM у компанії",paragraphs:["CRM дозволяє централізовано зберігати дані про клієнтів і взаємодії з ними.","Покращує обслуговування клієнтів і скорочує час відповіді.","Забезпечує аналітику та звітність для прийняття рішень.","Автоматизує рутинні бізнес-процеси.","Покращує комунікацію між відділами.","Підвищує ефективність роботи команди продажів.","Дозволяє сегментувати клієнтів для таргетованих кампаній.","Інтегрується з іншими бізнес-інструментами.","Допомагає зберігати історію взаємодій з клієнтом.","Забезпечує масштабованість для зростаючих компаній."],keywords:"клієнтів, дозволяє, зберігати, покращує, забезпечує, бізнес, crm, централізовано, дані, взаємодії"},{id:"crm-implementation-mistakes",title:"5 помилок при впровадженні CRM",paragraphs:["Відсутність чіткого бачення цілей впровадження.","Ігнорування потреб кінцевих користувачів.","Недостатнє навчання персоналу.","Невірно обраний функціонал або система.","Відсутність підтримки з боку керівництва."],keywords:"відсутність, чіткого, бачення, цілей, впровадження, ігнорування, потреб, кінцевих, користувачів, недостатнє"},{id:"how-to-implement-crm",title:"Як впровадити CRM у компанії: покроковий план",paragraphs:["Впровадження CRM — це не лише про технічну інтеграцію, а про зміну підходу до роботи з клієнтами. Щоб уникнути хаосу, потрібно діяти поетапно.","1. Визначте мету: підвищити продажі, покращити обслуговування чи автоматизувати процеси.","2. Залучіть команду
89: обговоріть з відділом продажів, маркетингу, підтримки, які задачі має вирішувати CRM.","3. Виберіть систему: врахуйте кількість користувачів, інтеграції, бюджет та легкість використання.","4. Підготуйте дані: перевірте базу контактів, очистіть дублі, структуруйте поля.","5. Впровадьте поетапно: почніть з основного функціоналу, протестуйте, навчаючи персонал паралельно.","6. Вимірюйте результат: встановіть KPI до і після впровадження, аналізуйте прогрес у продажах та конверсії.","Ми допомагаємо проходити всі етапи швидко, ефективно і без втрати продуктивності."],keywords:"впровадження, crm, поетапно, лише, технічну, інтеграцію, зміну, підходу, роботи, клієнтами"},{id:"crm-implementation-cost",title:"Скільки коштує впровадження CRM: від чого залежить ціна?",paragraphs:["Ціна впровадження CRM залежить від декількох ключових чинників. Умовно її можна поділити на 3 частини: ліцензія, впровадження, навчання персоналу.","1. Ліцензія: деякі CRM безкоштовні з базовим функціоналом (наприклад, HubSpot), інші — мають щомісячну вартість на користувача (від $10 до $100).","2. Впровадження: сюди входить налаштування воронок, полів, інтеграцій, автоматизацій. Просте впровадження може коштувати від 500$, складне — до 5000$ і більше.","3. Навчання: щоб система працювала, працівники повинні знати, як нею користуватись. Бюджет на тренінги залежить від кількості співробітників.","Ми пропонуємо гнучкі пакети — від мінімального старту до комплексної інтеграції з повним супроводом. Витрати завжди окупаються завдяки зростанню продажів та прозорості процесів."],keywords:"впровадження, crm, залежить, ліцензія, навчання, ціна, декількох, ключових, чинників, умовно"},{id:"bi-integration-asana",title:"Інтеграція BI з Asana для управління проєктами",paragraphs:["Asana — популярний інструмент для керування задачами та проєÐ
89ºÑ‚ами, однак її вбудована звітність обмежена.","Інтеграція з BI (наприклад, Power BI) дозволяє відстежувати виконання задач, затримки, завантаження співробітників і дотримання термінів у зручному форматі.","Ми підключаємо Asana до BI-системи, автоматизуємо оновлення даних і створюємо дашборди, які показують статус проєктів, продуктивність команди та ризики.","Завдяки цьому керівники можуть швидко реагувати на перевантаження, знаходити вузькі місця і покращувати процеси.","Це рішення ідеально підходить для ІТ-команд, агентств і компаній, які працюють у форматі проєктного менеджменту."],keywords:"asana, форматі, які, популярний, інструмент, керування, задачами, проєктами, однак, вбудована"},{id:"bi-integration-hubspot",title:"Інтеграція BI з HubSpot для аналітики продажів і маркетингу",paragraphs:["HubSpot — потужна CRM-платформа для маркетингу, продажів і підтримки клієнтів, але її вбудована аналітика має обмеження.","Ми інтегруємо HubSpot з BI, щоб створювати кастомні дашборди: джерела лідів, ефективність email-кампаній, конверсії, KPI менеджерів.","Також можна об'єднувати дані з HubSpot з фінансовими системами, телефонією або сайтами — для повного розуміння ефективності каналів.","Інтеграція дозволяє приймати точні рішення щодо бюджету, воронки продажів і пріоритетів команди.","Це відкриває нові можливості для компаній, які прагнуть масштабувати маркетинг і продажі на основі даних."],keywords:"hubspot, продажів, потужна, crm, платформа, маркетингу, підтримки, клієнтів, але, вбудована"},{id:"bi-integration-sendpulse",title:"Інтеграція BI з SendPulse CRM для аналітики продажів і маркетингу",paragraphs:["SendPulse — це багатофункціональна платформа для автоматизації маркетингу та управління продажами. Вона включає в себе CRM, email-розсилки, чат-боти, SMS, веб-пуші та інші канали комунікації. Її особливість — глибока інтеграція між каналами та можливість автоматизованих сценаріїв роботи з клієнтами.","Однак стандартна аналітика SendPulse не завжди покриває специфічні потреби бізнесу у звітності. Саме тут на допомогу приходить інтеграція з BI-системами, такими як Power BI або Google Looker Studio. Завдяки цій інтеграції можна зібрати всі дані в єдиний дашборд: email-кампанії, відповіді користувачів, воронку заявок, ефективність чат-ботів та показники конверсії.","Керівники можуть відстежувати KPI-команд, сегментувати аудиторію за поведінкою, аналізувати найуспішніші тригери, порівнювати A/B-тести, і навіть будувати прогнози на основі поведінкової аналітики. BI також дозволяє побачити, як маркетинг впливає на реальні продажі, та швидко виявити неефективні кампанії.","Інтеграція SendPulse із BI відкриває новий рівень контролю над клієнтськими комунікаціями, дає можливість ухвалювати обґрунтовані рішення і оптимізувати маркетингові витрати у реальному часі."],keywords:"sendpulse, інтеграція, email, чат, можливість, кампанії, багатофункціональна, платформа, автоматизації, маркетингу"},{id:"bi-integration-salesdrive",title:"Інтеграція BI Ð
89· SalesDrive для контролю воронки та ефективності команди",paragraphs:["SalesDrive — це українська CRM, створена для відділів продажів. Вона зручна у використанні, дозволяє керувати угодами, лідами та комунікацією з клієнтами, а також автоматизує повсякденні завдання менеджерів.","Однак для стратегічного управління потрібна розширена аналітика, яку можна отримати за допомогою інтеграції з BI-системами. Об’єднання даних з SalesDrive у BI дозволяє візуалізувати воронку продажів, оцінити тривалість кожного етапу, конверсію лідів, швидкість обробки запитів та результативність кожного менеджера.","Керівництво може побачити, на якому етапі губляться ліди, яка реклама приносить найкращих клієнтів, чи вистачає менеджерам часу для обробки заявок. BI також дає змогу порівнювати результати по місяцях, виявляти закономірності та формувати прогноз продажів.","Інтеграція SalesDrive з BI — це необхідний крок для компаній, які хочуть масштабувати відділ продажів, підвищити ефективність роботи команди та ухвалювати рішення, базуючись на достовірних даних."],keywords:"продажів, salesdrive, дозволяє, також, даних, кожного, обробки, українська, crm, створена"},{id:"bi-integration-asteril",title:"Інтеграція Asteril CRM з BI для сервісної та технічної аналітики",paragraphs:["Asteril CRM — це CRM-система, орієнтована на обслуговування клієнтів, керування заявками, технічну підтримку та сервісні завдання. Вона часто використовується компаніями, які надають послуги технічного обслуговування або працюють у сфері аутсорсингу.","Інтеграція з BI відкриває нові можливості: можна побудувати детальну аналітику по заявках, часу їх обробки, повторних зверненнях, завантаженню співробітників та задоволеності клієнтів.","BI дозволяє бачити середній час вирішення проблеми, кількість задач на одного спеціаліста, частоту збоїв, відсоток закритих заявок у строк. Ці показники критично важливі для підтримки високої якості сервісу.","Завдяки інтеграції можна також виявити проблемні зони у процесах, спланувати навантаження, краще організувати змінні графіки працівників та скоротити витрати часу і ресурсів. Asteril CRM у зв'язці з BI стає інструментом не лише обліку, а й стратегічного управління сервісним бізнесом."],keywords:"crm, asteril, обслуговування, клієнтів, можна, часу, система, орієнтована, керування, заявками"},{id:"bi-integration-creatio",title:"Інтеграція Creatio (ex bpm'online) з BI для наскрізної бізнес-аналітики",paragraphs:["Creatio — це потужна платформа для автоматизації бізнес-процесів та управління взаємодією з клієнтами (CRM + BPM). Вона дозволяє організовувати роботу з клієнтами, автоматизувати внутрішні процеси, налаштовувати воронки продажів, маркетингові кампанії та підтримку.","І хоча Creatio має вбудовану аналітику, вона не завжди покриває всі потреби великих команд або холдингів. Інтеграція з BI дозволяє побудувати наскрізну аналітику — від маркетингу до обслуговування, від першого контакту до повторного продажу.","Завдяки BI можна створити окремі дашборди для кожного відділу: продажі, маркетинг, підтримка, бухгалтерія. Усі показники — актуальні, інтерактивні, із можливістю глибокого аналізу та деталізації.","Це особливо важливо для керівництва — замість десятків окремих звітів є одна система, яка дає цілісне бачення бізнесу в реальному часі. Інтеграція Creatio з BI — це крок до управління компанією на основі даних і швидких, обґрунтованих рішень."],keywords:"creatio, управління, клієнтами, вона, дозволяє, аналітику, інтеграція, потужна, платформа, автоматизації"},{id:"ready-crm-solution",title:"Купити готове рішення CRM чи налаштовувати самостійно?",paragraphs:["Готове CRM-рішення — це оптимальний варіант для компаній, які хочуть почати працювати вже сьогодні. Ми пропонуємо повністю налаштовані системи для різних бізнесів: продажі B2B, послуги, онлайн-магазини.","Переваги готового рÑ
89–шення: 1) ви економите час, 2) одразу отримуєте перевірену структуру воронки, 3) все вже протестовано на практиці.","Готові рішення включають: воронку продажів, інтеграції з email і телефоном, шаблони листів, автоматичні задачі, звітність.","Водночас ми адаптуємо кожне рішення під ваш бізнес: додаємо поля, розділи, права доступу.","Це ідеально, якщо ви хочете запустити CRM без ризику та додаткових витрат на аналітику і проєктування. У вас вже є готовий інструмент, заточений під результат."],keywords:"рішення, вже, crm, під, готове, оптимальний, варіант, компаній, які, хочуть"}]},en:{articles:[{id:"reasons-to-use-crm",title:"10 Reasons to Use CRM in a Company",paragraphs:["CRM centralizes customer data and interactions.","Improves customer service and response time.","Provides analytics and reporting for decision-making.","Automates routine business processes.","Improves interdepartmental communication.","Increases sales team efficiency.","Enables customer segmentation for targeted campaigns.","Integrates with other business tools.","Helps retain the interaction history with customers.","Supports scalability for growing businesses."],keywords:"customer, improves, business, centralizes, data, interactions, service, response, time, provides"},{id:"crm-implementation-mistakes",title:"5 Mistakes When Implementing CRM",paragraphs:["Lack of clear implementation goals.","Ignoring the needs of end users.","Insufficient staff training.","Choosing the wrong features or system.","Lack of leadership support."],keywords:"lack, clear, implementation, goals, ignoring, needs, end, users, insufficient, staff"},{id:"how-to-implement-crm",title:"How to Implement CRM in a Company: Step-by-Step Guide",paragraphs:["Implementing CRM is not just a technical step — it’s a transformation in how your business interacts with clients. To succeed, you need a structured approach.","1. Define your goal: improve sales, enhance customer service, or automate workflows.","2. Involve your team: consult sales, marketing, and support on their CRM needs.","3. Choose the system: consider number of users, integrations, budget, and ease of use.","4. Prepare your data: clean up duplicates, structure fields, and validate contact lists.","5. Deploy gradually: start with basic features, test them, and train users simultaneously.","6. Measure results: compare KPIs before and after launch — like deal conversion and response times.","We support businesses at every step, ensuring a smooth rollout and long-term value."],keywords:"step, sales, support, users, implementing, technical, transformation, business, interacts, clients"},{id:"crm-implementation-cost",title:"CRM Implementation Cost: What Affects the Price?",paragraphs:["The cost of CRM implementation varies depen
89ding on several factors. It usually includes three parts: licensing, setup, and staff training.","1. Licensing: some CRMs are free with basic features (e.g. HubSpot), while others charge per user (from $10 to $100/month).","2. Setup: configuring pipelines, fields, integrations, and automations. Simple setups may cost $500, while full projects can exceed $5000.","3. Training: to ensure adoption, teams must learn how to use the CRM efficiently. Budget depends on company size and complexity.","We offer flexible packages — from quick setups to enterprise-level rollouts — all tailored to your goals. The investment pays off through better visibility and increased sales."],keywords:"cost, licensing, setup, training, while, setups, implementation, varies, depending, several"},{id:"bi-integration-asana",title:"BI Integration with Asana for Project Management",paragraphs:["Asana is a popular project management tool, but its built-in reporting is often too limited for deep analysis.","By integrating Asana with BI (like Power BI), you can track task progress, delays, team workload, and deadlines through dynamic dashboards.","We connect Asana to BI platforms, automate data refreshes, and create visual reports to show project status, productivity, and risks.","This enables managers to react quickly to bottlenecks, improve planning, and optimize delivery timelines.","It’s an ideal solution for IT teams, digital agencies, and companies with complex project workflows."],keywords:"asana, project, popular, management, tool, its, built, reporting, often, too"},{id:"bi-integration-hubspot",title:"BI Integration with HubSpot for Sales & Marketing Analytics",paragraphs:["HubSpot is a robust CRM platform for sales, marketing, and support, but its native analytics can be limited.","We integrate HubSpot with BI tools to build dashboards showing lead sources, email campaign performance, funnel stages, and team KPIs.","You can also merge HubSpot data with finance, telephony, or web analytics tools for a 360° view of performance.","This integration empowers business leaders to make better decisions on budgets, funnel priorities, and marketing ROI.","It’s a must-have for companies looking to scale their revenue operations based on data."],keywords:"hubspot, marketing, analytics, tools, performance, funnel, data, robust, platform, sales"},{id:"bi-integration-sendpulse",title:"BI Integration with SendPulse CRM for Enhanced Sales and Marketing Analytics",paragraphs:["SendPulse is a powerful marketing automation and CRM platform that combines multiple channels such as email, chatbots, SMS, and push notifications. Its CRM is tightly integrated with communication tools, allowing businesses to manage leads and automate client interactions in one ec
89osystem.","While the built-in analytics in SendPulse are useful, they often lack the depth needed for strategic business decisions. Integrating with BI tools like Power BI or Looker Studio enables businesses to unify data from multiple sources into one dashboard — including campaign statistics, chatbot performance, lead conversions, and customer engagement trends.","Executives can monitor team KPIs, run behavioral segmentation, evaluate the impact of various triggers and campaigns, and forecast sales outcomes using historical data. A/B test results become clearer, and it becomes easier to identify which campaigns underperform and why.","With BI, companies can link marketing activities to real revenue impact, fine-tune strategies in real time, and get a full picture of customer behavior across channels. The result is data-driven decision-making, increased ROI from marketing campaigns, and improved alignment between marketing and sales teams."],keywords:"marketing, data, campaigns, sendpulse, multiple, channels, tools, businesses, one, customer"},{id:"bi-integration-salesdrive",title:"BI Integration with SalesDrive for Sales Funnel and Team Performance Tracking",paragraphs:["SalesDrive is a Ukrainian CRM platform designed specifically for sales departments. It offers convenient deal and lead tracking, task automation, and efficient team workflows.","To gain a strategic edge, companies need deeper analytics than the built-in reporting provides. Integrating SalesDrive with BI tools enables businesses to visualize the entire sales funnel, track deal duration, conversion rates, processing speed, and individual manager performance.","BI dashboards help identify where leads are being lost, which marketing channels bring quality prospects, and whether the team has enough capacity. Historical data enables forecasting and comparison across time periods.","With BI, leadership can make faster, data-driven decisions, optimize team structure, and scale their sales operations more efficiently. It’s an essential tool for growth-focused companies seeking full control over their revenue pipeline."],keywords:"sales, team, salesdrive, deal, companies, enables, data, their, ukrainian, platform"},{id:"bi-integration-asteril",title:"Asteril CRM and BI Integration for Technical and Service Analytics",paragraphs:["Asteril CRM is a platform tailored for service management, technical support, and field operations. It’s widely used by maintenance providers and outsourcing companies for ticket tracking and customer care.","BI integration enhances this functionality by providing deep insights into request resolution times, repeated issues, employee workload, and customer satisfaction metrics.","With BI, companies can visualize task distribution, identify process inefficiencies, and understand average resolution durations. Key metrics like on-time resolution rates or number of tickets per technician become immediately accessible.","This enables better resource planning, shift allocation, and proactive service improvements. Asteril CRM, when paired with BI, transforms from a task tracker into a powerful service optimization and strategic control system."],keywords:"service, resolution, asteril, companies, customer, into, metrics, task, platform, tailored"},{id:"bi-integration-creatio",title:"BI Integration with Creatio (formerly bpm'online) for Full-Cycle Business Analytics",paragraphs:["Creatio is an all-in-one CRM and BPM platform for automating customer relationship processes and internal workflows. It supports sales pipelines, marketing automation, and service desk operations.","Though Creatio includes built-in analytics, they are often limited in flexibility and visualization. BI integration unlocks full-cycle analytics — from lead generation to customer retention.","Dashboards can be customized per department (sales, marketing, support, finance), with real-time data and interactive filtering. Decision-makers can analyze performance holistically and compare across periods and segments.","With BI, all processes become transparent, actionable, and measurable. It’s the key to transforming Creatio into a control center for executive decision-making and operational excellence."],keywords:"creatio, customer, processes, sales, marketing, analytics, decision, one, bpm, platform"},{id:"ready-crm-solution",title:"Buy a Ready CRM Solution or Customize It Yourself?",paragraphs:["Ready-made CRM solutions are perfect for businesses that want to launch fast. We provide fully configured CRMs for B2B, service companies, e-commerce, and more.","Advantages: 1) save time, 2) use a tested sales funnel structure, 3) no need for trial and error.","Our packages include: prebuilt pipelines, email and ph
89one integrations, message templates, auto-tasks, and dashboards.","We still tailor each CRM to your needs — adding custom fields, sections, and access roles.","It’s an ideal choice for companies that want a no-risk CRM launch without spending extra on research and design — just plug in and go."],keywords:"want, launch, companies, ready, made, solutions, perfect, businesses, fast, provide"}]},ka:{articles:[{id:"reasons-to-use-crm",title:"CRM-ის გამოყენების 10 მიზეზი კომპანიაში",paragraphs:["CRM საშუალებას გაძლევთ ცენტრალიზებულად შეინახოთ კლიენტების მონაცემები და ურთიერთობები.","აუმჯობესებს მომხმარებელთა მომსახურებას და ამცირებს პასუხის დროს.","გთავაზობთ ანალიტიკასა და ანგარიშგებას გადაწყვეტილებების მისაღებად.","ავტომატიზირებს რუტინულ ბიზნეს პროცესებს.","აუმჯობესებს განყოფილებებს შორის კომუნიკაციას.","ზრდის გაყიდვების გუნდის ეფექტიანობას.","აძლევს საშუალებას კლიენტების სეგმენტირებისთვის კამპანიების მიზნობრივი მორგებისთვის.","ინტეგრირდება სხვა ბიზნეს ინსტრუმენტებთან.","ეხმარება კლიენტთან ურთიერთობის ისტორიების შენახვაში.","უზრუნველყოფს მასშტაბურობას მზარდი კომპანიებისთვის."],keywords:"კლიენტები, მონაცემები, ურთიერთობები, ანალიტიკა, crm, ავტომატიზაცია, ბიზნესი, ეფექტურობა, სეგმენტირება, ცენტრალიზება"},{id:"crm-implementation-mistakes",title:"5 შეცდომა CRM-ის დანერგვისას",paragraphs:["ნათელი მიზნების არქონა CRM-ის დანერგვისას.","მომხმარებლის საჭიროებების უგულებელყოფა.","პერსონალის არასაკმარისი ტრენინგი.","შეცდომით არჩეული ფუნქციონალი ან სისტემა.","მენეჯმენტის მხარდაჭერის ნაკლებობა."],keywords:"დანერგვა, შეცდომა, პერსონალი, საჭიროებები, სისტემა, ფუნქციონალი, მხარდაჭერა, მომხმარებელი, მიზნები, არქონა"},{id:"how-to-implement-crm",title:"როგორ დავნერგოთ CRM კომპანიაში: ნაბიჯ-ნაბიჯ გეგმა",paragraphs:["CRM-ის დანერგვა მხოლოდ ტექნიკური ინტეგრაცია კი არაა — ეს არის ცვლილება კლიენტებთან მუშაობის სტრატეგიაში.","1. განსაზღვრეთ მიზანი: გაყიდვების გაზრდა, მომსახურების გაუმჯობესება ან პროცესების ავტომატიზაცია.","2. ჩართეთ გუნდი: გაიარეთ კონსულტაცია გაყიდვების, მარკეტინგისა და მხარდაჭერის გუნდებთან.","3. აირჩიეთ სისტემა: გაითვალისწინეთ მომხმარებელთა რაოდენობა, ინტეგრაციები, ბიუჯეტი და გამოყენების სიმარტივე.","4. მოამზადეთ მონაცემები: გაწმინდეთ დუბლიკატები და დააჯგუფეთ ველები.","5. დანერგეთ ეტაპობრივად: დაიწყეთ ძირითადი ფუნქციონალით და ატარეთ ტესტირება ტრენინგთან ერთად.","6. გაზომეთ შედეგი: შეადარეთ KPI-ები დანერგვამდე და შემდეგ, რათა შეაფასოთ წინსვლა.","ჩვენ დაგეხმარებით ყველა ეტაპზე, ეფექტურად და სწრაფად, პროდუქტიულობის დაკარგვის გარეშე."],keywords:"crm, დანერგვა, ეტაპობრივად, ინტეგრაცია, მონაცემები, გუნდი, შედეგი, სტრატეგია, მიზანი, ტრენინგი"},{id:"crm-implementation-cost",title:"რამდენი ღირს CRM-ის დანერგვა: რისგან შედგება ღირებულება",paragraphs:["CRM-ის დანერგვის ფასი დამოკიდებულია ლიცენზიაზე, კონფიგურაციაზე და ტრენინგზე.","1. ლიცენზია: ზოგიერთი პლატფორმა უფასოა, სხვები მოითხოვენ ყოველთვიურ გადასახადს.","2. კონფიგურაცია: მოიცავს ველებს, ინტეგრაციებს, ავტომატიზაციას.","3. ტრენინგი: გუნდის გადამზადება აუცილებელია ეფექტური გამოყენებისთვის.","ჩვენ გთავაზობთ მოქნილ ბიუჯეტურ პაკეტებს დაწყებული სტარტერიდან — სრულ ინტეგრაციამდე."],keywords:"crm, ღირებულება, ლიცენზია, კონფიგურაცია, ტრენინგი, დანერგვა, ინტეგრაცია, ავტომატიზაცია, ბიუჯეტი, შედეგი"},{id:"bi-integration-sendpulse",title:"BI ინტეგრაცია SendPulse CRM-თან გაყიდვებისა და მარკეტინგისთვის",paragraphs:["SendPulse არის მრავალფუნქციური პლატფორმა მარკეტინგისა და გაყიდვების ავტომატიზაციისთვის. მოიცავს CRM-ს, ელფოსტას, ჩატბოტებს, SMS და სხვა არხებს.","BI ინტეგრაცია იძლევა შესაძლებლობას შეგროვდეს ყველა მონაცემი ერთ დაფაში: კამპანიები, ლიდები, კონვერსია, KPI.","მენეჯერებს შეუძლიათ დააკვირდნენ მომხმარებელთა ქცევას, ჩაატარონ A/B ტესტები და წინასწარ განსაზღვრონ ქცევები.","BI საშუალებას გაძლევთ დაინახოთ, როგორ გავლენას ახდენს მარკეტინგი რეალურ გაყიდვებზე.","ინტეგრაცია SendPulse-თან უზრუნველყოფს უკეთეს გადაწყვეტილებებს და ხარჯების ოპტიმიზაციას რეალურ დროში."],keywords:"sendpulse, crm, ინტეგრაცია, ავტომატიზაცია, კონვერსია, მარკეტინგი, ანალიტიკა, ლიდები, KPI, პლატფორმა"},{id:"bi-integration-asana",title:"BI და Asana ინტეგრაცია პროექტების მართვისთვის",paragraphs:["Asana არის პოპულარული ინსტრუმენტი პროექტების მართვისთვის, მაგრამ აქვს შეზღუდული ანალიტიკა.","BI ინტეგრაცია იძლევა ფართო ხედვას დავალებების მიმდინარეობაზე და შესრულებაზე.","ჩვენ ვაერთებთ Asana-ს Power BI ან Google Looker Studio-სთან და ვქმნით დაფებს.","მენეჯერები სწრაფად ხედავენ შეფერხებებს, რესურსის გამოყენებას და პროგნოზირებენ დასრულების ვადებს.","ეს გამოსავალი იდეალურია პროექტზე დაფუძნებული გუნდებისთვის."],keywords:"asana, bi, ინტეგრაცია, პროექტი, ანალიტიკა, მენეჯერი, შესრულება, ვადები, რესურსები, დეფიციტი"},{id:"bi-integration-salesdrive",title:"BI ინტეგრაცია SalesDrive CRM-თან გაყიდვების ანალიზისთვის",paragraphs:["SalesDrive არის ქართული CRM სისტემა, რომელიც მორგებულია გაყიდვების მართვაზე.","BI ინტეგრაცია იძლევა შესაძლებლობას ანალიზირდეს ფანელი, ეტაპების სიგრძე, კონვერსიები, დრო და ეფექტიანობა.","მენეჯერებს შეუძლიათ ნახონ სად იკარგება ლიდი და რა შედეგიანია კონკრეტული არხი ან მენეჯერი.","შესაძლებელია შედეგების შედარება დროის მიხედვით და პროგნოზირების შესაძლებლობა.","ეს აუცილებელია მასშტაბირებისთვის და გაყიდვების გუნდის ეფექტიანობის გასაზრდელად."],keywords:"salesdrive, crm, ინტეგრაცია, ფანელი, áƒ
89’აყიდვები, კონვერსია, პროგნოზი, ანალიზი, ეფექტიანობა, გუნდი"},{id:"bi-integration-asteril",title:"BI ინტეგრაცია Asteril CRM-თან ტექნიკური სერვისისთვის",paragraphs:["Asteril CRM გამოიყენება ტექნიკური მხარდაჭერისთვის და სერვისების ორგანიზებისთვის.","BI ინტეგრაცია იძლევა დეტალურ ხედვას განაცხადებზე, დროზე, დატვირთვაზე და კლიენტების კმაყოფილებაზე.","მონაცემები აჩვენებს საშუალო დახურვის დროს, განმეორებითი მოთხოვნების რაოდენობას და SLA-ს შესრულებას.","BI დაგეხმარებათ პროცესების ოპტიმიზაციასა და სერვისის ხარისხის გაუმჯობესებაში.","ეს გამოსავალი აუცილებელია მაღალი ხარისხის სერვისზე ორიენტირებული კომპანიებისთვის."],keywords:"asteril, crm, ტექნიკური, ინტეგრაცია, SLA, დრო, განაცხადი, ხარისხი, BI, სერვისი"},{id:"bi-integration-hubspot",title:"BI და HubSpot ინტეგრაცია გაყიდვებისა და მარკეტინგის ანალიტიკისთვის",paragraphs:["HubSpot არის ძლიერი CRM პლატფორმა მარკეტინგისა და გაყიდვებისთვის, მაგრამ მისი ანალიტიკა ხშირად არ არის საკმარისი.","ჩვენ ვაერთებთ HubSpot-ს BI სისტემასთან და ვქმნით მორგებულ დაფებს: ლიდების წყაროები, KPI-ები, კონვერსიები.","შესაძლებელია მონაცემების კომბინაცია სხვა სისტემებთან: ფინანსური, ტელეფონია, ვებსაიტები.","ეს გაძლევთ სრულ სურათს ეფექტურობაზე და საშუალებას აძლევს მართოთ ბიუჯეტი და გუნდი ფაქტებზე დაყრდნობით.","ეს გამოსავალი იდეალურია კომპანიისთვის, რომელიც ზრდის გეგმავს და აყალიბებს სტრატეგიას მონაცემებზე."],keywords:"hubspot, CRM, ინტეგრაცია, BI, გაყიდვები, მარკეტინგი, ანალიტიკა, KPI, კონვერსია, მონაცემები"},{id:"ready-crm-solution",title:"შევიძინოთ მზა CRM გადაწყვეტა თუ ავაწყოთ ინდივიდუალურად?",paragraphs:["მზა CRM სისტემები იდეალურია მათთვის, ვისაც სწრაფი დასაწყისი სურს. ჩვენ ვთავაზობთ სრულად კონფიგურირებულ გადაწყვეტილებებს B2B, სერვისებისთვის და ონლაინ მაღაზიებისთვის.","მთავარი უპირატესობაა დროის დაზოგვა, გამოცდილ სტრუქტურებზე დაფუძნება და მინიმალური შეცდომები.","მზა CRM მოიცავს: გაყიდვების ფანელს, ელფოსტის და ტელეფონიის ინტეგრაციას, ავტომატიზაციას და ანგარიშგებას.","თითოეულ გადაწყვეტას ვამუშავებთ კონკრეტული ბიზნესისთვის: ვამატებთ ველებს, როლებს და უფლებებს.","ეს იდეალურია სწრაფი სტარტისთვის, მინიმალური რისკებით და მაქსიმალური ეფექტურობით."],keywords:"crm, მზა, გადაწყვეტა, გაყიდვები, ბიზნესი, ინტეგრაცია, ავტომატიზაცია, სისტემა, ეფექტურობა, სტარტი"},{id:"bi-integration-creatio",title:"BI ინტეგრაცია Creatio CRM-თან კომპლექსური ანალიტიკისთვის",paragraphs:["Creatio არის ძლიერი პლატფორმა ბიზნეს პროცესების ავტომატიზაციისა და CRM მართვისთვის.","BI ინტეგრაცია გაძლევთ შესაძლებლობას მართოთ მარკეტინგი, გაყიდვები და მხარდაჭერა ერთიანად.","შესაძლებელია თითოეული დეპარტამენტისთვის ცალკე დაფის შექმნა: მარკეტინგი, გაყიდვები, ბუღალტერია.","ეს გაძლევთ ერთიან ხედვას და საშუალებას გადაწყვეტილებები მიიღოთ მონაცემებზე დაყრდნობით.","ასეთი ინტეგრაცია აუცილებელია სწრაფი რეაგირებისთვის და სტრატეგიული მენეჯმენტისთვის."],keywords:"creatio, crm, ინტეგრაცია, ავტომატიზაცია, BI, ანალიტიკა, მენეჯმენტი, დეპარტამენტი, გადაწყვეტილება, პლატფორმა"}]}};function mC(){const{language:t}=Je(),r=Ty[t].articles,a=r[0],s=r.slice(1),l={uk:"BandBI - Статті про BI, CRM та автоматизацію бізнесу",en:"BandBI - Articles on BI, CRM, and Business Automation",ka:"BandBI - სტატიები BI-ზე, CRM-ზე და ავტომატიზაციაზე"},f={uk:a.paragraphs[0],en:a.paragraphs[0],ka:a.paragraphs[0]},d={uk:"CRM, BI, автоматизація, аналітика, бізнес",en:"CRM, BI, automation, analytics, business",ka:"CRM, BI, ავტომატიზაცია, ანალიტიკა, ბიზნესი"},m={uk:"Інші статті",en:"Other Articles",ka:"სხვა სტატიები"};return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:l,descriptions:f,keywords:d}),c.createElement("div",{className:"flex flex-col lg:flex-row w-full px-6 py-12 max-w-6xl mx-auto gap-8"},c.createElement("aside",{className:"lg:w-1/4 space-y-4"},c.createElement("h2",{className:"text-xl font-semibold mb-2"},m[t]),c.createElement("ul",{className:"space-y-2"},s.map(p=>c.createElement("li",{key:p.id},c.createElement(ye,{to:`/${t}/articles/${p.id}`,className:"text-blue-600 hover:underline"},p.title))))),c.createElement("article",{className:"lg:w-3/4 space-y-6"},c.createElement("h1",{className:"text-3xl font-bold text-gray-800"},a.title),a.paragraphs.map((p,g)=>c.createElement("p",{key:g,className:"text-gray-700"},p)))))}const Eh={uk:[{title:"Новий лід",color:"bg-blue-500"},{title:"Клієнта сконтактовано",color:"bg-indigo-500"},{title:"Проведено презентацію",color:"bg-purple-500"},{title:"Надіслано реквізити",color:"bg-pink-500"},{title:"Отримано оплату",color:"bg-green-500"}],en:[{title:"New Lead",color:"bg-blue-500"},{title:"Client Contacted",color:"bg-indigo-500"},{title:"Presentation Delivered",color:"bg-purple-500"},{title:"Payment Details Sent",color:"bg-pink-500"},{title:"Payment Received",color:"bg-green-500"}],ka:[{title:"ახალი ლიდი",color:"bg-blue-500"},{title:"კლიენტთან დაკავშირება",color:"bg-indigo-500"},{title:"პრეზენტაციის წარდგენა",color:"bg-purple-500"},{title:"გადახდის დეტალები გაგზავნილია",color:"bg-pink-500"},{title:"გადახდა მიღებულია",color:"bg-green-500"}]},pC={uk:["Клієнт залишив заявку на сайті.","Ми зв’язалися з клієнтом телефоном або поштою.","Провели презентацію нашої пропозиції.","Надіслали реквізити для оплати.","Отримали оплату — клієнт залучений!"],en:["Lead just submitted their data on the website.","We contacted the client via email or phone.","A presentation was delivered to showcase our offer.","Payment or invoice details were sent to the client.","Payment c
89onfirmed. Lead is now a customer!"],ka:["ლიდმა შეავსო ფორმა ვებ-გვერდზე.","დავუკავშირდით კლიენტს ელ.ფოსტით ან ტელეფონით.","ჩავატარეთ პრეზენტაცია შეთავაზების შესახებ.","გავუგზავნეთ გადახდის დეტალები.","გადახდა დადასტურებულია — კლიენტი მოიზიდა!"]},hC={uk:"Воронка лідів",en:"Lead Funnel",ka:"ლიდების გვირაბი"},gC=()=>{const[t,r]=T.useState(0),{language:a}=Je();T.useEffect(()=>{const d=setInterval(()=>{r(m=>(m+1)%Eh[a].length)},3e3);return()=>clearInterval(d)},[a]);const s=Eh[a],l=pC[a],f=100/(s.length-1);return c.createElement("div",{className:"max-w-4xl mx-auto px-4 py-12"},c.createElement("h3",{className:"text-3xl font-bold text-center mb-8"},hC[a]),c.createElement("div",{className:"flex flex-col items-center"},c.createElement("div",{className:"w-full relative mb-8 px-4"},c.createElement("div",{className:"absolute top-[8px] left-0 right-0 h-1 bg-gray-200 rounded-full z-0"}),c.createElement(we.div,{className:"absolute top-[8px] left-0 h-1 bg-gradient-to-r from-blue-500 to-green-500 rounded-full z-10",initial:!1,animate:{width:`${f*t}%`},transition:{duration:.4}}),c.createElement("div",{className:"flex justify-between items-center relative z-20"},s.map((d,m)=>c.createElement("div",{key:m,className:"min-w-[64px] flex-1 text-center px-1 relative overflow-hidden"},c.createElement("p",{className:`text-[12px] mt-4 text-center whitespace-normal break-keep ${t>=m?"text-black font-semibold":"text-gray-400"}`},d.title))))),c.createElement(Wh,{mode:"wait"},c.createElement(we.div,{key:t+a,initial:{opacity:0,y:30},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.4},className:"text-center bg-white shadow-xl rounded-2xl px-4 py-8 border w-full sm:w-3/4"},c.createElement("h3",{className:"text-lg font-semibold mb-3 sm:text-xl"},s[t].title),c.createElement("p",{className:"text-gray-600 text-sm sm:text-base"},l[t])))))},yC=()=>{const{language:t}=Je(),r={uk:"Інтеграція сайту з CRM, Telegram і Power BI",en:"Website Integration with CRM, Telegram and Power BI",ka:"ვებგვერდის ინტეგრაცია CRM-თან, Telegram-თან და Power BI-სთან"},a={uk:"Дізнайтесь, як BandBI автоматизує обробку заявок через інтеграцію сайту з CRM та Telegram-ботом.",en:"Learn how BandBI automates lead processing with CRM and Telegram bot integration.",ka:"შეიტყვეთ, როგორ ავტომატიზებს BandBI განაცხადების დამუშავებას CRM-სა და Telegram ბოტთან ინტეგრაციის მეშვეობით."},s=()=>{const{language:f}=Je(),d={uk:c.createElement("div",{className:"max-w-sm mx-auto bg-blue-50 border border-blue-300 rounded-xl p-4 shadow-sm font-sans"},c.createElement("div",{className:"text-blue-700 font-semibold mb-2 text-sm"},"📥 Нова заявка з сайту"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"👤 Ім’я:")," Ганна К."),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"📞 Телефон:")," +380991234567"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"💬 Коментар:")," Хочу консультацію"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"🌐 Джерело:")," Сторінка «Тарифи»"),c.createElement("div",{className:"border-t border-blue-200 my-3"}),c.createElement("div",{className:"text-xs text-gray-600"},"🕒 Час: 12:43, 3 червня 2025"),c.createElement("div",{className:"text-xs text-gray-600"},"📍 Мова сайту: Українська")),en:c.createElement("div",{className:"max-w-sm mx-auto bg-blue-50 border border-blue-300 rounded-xl p-4 shadow-sm font-sans"},c.createElement("div",{className:"text-blue-700 font-semibold mb-2 text-sm"},"📥 New lead from website"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"👤 Name:")," Ann K."),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"📞 Phone:")," +15551234567"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"💬 Comment:")," Looking for a consultation"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"🌐 Source:"),' "Pricing" page'),c.createElement("div",{className:"border-t border-blue-200 my-3"}),c.createElement("div",{className:"text-xs text-gray-600"},"🕒 Time: 12:43, June 3, 2025"),c.createElement("div",{className:"text-xs text-gray-600"},"📍 Site language: English")),ka:c.createElement("div",{className:"max-w-sm mx-auto bg-blue-50 border border-blue-300 rounded-xl p-4 shadow-sm font-sans"},c.createElement("div",{className:"text-blue-700 font-semibold mb-2 text-sm"},"📥 ახალი მოთხოვნა ვებსაიტიდან"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"👤 სახელი:")," ანა კ."),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"📞 ტელეფონი:")," +9955991234567"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"💬 კომენტარი:")," მსურს კონსულტაცია"),c.createElement("div",{className:"mb-1 text-sm"},c.createElement("span",{className:"font-medium"},"🌐 წყარო:"),' "ტარიფები" გვერდი'),c.createElement("div",{className:"border-t border-blue-200 my-3"}),c.createElement("div",{className:"text-xs text-gray-600"},"🕒 დრო: 12:43, 3 ივნისი 2025"),c.createElement("div",{className:"text-xs text-gray-600"},"📍 საიტის ენა: ქართული"))};return d[f]||d.en},l={uk:[{title:"1. Що ми інтегруємо?",text:"Сайт, CRM-систему (наприклад, HubSpot або Bitrix24), Power BI, google календар і Telegram-бота. Дані із форм на сайті одразу передаються у CRM і дублюються в Telegram."},{title:"2. Як це працює?",text:`Коли користувач заповнює форму на сайті, дані надсилаються на backend, який:
90
911. Передає інформацію до CRM (наприклад, HubSpot або Bitrix24) — угода створюється у відповідному статусі воронки.
922. Одночасно дублює заявку в Telegram — менеджер одразу отримує повідомлення для швидкої реакції.
933. Здійснює логування заявки через Firebase або інший сервіс.
94
95У CRM формується повна воронка обробки ліда — від нового звернення до успішного продажу. Кожен етап фіксується.
96
97Аналітичні дані з CRM передаються до Power BI, де візуалізуються ключові метрики: конверсія на кожному етапі, час проходження етапів, джерела лідів, ефективність менеджерів. Це дозволяє приймати обґрунтовані бізнес-рішення.`},{title:"3. Які технології?",text:"React, Node.js або Cloudflare Workers, Telegram Bot API, CRM REST API, Firebase/SMTP для логування."},{title:"4. Приклад повідомлення Telegram:",text:""},{title:"5. Навіщо це бізнесу?",text:"Швидка реакція, автоматизація процесів, аналітика в CRM, контроль якості та прозора воронка продажів."}],en:[{title:"1. What is integrated?",text:"The website, a CRM system (e.g. HubSpot or Bitrix24), Power BI, Google calendar and a Telegram bot. Data from forms is instantly sent to the CRM and mirrored in Telegram."},{title:"2. How does it work?",text:`When a user submits a form on the website, the backend:
98
991. Sends the data to the CRM (e.g., HubSpot or Bitrix24), creating a new deal in the appropriate funnel stage.
1002. Simultaneously sends the lead to Telegram so that a manager can respond immediately.
1013. Logs the request using Firebase or another logging service.
102
103A full lead funnel is built in the CRM — from initial contact to closed deal. Each stage is tracked.
104
105Analytical data from the CRM is forwarded to Power BI, where key metrics are visualized: conversion at each stage, time per stage, lead sources, and team performance. This enables data-driven business decisions.`},{title:"3. What technologies are used?",text:"React, Node.js or Cloudflare Workers, Telegram Bot API, CRM REST API, Firebase/SMTP for logging."},{title:"4. Example Telegram message:",text:""},{title:"5. Why it matters?",text:"Faster reaction, process automation, CRM analytics, quality control, and transparent sales funnel."}],ka:[{title:"1. რას ვინტეგრირებთ?",text:"ვებგვერდს, CRM სისტემას (მაგალითად, HubSpot ან Bitrix24), Power BI, google კალენდარი და Telegram ბოტს. ვებგვერდის ფორმების მონაცემები ავტომატურად იგზავნება CRM-ში და დუბლირდება Telegram-ში."},{title:"2. როგორ მუშაობს ეს?",text:`როდესაც მომხმარებელი ავსებს ფორმას ვებსაიტზე, backend ასრულებს შემდეგს:
106
1071. გზავნის მონაცემებს CRM სისტემაში (მაგალითად, HubSpot ან Bitrix24), სადაც იქმნება ახალი გარიგება შესაბამის ეტაპზე.
1082. პარალელურად აგზავნის მოთხოვნას Telegram-ში, რათა მენეჯერმა დაუყოვნებლივ მიიღოს შეტყობინება.
1093. ინახავს მონაცემებს Firebase-ის ან სხვა ლოგირების სერვისის მეშვეობით.
110
111CRM-ში იქმნება სრული ლიდების მარკეტინგული გვირგვინი — ახალი მოთხოვნიდან წარმატებულ გარიგებამდე. თითოეული ეტაპი ფიქსირდება.
112
113ანალიტიკური მონაცემები გადაეცემა Power BI-ს, სადაც შესაძლებელია ძირითადი მეტრიკების ანალიზი: კონვერსია თითოეულ ეტაპზე, ეტაპების გავლის დრო, ლიდების წყაროები და გუნდის ეფექტურობა. ეს საშუალებას იძლევა, ბიზნესი მართოს მონაცემებზე დაყრდნობით.`},{title:"3. რა ტექნოლოგიებია გამოყენებული?",text:"React, Node.js ან Cloudflare Workers, Telegram Bot API, CRM REST API, Firebase/SMTP ჟურნალისთვის."},{title:"4. შეტყობინების მაგალითი Telegram:",text:""},{title:"5. რატომ არის ეს მნიშვნელოვანი ბიზნესისთვის?",text:"მაშინვე რეაგირება, პროცესების ავტომატიზაცია, ანალიტიკა CRM-ში, ხარისხის კონტროლი და გამჭვირვალე გაყიდვების მარკეტინგი."}]};return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:r,descriptions:a,keywords:{uk:"інтеграція сайту з CRM, Telegram бот, автоматизація, обробка заявок, Power BI, Google Календар, воронка продажів, BandBI",en:"website integration with CRM, Telegram bot, automation, lead processing, Power BI, Google Calendar, sales funnel, BandBI",ka:"ვებსაიტის ინტეგრაცია CRM-თან, Telegram ბოტთან, ავტომატიზაცია, მოთხოვნების დამუშავება, Power BI, Google კალენდარი, გაყიდვების გვირაბი, BandBI"},key:t}),c.createElement("div",{className:"max-w-4xl mx-auto px-4 py-12"},c.createElement("h1",{className:"text-center text-3xl font-bold mb-8"},r[t]),l[t].map((f,d)=>c.createElement(we.div,{key:d,initial:{opacity:0,scale:.95}
113,animate:{opacity:1,scale:1},transition:{delay:d*.15,duration:.5,ease:"easeOut"},className:"mb-6 shadow-lg rounded-lg p-4 bg-white"},c.createElement("h2",{className:"text-xl font-semibold mb-2"},f.title),c.createElement("p",{className:"whitespace-pre-line mb-4"},f.text),(f.title.includes("повідомлення")||f.title.includes("message")||f.title.includes("შეტყობინების"))&&c.createElement(s,null),d===1&&c.createElement("div",{className:"mt-8"},c.createElement("div",{className:"min-h-[420px] transition-all duration-300"},c.createElement(gC,null)))))))};function vC(){const{articleId:t}=Ws(),{language:r}=Je(),a=Ty[r].articles,s=a.find(y=>y.id===t),l=a.filter(y=>y.id!==t);if(!s)return c.createElement("div",{className:"p-6"},r==="uk"?"Статтю не знайдено":r==="ka"?"სტატია ვერ მოიძებნა":"Article not found");const f={uk:`BandBI - ${s.title}`,en:`BandBI - ${s.title}`,ka:`BandBI - ${s.title}`},d={uk:s.keywords,en:s.keywords,ka:s.keywords},m={uk:s.paragraphs[0],en:s.paragraphs[0],ka:s.paragraphs[0]},p={uk:"Повернутись до всіх статей",en:"Back to all articles",ka:"სტატიების სიაში დაბრუნება"},g={uk:"Інші статті",en:"Other Articles",ka:"სხვა სტატიები"};return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:f,descriptions:m,keywords:d}),c.createElement("div",{className:"flex flex-col lg:flex-row w-full px-6 py-12 max-w-6xl mx-auto gap-8"},c.createElement("aside",{className:"lg:w-1/4 space-y-4"},c.createElement("h2",{className:"text-xl font-semibold mb-2"},g[r]),c.createElement("ul",{className:"space-y-2"},l.map(y=>c.createElement("li",{key:y.id},c.createElement(ye,{to:`/${r}/articles/${y.id}`,className:"text-blue-600 hover:underline"},y.title))))),c.createElement("article",{className:"lg:w-3/4 space-y-6"},c.createElement("h1",{className:"text-3xl font-bold text-gray-800"},s.title),s.paragraphs.map((y,w)=>c.createElement("p",{key:w,className:"text-gray-700"},y)),c.createElement("div",{className:"pt-8"},c.createElement(ye,{to:`/${r}/articles`,className:"text-blue-600 hover:underline text-sm"},"← ",p[r])))))}const wC=()=>{const{language:t}=Je(),r={uk:"AI-Компаньйон — Купівля Pro версії — BandBI",en:"AI Companion — Purchase Pro Version — BandBI",ka:"AI კომპანიონი — Pro ვერსიის შეძენა — BandBI"},a={uk:"Оформіть підписку на AI-Компаньйон Pro, щоб отримати необмежений запис, GPT-5, realtime-моделі та пріоритетну підтримку BandBI.",en:"Subscribe to AI Companion Pro to unlock unlimited recording, GPT-5, realtime models, and priority BandBI support.",ka:"გადაიხადეთ AI Companion Pro-ზე, რომ მიიღოთ შეუზღუდავი ჩაწერა, GPT-5, რეალურ დროში მოდელები და პრიორიტეტული მხარდაჭერა BandBI-სგან."},s={uk:"AI Companion, BandBI, підписка, покупка, Microsoft Store, Pro",en:"AI Companion, BandBI, subscription, purchase, Microsoft Store, Pro",ka:"AI Companion, BandBI, გამოწერა, შეძენა, Microsoft Store, Pro"};return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:r,descriptions:a,keywords:s}),c.createElement("div",{className:"max-w-3xl mx-auto px-6 py-16 text-center"},c.createElement("h1",{className:"text-3xl font-bold mb-6"},t==="uk"&&"AI-Компаньйон Pro",t==="en"&&"AI Companion Pro",t==="ka"&&"AI კომპანიონი Pro"),c.createElement("p",{className:"text-gray-700 mb-8"},a[t]),c.createElement("div",{className:"border rounded-xl shadow-md p-8 bg-gray-50"},c.createElement("h2",{className:"text-2xl font-semibold mb-4"},t==="uk"&&"Плани підписки",t==="en"&&"Subscription Plans",t==="ka"&&"გამოწერის გეგმები"),c.createElement("ul",{className:"text-left inline-block mb-6 text-gray-700"},c.createElement("li",null,"✅ ",t==="uk"&&"GPT-4o, GPT-5, моделі реального часу",t==="en"&&"GPT-4o, GPT-5, realtime models",t==="ka"&&"GPT-4o, GPT-5, რეალურ დროში მოდელები"),c.createElement("li",null,"✅ ",t==="uk"&&"Необмежені записи та транскрипції",t==="en"&&"Unlimited recordings and transcriptions",t==="ka"&&"შეუზღუდავი ჩაწერები და ტრანსკრიპციები"),c.createElement("li",null,"✅ ",t==="uk"&&"Пріоритетна підтримка BandBI",t==="en"&&"Priority BandBI support",t==="ka"&&"პრიორიტეტული მხარდაჭერა BandBI-სგან")),c.createElement("p",{className:"text-lg font-bold mb-6"},t==="uk"&&"₴899 / місяць",t==="en"&&"$21.99 / month",t==="ka"&&"₾59.99 / თვე"),c.createElement("a",{href:"https://apps.microsoft.com/detail/9phqtwrqk9m7",target:"_blank",rel:"noopener noreferrer",className:"flex justify-center mt-6"},c.createElement("img",{src:window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"https://get.microsoft.com/images/en-us%20dark.svg":"https://get.microsoft.com/images/en-us%20light.svg",alt:t==="uk"?"Отримати в Microsoft Store":t==="ka"?"გადმოწერე Microsoft Store-დან":"Get it from Microsoft Store",className:"w-72 md:w-80 hover:scale-105 transition-transform drop-shadow-xl"}))),c.createElement("p",{className:"mt-10 text-sm text-gray-500"},"BandBI (Individual Entrepreneur, Georgia) • [email protected]")))},xC={uk:"AI-Компаньйон для співбесід та перемовин — BandBI",en:"AI Companion for Interviews & Negotiations — BandBI",ka:"AI კომპანიონი გასაუბრებისა და მოლაპარაკებებისთვის — BandBI"},kh={uk:"AI-Компаньйон — це Windows-додаток, який чує все, що ви чуєте на комп'ютері (WhatsApp, Meet, Zoom), записує розмову, транскрибує і миттєво підказує відповіді від GPT.",en:"AI Companion is a Windows app that hears what you hear (WhatsApp, Meet, Zoom), records conversations, transcribes and instantly suggests GPT answers.",ka:"AI კომპანიონი არის Windows აპი, რომელიც ისმენს თქვენს ხმას (WhatsApp, Meet, Zoom), იწერს საუბრებს, ტრანსკრიბირებს და GPT პასუხებს გაძლევთ."},EC={uk:"AI компаньйон, співбесіда, перемовини, GPT, WhatsApp, Meet, Zoom",en:"AI companion, interview, negotiations, GPT, WhatsApp, Meet, Zoom",ka:"AI კომპანიონი, გასაუბრება, მოლაპარაკება, GPT, WhatsApp, Meet, Zoom"},Ps={uk:{feature:"Функція",free:"Безкоштовно",pro:"Pro",rows:[{feature:"Час запису",free:"10 секунд",pro:"Без обмежень"},{feature:"Моделі",free:"gpt-4o-mini, gpt-4o-transcribe",pro:"Усі доступні моделі OpenAI"},{feature:"Запити",free:"Обмежена кількість запитів (10)",pro:"Необмежено"},{feature:"Підтримка",free:"Немає",pro:"Email-підтримка / Пріоритетна допомога"},{feature:"Realtime підказки",free:"Недоступно",pro:"Доступні"},{feature:"Ціна",free:"Безкоштовно",pro:"899 грн на місяць"}]},en:{feature:"Feature",free:"Free",pro:"Pro",rows:[{feature:"Recording time",free:"10 sec",pro:"Unlimited"},{feature:"Models",free:"gpt-4o-mini, gpt-4o-transcribe",pro:"All available OpenAI models"},{feature:"Requests",free:"Limited requests (10)",pro:"Unlimited"},{feature:"Support",free:"None",pro:"Email support / Priority assistance"},{feature:"Realtime hints",free:"Not available",pro:"Available"},{feature:"Price",free:"Free",pro:"$21.99 per month"}]},ka:{feature:"ფუნქცია",free:"უფასო",pro:"პრო",rows:[{feature:"ჩაწერის დრო",free:"10 წამი",pro:"შეუზღუდავი"},{feature:"მოდელები",free:"gpt-4o-mini, gpt-4o-transcribe",pro:"ყველა ხელმისაწვდომი OpenAI მოდელი"},{feature:"მოთხოვნები",free:"10 მოთხოვნა",pro:"შეუზღუდავი"},{feature:"მხარდაჭერა",free:"არაა",pro:"Email მხარდაჭერა / პრიორიტეტული დახმარება"},{feature:"Realtime მინიშნებები",free:"მიუწვდომელია",pro:"ხელმისაწვდომია"},{feature:"ფასი",free:"უფასო",pro:"₾59.99"}]}},kC=()=>{const{language:t}=Je();return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:xC,descriptions:kh,keywords:EC}),c.createElement("div",{className:"max-w-5xl mx-auto px-6 py-12"},c.createElement("div",{className:"flex flex-col md:flex-row items-start justify-between mb-16 gap-8"},c.createElement("div",{className:"md:w-2/3 text-left"},c.createElement("h1",{className:"text-4xl font-bold mb-4"},t==="uk"&&"AI-Компаньйон для співбесід та перемовин",t==="en"&&"AI Companion for Interviews & Negotiations",t==="ka"&&"AI კომპანიონი გასაუბრებისა და მოლაპარაკებებისთვის"),c.createElement("p",{className:"text-gray-700 mb-6"},kh[t])),c.createElement("div",{className:"md:w-1/3 flex justify-center md:justify-end"},c.createElement("div",{className:"sticky top-6 flex flex-col items-center gap-3"}
113,c.createElement("a",{href:"https://apps.microsoft.com/detail/9phqtwrqk9m7",target:"_blank",rel:"noopener noreferrer",className:"mt-4 flex justify-center"},c.createElement("img",{src:window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"https://get.microsoft.com/images/en-us%20dark.svg":"https://get.microsoft.com/images/en-us%20light.svg",alt:t==="uk"?"Отримати в Microsoft Store":t==="ka"?"გადმოწერე Microsoft Store-დან":"Get it from Microsoft Store",className:"w-72 md:w-80 hover:scale-105 transition-transform drop-shadow-xl"}))))),c.createElement("h2",{className:"text-2xl font-semibold mb-6"},t==="uk"&&"Що вміє AI-Компаньйон",t==="en"&&"What AI Companion can do",t==="ka"&&"რა შეუძლია AI კომპანიონს"),c.createElement("ul",{className:"text-left space-y-4 mb-12"},t==="uk"&&c.createElement(c.Fragment,null,c.createElement("li",null,"🎧 Чує все, що ви чуєте на комп’ютері: WhatsApp, Google Meet, Zoom, Teams та інші."),c.createElement("li",null,"📝 Записує розмову та миттєво робить транскрипцію."),c.createElement("li",null,"🤖 Відправляє фрагменти в GPT і показує вам підказки у реальному часі."),c.createElement("li",null,"🕵️ Ніхто не здогадається, що ви користуєтесь помічником.")),t==="en"&&c.createElement(c.Fragment,null,c.createElement("li",null,"🎧 Hears everything you hear on your PC: WhatsApp, Google Meet, Zoom, Teams and more."),c.createElement("li",null,"📝 Records conversations and instantly transcribes them."),c.createElement("li",null,"🤖 Sends fragments to GPT and shows you real-time hints."),c.createElement("li",null,"🕵️ Nobody will know you are using an assistant.")),t==="ka"&&c.createElement(c.Fragment,null,c.createElement("li",null,"🎧 ისმენს ყველაფერს, რასაც თქვენ ისმენთ კომპიუტერზე: WhatsApp, Google Meet, Zoom, Teams და სხვა."),c.createElement("li",null,"📝 იწერს საუბრებს და მაშინვე ტრანსკრიბირებს."),c.createElement("li",null,"🤖 გზავნის ფრაგმენტებს GPT-ში და გაჩვენებთ რეალურ დროში მინიშნებებს."),c.createElement("li",null,"🕵️ არავინ გაიგებს, რომ იყენებთ ასისტენტს."))),c.createElement("h2",{className:"text-2xl font-semibold mb-6"},t==="uk"&&"Які моделі GPT використовуються",t==="en"&&"Which GPT models are used",t==="ka"&&"რომელი GPT მოდელები გამოიყენება"),c.createElement("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 mb-12 text-left"},c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},"⚡ gpt-4o-mini"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"Дуже швидка і легка модель для коротких підказок у реальному часі.",t==="en"&&"Fast lightweight model for quick real-time hints.",t==="ka"&&"სწრაფი და მსუბუქი მოდელი რეალურ დროში მოკლე მინიშნებებისთვის.")),c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},"📝 gpt-4o-transcribe"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"Модель для транскрипції аудіо: точно розпізнає мову.",t==="en"&&"Audio transcription model: accurately recognizes speech.",t==="ka"&&"აუდიოს ტრანსკრიბაციის მოდელი: ზუსტად ცნობს მეტყველებას.")),c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},"🤝 gpt-4o (PRO)"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"Потужна модель для розуміння контексту і складних відповідей.",t==="en"&&"Powerful model for context understanding and complex answers.",t==="ka"&&"ძლიერი მოდელი კონტექსტის გასაგებად და რთული პასუხებისთვის.")),c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},"🚀 gpt-5-latest (PRO)"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"Найновіша модель GPT-5 з покращеним розумінням контексту, логікою та швидкістю.",t==="en"&&"The latest GPT-5 model with improved reasoning, context handling, and speed.",t
113==="ka"&&"უახლესი GPT-5 მოდელი გაუმჯობესებული ლოგიკით, კონტექსტის დამუშავებით და სისწრაფით.")),c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},"🧠 gpt-5-reasoning (PRO)"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"Спеціалізована версія GPT-5 для складних логічних задач та обґрунтованих відповідей.",t==="en"&&"Specialized GPT-5 variant for complex logical reasoning and well-structured answers.",t==="ka"&&"სპეციალური GPT-5 ვერსია რთული ლოგიკური ამოცანებისთვის და არგუმენტირებული პასუხებისთვის.")),c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},"🎤 gpt-realtime (PRO)"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"Realtime модель для голосових діалогів з миттєвими відповідями.",t==="en"&&"Realtime model for voice conversations with instant responses.",t==="ka"&&"Realtime მოდელი ხმოვანი დიალოგებისთვის მყისიერი პასუხებით."))),c.createElement("h2",{className:"text-2xl font-semibold mb-6"},t==="uk"&&"Сценарії використання",t==="en"&&"Use Cases",t==="ka"&&"გამოყენების სცენარები"),c.createElement("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-6 mb-12"},c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},t==="uk"?"Співбесіди":t==="en"?"Job Interviews":"გასაუბრებები"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"AI допоможе швидко зреагувати на несподівані питання та сформулювати впевнені відповіді.",t==="en"&&"AI helps you react quickly to unexpected questions and craft confident answers.",t==="ka"&&"AI გეხმარებათ სწრაფად უპასუხოთ მოულოდნელ კითხვებს და თავდაჯერებული პასუხები გქონდეთ.")),c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},t==="uk"?"Ділові перемовини":t==="en"?"Business Negotiations":"ბიზნეს მოლაპარაკებები"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"Отримуйте аргументи та формулювання під час важливих переговорів у реальному часі.",t==="en"&&"Receive arguments and phrasing suggestions during critical negotiations in real time.",t==="ka"&&"მიიღეთ არგუმენტები და ფორმულირებები მნიშვნელოვანი მოლაპარაკებებისას რეალურ დროში.")),c.createElement("div",{className:"p-6 border rounded-xl shadow"},c.createElement("h3",{className:"font-bold mb-2"},t==="uk"?"Міжнародні зустрічі":t==="en"?"International Meetings":"საერთაშორისო შეხვედრები"),c.createElement("p",{className:"text-gray-600 text-sm"},t==="uk"&&"AI перекладе та підкаже потрібні слова англійською, грузинською чи іншою мовою.",t==="en"&&"AI translates and suggests the right words in English, Georgian, or other languages.",t==="ka"&&"AI თარგმნის და გთავაზობთ სწორ სიტყვებს ინგლისურად, ქართულად ან სხვა ენებზე."))),c.createElement("h2",{className:"text-2xl font-semibold mb-6"},t==="uk"&&"Версії",t==="en"&&"Versions",t==="ka"&&"ვერსიები"),c.createElement("div",{className:"overflow-x-auto mb-12"},c.createElement("table",{className:"w-full border-collapse border border-gray-300 text-sm"},c.createElement("thead",null,c.createElement("tr",{className:"bg-gray-100"},c.createElement("th",{className:"border px-4 py-2"},Ps[t].feature),c.createElement("th",{className:"border px-4 py-2"},Ps[t].free),c.createElement("th",{className:"border px-4 py-2"},Ps[t].pro))),c.createElement("tbody",null,Ps[t].rows.map((r,a)=>c.createElement("tr",{key:a},c.createElement("td",{className:"border px-4 py-2"},r.feature),c.createElement("td",{className:"border px-4 py-2"},r.free),c.createElement("td",{className:"border px-4 py-2"},r.pro)))))),c.createElement("div",{className:"text-center text-sm text-gray-500 mt-12"},c.createElement("section",{className:"mt-16 border-t pt-8 text-left"},c.createElement("h2",{className:"text-2xl font-semibold mb-4"},t==="uk"&&"Юридична інформація",t==="en"&&"Legal Information",t==="ka"&&"იურიდიული ინფორმაცია"),c.createElement("p",{className:"mb-2"},"BandBI (Individual Entrepreneur, Georgia), ID: 104742995, Small Business Certificate №007-0015277 (valid from 01.06.2025)."),c.createElement("p",{className:"mb-2"},t==="uk"&&"Усі ціни відображаються в українській гривні (UAH).",t==="en"&&"All prices are displayed in US Dollars (USD).",t==="ka"&&"საიტზე ყველა ფასი ნაჩვენებია ქართულ ლარში (GEL)."),c.createElement("p",null,t==="uk"&&c.createElement(c.Fragment,null,"Детальні умови: ",c.createElement("a",{href:`/${t}/terms`,className:"underline text-blue-600"},"Умови використання")," та ",c.createElement("a",{href:`/${t}/privacy`,className:"underline text-blue-600"},"Політика конфіденційності"),"."),t==="en"&&c.createElement(c.Fragment,null,"Details: ",c.createElement("a",{href:`/${t}/terms`,className:"underline text-blue-600"},"Terms & Conditions")," and ",c.createElement("a",{href:`/${t}/privacy`,className:"underline text-blue-600"}
113,"Privacy Policy"),"."),t==="ka"&&c.createElement(c.Fragment,null,"დეტალურად: ",c.createElement("a",{href:`/${t}/terms`,className:"underline text-blue-600"},"წესები და პირობები")," და ",c.createElement("a",{href:`/${t}/privacy`,className:"underline text-blue-600"},"კონფიდენციალურობის პოლიტიკა"),"."))))))},SC={uk:"Політика конфіденційності — BandBI",en:"Privacy Policy — BandBI",ka:"კონფიდენციალურობის პოლიტიკა — BandBI"},TC={uk:"Дізнайтеся, як ми збираємо та використовуємо ваші дані у додатку AI Companion.",en:"Learn how we collect and use your data in the AI Companion app.",ka:"გაიგეთ, როგორ ვაგროვებთ და ვიყენებთ თქვენს მონაცემებს AI Companion აპში."},CC={uk:"політика конфіденційності, AI Companion, BandBI",en:"privacy policy, AI Companion, BandBI",ka:"კონფიდენციალურობის პოლიტიკა, AI Companion, BandBI"},bC=()=>{const{language:t}=Je();return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:SC,descriptions:TC,keywords:CC}),c.createElement("div",{className:"max-w-5xl mx-auto px-6 py-12 text-left"},c.createElement("h1",{className:"text-3xl font-bold mb-6"},t==="uk"&&"Політика конфіденційності",t==="en"&&"Privacy Policy",t==="ka"&&"კონფიდენციალურობის პოლიტიკა"),t==="uk"&&c.createElement(c.Fragment,null,c.createElement("p",{className:"mb-4"},"Ця Політика конфіденційності описує, як BandBI збирає, зберігає та використовує інформацію у додатку ",c.createElement("b",null,"AI Companion"),". Використовуючи додаток, ви погоджуєтеся з цією Політикою."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"1. Дані, які ми збираємо"),c.createElement("p",{className:"mb-4"},"Єдиний технічний ідентифікатор, який збирає додаток — це"," ",c.createElement("b",null,"VolumeSeri
113alNumber")," вашого пристрою. Він використовується виключно для перевірки ліцензії та не містить персональних даних."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"2. API ключі та записи"),c.createElement("p",{className:"mb-4"},"Ваші API ключі зберігаються ",c.createElement("b",null,"у зашифрованому вигляді")," локально та ніколи не передаються нам. Вони використовуються тільки для з’єднання з"," ",c.createElement("b",null,"OpenAI"),"."),c.createElement("p",{className:"mb-4"},"Записи ваших розмов (аудіо та їхні транскрипти) передаються"," ",c.createElement("b",null,"лише до OpenAI")," для генерації відповідей. BandBI не зберігає ці дані на своїх серверах."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"3. Використання даних"),c.createElement("p",{className:"mb-4"},"Отримані дані застосовуються лише для активації ліцензії та забезпечення функціонування додатку. Ми не передаємо ваші дані третім сторонам."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"4. Відповідальність"),c.createElement("p",{className:"mb-4"},"Додаток надається на умовах ",c.createElement("b",null,'"як є"'),". Ми не несемо відповідальності за будь-які прямі або непрямі збитки, що можуть виникнути при його використанні."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"5. Зміни"),c.createElement("p",{className:"mb-4"},"Ми можемо час від часу оновлювати цю Політику. Актуальна версія завжди доступна на нашому сайті."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"6. Інформація про компанію"),c.createElement("p",{className:"mb-4"},"BandBI (ФОП, Грузія), ID: 104742995, Сертифікат малого бізнесу №007-0015277 (чинний з 01.06.2025)."),c.createElement("p",{className:"mb-4"},"Контакти (email, телефон) доступні на офіційному сайті"," ",c.createElement("a",{href:"https://bandbi.site",className:"text-blue-600 underline"},"bandbi.site"),"."),c.createElement("p",{className:"mb-4"},"Підтримка доступна Пн–Пт, 09:00–18:00 (GMT+4).")),t==="en"&&c.createElement(c.Fragment,null,c.createElement("p",{className:"mb-4"},"This Privacy Policy explains how BandBI collects, stores and uses data in the ",c.createElement("b",null,"AI Companion")," app. By using the app, you agree to this Policy."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"1. Data We Collect"),c.createElement("p",{className:"mb-4"},"The only technical identifier collected by the app is your"," ",c.createElement("b",null,"VolumeSeri
113alNumber"),". It is used solely for license verification and does not contain personal information."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"2. API Keys and Records"),c.createElement("p",{className:"mb-4"},"Your API keys are stored ",c.createElement("b",null,"encrypted locally")," and are never shared with us. They are only transmitted to ",c.createElement("b",null,"OpenAI"),"."),c.createElement("p",{className:"mb-4"},"Your conversation recordings (audio and transcripts) are"," ",c.createElement("b",null,"transmitted only to OpenAI")," to generate responses. BandBI does not store these data on its servers."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"3. Use of Data"),c.createElement("p",{className:"mb-4"},"The collected data is used solely for license activation and proper functioning of the app. We do not share your data with third parties."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"4. Disclaimer"),c.createElement("p",{className:"mb-4"},"The app is provided ",c.createElement("b",null,'"as is"'),". We are not responsible for any direct or indirect damages that may occur from its use."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"5. Changes"),c.createElement("p",{className:"mb-4"},"We may update this Policy from time to time. The current version is always available on our website."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"6. Company Information"),c.createElement("p",{className:"mb-4"},"BandBI (Individual Entrepreneur, Georgia), ID: 104742995, Certificate of Small Business Status №007-0015277 (valid from 01.06.2025)."),c.createElement("p",{className:"mb-4"},"Contact details (email, phone) are available on our official website"," ",c.createElement("a",{href:"https://bandbi.site",className:"text-blue-600 underline"},"bandbi.site"),"."),c.createElement("p",{className:"mb-4"},"Support is available Mon–Fri, 09:00–18:00 (GMT+4).")),t==="ka"&&c.createElement(c.Fragment,null,c.createElement("p",{className:"mb-4"},"ეს კონფიდენციალურობის პოლიტიკა განმარტავს, თუ როგორ აგროვებს, ინახავს და იყენებს BandBI მონაცემებს ",c.createElement("b",null,"AI Companion")," აპში. აპის გამოყენებით, თქვენ ეთანხმებით ამ პოლიტიკას."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"1. რა მონაცემებს ვაგროვებთ"),c.createElement("p",{className:"mb-4"},"ერთადერთი ტექნიკური იდენტიფიკატორი, რომელსაც აგროვებს აპი არის"," ",c.createElement("b",null,"VolumeSeri
113alNumber"),". ის გამოიყენება მხოლოდ ლიცენზიის შესამოწმებლად და არ შეიცავს პერსონალურ მონაცემებს."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"2. API გასაღებები და ჩანაწერები"),c.createElement("p",{className:"mb-4"},"თქვენი API გასაღებები ინახება ",c.createElement("b",null,"დაშიფრული სახით")," ლოკალურად და არასოდეს გადაეცემა ჩვენ. ისინი გამოიყენება მხოლოდ ",c.createElement("b",null,"OpenAI"),"-თან დასაკავშირებლად."),c.createElement("p",{className:"mb-4"},"თქვენი საუბრების ჩანაწერები (აუდიო და ტრანსკრიპტები) იგზავნება"," ",c.createElement("b",null,"მხოლოდ OpenAI-ში")," პასუხების მისაღებად. BandBI არ ინახავს ამ მონაცემებს საკუთარ სერვერებზე."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"3. მონაცემების გამოყენება"),c.createElement("p",{className:"mb-4"},"შეგროვებული მონაცემები გამოიყენება მხოლოდ ლიცენზიის გასააქტიურებლად და აპის გამართულად მუშაობისთვის. ჩვენ არ ვუზიარებთ თქვენს მონაცემებს მესამე მხარეებს."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"4. პასუხისმგებლობა"),c.createElement("p",{className:"mb-4"},"აპი მიწოდებულია ",c.createElement("b",null,'"როგორც არის"')," პრინციპით. ჩვენ არ ვაგებთ პასუხს აპის გამოყენებით წარმოშობილ პირდაპირ ან ირიბ ზარალზე."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"5. ცვლილებები"),c.createElement("p",{className:"mb-4"},"შესაძლოა დროდადრო განვაახლოთ ეს პოლიტიკა. განახლებული ვერსია ყოველთვის ხელმისაწვდომია ჩვენს ვებგვერდზე."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"6. კომპანიის ინფორმაცია"),c.createElement("p",{className:"mb-4"},"BandBI (ინდივიდუალური მეწარმე, საქართველო), ID: 104742995, მცირე ბიზნესის სერტიფიკატი №007-0015277 (ძალაში 01.06.2025-დან)."),c.createElement("p",{className:"mb-4"},"საკონტაქტო ინფორმაცია (ელფოსტა, ტელეფონი) ხელმისაწვდომია ჩვენს ოფიციალურ ვებგვერდზე"," ",c.createElement("a",{href:"https://bandbi.site",className:"text-blue-600 underline"},"bandbi.site"),"."),c.createElement("p",{className:"mb-4"},"მხარდაჭერა ხელმისაწვდომია ორშ–პარ, 09:00–18:00 (GMT+4)."))))},PC={uk:"Умови використання — BandBI",en:"Terms & Conditions — BandBI",ka:"გამოყენების პირობები — BandBI"},RC={uk:"Ознайомтеся з умовами використання додатку AI Companion.",en:"Read the Terms & Conditions for using the AI Companion app.",ka:"გაეცანით AI Companion აპის გამოყენების პირობებს."},NC={uk:"умови використання, Terms and Conditions, AI Companion, BandBI",en:"terms and conditions, AI Companion, BandBI",ka:"გამოყენების პირობები, AI Companion, BandBI"},IC=()=>{const{language:t}=Je();return c.createElement(c.Fragment,null,c.createElement(Ht,{titles:PC,descriptions:RC,keywords:NC}),c.createElement("div",{className:"max-w-5xl mx-auto px-6 py-12 text-left"},c.createElement("h1",{className:"text-3xl font-bold mb-6"},t==="uk"&&"Умови використання",t==="en"&&"Terms & Conditions",t==="ka"&&"გამოყენების პირობები"),t==="uk"&&c.createElement(c.Fragment,null,c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"1. Загальні положення"),c.createElement("p",{className:"mb-4"},"Ці Умови регулюють використання додатку ",c.createElement("b",null,"AI Companion"),", розробленого BandBI. Використовуючи додаток, ви підтверджуєте згоду з цими умовами."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"2. Ліцензія"),c.createElement("p",{className:"mb-4"},"Ви отримуєте невиключне право користування додатком для власних потреб. Забороняється поширення, перепродаж або модифікація додатку без згоди BandBI."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"3. Використання даних"),c.createElement("p",{className:"mb-4"},"Додаток збирає лише ",c.createElement("b",null,"VolumeSeri
113alNumber")," вашого пристрою для перевірки ліцензії. API ключі та записи розмов передаються ",c.createElement("b",null,"лише до OpenAI"),". BandBI не зберігає ці дані на своїх серверах."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"4. Обмеження"),c.createElement("ul",{className:"list-disc list-inside mb-4"},c.createElement("li",null,"Заборонено використовувати додаток для незаконних цілей."),c.createElement("li",null,"Заборонено намагатися обійти механізми ліцензування."),c.createElement("li",null,"Заборонено поширювати шкідливе ПЗ через додаток.")),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"5. Відмова від гарантій"),c.createElement("p",{className:"mb-4"},"Додаток надається на умовах ",c.createElement("b",null,'"як є"'),". BandBI не гарантує безперебійну роботу та не відповідає за сумісність з обладнанням чи ПЗ."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"6. Обмеження відповідальності"),c.createElement("p",{className:"mb-4"},"BandBI не несе відповідальності за будь-які прямі, непрямі чи побічні збитки, що виникли внаслідок використання додатку. Максимальна відповідальність обмежена сумою, сплаченою за ліцензію."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"7. Доставка"),c.createElement("p",{className:"mb-4"},"Усі продукти та ліцензії є цифровими та надаються в електронному вигляді одразу після оплати."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"8. Повернення коштів"),c.createElement("p",{className:"mb-4"},"Ви можете вимагати повернення протягом 14 днів, якщо послуга не була активована або істотно використана."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"9. Інформація про компанію"),c.createElement("p",{className:"mb-4"},"BandBI (ФОП, Грузія), ID: 104742995, Сертифікат малого бізнесу №007-0015277 (чинний з 01.06.2025)."),c.createElement("p",{className:"mb-4"},"Контактні дані (email, телефон) доступні на сайті"," ",c.createElement("a",{href:"https://bandbi.site",className:"text-blue-600 underline"},"bandbi.site"),". Підтримка: Пн–Пт, 09:00–18:00 (GMT+4)."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"10. Юрисдикція"),c.createElement("p",{className:"mb-4"},"Ці умови регулюються законодавством Грузії.")),t==="en"&&c.createElement(c.Fragment,null,c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"1. General Provisions"),c.createElement("p",{className:"mb-4"},"These Terms govern the use of the ",c.createElement("b",null,"AI Companion")," app developed by BandBI. By using the app, you agree to these Terms."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"2. License"),c.createElement("p",{className:"mb-4"},"You are granted a non-exclusive right to use the app for personal purposes. Redistribution, resale, or modification without BandBI’s consent is prohibited."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"3. Data Usage"),c.createElement("p",{className:"mb-4"},"The app only collects your device’s ",c.createElement("b",null,"VolumeSeri
113alNumber")," for license verification. API keys and conversation records are transmitted"," ",c.createElement("b",null,"only to OpenAI"),". BandBI does not store these data on its servers."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"4. Restrictions"),c.createElement("ul",{className:"list-disc list-inside mb-4"},c.createElement("li",null,"Do not use the app for unlawful purposes."),c.createElement("li",null,"Do not attempt to bypass license mechanisms."),c.createElement("li",null,"Do not distribute malicious software through the app.")),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"5. Disclaimer of Warranties"),c.createElement("p",{className:"mb-4"},"The app is provided ",c.createElement("b",null,'"as is"'),". BandBI does not guarantee uninterrupted operation or compatibility with hardware/software."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"6. Limitation of Liability"),c.createElement("p",{className:"mb-4"},"BandBI is not liable for any direct, indirect, or incidental damages arising from app use. Liability is limited to the amount paid for the license."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"7. Delivery"),c.createElement("p",{className:"mb-4"},"All products and licenses are digital and delivered electronically immediately after payment."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"8. Refund Policy"),c.createElement("p",{className:"mb-4"},"You may request a refund within 14 days if the service has not been activated or substantially used."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"9. Company Information"),c.createElement("p",{className:"mb-4"},"BandBI (Individual Entrepreneur, Georgia), ID: 104742995, Certificate of Small Business Status №007-0015277 (valid from 01.06.2025)."),c.createElement("p",{className:"mb-4"},"Contact details (email, phone) are available at"," ",c.createElement("a",{href:"https://bandbi.site",className:"text-blue-600 underline"},"bandbi.site"),". Support: Mon–Fri, 09:00–18:00 (GMT+4)."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"10. Governing Law"),c.createElement("p",{className:"mb-4"},"These Terms are governed by the laws of Georgia.")),t==="ka"&&c.createElement(c.Fragment,null,c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"1. ზოგადი დებულებები"),c.createElement("p",{className:"mb-4"},"ეს პირობები არეგულირებს BandBI-ის მიერ შექმნილი ",c.createElement("b",null,"AI Companion")," აპის გამოყენებას. აპის გამოყენებით, თქვენ ეთანხმებით ამ პირობებს."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"2. ლიცენზია"),c.createElement("p",{className:"mb-4"},"თქვენ იღებთ არაექსკლუზიურ უფლებას აპის პირადი მიზნებისთვის გამოყენებაზე. აკრძალულია აპის გავრცელება, გადაყიდვა ან მოდიფიკაცია BandBI-ის თანხმობის გარეშე."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"3. მონაცემების გამოყენება"),c.createElement("p",{className:"mb-4"},"აპი აგროვებს მხოლოდ თქვენი მოწყობილობის ",c.createElement("b",null,"VolumeSeri
113alNumber"),"-ს ლიცენზიის შესამოწმებლად. API გასაღებები და საუბრების ჩანაწერები იგზავნება"," ",c.createElement("b",null,"მხოლოდ OpenAI-ში"),". BandBI არ ინახავს ამ მონაცემებს საკუთარ სერვერებზე."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"4. შეზღუდვები"),c.createElement("ul",{className:"list-disc list-inside mb-4"},c.createElement("li",null,"აკრძალულია აპის გამოყენება უკანონო მიზნებისთვის."),c.createElement("li",null,"აკრძალულია ლიცენზიის შემოვლის მცდელობა."),c.createElement("li",null,"აკრძალულია მავნე პროგრამის გავრცელება აპის მეშვეობით.")),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"5. გარანტიებზე უარი"),c.createElement("p",{className:"mb-4"},"აპი მიწოდებულია ",c.createElement("b",null,'"როგორც არის"')," პრინციპით. BandBI არ იძლევა გარანტიას უწყვეტ მუშაობაზე ან კონკრეტულ მოწყობილობასთან თავსებადობაზე."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"6. პასუხისმგებლობის შეზღუდვა"),c.createElement("p",{className:"mb-4"},"BandBI არ არის პასუხისმგებელი აპის გამოყენებით გამოწვეულ პირდაპირ, არაპირდაპირ ან თანმდევ ზარალზე. მაქსიმალური პასუხისმგებლობა შეზღუდულია გადახდილი ლიცენზიის ღირებულებით."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"7. მიწოდება"),c.createElement("p",{className:"mb-4"},"ყველა პროდუქტი და ლიცენზია ციფრულია და გადმოიცემა ელექტრონულად გადახდისთანავე."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"8. თანხის დაბრუნება"),c.createElement("p",{className:"mb-4"},"შეგიძლიათ მოითხოვოთ თანხის დაბრუნება 14 დღის განმავლობაში, თუ სერვისი არ ყოფილა გააქტიურებული ან არსებითად გამოყენებული."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"9. კომპანიის ინფორმაცია"),c.createElement("p",{className:"mb-4"},"BandBI (ინდივიდუალური მეწარმე, საქართველო), ID: 104742995, მცირე ბიზნესის სერტიფიკატი №007-0015277 (ძალაში 01.06.2025-დან)."),c.createElement("p",{className:"mb-4"},"საკონტაქტო ინფორმაცია (ელფოსტა, ტელეფონი) ხელმისაწვდომია"," ",c.createElement("a",{href:"https://bandbi.site",className:"text-blue-600 underline"},"bandbi.site"),". მხარდაჭერა: ორშ–პარ, 09:00–18:00 (GMT+4)."),c.createElement("h2",{className:"text-xl font-semibold mt-6 mb-2"},"10. სამართლებრივი დებულება"),c.createElement("p",{className:"mb-4"},"ეს პირობები რეგულირდება საქართველოს კანონმდებლობით."))))};function AC(){return c.createElement(we.div,{className:"min-h-screen flex flex-col items-center justify-center bg-white text-center p-8",initial:{opacity:0}
113,animate:{opacity:1}},c.createElement("h1",{className:"text-6xl font-bold text-red-500 mb-4"},"404"),c.createElement("p",{className:"text-xl mb-4"},"Сторінку не знайдено"),c.createElement("p",{className:"text-md text-gray-600 mb-6"},"Можливо, вона була переміщена або видалена."),c.createElement(ye,{to:"/",className:"px-6 py-3 bg-gray-600 text-white rounded-xl shadow hover:bg-gray-700 transition"},"Повернутись на головну"))}const MC=()=>{const{language:t}=Je(),[r,a]=T.useState(!1),s={uk:{message:"Ми використовуємо cookies для покращення досвіду користувача та аналітики.",accept:"Прийняти",decline:"Відхилити"},en:{message:"We use cookies to improve user experience and analytics.",accept:"Accept",decline:"Decline"},ka:{message:"ჩვენ ვიყენებთ ქუქიებს მომხმარებლის გამოცდილებისა და ანალიტიკის გასაუმჯობესებლად.",accept:"დადასტურება",decline:"უარყოფა"}},l=s[t]||s.en;T.useEffect(()=>{localStorage.getItem("cookiesChoice")||a(!0)},[]);const f=()=>{localStorage.setItem("cookiesChoice","accepted"),a(!1),window.gtag&&window.gtag("consent","update",{analytics_storage:"granted",ad_storage:"granted"})},d=()=>{localStorage.setItem("cookiesChoice","declined"),a(!1),window.gtag&&window.gtag("consent","update",{analytics_storage:"denied",ad_storage:"denied"})};return r?c.createElement("div",{className:"fixed bottom-0 left-0 w-full bg-gray-900 text-white text-sm p-4 flex flex-col md:flex-row justify-between items-center z-50 shadow-lg"},c.createElement("p",{className:"mb-2 md:mb-0"},l.message),c.createElement("div",{className:"flex space-x-3"},c.createElement("button",{onClick:f,className:"bg-blue-600 hover:bg-blue-700 px-4 py-2 rounded text-white text-sm transition"},l.accept),c.createElement("button",{onClick:d,className:"bg-gray-700 hover:bg-gray-800 px-4 py-2 rounded text-white text-sm transition"},l.decline))):null},BC="wss://bandbicall-signal.dcua.workers.dev",LC="https://bandbicall-signal.dcua.workers.dev/turn",DC={uk:"BandbiCall — Відеодзвінки WebRTC — P2P без реєстрації",en:"BandbiCall — WebRTC Video Calls — P2P No Account",ka:"BandbiCall — WebRTC ვიდეოზარები — P2P რეგისტრაციის გარეშე"},OC={uk:"Моментальні відеодзвінки через WebRTC без акаунтів та серверної ретрансляції. P2P шифрування, TURN fallback, зручна кімната за кодом.",en:"Instant WebRTC calls with no accounts or media routing. Encrypted P2P connection with optional TURN relay, quick room join by code.",ka:"მყისიერი WebRTC ზარები ანგარიშის გარეშე. დაშიფრული P2P კავშირი TURN-ით, კოდის საშუალებით სწრაფი შეღება ოთახში."},_C={uk:"BandbiCall, WebRTC, відеодзвінки, P2P, без реєстрації, TURN, STUN, браузерні дзвінки",en:"BandbiCall, WebRTC, video call, P2P, no account, TURN, STUN, browser call",ka:"BandbiCall, WebRTC, ვიდეოზარი, P2P, რეგისტრაციის გარეშე, TURN, STUN"},FC={uk:{title:"BandbiCall Web",how:"Як працює BandbiCall?",how_1:"1) Ви створюєте кімнату → отримуєте короткий код, який передаєте співрозмовнику.",how_2:"2) Приєднання відбувається за цим кодом — без акаунтів та реєстрації.",how_3:"3) WebRTC з'єднує пристрої напряму (браузер ↔ браузер).",how_4:"4) Відео/аудіо не передається через сервер — тільки P2P, шифрованим SRTP.",how_5:"5) Якщо пряме підключення неможливе → використовується TURN як резерв.",room:"Код кімнати",create:"Створити",join:"Приєднатися",leave:"Вийти",video:"🎥 Відео",local:"Ваше відео",remote:"Співрозмовник",logs:"📜 Логи",desc_web:"BandbiCall — швидкі відеодзвінки без реєстрацій прямо у браузері.",desc_app:"Android-додаток працює стабільніше та у фоні.",apk:"Завантажити APK (буде доступний пізніше)",foot1:"Web — швидкий старт без встановлення",foot2:"Android — стабільний дзвінок щодня"},en:{title:"BandbiCall Web",how:"How does BandbiCall work?",how_1:"1) You create a room and get a short connection code.",how_2:"2) Your partner joins by code — no accounts required.",how_3:"3) WebRTC connects browsers directly (P2P).",how_4:"4) Media is not routed through servers — encrypted SRTP only.",how_5:"5) TURN 
113is used only if direct connection is blocked.",room:"Room Code",create:"Create",join:"Join",leave:"Leave",video:"🎥 Video",local:"Your Video",remote:"Remote User",logs:"📜 Logs",desc_web:"BandbiCall — fast secure video calls directly in browser.",desc_app:"Android app works more stable & supports background mode.",apk:"Download APK (not available yet)",foot1:"Web — instant click-to-call",foot2:"Android — stable daily usage"},ka:{title:"BandbiCall Web",how:"როგორ მუშაობს BandbiCall?",how_1:"1) ქმნით ოთახს და იღებთ მოკლე კოდს.",how_2:"2) პარტნიორი შედის ამ კოდით — რეგისტრაცია არ არის საჭირო.",how_3:"3) WebRTC ამყარებს პირდაპირ კავშირს ბრაუზერებს შორის.",how_4:"4) ვიდეო/აუდიო არ გადის სერვერზე — მხოლოდ დაშიფრული P2P.",how_5:"5) TURN მუშაობს მხოლოდ მაშინ თუ პირდაპირი კავშირი ვერ ხერხდება.",room:"ოთახის კოდი",create:"შექმნა",join:"შესვლა",leave:"გასვლა",video:"🎥 ვიდეო",local:"თქვენი ვიდეო",remote:"კავშირი",logs:"📜 ლოგები",desc_web:"BandbiCall — სწრაფი WebRTC ზარები ბრაუზერში.",desc_app:"Android აპი სტაბილურად მუშაობს ფონში.",apk:"APK ჩამოტვირთვა (ჯერ არ არის ხელმისაწვდომი)",foot1:"Web — მყისიერი ჩართვა",foot2:"Android — სტაბილური ყოველდღიური გამოყენება"}};function VC(){const{language:t}=Je(),r=FC[t],[a,s]=T.useState(""),[l,f]=T.useState([]),[d,m]=T.useState(!1),p=T.useRef(null),g=T.useRef(null),y=T.useRef(null),w=T.useRef(new MediaStream),x=T.useRef([]),k=T.useRef(null),S=T.useRef(null),P=(W,re="")=>{f(de=>[...de,{msg:W,type:re,time:new Date().toLocaleTimeString()}]),console.log(W)},I=async()=>{if(!y.current)try{const W=await navigator.mediaDevices.getUserMedia({video:!0,audio:!0});y.current=W,k.current&&(k.current.srcObject=W),P("📷 Local media initialized","success")}catch(W){throw P("Media init error: "+W.message,"error"),W}},R=async()=>{try{const W=await fetch(`${LC}?uid=web`,{cache:"no-store"});if(!W.ok)throw new Error("TURN HTTP error");return await W.json()}catch(W){return P("TURN fetch error: "+W.message,"error"),null}},D=W=>{var He;const re=[];W!=null&&W.urls?re.push({urls:W.urls,username:W.username,credential:W.credential}):re.push({urls:"stun:stun.l.google.com:19302"});const de=new RTCPeerConnection({iceServers:re});return de.onicecandidate=ge=>{var Oe;ge.candidate&&((Oe=p.current)==null?void 0:Oe.readyState)===WebSocket.OPEN&&p.current.send(JSON.stringify({type:"candidate",candidate:ge.candidate.candidate}))},de.ontrack=ge=>{const Oe=w.current;Oe.addTrack(ge.track);const ke=S.current;ke&&(ke.srcObject=Oe,setTimeout(()=>{const ve=ke.play();ve!=null&&ve.catch&&ve.catch(()=>P("⚠️ Autoplay requires click","error"))},100)),P(`🎬 Remote ${ge.track.kind} track`,"success")},(He=y.current)==null||He.getTracks().forEach(ge=>de.addTrack(ge)),g.current=de,de},L=async()=>{const W=g.current;if(W)try{const re=await W.createOffer();await W.setLocalDescription(re),p.current.send(JSON.stringify({type:"offer",sdp:re.sdp})),P("📤 Offer sent","success")}catch(re){P("Offer error: "+re.message,"error")}},$=async(W,re)=>{const de=(W??a).trim();if(!de)return P("Room code required","error");if(d)return;m(!0);try{await I()}catch{m(!1);return}const He=await R();if(p.current)try{p.current.close()}catch{}const ge=new WebSocket(`${BC}/?room=${de}`);p.current=ge,ge.onopen=()=>{P("🔌 WS connected","success"),x.current=[],D(He),re==="caller"&&L()},ge.onmessage=async Oe=>{const ke=g.current;if(!ke)return;let ve;try{ve=JSON.parse(Oe.data)}catch{return P("Invalid JSON","error")}if(ve.type==="ping"){ge.send(JSON.stringify({type:"pong"}));return}if(ve.type==="offer"){P("📩 Offer received","success");try{await ke.setRemoteDescription({type:"offer",sdp:ve.sdp})}catch(U){return P("Offer apply error: "+U.message,"error")}for(const U of x.current)try{await ke.addIceCandidate(U)}catch(J){P("Queued ICE error: "+J.message,"error")}x.current=[];const se=await ke.createAnswer();await ke.setLocalDescription(se),ge.send(JSON.stringify({type:"answer",sdp:se.sdp})),P("📨 Answer sent","success");return}if(ve.type==="answer"){if(P("📩 Answer received"),ke.signalingState!=="have-local-offer")return P("⚠️ Ignored answer (wrong state: "+ke.signalingState+")","info");try{await ke.setRemoteDescription({type:"answer",sdp:ve.sdp})}catch(se){P("Answer error: "+se.message,"error")}return}if(ve.type==="candidate"){const se={candidate:ve.candidate,sdpMid:"0",sdpMLineIndex:0};if(!ke.remoteDescription)return x.current.push(se),P("Queued ICE candidate","info");try{await ke.addIceCandidate(se),P("ICE added","success")}catch(U){P("ICE error: "+U.message,"error")}return}ve.type==="peer-left"&&(P("👋 Peer left","error"),j())},ge.onerror=()=>{P("WS error","error"),m(!1)},ge.onclose=()=>{P("WS closed","error"),m(!1)}},j=()=>{var W,re;try{(W=p.current)==null||W.close()}catch{}p.current=null;try{(re=g.current)==null||re.close()}catch{}
113g.current=null,y.current&&(y.current.getTracks().forEach(de=>de.stop()),y.current=null),w.current&&w.current.getTracks().forEach(de=>w.current.removeTrack(de)),x.current=[],m(!1)},G=async()=>{const W=Math.random().toString(36).substring(2,8).toUpperCase();s(W),await $(W,"caller")},ee=async()=>{await $(void 0,"callee")},Q=()=>{var W;((W=p.current)==null?void 0:W.readyState)===WebSocket.OPEN&&p.current.send(JSON.stringify({type:"close"})),P("🚪 Left room","error"),j()};return c.createElement("section",{className:"py-16 max-w-5xl mx-auto px-4 text-white"},c.createElement(Ht,{titles:DC,descriptions:OC,keywords:_C}),c.createElement("h1",{className:"text-3xl font-bold text-center mb-8"},r.title),c.createElement("div",{className:"bg-[#161616] p-6 rounded-xl border border-[#333] mb-10 text-sm leading-relaxed text-gray-200"},c.createElement("h2",{className:"text-xl font-semibold mb-3"},r.how),c.createElement("p",null,r.how_1),c.createElement("p",null,r.how_2),c.createElement("p",null,r.how_3),c.createElement("p",null,r.how_4),c.createElement("p",null,r.how_5)),c.createElement("div",{className:"bg-[#161616] p-6 rounded-xl border border-[#333] mb-10 text-gray-200"},c.createElement("p",null,r.desc_web),c.createElement("p",{className:"mt-2"},r.desc_app),c.createElement("a",{className:"underline text-blue-300 cursor-pointer block mt-3"},r.apk),c.createElement("p",{className:"text-gray-400 mt-2"},r.foot1),c.createElement("p",{className:"text-gray-400"},r.foot2)),c.createElement("div",{className:"bg-[#161616] p-6 rounded-xl border border-[#333] mb-6"},c.createElement("label",{className:"block mb-2 text-gray-300"},r.room),c.createElement("input",{className:"w-full bg-[#0f0f0f] border border-[#333] p-3 rounded mb-3 text-center",value:a,placeholder:"ABC123",onChange:W=>s(W.target.value.toUpperCase())}),c.createElement("div",{className:"flex gap-3 justify-center mb-3 flex-wrap"},c.createElement("button",{onClick:G,className:"bg-green-600 px-4 py-2 rounded",disabled:d},r.create),c.createElement("button",{onClick:ee,className:"bg-blue-600 px-4 py-2 rounded",disabled:d},r.join),c.createElement("button",{onClick:Q,className:"bg-red-600 px-4 py-2 rounded"},r.leave))),c.createElement("div",{className:"bg-[#161616] p-6 rounded-xl border border-[#333] mb-6"},c.createElement("h2",{className:"text-xl mb-4"},r.video),c.createElement("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4"},c.createElement("div",null,c.createElement("p",{className:"mb-2 text-gray-300"},r.local),c.createElement("video",{ref:k,autoPlay:!0,muted:!0,playsInline:!0,className:"w-full bg-black rounded"})),c.createElement("div",null,c.createElement("p",{className:"mb-2 text-gray-300"},r.remote),c.createElement("video",{ref:S,autoPlay:!0,playsInline:!0,className:"w-full bg-black rounded"})))),c.createElement("div",{className:"bg-[#161616] p-4 rounded-xl border border-[#333] max-h-64 overflow-y-auto text-xs"},c.createElement("h2",{className:"text-sm mb-2"},r.logs),l.map((W,re)=>c.createElement("div",{key:re,className:"text-gray-300"},"[",W.time,"] ",W.msg))))}const jC=({children:t})=>{const{lang:r}=Ws();return c.createElement(JS,{key:r,lang:r||"uk"},t)},$C=()=>c.createElement(Oh,null,c.createElement(it,{path:"",element:c.createElement(sC,null)}),c.createElement(it,{path:"pricing",element:c.createElement(fC,null)}),c.createElement(it,{path:"services",element:c.createElement(dC,null)}),c.createElement(it,{path:"articles",element:c.createElement(mC,null)}),c.createElement(it,{path:"integration",element:c.createElement(yC,null)}),c.createElement(it,{path:"aicompanion",element:c.createElement(kC,null)}),c.createElement(it,{path:"privacy",element:c.createElement(bC,null)}),c.createElement(it,{path:"terms",element:c.createElement(IC,null)}),c.createElement(it,{path:"buy",element:c.createElement(wC,null)}),c.createElement(it,{path:"articles/:articleId",element:c.createElement(vC,null)}),c.createElement(it,{path:"call",element:c.createElement(VC,null)}),c.createElement(it,{path:"*",element:c.createElement(AC,null)})),zC=()=>c.createElement(ax,null,c.createElement(Oh,null,c.createElement(it,{path:"/",element:c.createElement(Wm,{to:"/uk",replace:!0})}),c.createElement(it,{path:"/buy",element:c.createElement(Wm,{to:"/en/buy",replace:!0})}),c.createElement(it,{path:"/:lang/*",element:c.createElement(jC,null,c.createElement("div",{className:"flex justify-center w-full"},c.createElement(eT,null)),c.createElement("div",{className:"mt-20"},c.createElement($C,null)),c.createElement(dT,null),c.createElement(MC,null))}))),UC=I0.createRoot(document.getElementById("root"));UC.render(c.createElement(K0,null,c.createElement(zC,null)));

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.