var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;li[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),d=e=>a.call(e,`module.exports`)?e[`module.exports`]:l(t({},`__esModule`,{value:!0}),e);(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var f=s((e=>{var t=Symbol.for(`react.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.provider`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.iterator;function p(e){return typeof e!=`object`||!e?null:(e=f&&e[f]||e[`@@iterator`],typeof e==`function`?e:null)}var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},h=Object.assign,g={};function _(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}_.prototype.isReactComponent={},_.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`setState(...): takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},_.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function v(){}v.prototype=_.prototype;function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}var b=y.prototype=new v;b.constructor=y,h(b,_.prototype),b.isPureReactComponent=!0;var x=Array.isArray,S=Object.prototype.hasOwnProperty,C={current:null},w={key:!0,ref:!0,__self:!0,__source:!0};function T(e,n,r){var i,a={},o=null,s=null;if(n!=null)for(i in n.ref!==void 0&&(s=n.ref),n.key!==void 0&&(o=``+n.key),n)S.call(n,i)&&!w.hasOwnProperty(i)&&(a[i]=n[i]);var c=arguments.length-2;if(c===1)a.children=r;else if(1{t.exports=f()})),m=s((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0>>1,a=e[r];if(0>>1;ri(c,n))li(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(li(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=typeof setTimeout==`function`?setTimeout:null,_=typeof clearTimeout==`function`?clearTimeout:null,v=typeof setImmediate<`u`?setImmediate:null;typeof navigator<`u`&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function y(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function b(e){if(h=!1,y(e),!m)if(n(c)!==null)m=!0,M(x);else{var t=n(l);t!==null&&N(b,t.startTime-e)}}function x(t,i){m=!1,h&&(h=!1,_(w),w=-1),p=!0;var a=f;try{for(y(i),d=n(c);d!==null&&(!(d.expirationTime>i)||t&&!D());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=i);i=e.unstable_now(),typeof s==`function`?d.callback=s:d===n(c)&&r(c),y(i)}else r(c);d=n(c)}if(d!==null)var u=!0;else{var g=n(l);g!==null&&N(b,g.startTime-i),u=!1}return u}finally{d=null,f=a,p=!1}}var S=!1,C=null,w=-1,T=5,E=-1;function D(){return!(e.unstable_now()-Ee||125o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(_(w),w=-1):h=!0,N(b,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,M(x))),r},e.unstable_shouldYield=D,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),h=s(((e,t)=>{t.exports=m()})),g=s((e=>{var t=p(),n=h();function r(e){for(var t=`https://reactjs.org/docs/error-decoder.html?invariant=`+e,n=1;n`u`||window.document===void 0||window.document.createElement===void 0),l=Object.prototype.hasOwnProperty,u=/^[: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]*$/,d={},f={};function m(e){return l.call(f,e)?!0:l.call(d,e)?!1:u.test(e)?f[e]=!0:(d[e]=!0,!1)}function g(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case`function`:case`symbol`:return!0;case`boolean`:return r?!1:n===null?(e=e.toLowerCase().slice(0,5),e!==`data-`&&e!==`aria-`):!n.acceptsBooleans;default:return!1}}function _(e,t,n,r){if(t==null||g(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function v(e,t,n,r,i,a,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=o}var y={};`children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style`.split(` `).forEach(function(e){y[e]=new v(e,0,!1,e,null,!1,!1)}),[[`acceptCharset`,`accept-charset`],[`className`,`class`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`]].forEach(function(e){var t=e[0];y[t]=new v(t,1,!1,e[1],null,!1,!1)}),[`contentEditable`,`draggable`,`spellCheck`,`value`].forEach(function(e){y[e]=new v(e,2,!1,e.toLowerCase(),null,!1,!1)}),[`autoReverse`,`externalResourcesRequired`,`focusable`,`preserveAlpha`].forEach(function(e){y[e]=new v(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){y[e]=new v(e,3,!1,e.toLowerCase(),null,!1,!1)}),[`checked`,`multiple`,`muted`,`selected`].forEach(function(e){y[e]=new v(e,3,!0,e,null,!1,!1)}),[`capture`,`download`].forEach(function(e){y[e]=new v(e,4,!1,e,null,!1,!1)}),[`cols`,`rows`,`size`,`span`].forEach(function(e){y[e]=new v(e,6,!1,e,null,!1,!1)}),[`rowSpan`,`start`].forEach(function(e){y[e]=new v(e,5,!1,e.toLowerCase(),null,!1,!1)});var b=/[\-:]([a-z])/g;function x(e){return e[1].toUpperCase()}`accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height`.split(` `).forEach(function(e){var t=e.replace(b,x);y[t]=new v(t,1,!1,e,null,!1,!1)}),`xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type`.split(` `).forEach(function(e){var t=e.replace(b,x);y[t]=new v(t,1,!1,e,`http://www.w3.org/1999/xlink`,!1,!1)}),[`xml:base`,`xml:lang`,`xml:space`].forEach(function(e){var t=e.replace(b,x);y[t]=new v(t,1,!1,e,`http://www.w3.org/XML/1998/namespace`,!1,!1)}),[`tabIndex`,`crossOrigin`].forEach(function(e){y[e]=new v(e,1,!1,e.toLowerCase(),null,!1,!1)}),y.xlinkHref=new v(`xlinkHref`,1,!1,`xlink:href`,`http://www.w3.org/1999/xlink`,!0,!1),[`src`,`href`,`action`,`formAction`].forEach(function(e){y[e]=new v(e,1,!1,e.toLowerCase(),null,!0,!0)});function S(e,t,n,r){var i=y.hasOwnProperty(t)?y[t]:null;(i===null?r||!(2s||i[o]!==a[s]){var c=` `+i[o].replace(` at new `,` at `);return e.displayName&&c.includes(``)&&(c=c.replace(``,e.displayName)),c}while(1<=o&&0<=s);break}}}finally{U=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:``)?H(e):``}function te(e){switch(e.tag){case 5:return H(e.type);case 16:return H(`Lazy`);case 13:return H(`Suspense`);case 19:return H(`SuspenseList`);case 0:case 2:case 15:return e=ee(e.type,!1),e;case 11:return e=ee(e.type.render,!1),e;case 1:return e=ee(e.type,!0),e;default:return``}}function ne(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 E:return`Fragment`;case T:return`Portal`;case O:return`Profiler`;case D:return`StrictMode`;case M:return`Suspense`;case N:return`SuspenseList`}if(typeof e==`object`)switch(e.$$typeof){case A:return(e.displayName||`Context`)+`.Consumer`;case k:return(e._context.displayName||`Context`)+`.Provider`;case j:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case P:return t=e.displayName||null,t===null?ne(e.type)||`Memo`:t;case F:t=e._payload,e=e._init;try{return ne(e(t))}catch{}}return null}function re(e){var t=e.type;switch(e.tag){case 24:return`Cache`;case 9:return(t.displayName||`Context`)+`.Consumer`;case 10:return(t._context.displayName||`Context`)+`.Provider`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return ne(t);case 8:return t===D?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t}return null}function W(e){switch(typeof e){case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function ie(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function ae(e){var t=ie(e)?`checked`:`value`,n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=``+e[t];if(!e.hasOwnProperty(t)&&n!==void 0&&typeof n.get==`function`&&typeof n.set==`function`){var i=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){r=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function oe(e){e._valueTracker||=ae(e)}function G(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=ie(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function se(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}function ce(e,t){var n=t.checked;return B({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function le(e,t){var n=t.defaultValue==null?``:t.defaultValue,r=t.checked==null?t.defaultChecked:t.checked;n=W(t.value==null?n:t.value),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type===`checkbox`||t.type===`radio`?t.checked!=null:t.value!=null}}function ue(e,t){t=t.checked,t!=null&&S(e,`checked`,t,!1)}function K(e,t){ue(e,t);var n=W(t.value),r=t.type;if(n!=null)r===`number`?(n===0&&e.value===``||e.value!=n)&&(e.value=``+n):e.value!==``+n&&(e.value=``+n);else if(r===`submit`||r===`reset`){e.removeAttribute(`value`);return}t.hasOwnProperty(`value`)?fe(e,t.type,n):t.hasOwnProperty(`defaultValue`)&&fe(e,t.type,W(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function de(e,t,n){if(t.hasOwnProperty(`value`)||t.hasOwnProperty(`defaultValue`)){var r=t.type;if(!(r!==`submit`&&r!==`reset`||t.value!==void 0&&t.value!==null))return;t=``+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==``&&(e.name=``),e.defaultChecked=!!e._wrapperState.initialChecked,n!==``&&(e.name=n)}function fe(e,t,n){(t!==`number`||se(e.ownerDocument)!==e)&&(n==null?e.defaultValue=``+e._wrapperState.initialValue:e.defaultValue!==``+n&&(e.defaultValue=``+n))}var pe=Array.isArray;function me(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i`+t.valueOf().toString()+``,t=xe.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Ce(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var we={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},Te=[`Webkit`,`ms`,`Moz`,`O`];Object.keys(we).forEach(function(e){Te.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),we[t]=we[e]})});function Ee(e,t,n){return t==null||typeof t==`boolean`||t===``?``:n||typeof t!=`number`||t===0||we.hasOwnProperty(e)&&we[e]?(``+t).trim():t+`px`}function De(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=n.indexOf(`--`)===0,i=Ee(n,t[n],r);n===`float`&&(n=`cssFloat`),r?e.setProperty(n,i):e[n]=i}}var Oe=B({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 ke(e,t){if(t){if(Oe[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(r(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(r(60));if(typeof t.dangerouslySetInnerHTML!=`object`||!(`__html`in t.dangerouslySetInnerHTML))throw Error(r(61))}if(t.style!=null&&typeof t.style!=`object`)throw Error(r(62))}}function Ae(e,t){if(e.indexOf(`-`)===-1)return typeof t.is==`string`;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var je=null;function Me(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var q=null,Ne=null,Pe=null;function Fe(e){if(e=Mi(e)){if(typeof q!=`function`)throw Error(r(280));var t=e.stateNode;t&&(t=Pi(t),q(e.stateNode,e.type,t))}}function Ie(e){Ne?Pe?Pe.push(e):Pe=[e]:Ne=e}function Le(){if(Ne){var e=Ne,t=Pe;if(Pe=Ne=null,Fe(e),t)for(e=0;e>>=0,e===0?32:31-(_t(e)/vt|0)|0}var bt=64,xt=4194304;function St(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 Ct(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,a=e.pingedLanes,o=n&268435455;if(o!==0){var s=o&~i;s===0?(a&=o,a!==0&&(r=St(a))):r=St(s)}else o=n&~i,o===0?a!==0&&(r=St(a)):r=St(o);if(r===0)return 0;if(t!==0&&t!==r&&(t&i)===0&&(i=r&-r,a=t&-t,i>=a||i===16&&a&4194240))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Ot(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-gt(t),e[t]=n}function kt(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=Gn),Jn=` `,Yn=!1;function Xn(e,t){switch(e){case`keyup`:return Un.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function Zn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var Qn=!1;function $n(e,t){switch(e){case`compositionend`:return Zn(t);case`keypress`:return t.which===32?(Yn=!0,Jn):null;case`textInput`:return e=t.data,e===Jn&&Yn?null:e;default:return null}}function er(e,t){if(Qn)return e===`compositionend`||!Wn&&Xn(e,t)?(e=mn(),pn=fn=dn=null,Qn=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Sr(n)}}function wr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?wr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Tr(){for(var e=window,t=se();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=se(e.document)}return t}function Er(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}function Dr(e){var t=Tr(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&wr(n.ownerDocument.documentElement,n)){if(r!==null&&Er(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),`selectionStart`in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,a=Math.min(r.start,i);r=r.end===void 0?a:Math.min(r.end,i),!e.extend&&a>r&&(i=r,r=a,a=i),i=Cr(n,a);var o=Cr(n,r);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),a>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus==`function`&&n.focus(),n=0;n=document.documentMode,kr=null,Ar=null,jr=null,Mr=!1;function Nr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Mr||kr==null||kr!==se(r)||(r=kr,`selectionStart`in r&&Er(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),jr&&xr(jr,r)||(jr=r,r=ai(Ar,`onSelect`),0Ii||(e.current=Fi[Ii],Fi[Ii]=null,Ii--)}function zi(e,t){Ii++,Fi[Ii]=e.current,e.current=t}var Bi={},Vi=Li(Bi),Hi=Li(!1),Ui=Bi;function Wi(e,t){var n=e.type.contextTypes;if(!n)return Bi;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},a;for(a in n)i[a]=t[a];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Gi(e){return e=e.childContextTypes,e!=null}function Ki(){Ri(Hi),Ri(Vi)}function qi(e,t,n){if(Vi.current!==Bi)throw Error(r(168));zi(Vi,t),zi(Hi,n)}function Ji(e,t,n){var i=e.stateNode;if(t=t.childContextTypes,typeof i.getChildContext!=`function`)return n;for(var a in i=i.getChildContext(),i)if(!(a in t))throw Error(r(108,re(e)||`Unknown`,a));return B({},n,i)}function Yi(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Bi,Ui=Vi.current,zi(Vi,e),zi(Hi,Hi.current),!0}function Xi(e,t,n){var i=e.stateNode;if(!i)throw Error(r(169));n?(e=Ji(e,t,Ui),i.__reactInternalMemoizedMergedChildContext=e,Ri(Hi),Ri(Vi),zi(Vi,e)):Ri(Hi),zi(Hi,n)}var Zi=null,Qi=!1,$i=!1;function ea(e){Zi===null?Zi=[e]:Zi.push(e)}function ta(e){Qi=!0,ea(e)}function na(){if(!$i&&Zi!==null){$i=!0;var e=0,t=jt;try{var n=Zi;for(jt=1;e>=o,i-=o,ua=1<<32-gt(t)+i|n<h?(g=d,d=null):g=d.sibling;var _=p(r,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(r,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(r,d),va&&fa(r,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),va&&fa(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return va&&fa(a,g),u}for(h=i(a,h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),va&&fa(a,g),u}function _(e,r,i,o){if(typeof i==`object`&&i&&i.type===E&&i.key===null&&(i=i.props.children),typeof i==`object`&&i){switch(i.$$typeof){case w:a:{for(var c=i.key,l=r;l!==null;){if(l.key===c){if(c=i.type,c===E){if(l.tag===7){n(e,l.sibling),r=a(l,i.props.children),r.return=e,e=r;break a}}else if(l.elementType===c||typeof c==`object`&&c&&c.$$typeof===F&&Ma(c)===l.type){n(e,l.sibling),r=a(l,i.props),r.ref=Aa(e,l,i),r.return=e,e=r;break a}n(e,l);break}else t(e,l);l=l.sibling}i.type===E?(r=eu(i.props.children,e.mode,o,i.key),r.return=e,e=r):(o=$l(i.type,i.key,i.props,null,e.mode,o),o.ref=Aa(e,r,i),o.return=e,e=o)}return s(e);case T:a:{for(l=i.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===i.containerInfo&&r.stateNode.implementation===i.implementation){n(e,r.sibling),r=a(r,i.children||[]),r.return=e,e=r;break a}else{n(e,r);break}else t(e,r);r=r.sibling}r=ru(i,e.mode,o),r.return=e,e=r}return s(e);case F:return l=i._init,_(e,r,l(i._payload),o)}if(pe(i))return h(e,r,i,o);if(z(i))return g(e,r,i,o);ja(e,i)}return typeof i==`string`&&i!==``||typeof i==`number`?(i=``+i,r!==null&&r.tag===6?(n(e,r.sibling),r=a(r,i),r.return=e,e=r):(n(e,r),r=nu(i,e.mode,o),r.return=e,e=r),s(e)):n(e,r)}return _}var Pa=Na(!0),Fa=Na(!1),Ia=Li(null),La=null,Ra=null,za=null;function Ba(){za=Ra=La=null}function Va(e){var t=Ia.current;Ri(Ia),e._currentValue=t}function Ha(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function Ua(e,t){La=e,za=Ra=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&t)!==0&&(Ns=!0),e.firstContext=null)}function Wa(e){var t=e._currentValue;if(za!==e)if(e={context:e,memoizedValue:t,next:null},Ra===null){if(La===null)throw Error(r(308));Ra=e,La.dependencies={lanes:0,firstContext:e}}else Ra=Ra.next=e;return t}var Ga=null;function Ka(e){Ga===null?Ga=[e]:Ga.push(e)}function qa(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,Ka(t)):(n.next=i.next,i.next=n),t.interleaved=n,Ja(e,r)}function Ja(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Ya=!1;function Xa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Za(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Qa(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function $a(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Uc&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,Ja(e,n)}return i=r.interleaved,i===null?(t.next=t,Ka(r)):(t.next=i.next,i.next=t),r.interleaved=t,Ja(e,n)}function eo(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194240)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,At(e,n)}}function to(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function no(e,t,n,r){var i=e.updateQueue;Ya=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane,p=s.eventTime;if((r&f)===f){u!==null&&(u=u.next={eventTime:p,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});a:{var m=e,h=s;switch(f=t,p=n,h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(p,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(p,d,f):m,f==null)break a;d=B({},d,f);break a;case 2:Ya=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,f=i.effects,f===null?i.effects=[s]:f.push(s))}else p={eventTime:p,lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;f=s,s=f.next,f.next=null,i.lastBaseUpdate=f,i.shared.pending=null}}while(1);if(u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else a===null&&(i.shared.lanes=0);Zc|=o,e.lanes=o,e.memoizedState=d}}function ro(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=yo.transition;yo.transition={};try{e(!1),t()}finally{jt=n,yo.transition=r}}function os(){return No().memoizedState}function ss(e,t,n){var r=gl(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},ls(e))us(t,n);else if(n=qa(e,t,n,r),n!==null){var i=hl();_l(n,e,r,i),ds(n,t,r)}}function cs(e,t,n){var r=gl(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(ls(e))us(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,br(s,o)){var c=t.interleaved;c===null?(i.next=i,Ka(t)):(i.next=c.next,c.next=i),t.interleaved=i;return}}catch{}n=qa(e,t,i,r),n!==null&&(i=hl(),_l(n,e,r,i),ds(n,t,r))}}function ls(e){var t=e.alternate;return e===xo||t!==null&&t===xo}function us(e,t){To=wo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function ds(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,At(e,n)}}var fs={readContext:Wa,useCallback:Oo,useContext:Oo,useEffect:Oo,useImperativeHandle:Oo,useInsertionEffect:Oo,useLayoutEffect:Oo,useMemo:Oo,useReducer:Oo,useRef:Oo,useState:Oo,useDebugValue:Oo,useDeferredValue:Oo,useTransition:Oo,useMutableSource:Oo,useSyncExternalStore:Oo,useId:Oo,unstable_isNewReconciler:!1},ps={readContext:Wa,useCallback:function(e,t){return Mo().memoizedState=[e,t===void 0?null:t],e},useContext:Wa,useEffect:Yo,useImperativeHandle:function(e,t,n){return n=n==null?null:n.concat([e]),qo(4194308,4,$o.bind(null,t,e),n)},useLayoutEffect:function(e,t){return qo(4194308,4,e,t)},useInsertionEffect:function(e,t){return qo(4,2,e,t)},useMemo:function(e,t){var n=Mo();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Mo();return t=n===void 0?t:n(t),r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=ss.bind(null,xo,e),[r.memoizedState,e]},useRef:function(e){var t=Mo();return e={current:e},t.memoizedState=e},useState:Wo,useDebugValue:ts,useDeferredValue:function(e){return Mo().memoizedState=e},useTransition:function(){var e=Wo(!1),t=e[0];return e=as.bind(null,e[1]),Mo().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var i=xo,a=Mo();if(va){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Wc===null)throw Error(r(349));bo&30||zo(i,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,Yo(Vo.bind(null,i,o,e),[e]),i.flags|=2048,Go(9,Bo.bind(null,i,o,n,t),void 0,null),n},useId:function(){var e=Mo(),t=Wc.identifierPrefix;if(va){var n=da,r=ua;n=(r&~(1<<32-gt(r)-1)).toString(32)+n,t=`:`+t+`R`+n,n=Eo++,0<\/script>`,e=e.removeChild(e.firstChild)):typeof i.is==`string`?e=c.createElement(n,{is:i.is}):(e=c.createElement(n),n===`select`&&(c=e,i.multiple?c.multiple=!0:i.size&&(c.size=i.size))):e=c.createElementNS(e,n),e[Ti]=t,e[Ei]=i,rc(e,t,!1,!1),t.stateNode=e;a:{switch(c=Ae(n,i),n){case`dialog`:Qr(`cancel`,e),Qr(`close`,e),o=i;break;case`iframe`:case`object`:case`embed`:Qr(`load`,e),o=i;break;case`video`:case`audio`:for(o=0;orl&&(t.flags|=128,i=!0,oc(s,!1),t.lanes=4194304)}else{if(!i)if(e=ho(c),e!==null){if(t.flags|=128,i=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),oc(s,!0),s.tail===null&&s.tailMode===`hidden`&&!c.alternate&&!va)return sc(t),null}else 2*ot()-s.renderingStartTime>rl&&n!==1073741824&&(t.flags|=128,i=!0,oc(s,!1),t.lanes=4194304);s.isBackwards?(c.sibling=t.child,t.child=c):(n=s.last,n===null?t.child=c:n.sibling=c,s.last=c)}return s.tail===null?(sc(t),null):(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=ot(),t.sibling=null,n=mo.current,zi(mo,i?n&1|2:n&1),t);case 22:case 23:return Dl(),i=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==i&&(t.flags|=8192),i&&t.mode&1?qc&1073741824&&(sc(t),t.subtreeFlags&6&&(t.flags|=8192)):sc(t),null;case 24:return null;case 25:return null}throw Error(r(156,t.tag))}function lc(e,t){switch(ha(t),t.tag){case 1:return Gi(t.type)&&Ki(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return uo(),Ri(Hi),Ri(Vi),_o(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return po(t),null;case 13:if(Ri(mo),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Da()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Ri(mo),null;case 4:return uo(),null;case 10:return Va(t.type._context),null;case 22:case 23:return Dl(),null;case 24:return null;default:return null}}var uc=!1,dc=!1,fc=typeof WeakSet==`function`?WeakSet:Set,pc=null;function mc(e,t){var n=e.ref;if(n!==null)if(typeof n==`function`)try{n(null)}catch(n){Vl(e,t,n)}else n.current=null}function hc(e,t,n){try{n()}catch(n){Vl(e,t,n)}}var gc=!1;function _c(e,t){if(pi=rn,e=Tr(),Er(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var a=i.anchorOffset,o=i.focusNode;i=i.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||i!==0&&f.nodeType!==3||(l=s+i),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===i&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(mi={focusedElem:e,selectionRange:n},rn=!1,pc=t;pc!==null;)if(t=pc,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,pc=e;else for(;pc!==null;){t=pc;try{var h=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(h!==null){var g=h.memoizedProps,_=h.memoizedState,v=t.stateNode;v.__reactInternalSnapshotBeforeUpdate=v.getSnapshotBeforeUpdate(t.elementType===t.type?g:gs(t.type,g),_)}break;case 3:var y=t.stateNode.containerInfo;y.nodeType===1?y.textContent=``:y.nodeType===9&&y.documentElement&&y.removeChild(y.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(r(163))}}catch(e){Vl(t,t.return,e)}if(e=t.sibling,e!==null){e.return=t.return,pc=e;break}pc=t.return}return h=gc,gc=!1,h}function vc(e,t,n){var r=t.updateQueue;if(r=r===null?null:r.lastEffect,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var a=i.destroy;i.destroy=void 0,a!==void 0&&hc(t,n,a)}i=i.next}while(i!==r)}}function yc(e,t){if(t=t.updateQueue,t=t===null?null:t.lastEffect,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function bc(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t==`function`?t(e):t.current=e}}function xc(e){var t=e.alternate;t!==null&&(e.alternate=null,xc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Ti],delete t[Ei],delete t[Oi],delete t[ki],delete t[Ai])),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 Sc(e){return e.tag===5||e.tag===3||e.tag===4}function Cc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Sc(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 a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function wc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=fi));else if(r!==4&&(e=e.child,e!==null))for(wc(e,t,n),e=e.sibling;e!==null;)wc(e,t,n),e=e.sibling}function Tc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Tc(e,t,n),e=e.sibling;e!==null;)Tc(e,t,n),e=e.sibling}var Ec=null,Dc=!1;function Oc(e,t,n){for(n=n.child;n!==null;)kc(e,t,n),n=n.sibling}function kc(e,t,n){if(mt&&typeof mt.onCommitFiberUnmount==`function`)try{mt.onCommitFiberUnmount(pt,n)}catch{}switch(n.tag){case 5:dc||mc(n,t);case 6:var r=Ec,i=Dc;Ec=null,Oc(e,t,n),Ec=r,Dc=i,Ec!==null&&(Dc?(e=Ec,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Ec.removeChild(n.stateNode));break;case 18:Ec!==null&&(Dc?(e=Ec,n=n.stateNode,e.nodeType===8?xi(e.parentNode,n):e.nodeType===1&&xi(e,n),tn(e)):xi(Ec,n.stateNode));break;case 4:r=Ec,i=Dc,Ec=n.stateNode.containerInfo,Dc=!0,Oc(e,t,n),Ec=r,Dc=i;break;case 0:case 11:case 14:case 15:if(!dc&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var a=i,o=a.destroy;a=a.tag,o!==void 0&&(a&2||a&4)&&hc(n,t,o),i=i.next}while(i!==r)}Oc(e,t,n);break;case 1:if(!dc&&(mc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(e){Vl(n,t,e)}Oc(e,t,n);break;case 21:Oc(e,t,n);break;case 22:n.mode&1?(dc=(r=dc)||n.memoizedState!==null,Oc(e,t,n),dc=r):Oc(e,t,n);break;default:Oc(e,t,n)}}function Ac(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new fc),t.forEach(function(t){var r=Gl.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))})}}function jc(e,t){var n=t.deletions;if(n!==null)for(var i=0;ia&&(a=s),i&=~o}if(i=a,i=ot()-i,i=(120>i?120:480>i?480:1080>i?1080:1920>i?1920:3e3>i?3e3:4320>i?4320:1960*zc(i/1960))-i,10e?16:e,ll===null)var i=!1;else{if(e=ll,ll=null,ul=0,Uc&6)throw Error(r(331));var a=Uc;for(Uc|=4,pc=e.current;pc!==null;){var o=pc,s=o.child;if(pc.flags&16){var c=o.deletions;if(c!==null){for(var l=0;lot()-nl?Ol(e,0):$c|=n),vl(e,t)}function Ul(e,t){t===0&&(e.mode&1?(t=xt,xt<<=1,!(xt&130023424)&&(xt=4194304)):t=1);var n=hl();e=Ja(e,t),e!==null&&(Ot(e,t,n),vl(e,n))}function Wl(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Ul(e,n)}function Gl(e,t){var n=0;switch(e.tag){case 13:var i=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:i=e.stateNode;break;default:throw Error(r(314))}i!==null&&i.delete(t),Ul(e,n)}var Kl=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Hi.current)Ns=!0;else{if((e.lanes&n)===0&&!(t.flags&128))return Ns=!1,nc(e,t,n);Ns=!!(e.flags&131072)}else Ns=!1,va&&t.flags&1048576&&pa(t,oa,t.index);switch(t.lanes=0,t.tag){case 2:var i=t.type;ec(e,t),e=t.pendingProps;var a=Wi(t,Vi.current);Ua(t,n),a=Ao(null,t,i,e,a,n);var o=jo();return t.flags|=1,typeof a==`object`&&a&&typeof a.render==`function`&&a.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Gi(i)?(o=!0,Yi(t)):o=!1,t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,Xa(t),a.updater=vs,t.stateNode=a,a._reactInternals=t,Ss(t,i,e,n),t=Hs(null,t,i,!0,o,n)):(t.tag=0,va&&o&&ma(t),Ps(null,t,a,n),t=t.child),t;case 16:i=t.elementType;a:{switch(ec(e,t),e=t.pendingProps,a=i._init,i=a(i._payload),t.type=i,a=t.tag=Zl(i),e=gs(i,e),a){case 0:t=Bs(null,t,i,e,n);break a;case 1:t=Vs(null,t,i,e,n);break a;case 11:t=Fs(null,t,i,e,n);break a;case 14:t=Is(null,t,i,gs(i.type,e),n);break a}throw Error(r(306,i,``))}return t;case 0:return i=t.type,a=t.pendingProps,a=t.elementType===i?a:gs(i,a),Bs(e,t,i,a,n);case 1:return i=t.type,a=t.pendingProps,a=t.elementType===i?a:gs(i,a),Vs(e,t,i,a,n);case 3:a:{if(Us(t),e===null)throw Error(r(387));i=t.pendingProps,o=t.memoizedState,a=o.element,Za(e,t),no(t,i,null,n);var s=t.memoizedState;if(i=s.element,o.isDehydrated)if(o={element:i,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){a=Cs(Error(r(423)),t),t=Ws(e,t,i,n,a);break a}else if(i!==a){a=Cs(Error(r(424)),t),t=Ws(e,t,i,n,a);break a}else for(_a=Si(t.stateNode.containerInfo.firstChild),ga=t,va=!0,ya=null,n=Fa(t,null,i,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Da(),i===a){t=tc(e,t,n);break a}Ps(e,t,i,n)}t=t.child}return t;case 5:return fo(t),e===null&&Ca(t),i=t.type,a=t.pendingProps,o=e===null?null:e.memoizedProps,s=a.children,hi(i,a)?s=null:o!==null&&hi(i,o)&&(t.flags|=32),zs(e,t),Ps(e,t,s,n),t.child;case 6:return e===null&&Ca(t),null;case 13:return qs(e,t,n);case 4:return lo(t,t.stateNode.containerInfo),i=t.pendingProps,e===null?t.child=Pa(t,null,i,n):Ps(e,t,i,n),t.child;case 11:return i=t.type,a=t.pendingProps,a=t.elementType===i?a:gs(i,a),Fs(e,t,i,a,n);case 7:return Ps(e,t,t.pendingProps,n),t.child;case 8:return Ps(e,t,t.pendingProps.children,n),t.child;case 12:return Ps(e,t,t.pendingProps.children,n),t.child;case 10:a:{if(i=t.type._context,a=t.pendingProps,o=t.memoizedProps,s=a.value,zi(Ia,i._currentValue),i._currentValue=s,o!==null)if(br(o.value,s)){if(o.children===a.children&&!Hi.current){t=tc(e,t,n);break a}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var c=o.dependencies;if(c!==null){s=o.child;for(var l=c.firstContext;l!==null;){if(l.context===i){if(o.tag===1){l=Qa(-1,n&-n),l.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?l.next=l:(l.next=d.next,d.next=l),u.pending=l}}o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),Ha(o.return,n,t),c.lanes|=n;break}l=l.next}}else if(o.tag===10)s=o.type===t.type?null:o.child;else if(o.tag===18){if(s=o.return,s===null)throw Error(r(341));s.lanes|=n,c=s.alternate,c!==null&&(c.lanes|=n),Ha(s,n,t),s=o.sibling}else s=o.child;if(s!==null)s.return=o;else for(s=o;s!==null;){if(s===t){s=null;break}if(o=s.sibling,o!==null){o.return=s.return,s=o;break}s=s.return}o=s}Ps(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,i=t.pendingProps.children,Ua(t,n),a=Wa(a),i=i(a),t.flags|=1,Ps(e,t,i,n),t.child;case 14:return i=t.type,a=gs(i,t.pendingProps),a=gs(i.type,a),Is(e,t,i,a,n);case 15:return Ls(e,t,t.type,t.pendingProps,n);case 17:return i=t.type,a=t.pendingProps,a=t.elementType===i?a:gs(i,a),ec(e,t),t.tag=1,Gi(i)?(e=!0,Yi(t)):e=!1,Ua(t,n),bs(t,i,a),Ss(t,i,a,n),Hs(null,t,i,!0,e,n);case 19:return $s(e,t,n);case 22:return Rs(e,t,n)}throw Error(r(156,t.tag))};function ql(e,t){return nt(e,t)}function Jl(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Yl(e,t,n,r){return new Jl(e,t,n,r)}function Xl(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Zl(e){if(typeof e==`function`)return+!!Xl(e);if(e!=null){if(e=e.$$typeof,e===j)return 11;if(e===P)return 14}return 2}function Ql(e,t){var n=e.alternate;return n===null?(n=Yl(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function $l(e,t,n,i,a,o){var s=2;if(i=e,typeof e==`function`)Xl(e)&&(s=1);else if(typeof e==`string`)s=5;else a:switch(e){case E:return eu(n.children,a,o,t);case D:s=8,a|=8;break;case O:return e=Yl(12,n,t,a|2),e.elementType=O,e.lanes=o,e;case M:return e=Yl(13,n,t,a),e.elementType=M,e.lanes=o,e;case N:return e=Yl(19,n,t,a),e.elementType=N,e.lanes=o,e;case I:return tu(n,a,o,t);default:if(typeof e==`object`&&e)switch(e.$$typeof){case k:s=10;break a;case A:s=9;break a;case j:s=11;break a;case P:s=14;break a;case F:s=16,i=null;break a}throw Error(r(130,e==null?e:typeof e,``))}return t=Yl(s,n,t,a),t.elementType=e,t.type=i,t.lanes=o,t}function eu(e,t,n,r){return e=Yl(7,e,r,t),e.lanes=n,e}function tu(e,t,n,r){return e=Yl(22,e,r,t),e.elementType=I,e.lanes=n,e.stateNode={isHidden:!1},e}function nu(e,t,n){return e=Yl(6,e,null,t),e.lanes=n,e}function ru(e,t,n){return t=Yl(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function iu(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Dt(0),this.expirationTimes=Dt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Dt(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function au(e,t,n,r,i,a,o,s,c){return e=new iu(e,t,n,s,c),t===1?(t=1,!0===a&&(t|=8)):t=0,a=Yl(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Xa(a),e}function ou(e,t,n){var r=3{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=g()})),v=s((e=>{var t=_();e.createRoot=t.createRoot,e.hydrateRoot=t.hydrateRoot})),y=u(p()),b=u(v(),1),x={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`},S=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),C=(e,t)=>{let n=(0,y.forwardRef)(({color:n=`currentColor`,size:r=24,strokeWidth:i=2,absoluteStrokeWidth:a,children:o,...s},c)=>(0,y.createElement)(`svg`,{ref:c,...x,width:r,height:r,stroke:n,strokeWidth:a?Number(i)*24/Number(r):i,className:`lucide lucide-${S(e)}`,...s},[...t.map(([e,t])=>(0,y.createElement)(e,t)),...(Array.isArray(o)?o:[o])||[]]));return n.displayName=`${e}`,n},w=C(`AlertCircle`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]),T=C(`AlertTriangle`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z`,key:`c3ski4`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),E=C(`AlignLeft`,[[`line`,{x1:`21`,x2:`3`,y1:`6`,y2:`6`,key:`1fp77t`}],[`line`,{x1:`15`,x2:`3`,y1:`12`,y2:`12`,key:`v6grx8`}],[`line`,{x1:`17`,x2:`3`,y1:`18`,y2:`18`,key:`1awlsn`}]]),D=C(`ArrowLeft`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),O=C(`ArrowRight`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),k=C(`BarChart3`,[[`path`,{d:`M3 3v18h18`,key:`1s2lah`}],[`path`,{d:`M18 17V9`,key:`2bz60n`}],[`path`,{d:`M13 17V5`,key:`1frdt8`}],[`path`,{d:`M8 17v-3`,key:`17ska0`}]]),A=C(`BellOff`,[[`path`,{d:`M8.7 3A6 6 0 0 1 18 8a21.3 21.3 0 0 0 .6 5`,key:`o7mx20`}],[`path`,{d:`M17 17H3s3-2 3-9a4.67 4.67 0 0 1 .3-1.7`,key:`16f1lm`}],[`path`,{d:`M10.3 21a1.94 1.94 0 0 0 3.4 0`,key:`qgo35s`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),j=C(`Bell`,[[`path`,{d:`M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9`,key:`1qo2s2`}],[`path`,{d:`M10.3 21a1.94 1.94 0 0 0 3.4 0`,key:`qgo35s`}]]),M=C(`Bike`,[[`circle`,{cx:`18.5`,cy:`17.5`,r:`3.5`,key:`15x4ox`}],[`circle`,{cx:`5.5`,cy:`17.5`,r:`3.5`,key:`1noe27`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`path`,{d:`M12 17.5V14l-3-3 4-3 2 3h2`,key:`1npguv`}]]),N=C(`Calendar`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`4`,rx:`2`,ry:`2`,key:`eu3xkr`}],[`line`,{x1:`16`,x2:`16`,y1:`2`,y2:`6`,key:`m3sa8f`}],[`line`,{x1:`8`,x2:`8`,y1:`2`,y2:`6`,key:`18kwsl`}],[`line`,{x1:`3`,x2:`21`,y1:`10`,y2:`10`,key:`xt86sb`}]]),P=C(`Camera`,[[`path`,{d:`M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z`,key:`1tc9qg`}],[`circle`,{cx:`12`,cy:`13`,r:`3`,key:`1vg3eu`}]]),F=C(`Car`,[[`path`,{d:`M19 17h2c.6 0 1-.4 1-1v-3c0-.9-.7-1.7-1.5-1.9C18.7 10.6 16 10 16 10s-1.3-1.4-2.2-2.3c-.5-.4-1.1-.7-1.8-.7H5c-.6 0-1.1.4-1.4.9l-1.4 2.9A3.7 3.7 0 0 0 2 12v4c0 .6.4 1 1 1h2`,key:`5owen`}],[`circle`,{cx:`7`,cy:`17`,r:`2`,key:`u2ysq9`}],[`path`,{d:`M9 17h6`,key:`r8uit2`}],[`circle`,{cx:`17`,cy:`17`,r:`2`,key:`axvx0g`}]]),I=C(`CheckCircle2`,[[`path`,{d:`M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10z`,key:`14v8dr`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),R=C(`CheckCircle`,[[`path`,{d:`M22 11.08V12a10 10 0 1 1-5.93-9.14`,key:`g774vq`}],[`polyline`,{points:`22 4 12 14.01 9 11.01`,key:`6xbx8j`}]]),z=C(`Check`,[[`polyline`,{points:`20 6 9 17 4 12`,key:`10jjfj`}]]),B=C(`ChevronLeft`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),V=C(`ChevronRight`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),H=C(`Circle`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),U=C(`Clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`polyline`,{points:`12 6 12 12 16 14`,key:`68esgv`}]]),ee=C(`Compass`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`polygon`,{points:`16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76`,key:`m9r19z`}]]),te=C(`Download`,[[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`polyline`,{points:`7 10 12 15 17 10`,key:`2ggqvy`}],[`line`,{x1:`12`,x2:`12`,y1:`15`,y2:`3`,key:`1vk2je`}]]),ne=C(`FileText`,[[`path`,{d:`M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z`,key:`1nnpy2`}],[`polyline`,{points:`14 2 14 8 20 8`,key:`1ew0cm`}],[`line`,{x1:`16`,x2:`8`,y1:`13`,y2:`13`,key:`14keom`}],[`line`,{x1:`16`,x2:`8`,y1:`17`,y2:`17`,key:`17nazh`}],[`line`,{x1:`10`,x2:`8`,y1:`9`,y2:`9`,key:`1a5vjj`}]]),re=C(`Filter`,[[`polygon`,{points:`22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3`,key:`1yg77f`}]]),W=C(`Flag`,[[`path`,{d:`M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z`,key:`i9b6wo`}],[`line`,{x1:`4`,x2:`4`,y1:`22`,y2:`15`,key:`1cm3nv`}]]),ie=C(`Footprints`,[[`path`,{d:`M4 16v-2.38C4 11.5 2.97 10.5 3 8c.03-2.72 1.49-6 4.5-6C9.37 2 10 3.8 10 5.5c0 3.11-2 5.66-2 8.68V16a2 2 0 1 1-4 0Z`,key:`1dudjm`}],[`path`,{d:`M20 20v-2.38c0-2.12 1.03-3.12 1-5.62-.03-2.72-1.49-6-4.5-6C14.63 6 14 7.8 14 9.5c0 3.11 2 5.66 2 8.68V20a2 2 0 1 0 4 0Z`,key:`l2t8xc`}],[`path`,{d:`M16 17h4`,key:`1dejxt`}],[`path`,{d:`M4 13h4`,key:`1bwh8b`}]]),ae=C(`GitMerge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),oe=C(`Globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`2`,x2:`22`,y1:`12`,y2:`12`,key:`1dnqot`}],[`path`,{d:`M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z`,key:`nb9nel`}]]),G=C(`Heart`,[[`path`,{d:`M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z`,key:`c3ymky`}]]),se=C(`Image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),ce=C(`Info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),le=C(`Laptop`,[[`path`,{d:`M20 16V7a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v9m16 0H4m16 0 1.28 2.55a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45L4 16`,key:`tarvll`}]]),ue=C(`List`,[[`line`,{x1:`8`,x2:`21`,y1:`6`,y2:`6`,key:`7ey8pc`}],[`line`,{x1:`8`,x2:`21`,y1:`12`,y2:`12`,key:`rjfblc`}],[`line`,{x1:`8`,x2:`21`,y1:`18`,y2:`18`,key:`c3b1m8`}],[`line`,{x1:`3`,x2:`3.01`,y1:`6`,y2:`6`,key:`1g7gq3`}],[`line`,{x1:`3`,x2:`3.01`,y1:`12`,y2:`12`,key:`1pjlvk`}],[`line`,{x1:`3`,x2:`3.01`,y1:`18`,y2:`18`,key:`28t2mc`}]]),K=C(`Loader2`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),de=C(`LocateFixed`,[[`line`,{x1:`2`,x2:`5`,y1:`12`,y2:`12`,key:`bvdh0s`}],[`line`,{x1:`19`,x2:`22`,y1:`12`,y2:`12`,key:`1tbv5k`}],[`line`,{x1:`12`,x2:`12`,y1:`2`,y2:`5`,key:`11lu5j`}],[`line`,{x1:`12`,x2:`12`,y1:`19`,y2:`22`,key:`x3vr5v`}],[`circle`,{cx:`12`,cy:`12`,r:`7`,key:`fim9np`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),fe=C(`Lock`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]),pe=C(`LogIn`,[[`path`,{d:`M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4`,key:`u53s6r`}],[`polyline`,{points:`10 17 15 12 10 7`,key:`1ail0h`}],[`line`,{x1:`15`,x2:`3`,y1:`12`,y2:`12`,key:`v6grx8`}]]),me=C(`LogOut`,[[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}],[`polyline`,{points:`16 17 21 12 16 7`,key:`1gabdz`}],[`line`,{x1:`21`,x2:`9`,y1:`12`,y2:`12`,key:`1uyos4`}]]),he=C(`Mail`,[[`rect`,{width:`20`,height:`16`,x:`2`,y:`4`,rx:`2`,key:`18n3k1`}],[`path`,{d:`m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7`,key:`1ocrg3`}]]),ge=C(`MapPin`,[[`path`,{d:`M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z`,key:`2oe9fu`}],[`circle`,{cx:`12`,cy:`10`,r:`3`,key:`ilqhr7`}]]),_e=C(`Map`,[[`polygon`,{points:`3 6 9 3 15 6 21 3 21 18 15 21 9 18 3 21`,key:`ok2ie8`}],[`line`,{x1:`9`,x2:`9`,y1:`3`,y2:`18`,key:`w34qz5`}],[`line`,{x1:`15`,x2:`15`,y1:`6`,y2:`21`,key:`volv9a`}]]),ve=C(`MessageSquare`,[[`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z`,key:`1lielz`}]]),ye=C(`Moon`,[[`path`,{d:`M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z`,key:`a7tn18`}]]),be=C(`Navigation`,[[`polygon`,{points:`3 11 22 2 13 21 11 13 3 11`,key:`1ltx0t`}]]),xe=C(`PenSquare`,[[`path`,{d:`M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`,key:`1qinfi`}],[`path`,{d:`M18.5 2.5a2.12 2.12 0 0 1 3 3L12 15l-4 1 1-4Z`,key:`w2jsv5`}]]),Se=C(`Pen`,[[`path`,{d:`M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z`,key:`5qss01`}]]),Ce=C(`PhoneCall`,[[`path`,{d:`M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z`,key:`foiqr5`}],[`path`,{d:`M14.05 2a9 9 0 0 1 8 7.94`,key:`vmijpz`}],[`path`,{d:`M14.05 6A5 5 0 0 1 18 10`,key:`13nbpp`}]]),we=C(`Phone`,[[`path`,{d:`M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z`,key:`foiqr5`}]]),Te=C(`PieChart`,[[`path`,{d:`M21.21 15.89A10 10 0 1 1 8 2.83`,key:`k2fpak`}],[`path`,{d:`M22 12A10 10 0 0 0 12 2v10z`,key:`1rfc4y`}]]),Ee=C(`Plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),De=C(`Quote`,[[`path`,{d:`M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V20c0 1 0 1 1 1z`,key:`4rm80e`}],[`path`,{d:`M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3c0 1 0 1 1 1z`,key:`10za9r`}]]),Oe=C(`Save`,[[`path`,{d:`M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z`,key:`1owoqh`}],[`polyline`,{points:`17 21 17 13 7 13 7 21`,key:`1md35c`}],[`polyline`,{points:`7 3 7 8 15 8`,key:`8nz8an`}]]),ke=C(`Search`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`path`,{d:`m21 21-4.3-4.3`,key:`1qie3q`}]]),Ae=C(`Send`,[[`path`,{d:`m22 2-7 20-4-9-9-4Z`,key:`1q3vgg`}],[`path`,{d:`M22 2 11 13`,key:`nzbqef`}]]),je=C(`Settings`,[[`path`,{d:`M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z`,key:`1qme2f`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),Me=C(`Share2`,[[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}],[`circle`,{cx:`6`,cy:`12`,r:`3`,key:`w7nqdw`}],[`circle`,{cx:`18`,cy:`19`,r:`3`,key:`1xt0gg`}],[`line`,{x1:`8.59`,x2:`15.42`,y1:`13.51`,y2:`17.49`,key:`47mynk`}],[`line`,{x1:`15.41`,x2:`8.59`,y1:`6.51`,y2:`10.49`,key:`1n3mei`}]]),q=C(`ShieldAlert`,[[`path`,{d:`M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10`,key:`1irkt0`}],[`path`,{d:`M12 8v4`,key:`1got3b`}],[`path`,{d:`M12 16h.01`,key:`1drbdi`}]]),Ne=C(`ShieldCheck`,[[`path`,{d:`M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10`,key:`1irkt0`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),Pe=C(`Shield`,[[`path`,{d:`M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10`,key:`1irkt0`}]]),Fe=C(`Sparkles`,[[`path`,{d:`m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z`,key:`17u4zn`}],[`path`,{d:`M5 3v4`,key:`bklmnn`}],[`path`,{d:`M19 17v4`,key:`iiml17`}],[`path`,{d:`M3 5h4`,key:`nem4j1`}],[`path`,{d:`M17 19h4`,key:`lbex7p`}]]),Ie=C(`Star`,[[`polygon`,{points:`12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2`,key:`8f66p6`}]]),Le=C(`Sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),Re=C(`Tag`,[[`path`,{d:`M12 2H2v10l9.29 9.29c.94.94 2.48.94 3.42 0l6.58-6.58c.94-.94.94-2.48 0-3.42L12 2Z`,key:`14b2ls`}],[`path`,{d:`M7 7h.01`,key:`7u93v4`}]]),ze=C(`Trash2`,[[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6`,key:`4alrt4`}],[`path`,{d:`M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2`,key:`v07s0e`}],[`line`,{x1:`10`,x2:`10`,y1:`11`,y2:`17`,key:`1uufr5`}],[`line`,{x1:`14`,x2:`14`,y1:`11`,y2:`17`,key:`xtxkd`}]]),Be=C(`TrendingUp`,[[`polyline`,{points:`22 7 13.5 15.5 8.5 10.5 2 17`,key:`126l90`}],[`polyline`,{points:`16 7 22 7 22 13`,key:`kwv8wd`}]]),Ve=C(`Unlock`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 9.9-1`,key:`1mm8w8`}]]),J=C(`Upload`,[[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`polyline`,{points:`17 8 12 3 7 8`,key:`t8dd8p`}],[`line`,{x1:`12`,x2:`12`,y1:`3`,y2:`15`,key:`widbto`}]]),He=C(`UserPlus`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}],[`line`,{x1:`19`,x2:`19`,y1:`8`,y2:`14`,key:`1bvyxn`}],[`line`,{x1:`22`,x2:`16`,y1:`11`,y2:`11`,key:`1shjgl`}]]),Ue=C(`User`,[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]),We=C(`Users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`path`,{d:`M16 3.13a4 4 0 0 1 0 7.75`,key:`1da9ce`}]]),Ge=C(`Wallet`,[[`path`,{d:`M21 12V7H5a2 2 0 0 1 0-4h14v4`,key:`195gfw`}],[`path`,{d:`M3 5v14a2 2 0 0 0 2 2h16v-5`,key:`195n9w`}],[`path`,{d:`M18 12a2 2 0 0 0 0 4h4v-4Z`,key:`vllfpd`}]]),Ke=C(`X`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),qe=C(`Zap`,[[`polygon`,{points:`13 2 3 14 12 14 11 22 21 10 12 10 13 2`,key:`45s27k`}]]),Je=s((e=>{var t=p(),n=Symbol.for(`react.element`),r=Symbol.for(`react.fragment`),i=Object.prototype.hasOwnProperty,a=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function s(e,t,r){var s,c={},l=null,u=null;for(s in r!==void 0&&(l=``+r),t.key!==void 0&&(l=``+t.key),t.ref!==void 0&&(u=t.ref),t)i.call(t,s)&&!o.hasOwnProperty(s)&&(c[s]=t[s]);if(e&&e.defaultProps)for(s in t=e.defaultProps,t)c[s]===void 0&&(c[s]=t[s]);return{$$typeof:n,type:e,key:l,ref:u,props:c,_owner:a.current}}e.Fragment=r,e.jsx=s,e.jsxs=s})),Y=s(((e,t)=>{t.exports=Je()}))(),Ye=({isOpen:e,onClose:t,onSwitchToSignup:n,onLoginSuccess:r})=>{let[i,a]=(0,y.useState)(``),[o,s]=(0,y.useState)(``),[c,l]=(0,y.useState)(``),[u,d]=(0,y.useState)(!1),f=async e=>{l(``),d(!0);try{let n=await fetch(`/api/v1/auth/google`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({credential:e.credential})}),i=await n.json();if(!n.ok)throw Error(i.message||`Đăng nhập Google thất bại`);localStorage.setItem(`token`,i.access_token),localStorage.setItem(`user`,JSON.stringify(i.user)),console.log(`[OAuth] Google login successful`),r&&r(i.user),t()}catch(e){console.error(`[OAuth] Login error:`,e),l(e.message),d(!1)}};return(0,y.useEffect)(()=>{if(!e)return;let t=setTimeout(()=>{if(typeof window<`u`&&window.google)try{window.google.accounts.id.initialize({client_id:`639044397050-7hair384u6lle941h033trut1s3q47l4.apps.googleusercontent.com`,callback:f}),window.google.accounts.id.renderButton(document.getElementById(`google-signin-btn-login`),{theme:`outline`,size:`large`,width:`380`})}catch(e){console.error(`Lỗi khởi tạo Google Sign-in:`,e)}},100);return()=>clearTimeout(t)},[e]),e?(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center p-4 sm:p-6`,children:[(0,Y.jsx)(`div`,{className:`absolute inset-0 bg-gray-900/60 backdrop-blur-sm animate-in fade-in duration-300`,onClick:t}),(0,Y.jsx)(`div`,{className:`relative w-full max-w-md bg-white rounded-3xl shadow-2xl overflow-hidden max-h-[90vh] overflow-y-auto animate-in zoom-in-95 duration-300`,children:(0,Y.jsxs)(`div`,{className:`p-8 sm:p-10`,children:[(0,Y.jsxs)(`div`,{className:`flex justify-between items-start mb-8`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h2`,{className:`text-3xl font-bold text-gray-900`,children:`Đăng nhập`}),(0,Y.jsx)(`p`,{className:`text-gray-500 mt-2`,children:`Chào mừng bạn quay trở lại!`})]}),(0,Y.jsx)(`button`,{onClick:t,className:`p-2 hover:bg-gray-100 rounded-full transition-colors text-gray-400 hover:text-gray-600`,children:(0,Y.jsx)(Ke,{className:`w-6 h-6`})})]}),c&&(0,Y.jsx)(`div`,{className:`mb-6 p-4 bg-red-50 text-red-600 rounded-2xl text-sm font-bold animate-in fade-in slide-in-from-top-1`,children:c}),(0,Y.jsxs)(`form`,{className:`space-y-6`,onSubmit:async e=>{e.preventDefault(),l(``),d(!0);try{let e=await fetch(`/api/v1/auth/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({email:i,password:o})}),n=await e.json();if(!e.ok)throw Error(n.message||`Đăng nhập thất bại`);localStorage.setItem(`token`,n.access_token),localStorage.setItem(`user`,JSON.stringify(n.user)),console.log(`[LoginModal] Email/password login successful`),r&&r(n.user),t()}catch(e){l(e.message)}finally{d(!1)}},children:[(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(`label`,{className:`text-sm font-semibold text-gray-700 ml-1`,children:`Tài khoản hoặc Email`}),(0,Y.jsxs)(`div`,{className:`relative group`,children:[(0,Y.jsx)(he,{className:`absolute left-4 top-1/2 -translate-y-1/2 w-5 h-5 text-gray-400 group-focus-within:text-blue-500 transition-colors`}),(0,Y.jsx)(`input`,{type:`text`,placeholder:`admin hoặc email...`,value:i,onChange:e=>a(e.target.value),required:!0,className:`w-full pl-12 pr-4 py-4 bg-gray-50 border border-gray-100 rounded-2xl focus:ring-2 focus:ring-blue-500 focus:bg-white outline-none transition-all`})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsxs)(`div`,{className:`flex justify-between items-center px-1`,children:[(0,Y.jsx)(`label`,{className:`text-sm font-semibold text-gray-700`,children:`Mật khẩu`}),(0,Y.jsx)(`button`,{className:`text-xs font-bold text-blue-600 hover:text-blue-700`,children:`Quên mật khẩu?`})]}),(0,Y.jsxs)(`div`,{className:`relative group`,children:[(0,Y.jsx)(fe,{className:`absolute left-4 top-1/2 -translate-y-1/2 w-5 h-5 text-gray-400 group-focus-within:text-blue-500 transition-colors`}),(0,Y.jsx)(`input`,{type:`password`,placeholder:`••••••••`,value:o,onChange:e=>s(e.target.value),required:!0,className:`w-full pl-12 pr-4 py-4 bg-gray-50 border border-gray-100 rounded-2xl focus:ring-2 focus:ring-blue-500 focus:bg-white outline-none transition-all`})]})]}),(0,Y.jsxs)(`button`,{type:`submit`,disabled:u,className:`w-full flex items-center justify-center gap-2 bg-blue-600 hover:bg-blue-700 text-white font-bold py-4 rounded-2xl shadow-lg shadow-blue-200 transition-all active:scale-[0.98] disabled:opacity-50`,children:[u?`Đang xử lý...`:`Đăng nhập`,u?(0,Y.jsx)(K,{className:`w-5 h-5 animate-spin`}):(0,Y.jsx)(O,{className:`w-5 h-5`})]})]}),(0,Y.jsxs)(`div`,{className:`relative my-6 flex items-center justify-center`,children:[(0,Y.jsx)(`div`,{className:`absolute inset-0 flex items-center`,children:(0,Y.jsx)(`div`,{className:`w-full border-t border-gray-200`})}),(0,Y.jsx)(`span`,{className:`relative px-3 bg-white text-xs font-bold text-gray-400 uppercase`,children:`Hoặc`})]}),(0,Y.jsx)(`div`,{id:`google-signin-btn-login`,className:`w-full flex justify-center`}),(0,Y.jsx)(`div`,{className:`mt-10 pt-8 border-t border-gray-100 text-center`,children:(0,Y.jsxs)(`p`,{className:`text-gray-500`,children:[`Chưa có tài khoản?`,` `,(0,Y.jsx)(`button`,{onClick:()=>{t(),n?.()},className:`font-bold text-blue-600 hover:underline`,children:`Tạo tài khoản ngay`})]})})]})})]}):null},Xe={appName:{vi:`Travel Planner`,en:`Travel Planner`,zh:`旅行规划`},login:{vi:`Đăng nhập`,en:`Log In`,zh:`登录`},signup:{vi:`Đăng ký`,en:`Sign Up`,zh:`注册`},logout:{vi:`Đăng xuất`,en:`Log Out`,zh:`登出`},cancel:{vi:`Hủy`,en:`Cancel`,zh:`取消`},confirm:{vi:`Xác nhận`,en:`Confirm`,zh:`确认`},save:{vi:`Lưu`,en:`Save`,zh:`保存`},saving:{vi:`Đang lưu...`,en:`Saving...`,zh:`保存中...`},loading:{vi:`Đang tải...`,en:`Loading...`,zh:`加载中...`},success:{vi:`Thành công`,en:`Success`,zh:`成功`},error:{vi:`Lỗi`,en:`Error`,zh:`错误`},info:{vi:`Thông tin`,en:`Info`,zh:`信息`},delete:{vi:`Xóa`,en:`Delete`,zh:`删除`},edit:{vi:`Chỉnh sửa`,en:`Edit`,zh:`编辑`},yes:{vi:`Có`,en:`Yes`,zh:`是`},no:{vi:`Không`,en:`No`,zh:`否`},close:{vi:`Đóng`,en:`Close`,zh:`关闭`},ok:{vi:`Đồng ý`,en:`OK`,zh:`确定`},welcomeBack:{vi:`Chào mừng bạn quay trở lại!`,en:`Welcome back!`,zh:`欢迎回来!`},emailLabel:{vi:`Email`,en:`Email`,zh:`邮箱`},passwordLabel:{vi:`Mật khẩu`,en:`Password`,zh:`密码`},forgotPassword:{vi:`Quên mật khẩu?`,en:`Forgot password?`,zh:`忘记密码?`},orLabel:{vi:`Hoặc`,en:`Or`,zh:`或`},noAccount:{vi:`Chưa có tài khoản?`,en:`Don't have an account?`,zh:`还没有账号?`},createAccountNow:{vi:`Tạo tài khoản ngay`,en:`Create one now`,zh:`立即注册`},quickCamera:{vi:`Chụp ảnh nhanh`,en:`Quick Camera`,zh:`快速相机`},momentsTitle:{vi:`Khoảnh khắc cộng đồng`,en:`Community Moments`,zh:`社区精彩瞬间`},trustedMembers:{vi:`Thành viên uy tín`,en:`Trusted Members`,zh:`信用会员`},exploreToursBtn:{vi:`Khám phá các hành trình du lịch`,en:`Explore Travel Itineraries`,zh:`探索旅行行程`},exploreTourMap:{vi:`Khám phá Bản đồ Tour`,en:`Explore Tour Map`,zh:`探索旅游地图`},systemBtn:{vi:`Hệ thống`,en:`System`,zh:`系统管理`},createTourBtn:{vi:`Tạo Tour`,en:`Create Tour`,zh:`创建行程`},chooseLocationMap:{vi:`Chọn vị trí trên bản đồ`,en:`Choose location on map`,zh:`在地图上选择位置`},clickMapSelectCoords:{vi:`Click lên bản đồ để chọn tọa độ`,en:`Click on map to select coordinates`,zh:`在地图上点击以选择坐标`},coordsLabel:{vi:`Tọa độ`,en:`Coordinates`,zh:`坐标`},businessRestaurant:{vi:`Nhà hàng`,en:`Restaurant`,zh:`餐厅`},businessHotel:{vi:`Khách sạn`,en:`Hotel`,zh:`酒店`},businessHomestay:{vi:`Homestay`,en:`Homestay`,zh:`Homestay`},noCoordsSelected:{vi:`Chưa chọn vị trí`,en:`No location selected`,zh:`未选择位置`},searchPlaceholder:{vi:`Tìm kiếm địa điểm...`,en:`Search places...`,zh:`搜索地点...`},legLabel:{vi:`Chặng`,en:`Leg`,zh:`航段`},legSequence:{vi:`Chi tiết Chặng`,en:`Leg Details`,zh:`航段详情`},startDate:{vi:`Bắt đầu`,en:`Start Date`,zh:`开始日期`},endDate:{vi:`Kết thúc`,en:`End Date`,zh:`结束日期`},addLocation:{vi:`Thêm địa điểm`,en:`Add Location`,zh:`添加地点`},dwellTime:{vi:`Thời gian dừng`,en:`Dwell Time`,zh:`停留时间`},expenseLabel:{vi:`Chi phí`,en:`Expense`,zh:`费用`},paidByLabel:{vi:`Người chi trả`,en:`Paid By`,zh:`付款人`},optimizeBtn:{vi:`Tối ưu`,en:`Optimize`,zh:`优化`},startPoint:{vi:`Điểm bắt đầu`,en:`Start Point`,zh:`起点`},endPoint:{vi:`Điểm kết thúc`,en:`End Point`,zh:`终点`},pinStartHelper:{vi:`Nhấn để ghim điểm bắt đầu cho Tour...`,en:`Click to pin starting point...`,zh:`点击锁定行程起点...`},pinEndHelper:{vi:`Nhấn để ghim điểm kết thúc cho Tour...`,en:`Click to pin ending point...`,zh:`点击锁定行程终点...`},noLegs:{vi:`Chưa có chặng nào trong lộ trình.`,en:`No legs in the itinerary yet.`,zh:`行程中暂无航段。`},declareLegsBtn:{vi:`Khai báo số chặng`,en:`Declare Leg Count`,zh:`申报航段数`},addSingleLeg:{vi:`Thêm chặng lẻ vào cuối`,en:`Add leg to end`,zh:`末尾添加单个航段`},exportPDF:{vi:`Xuất PDF`,en:`Export PDF`,zh:`导出 PDF`},rateOrganizer:{vi:`Đánh giá ban tổ chức`,en:`Rate Organizer`,zh:`评估组织者`},honesty:{vi:`Trung thực`,en:`Honesty`,zh:`诚实度`},transparency:{vi:`Minh bạch`,en:`Transparency`,zh:`透明度`},enthusiasm:{vi:`Nhiệt tình`,en:`Enthusiasm`,zh:`热情度`},cheerfulness:{vi:`Vui vẻ`,en:`Cheerfulness`,zh:`愉快度`},seriousness:{vi:`Nhiêm túc`,en:`Seriousness`,zh:`认真度`},planning:{vi:`Có kế hoạch`,en:`Planning Skills`,zh:`计划性`},survival:{vi:`Kỹ năng sinh tồn`,en:`Survival Skills`,zh:`生存技能`},rateTitle:{vi:`Đánh giá Người tạo Tour`,en:`Rate Tour Creator`,zh:`评价行程发起人`},rateCommentPlaceholder:{vi:`Nhập ý kiến đánh giá khác...`,en:`Enter other comments...`,zh:`输入其他评价...`},emergencyShare:{vi:`Chia sẻ khẩn cấp`,en:`Emergency Share`,zh:`紧急分享`},emergencyShareTooltip:{vi:`Bật chia sẻ để người thân có thể định vị bạn khi khẩn cấp`,en:`Enable sharing so family can locate you in emergencies`,zh:`开启分享以便家人在紧急情况下定位您`},copyShareLink:{vi:`Sao chép liên kết chia sẻ`,en:`Copy share link`,zh:`复制分享链接`},tabUsers:{vi:`Người dùng`,en:`Users`,zh:`用户管理`},tabPhotos:{vi:`Ảnh công khai`,en:`Public Photos`,zh:`公开照片`},tabTrash:{vi:`Ảnh rác`,en:`Trash Photos`,zh:`垃圾照片`},tabFilters:{vi:`Bộ lọc`,en:`Filters`,zh:`过滤器`},filterNsfwToggle:{vi:`Lọc hình ảnh khiêu dâm`,en:`Block NSFW Images`,zh:`过滤淫秽图片`},filterFaceBlurToggle:{vi:`Làm mờ khuôn mặt`,en:`Automatic Face Blur`,zh:`自动模糊人脸`},wordFiltersTitle:{vi:`Từ khóa cấm & Thay thế`,en:`Banned Words & Replacements`,zh:`禁用词及替换词`},addWordBtn:{vi:`Thêm từ khóa`,en:`Add Word`,zh:`添加词汇`},wordLabel:{vi:`Từ cấm`,en:`Banned Word`,zh:`敏感词`},replacementLabel:{vi:`Từ thay thế`,en:`Replacement`,zh:`替换词`},commentSectionTitle:{vi:`Bình luận cộng đồng`,en:`Community Comments`,zh:`社区评论`},myItineraries:{vi:`Hành trình của tôi`,en:`My Itineraries`,zh:`我的行程`},chatMenu:{vi:`Trò chuyện`,en:`Chat`,zh:`聊天`},friendsMenu:{vi:`Danh sách bạn bè`,en:`Friends List`,zh:`好友列表`},muteNotifications:{vi:`Tắt thông báo đẩy`,en:`Mute Notifications`,zh:`关闭推送通知`},unmuteNotifications:{vi:`Bật thông báo đẩy`,en:`Unmute Notifications`,zh:`开启推送通知`},enterSecretKey:{vi:`Nhập Admin Secret Key để mở khóa`,en:`Enter Admin Secret Key to unlock`,zh:`输入管理员密钥解锁`},invalidSecretKey:{vi:`Mã Secret Key không hợp lệ`,en:`Invalid Secret Key`,zh:`密钥无效`},languageSelect:{vi:`Ngôn ngữ`,en:`Language`,zh:`语言`},themeSelect:{vi:`Giao diện`,en:`Theme`,zh:`主题`},themeLight:{vi:`Sáng`,en:`Light`,zh:`浅色`},themeDark:{vi:`Tối`,en:`Dark`,zh:`深色`},themeSystem:{vi:`Hệ thống`,en:`System`,zh:`跟随系统`},emergencyContacts:{vi:`Liên hệ khẩn cấp`,en:`Emergency Contacts`,zh:`紧急联系人`},tourOwner:{vi:`Người tạo Tour (Owner)`,en:`Tour Owner`,zh:`发起人`},tourManager:{vi:`Người quản lý (Manager)`,en:`Tour Manager`,zh:`管理员`},phoneNumber:{vi:`Số điện thoại`,en:`Phone Number`,zh:`电话号码`},emergencyJourney:{vi:`Hành trình Cứu hộ Khẩn cấp`,en:`Emergency Rescue Journey`,zh:`紧急救援行程`},noPhone:{vi:`Không có số điện thoại`,en:`No phone number`,zh:`暂无电话`},noStops:{vi:`Chưa có điểm dừng nào`,en:`No stops declared`,zh:`暂无停留点`},viewMap:{vi:`Bản đồ`,en:`Map`,zh:`地图`},viewTimeline:{vi:`Lịch trình`,en:`Itinerary`,zh:`行程表`},sharedJourneyTitle:{vi:`Hành trình chia sẻ khẩn cấp`,en:`Emergency Shared Journey`,zh:`紧急分享行程`},linkExpired:{vi:`Liên kết không tồn tại hoặc đã bị vô hiệu hóa.`,en:`Link does not exist or has been disabled.`,zh:`链接不存在或已被禁用。`},shortExplore:{vi:`Khám phá`,en:`Explore`,zh:`探索`},shortCamera:{vi:`Chụp ảnh`,en:`Camera`,zh:`拍照`},reportBusinessBtn:{vi:`Báo cáo sai phạm`,en:`Report Violation`,zh:`举报`},blacklistTitle:{vi:`Widget Blacklist`,en:`Blacklist Widget`,zh:`黑名单`},reportModalTitle:{vi:`Báo cáo cơ sở không đàng hoàng`,en:`Report Dishonest Business`,zh:`举报不良商家`},businessName:{vi:`Tên cơ sở/người dùng`,en:`Name`,zh:`名称`},businessPhone:{vi:`Số điện thoại`,en:`Phone Number`,zh:`电话号码`},businessEmail:{vi:`Email liên hệ`,en:`Email Address`,zh:`电子邮箱`},businessAddress:{vi:`Địa chỉ`,en:`Address`,zh:`地址`},businessType:{vi:`Loại hình`,en:`Type`,zh:`类型`},typeUser:{vi:`Người dùng`,en:`User`,zh:`用户`},typeRestaurant:{vi:`Nhà hàng`,en:`Restaurant`,zh:`餐厅`},typeHotel:{vi:`Khách sạn`,en:`Hotel`,zh:`酒店`},typeHomestay:{vi:`Homestay`,en:`Homestay`,zh:`民俗`},reportReason:{vi:`Lý do báo cáo`,en:`Reason for report`,zh:`举报原因`},submitReport:{vi:`Gửi báo cáo`,en:`Submit Report`,zh:`提交举报`},reportSuccess:{vi:`Gửi báo cáo thành công. Ban quản trị sẽ kiểm duyệt thông tin.`,en:`Report submitted successfully. The admin will review it.`,zh:`提交成功。管理员将审核`},emptyBlacklist:{vi:`Chưa có cơ sở nào trong danh sách đen.`,en:`No businesses in blacklist yet.`,zh:`黑名单中暂无商家。`},tabReports:{vi:`Blacklist`,en:`Blacklist`,zh:`黑名单`},areYouSure:{vi:`Bạn có chắc chắn không?`,en:`Are you sure?`,zh:`你确定吗?`},processing:{vi:`Đang xử lý...`,en:`Processing...`,zh:`处理中...`},checkingImages:{vi:`Đang kiểm tra và lọc hình ảnh của bạn...`,en:`Checking and filtering your images...`,zh:`正在检查和过滤您的图片...`},uploadFailed:{vi:`Tải ảnh thất bại.`,en:`Image upload failed.`,zh:`图片上传失败。`},uploadSuccess:{vi:`Đã tải lên thành công.`,en:`Upload successful.`,zh:`上传成功。`},imageBlocked:{vi:`Ảnh chứa nội dung không phù hợp và bị chặn.`,en:`Image contains inappropriate content and was blocked.`,zh:`图片包含不当内容并已被屏蔽。`},selectImage:{vi:`Nhấn để chọn ảnh`,en:`Click to select images`,zh:`点击选择图片`},uploadPhotos:{vi:`Tải ảnh lên`,en:`Upload Photos`,zh:`上传照片`},selectedFiles:{vi:`Đã chọn`,en:`Selected`,zh:`已选择`},imageModeration:{vi:`Ảnh bị từ chối`,en:`Image Rejected`,zh:`图片被拒`},imageModerationBlocked:{vi:`ảnh chứa nội dung không phù hợp và bị chặn.`,en:`image contains inappropriate content and was blocked.`,zh:`图片包含不当内容并已被屏蔽。`},imageCheck:{vi:`Lỗi ảnh`,en:`Image Error`,zh:`图片错误`},imageLoadFailed:{vi:`Không thể đọc nội dung ảnh: `,en:`Cannot read image content: `,zh:`无法读取图片内容:`},pleaseTryAgain:{vi:`Vui lòng kiểm tra lại file.`,en:`Please check the file.`,zh:`请检查文件。`},fileCheckingError:{vi:`Lỗi trong quá trình kiểm duyệt ảnh.`,en:`Error during image review.`,zh:`图片审核过程中出错。`},createTourModalTitle:{vi:`Tạo Tour mới`,en:`Create New Tour`,zh:`创建新行程`},creatingTour:{vi:`Đang tạo...`,en:`Creating...`,zh:`创建中...`},confirmCreateTour:{vi:`Xác nhận tạo Tour`,en:`Confirm Tour Creation`,zh:`确认创建行程`},enterTourName:{vi:`Nhập tên tour...`,en:`Enter tour name...`,zh:`输入行程名称...`},tourNameRequired:{vi:`Tên tour không được để trống`,en:`Tour name cannot be empty`,zh:`行程名称不能为空`},confirmStartPoint:{vi:`Xác nhận Điểm xuất phát`,en:`Confirm Starting Point`,zh:`确认起点`},confirmEndPoint:{vi:`Xác nhận Điểm kết thúc`,en:`Confirm Ending Point`,zh:`确认终点`},location:{vi:`Vị trí`,en:`Location`,zh:`位置`},expenseReportTitle:{vi:`BÁO CÁO CHI PHÍ TOUR`,en:`TOUR EXPENSE REPORT`,zh:`行程费用报告`},expenseSplitTable:{vi:`Bảng phân chia chi phí`,en:`Expense Split Table`,zh:`费用分割表`},member:{vi:`Thành viên`,en:`Member`,zh:`成员`},shouldPay:{vi:`Cần trả`,en:`Should Pay`,zh:`应付`},paid:{vi:`Đã trả`,en:`Paid`,zh:`已付`},balance:{vi:`Số dư`,en:`Balance`,zh:`余额`},mergeMembers:{vi:`Hợp nhất thành viên`,en:`Merge Members`,zh:`合并成员`},mergeSuccess:{vi:`Hợp nhất thành công.`,en:`Merge successful.`,zh:`合并成功。`},mergeFailed:{vi:`Hợp nhất thất bại.`,en:`Merge failed.`,zh:`合并失败。`},disconnect:{vi:`Hủy kết nối`,en:`Disconnect`,zh:`断开连接`},notificationsMuted:{vi:`Đã tắt thông báo`,en:`Notifications muted`,zh:`通知已关闭`},searchContent:{vi:`Tìm kiếm nội dung...`,en:`Search content...`,zh:`搜索内容...`},noNotesYet:{vi:`Chưa có ghi chú nào`,en:`No notes yet`,zh:`还没有笔记`},createNewNote:{vi:`Tạo ghi chú mới`,en:`Create New Note`,zh:`创建新笔记`},noteTitle:{vi:`Tiêu đề`,en:`Title`,zh:`标题`},noteContent:{vi:`Nội dung`,en:`Content`,zh:`内容`},deleteNote:{vi:`Xóa ghi chú`,en:`Delete Note`,zh:`删除笔记`},deleteNoteConfirm:{vi:`Bạn có chắc chắn muốn xóa ghi chú này?`,en:`Are you sure you want to delete this note?`,zh:`确定要删除此笔记吗?`},createAccount:{vi:`Tạo tài khoản mới`,en:`Create New Account`,zh:`创建新账户`},verifyAccount:{vi:`Xác thực tài khoản`,en:`Verify Account`,zh:`验证账户`},confirmPassword:{vi:`Xác nhận mật khẩu`,en:`Confirm Password`,zh:`确认密码`},passwordMismatch:{vi:`Mật khẩu không khớp`,en:`Passwords do not match`,zh:`密码不匹配`},firstName:{vi:`Tên`,en:`First Name`,zh:`名字`},lastName:{vi:`Họ`,en:`Last Name`,zh:`姓氏`},tourMembers:{vi:`Thành viên`,en:`Members`,zh:`成员`},expenses:{vi:`Chi phí`,en:`Expenses`,zh:`费用`},errorLoadingTour:{vi:`Lỗi khi tải thông tin tour.`,en:`Error loading tour information.`,zh:`加载行程信息出错。`},restaurant:{vi:`Nhà hàng`,en:`Restaurant`,zh:`餐厅`},hotel:{vi:`Khách sạn`,en:`Hotel`,zh:`酒店`},homestay:{vi:`Homestay`,en:`Homestay`,zh:`民宿`},businessTypeLabel:{vi:`Loại hình kinh doanh`,en:`Business Type`,zh:`商家类型`},searchMember:{vi:`Tìm kiếm thành viên...`,en:`Search members...`,zh:`搜索成员...`},addMemberTitle:{vi:`Thêm thành viên`,en:`Add Member`,zh:`添加成员`},comments:{vi:`Bình luận`,en:`Comments`,zh:`评论`},addComment:{vi:`Thêm bình luận`,en:`Add comment`,zh:`添加评论`},writeComment:{vi:`Viết bình luận...`,en:`Write a comment...`,zh:`写评论...`},noComments:{vi:`Chưa có bình luận nào`,en:`No comments yet`,zh:`还没有评论`},deleteComment:{vi:`Xóa bình luận`,en:`Delete comment`,zh:`删除评论`},editComment:{vi:`Chỉnh sửa bình luận`,en:`Edit comment`,zh:`编辑评论`},loading_msg:{vi:`Đang tải...`,en:`Loading...`,zh:`加载中...`},noData:{vi:`Không có dữ liệu`,en:`No data`,zh:`无数据`},retry:{vi:`Thử lại`,en:`Retry`,zh:`重试`},back:{vi:`Quay lại`,en:`Back`,zh:`返回`},next:{vi:`Tiếp theo`,en:`Next`,zh:`下一步`},previous:{vi:`Trước đó`,en:`Previous`,zh:`上一步`},done:{vi:`Xong`,en:`Done`,zh:`完成`},finish:{vi:`Kết thúc`,en:`Finish`,zh:`完成`},submit:{vi:`Gửi`,en:`Submit`,zh:`提交`},update:{vi:`Cập nhật`,en:`Update`,zh:`更新`},create:{vi:`Tạo`,en:`Create`,zh:`创建`},new:{vi:`Mới`,en:`New`,zh:`新建`},friendsList:{vi:`Danh sách bạn bè`,en:`Friends List`,zh:`好友列表`},familyGroup:{vi:`Gia đình`,en:`Family`,zh:`家庭`},friends:{vi:`Bạn bè`,en:`Friends`,zh:`朋友`},manageFriendsDesc:{vi:`Bạn bè, gia đình, yêu cầu chờ duyệt`,en:`Friends, family, pending requests`,zh:`朋友、家人、待决批准`},noConnections:{vi:`Bạn chưa kết nối với ai. Hãy chuyển sang tìm kiếm để gửi lời mời.`,en:`You have no connections yet. Search to send invitations.`,zh:`你还没有任何连接。搜索以发送邀请。`},searchMembers:{vi:`Tìm kiếm theo Tên hoặc Email (nhập tối thiểu 2 ký tự)...`,en:`Search by Name or Email (min 2 characters)...`,zh:`按名称或电子邮件搜索(最少2个字符)...`},searching:{vi:`Đang tìm kiếm...`,en:`Searching...`,zh:`搜索中...`},minCharsRequired:{vi:`Vui lòng nhập tối thiểu 2 ký tự để tìm kiếm thành viên.`,en:`Please enter at least 2 characters to search.`,zh:`请输入至少2个字符进行搜索。`},disconnectTitle:{vi:`Hủy kết nối`,en:`Disconnect`,zh:`断开连接`},disconnectConfirm:{vi:`Bạn có chắc chắn muốn hủy kết nối với`,en:`Are you sure you want to disconnect with`,zh:`你确定要与...断开连接吗`},disconnectSuccess:{vi:`Đã hủy kết nối thành công.`,en:`Disconnected successfully.`,zh:`断开连接成功。`},searchError:{vi:`Lỗi tìm kiếm thành viên:`,en:`Error searching members:`,zh:`搜索成员时出错:`},disconnectError:{vi:`Lỗi hủy kết nối:`,en:`Error disconnecting:`,zh:`断开连接出错:`},photoGallery:{vi:`Thư viện ảnh`,en:`Photo Gallery`,zh:`相册`},photoGalleryDesc:{vi:`Kho ảnh gốc của bạn từ các tour`,en:`Your original photos from all tours`,zh:`您来自所有行程的原始照片`},flagPhoto:{vi:`Báo cáo ảnh`,en:`Report Photo`,zh:`举报照片`},flagPhotoReason:{vi:`Lý do báo cáo`,en:`Report Reason`,zh:`举报原因`},flagPhotoSuccess:{vi:`Đã báo cáo ảnh`,en:`Photo reported`,zh:`已举报照片`},flagPhotoError:{vi:`Lỗi báo cáo ảnh`,en:`Error reporting photo`,zh:`举报照片出错`},inappropriate:{vi:`Nội dung không phù hợp`,en:`Inappropriate content`,zh:`不恰当的内容`},spam:{vi:`Spam`,en:`Spam`,zh:`垃圾邮件`},copyright:{vi:`Vi phạm bản quyền`,en:`Copyright violation`,zh:`侵犯版权`},other:{vi:`Khác`,en:`Other`,zh:`其他`},toursManagement:{vi:`Quản lý hành trình`,en:`Manage Tours`,zh:`管理行程`},toursManagementDesc:{vi:`Xem và quản lý các chuyến đi`,en:`View and manage your travels`,zh:`查看和管理您的旅行`},notificationsEnabled:{vi:`Đã bật thông báo`,en:`Notifications enabled`,zh:`已启用通知`},notificationsDisabled:{vi:`Đã tắt thông báo`,en:`Notifications disabled`,zh:`已禁用通知`},emergencySharingEnabled:{vi:`Đã bật chia sẻ hành trình cứu hộ.`,en:`Emergency sharing enabled.`,zh:`已启用紧急分享。`},emergencySharingDisabled:{vi:`Đã tắt chia sẻ.`,en:`Sharing disabled.`,zh:`已禁用分享。`},changeConnectionType:{vi:`Mối quan hệ đã được chuyển sang nhóm: `,en:`Relationship changed to group: `,zh:`关系已更改为组:`},settingsSection:{vi:`Cài đặt`,en:`Settings`,zh:`设置`},manageRelations:{vi:`Quản lý các mối quan hệ bạn bè, gia đình, duyệt các yêu cầu kết nối từ thành viên khác.`,en:`Manage friends, family relationships, and review connection requests from other members.`,zh:`管理朋友和家人关系,审查来自其他成员的连接请求。`}},Ze=()=>{let[e,t]=(0,y.useState)(()=>localStorage.getItem(`language`)||`vi`);return(0,y.useEffect)(()=>{let e=()=>{t(localStorage.getItem(`language`)||`vi`)};return window.addEventListener(`languageChange`,e),()=>window.removeEventListener(`languageChange`,e)},[]),{t:t=>Xe[t]?Xe[t][e]:t,lang:e,changeLanguage:e=>{localStorage.setItem(`language`,e),t(e),window.dispatchEvent(new Event(`languageChange`))}}},Qe=({isOpen:e,onClose:t,initialLatitude:n,initialLongitude:r})=>{let{t:i}=Ze(),[a,o]=(0,y.useState)(`RESTAURANT`),[s,c]=(0,y.useState)(``),[l,u]=(0,y.useState)(``),[d,f]=(0,y.useState)(``),[p,m]=(0,y.useState)(``),[h,g]=(0,y.useState)(n?String(n):``),[_,v]=(0,y.useState)(r?String(r):``),[b,x]=(0,y.useState)(``),[S,C]=(0,y.useState)(!1),[w,E]=(0,y.useState)(``),[D,O]=(0,y.useState)(!1);return y.useEffect(()=>{e&&(g(n?String(n):``),v(r?String(r):``),O(!1),E(``))},[e,n,r]),e?(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-[3000] flex items-center justify-center p-4`,children:[(0,Y.jsx)(`div`,{className:`absolute inset-0 bg-gray-900/60 backdrop-blur-sm animate-in fade-in duration-300`,onClick:t}),(0,Y.jsxs)(`div`,{className:`relative w-full max-w-lg bg-white rounded-3xl shadow-2xl overflow-hidden animate-in zoom-in-95 duration-300 flex flex-col max-h-[90vh]`,children:[(0,Y.jsxs)(`div`,{className:`p-6 border-b border-gray-100 flex justify-between items-center bg-gray-50/50`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(`div`,{className:`p-2 bg-red-50 text-red-500 rounded-xl`,children:(0,Y.jsx)(q,{className:`w-6 h-6`})}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h2`,{className:`text-xl font-bold text-gray-900`,children:i(`reportModalTitle`)}),(0,Y.jsx)(`p`,{className:`text-xs text-gray-500 mt-0.5`,children:`Báo cáo các hành vi không lành mạnh hoặc lừa đảo kinh doanh.`})]})]}),(0,Y.jsx)(`button`,{onClick:t,className:`p-2 hover:bg-gray-100 rounded-full transition-colors text-gray-400 hover:text-gray-600`,children:(0,Y.jsx)(Ke,{className:`w-5 h-5`})})]}),D?(0,Y.jsxs)(`div`,{className:`p-10 flex flex-col items-center justify-center text-center space-y-4`,children:[(0,Y.jsx)(`div`,{className:`w-16 h-16 bg-emerald-100 text-emerald-600 rounded-full flex items-center justify-center shadow-lg animate-bounce`,children:(0,Y.jsx)(q,{className:`w-8 h-8`})}),(0,Y.jsxs)(`h3`,{className:`text-xl font-bold text-gray-900`,children:[i(`success`),`!`]}),(0,Y.jsx)(`p`,{className:`text-sm text-gray-500 max-w-sm`,children:i(`reportSuccess`)})]}):(0,Y.jsxs)(`form`,{onSubmit:async e=>{e.preventDefault(),E(``),C(!0);try{let e=await fetch(`/api/v1/reports`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({type:a,name:s,phone:l||null,email:d||null,address:p||null,latitude:h?parseFloat(h):null,longitude:_?parseFloat(_):null,reason:b})}),n=await e.json();if(!e.ok)throw Error(n.message||`Gửi báo cáo thất bại.`);O(!0),setTimeout(()=>{t(),c(``),u(``),f(``),m(``),g(``),v(``),x(``)},2e3)}catch(e){E(e.message)}finally{C(!1)}},className:`p-6 space-y-4 overflow-y-auto flex-1 text-left`,children:[w&&(0,Y.jsxs)(`div`,{className:`p-4 bg-red-50 text-red-600 rounded-2xl text-xs font-bold flex items-center gap-2`,children:[(0,Y.jsx)(T,{className:`w-4 h-4 shrink-0`}),(0,Y.jsx)(`span`,{children:w})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsxs)(`label`,{className:`text-xs font-bold text-gray-500 uppercase tracking-wider`,children:[i(`businessType`),` *`]}),(0,Y.jsxs)(`select`,{value:a,onChange:e=>o(e.target.value),className:`w-full px-4 py-3 bg-gray-50 border border-gray-100 rounded-2xl focus:ring-2 focus:ring-blue-500 focus:bg-white outline-none transition-all text-sm font-bold text-gray-800`,children:[(0,Y.jsx)(`option`,{value:`USER`,children:i(`typeUser`)}),(0,Y.jsx)(`option`,{value:`RESTAURANT`,children:i(`typeRestaurant`)}),(0,Y.jsx)(`option`,{value:`HOTEL`,children:i(`typeHotel`)}),(0,Y.jsx)(`option`,{value:`HOMESTAY`,children:i(`typeHomestay`)})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsxs)(`label`,{className:`text-xs font-bold text-gray-500 uppercase tracking-wider`,children:[i(`businessName`),` *`]}),(0,Y.jsx)(`input`,{type:`text`,required:!0,value:s,onChange:e=>c(e.target.value),placeholder:`VD: Nhà hàng ABC, Homestay X...`,className:`w-full px-4 py-3 bg-gray-50 border border-gray-100 rounded-2xl focus:ring-2 focus:ring-blue-500 focus:bg-white outline-none transition-all text-sm text-gray-800`})]}),(0,Y.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-4`,children:[(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsxs)(`label`,{className:`text-xs font-bold text-gray-500 uppercase tracking-wider flex items-center gap-1`,children:[(0,Y.jsx)(we,{className:`w-3.5 h-3.5 text-gray-400`}),` `,i(`businessPhone`)]}),(0,Y.jsx)(`input`,{type:`tel`,value:l,onChange:e=>u(e.target.value),placeholder:`0987xxxxxx`,className:`w-full px-4 py-3 bg-gray-50 border border-gray-100 rounded-2xl focus:ring-2 focus:ring-blue-500 focus:bg-white outline-none transition-all text-sm text-gray-800`})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsxs)(`label`,{className:`text-xs font-bold text-gray-500 uppercase tracking-wider flex items-center gap-1`,children:[(0,Y.jsx)(he,{className:`w-3.5 h-3.5 text-gray-400`}),` `,i(`businessEmail`)]}),(0,Y.jsx)(`input`,{type:`email`,value:d,onChange:e=>f(e.target.value),placeholder:`contact@business.com`,className:`w-full px-4 py-3 bg-gray-50 border border-gray-100 rounded-2xl focus:ring-2 focus:ring-blue-500 focus:bg-white outline-none transition-all text-sm text-gray-800`})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsxs)(`label`,{className:`text-xs font-bold text-gray-500 uppercase tracking-wider flex items-center gap-1`,children:[(0,Y.jsx)(ge,{className:`w-3.5 h-3.5 text-gray-400`}),` `,i(`businessAddress`)]}),(0,Y.jsx)(`input`,{type:`text`,value:p,onChange:e=>m(e.target.value),placeholder:`VD: 123 Đường Trần Phú, Đà Lạt...`,className:`w-full px-4 py-3 bg-gray-50 border border-gray-100 rounded-2xl focus:ring-2 focus:ring-blue-500 focus:bg-white outline-none transition-all text-sm text-gray-800`})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5 bg-blue-50/50 p-4 rounded-2xl border border-blue-100`,children:[(0,Y.jsxs)(`div`,{className:`flex justify-between items-center mb-2`,children:[(0,Y.jsx)(`span`,{className:`text-xs font-bold text-blue-700 uppercase tracking-wider flex items-center gap-1.5`,children:`📍 Vị trí địa lý (Tùy chọn)`}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>{if(!navigator.geolocation){E(`Trình duyệt không hỗ trợ định vị GPS.`);return}navigator.geolocation.getCurrentPosition(e=>{g(String(e.coords.latitude.toFixed(6))),v(String(e.coords.longitude.toFixed(6)))},()=>{E(`Không thể lấy vị trí hiện tại. Vui lòng bật định vị GPS.`)})},className:`text-xs font-bold text-blue-600 hover:text-blue-700 hover:underline flex items-center gap-1`,children:`Lấy vị trí GPS hiện tại`})]}),(0,Y.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`label`,{className:`block text-[10px] font-bold text-gray-400 uppercase mb-1`,children:`Vĩ độ (Latitude)`}),(0,Y.jsx)(`input`,{type:`number`,step:`any`,value:h,onChange:e=>g(e.target.value),placeholder:`11.9404`,className:`w-full px-3 py-2 bg-white border border-gray-200 rounded-xl outline-none text-xs text-gray-800`})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`label`,{className:`block text-[10px] font-bold text-gray-400 uppercase mb-1`,children:`Kinh độ (Longitude)`}),(0,Y.jsx)(`input`,{type:`number`,step:`any`,value:_,onChange:e=>v(e.target.value),placeholder:`108.4382`,className:`w-full px-3 py-2 bg-white border border-gray-200 rounded-xl outline-none text-xs text-gray-800`})]})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsxs)(`label`,{className:`text-xs font-bold text-gray-500 uppercase tracking-wider`,children:[i(`reportReason`),` *`]}),(0,Y.jsx)(`textarea`,{required:!0,rows:3,value:b,onChange:e=>x(e.target.value),placeholder:`Hãy mô tả hành vi không đàng hoàng, lừa đảo hoặc gian dối của cơ sở/người dùng này...`,className:`w-full px-4 py-3 bg-gray-50 border border-gray-100 rounded-2xl focus:ring-2 focus:ring-blue-500 focus:bg-white outline-none transition-all resize-none text-sm text-gray-800`})]}),(0,Y.jsxs)(`button`,{type:`submit`,disabled:S,className:`w-full py-4 bg-red-600 hover:bg-red-700 text-white font-bold rounded-2xl shadow-lg shadow-red-100 transition-all flex items-center justify-center gap-2 active:scale-[0.98] disabled:opacity-50`,children:[S?`Đang gửi...`:i(`submitReport`),S?(0,Y.jsx)(K,{className:`w-5 h-5 animate-spin`}):(0,Y.jsx)(q,{className:`w-5 h-5`})]})]})]})]}):null},$e=({isOpen:e,title:t=`Thông báo`,message:n,type:r=`info`,onConfirm:i})=>e?(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-[3000] flex items-center justify-center p-4`,children:[(0,Y.jsx)(`div`,{className:`absolute inset-0 bg-gray-900/60 backdrop-blur-sm animate-in fade-in duration-200`,onClick:i}),(0,Y.jsxs)(`div`,{className:`relative w-full max-w-sm bg-white rounded-[32px] shadow-2xl overflow-hidden p-8 text-center animate-in zoom-in-95 duration-200`,children:[(0,Y.jsx)(`div`,{className:`flex justify-center mb-5`,children:{success:(0,Y.jsx)(R,{className:`w-12 h-12 text-green-500`}),error:(0,Y.jsx)(w,{className:`w-12 h-12 text-red-500`}),info:(0,Y.jsx)(ce,{className:`w-12 h-12 text-blue-500`})}[r]}),(0,Y.jsx)(`h2`,{className:`text-xl font-black text-gray-900 mb-2`,children:t}),(0,Y.jsx)(`p`,{className:`text-gray-500 text-sm leading-relaxed mb-8`,children:n||`Bạn không được phép gỡ bỏ thành viên này!`}),(0,Y.jsx)(`button`,{onClick:i,className:`w-full py-4 text-white font-bold rounded-2xl transition-all shadow-lg active:scale-95 ${{success:`bg-green-600 hover:bg-green-700 shadow-green-100`,error:`bg-red-600 hover:bg-red-700 shadow-red-100`,info:`bg-blue-600 hover:bg-blue-700 shadow-blue-100`}[r]}`,children:`Đã hiểu`})]})]}):null,et=(0,y.createContext)(void 0),X=({children:e})=>{let[t,n]=(0,y.useState)({isOpen:!1}),r=(0,y.useCallback)(({title:e,message:t,type:r=`info`})=>{n({isOpen:!0,title:e,message:t,type:r})},[]),i=(0,y.useCallback)(()=>{n(e=>({...e,isOpen:!1}))},[]);return(0,y.useEffect)(()=>{if(t.isOpen){let e=setTimeout(()=>{i()},3e3);return()=>clearTimeout(e)}},[t.isOpen,i]),(0,Y.jsxs)(et.Provider,{value:r,children:[e,(0,Y.jsx)($e,{isOpen:t.isOpen,title:t.title,message:t.message,type:t.type,onConfirm:i})]})},tt=()=>{let e=(0,y.useContext)(et);if(!e)throw Error(`useNotification must be used within a NotificationProvider`);return e},nt=(e,t)=>new Promise((n,r)=>{let i=[e,...t||[]];if(i.some(e=>document.querySelector(`script[src="${e}"]`))){n();return}let a=e=>{if(e>=i.length){r(Error(`Failed to load script from any source: ${i.join(`, `)}`));return}let t=i[e],o=document.createElement(`script`);o.src=t,o.onload=()=>n(),o.onerror=()=>{console.warn(`Failed to load script ${t}. Trying next fallback...`);let n=e+1;n{await nt(`https://cdn.jsdelivr.net/npm/@tensorflow/tfjs`,[`https://unpkg.com/@tensorflow/tfjs`,`https://esm.sh/@tensorflow/tfjs`]),await Promise.all([nt(`https://cdn.jsdelivr.net/npm/@tensorflow-models/blazeface`,[`https://unpkg.com/@tensorflow-models/blazeface`,`https://esm.sh/@tensorflow-models/blazeface`]),nt(`https://cdn.jsdelivr.net/npm/nsfwjs@2.4.0/dist/bundle.js`,[`https://unpkg.com/nsfwjs@2.4.0/dist/bundle.js`,`https://esm.sh/nsfwjs@2.4.0/dist/bundle.js`])])},it=async e=>{try{let t=await fetch(`/api/v1/moderation/settings`);if(!t.ok)return{file:e,blocked:!1};let{blockNsfw:n,blurFaces:r}=await t.json();if(!n&&!r)return{file:e,blocked:!1};try{await rt()}catch(t){return console.warn(`Moderation libraries failed to load, proceeding without NSFW/Face blur checks:`,t),{file:e,blocked:!1}}return new Promise(t=>{let i=new Image;i.onload=async()=>{let a=document.createElement(`canvas`);a.width=i.width,a.height=i.height;let o=a.getContext(`2d`);if(!o){t({file:e,blocked:!1});return}if(o.drawImage(i,0,0),n)try{let n=await window.nsfwjs?.load();if(n){let r=(await n.classify(a)).find(e=>e.className===`Porn`||e.className===`Hentai`),i=r?r.probability:0;if(i>.5){console.warn(`Image blocked by NSFW filter (probability: ${i})`),t({file:e,blocked:!0});return}}}catch(e){console.warn(`NSFW validation error (will allow upload):`,e)}let s=!1;if(r)try{let e=await window.blazeface?.load();if(e){let t=await e.estimateFaces(a,!1);t&&t.length>0&&(s=!0,t.forEach(e=>{let t=e.topLeft[0],n=e.topLeft[1],r=e.bottomRight[0],i=e.bottomRight[1],s=r-t,c=i-n,l=document.createElement(`canvas`);l.width=s,l.height=c;let u=l.getContext(`2d`);u&&(u.drawImage(a,t,n,s,c,0,0,s,c),o.filter=`blur(15px)`,o.drawImage(l,t,n,s,c),o.filter=`none`)}))}}catch(e){console.warn(`Face blur error (will skip face detection):`,e)}s?a.toBlob(n=>{t(n?{file:new File([n],e.name,{type:e.type}),blocked:!1}:{file:e,blocked:!1})},e.type):t({file:e,blocked:!1})},i.onerror=()=>{t({file:e,blocked:!1})},i.src=URL.createObjectURL(e)})}catch(t){return console.error(`Image moderation process failed:`,t),{file:e,blocked:!1}}},at=()=>{let[e,t]=(0,y.useState)(()=>localStorage.getItem(`theme`)||`system`),n=e=>{let t=document.documentElement;t.classList.remove(`light`,`dark`),e===`dark`?(t.classList.add(`dark`),t.style.colorScheme=`dark`):e===`light`?(t.classList.add(`light`),t.style.colorScheme=`light`):window.matchMedia(`(prefers-color-scheme: dark)`).matches?(t.classList.add(`dark`),t.style.colorScheme=`dark`):(t.classList.add(`light`),t.style.colorScheme=`light`)};return(0,y.useEffect)(()=>{n(e);let r=window.matchMedia(`(prefers-color-scheme: dark)`),i=()=>{(localStorage.getItem(`theme`)===`system`||!localStorage.getItem(`theme`))&&n(`system`)};r.addEventListener(`change`,i);let a=()=>{let e=localStorage.getItem(`theme`)||`system`;t(e),n(e)};return window.addEventListener(`themeChange`,a),()=>{r.removeEventListener(`change`,i),window.removeEventListener(`themeChange`,a)}},[e]),{theme:e,changeTheme:e=>{localStorage.setItem(`theme`,e),t(e),n(e),window.dispatchEvent(new Event(`themeChange`))}}};function ot(e){return new Promise(t=>{if(!e.type.startsWith(`image/`))return t(e);let n=new FileReader;n.readAsDataURL(e),n.onload=n=>{let r=new Image;r.src=n.target?.result,r.onload=()=>{let n=document.createElement(`canvas`),i=r.width,a=r.height,o=2048;(i>o||a>o)&&(i>a?(a=Math.round(a*o/i),i=o):(i=Math.round(i*o/a),a=o)),n.width=i,n.height=a;let s=n.getContext(`2d`);if(!s)return t(e);s.drawImage(r,0,0,i,a),n.toBlob(n=>{if(n){let r=e.name.replace(/\.[^/.]+$/,``)+`.jpg`;t(new File([n],r,{type:`image/jpeg`,lastModified:Date.now()}))}else t(e)},`image/jpeg`,.85)},r.onerror=()=>{t(e)}},n.onerror=()=>{t(e)}})}var st=({onGoToSignup:e,onGoToMap:t,onLoginSuccess:n})=>{let[r,i]=(0,y.useState)(!1),a=(0,y.useRef)(null),o=tt(),{t:s,lang:c,changeLanguage:l}=Ze(),{theme:u,changeTheme:d}=at(),[f,p]=(0,y.useState)([]),[m,h]=(0,y.useState)([]),[g,_]=(0,y.useState)([]),[v,b]=(0,y.useState)(!1),[x,S]=(0,y.useState)(0),[C,w]=(0,y.useState)(`/background.avif`),[T,E]=(0,y.useState)(``),[D,O]=(0,y.useState)(!0),[k,A]=(0,y.useState)(!1),[j,M]=(0,y.useState)(1),[N,F]=(0,y.useState)(0),I=(0,y.useRef)(0),R=(0,y.useRef)(!1),z=!!localStorage.getItem(`token`)&&!localStorage.getItem(`guest_token`),B=e=>{I.current=e.touches[0].clientX,R.current=!0},V=e=>{if(!R.current)return;let t=e.touches[0].clientX-I.current;F(Math.max(-70,Math.min(70,t)))},H=()=>{R.current&&(R.current=!1,N>50&&f.length>0?S(e=>(e-1+f.length)%f.length):N<-50&&f.length>0&&S(e=>(e+1)%f.length),F(0))};(0,y.useEffect)(()=>{let e=f.length>0?f[x]?.imageUrl:`/background.avif`;e&&e!==(j===1?C:T)&&(j===1?(E(e),A(!0),O(!1),M(2)):(w(e),O(!0),A(!1),M(1)))},[x,f]);let U=async()=>{try{let e=await fetch(`/api/v1/public-photos`);e.ok&&p((await e.json()).sort((e,t)=>{let n=e.metadata?.likedUserIds?.length||0;return(t.metadata?.likedUserIds?.length||0)-n}))}catch(e){console.error(`Lỗi khi tải ảnh công khai:`,e)}},te=async()=>{try{let e=await fetch(`/api/v1/users/trusted`);e.ok&&h(await e.json())}catch(e){console.error(`Lỗi khi tải thành viên uy tín:`,e)}},ne=async()=>{try{let e=await fetch(`/api/v1/reports/blacklist`);e.ok&&_(await e.json())}catch(e){console.error(`Lỗi khi tải blacklist:`,e)}};return(0,y.useEffect)(()=>{U(),te(),ne()},[]),(0,y.useEffect)(()=>{if(f.length<=1)return;let e=setInterval(()=>{S(e=>(e+1)%f.length)},12e3);return()=>clearInterval(e)},[f]),(0,Y.jsxs)(`div`,{className:`h-dvh w-full overflow-hidden font-sans bg-gray-900 relative`,children:[(0,Y.jsx)(`div`,{className:`absolute inset-0 z-0 bg-gray-950 overflow-hidden`,onTouchStart:B,onTouchMove:V,onTouchEnd:H,children:(0,Y.jsxs)(`div`,{className:`absolute inset-y-0 left-[-15%] right-[-15%] cursor-grab active:cursor-grabbing`,style:{transform:`translateX(${N}px)`,transition:N===0?`transform 0.3s ease-out`:`none`,touchAction:`none`},children:[C&&(0,Y.jsx)(`img`,{src:C,draggable:`false`,onContextMenu:e=>{z||e.preventDefault()},onDragStart:e=>{z||e.preventDefault()},className:`absolute inset-0 h-full w-full object-cover transition-opacity duration-[1200ms] ease-in-out animate-panning ${z?``:`select-none pointer-events-none`}`,style:{opacity:D?.8:0},alt:`Travel Background 1`},C),T&&(0,Y.jsx)(`img`,{src:T,draggable:`false`,onContextMenu:e=>{z||e.preventDefault()},onDragStart:e=>{z||e.preventDefault()},className:`absolute inset-0 h-full w-full object-cover transition-opacity duration-[1200ms] ease-in-out animate-panning ${z?``:`select-none pointer-events-none`}`,style:{opacity:k?.8:0},alt:`Travel Background 2`},T)]})}),(0,Y.jsx)(`style`,{children:` @keyframes pan-left-to-right { 0% { transform: scale(1.08) translate(0, 0) translateZ(0); } 100% { transform: scale(1.16) translate(-1%, 0.5%) translateZ(0); } } .animate-panning { animation: pan-left-to-right 13500ms linear forwards; will-change: transform; } `}),(0,Y.jsxs)(`div`,{className:`absolute top-0 left-0 right-0 z-20 p-3 sm:p-4 pt-[calc(0.75rem+env(safe-area-inset-top,0px))] sm:pt-[calc(1rem+env(safe-area-inset-top,0px))] flex justify-between items-center bg-gradient-to-b from-slate-950/40 to-transparent`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 sm:gap-2 text-white drop-shadow-lg`,children:[(0,Y.jsx)(ee,{className:`w-7 h-7 sm:w-8 sm:h-8`}),(0,Y.jsx)(`span`,{className:`text-lg sm:text-xl font-black tracking-tighter uppercase hidden sm:block`,children:`YoTrip`})]}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 sm:gap-3`,children:[(0,Y.jsxs)(`select`,{value:c,onChange:e=>l(e.target.value),className:`bg-black/40 hover:bg-black/60 border border-white/20 text-white rounded-full px-2 py-1 sm:px-3 sm:py-1.5 text-[11px] sm:text-xs font-bold focus:outline-none backdrop-blur-md cursor-pointer max-w-[80px] sm:max-w-none`,children:[(0,Y.jsx)(`option`,{value:`vi`,className:`text-black`,children:`Tiếng Việt`}),(0,Y.jsx)(`option`,{value:`en`,className:`text-black`,children:`English`}),(0,Y.jsx)(`option`,{value:`zh`,className:`text-black`,children:`中文`})]}),(0,Y.jsxs)(`select`,{value:u,onChange:e=>d(e.target.value),className:`bg-black/40 hover:bg-black/60 border border-white/20 text-white rounded-full px-2 py-1 sm:px-3 sm:py-1.5 text-[11px] sm:text-xs font-bold focus:outline-none backdrop-blur-md cursor-pointer max-w-[80px] sm:max-w-none`,children:[(0,Y.jsx)(`option`,{value:`light`,className:`text-black`,children:s(`themeLight`)||`Sáng`}),(0,Y.jsx)(`option`,{value:`dark`,className:`text-black`,children:s(`themeDark`)||`Tối`}),(0,Y.jsx)(`option`,{value:`system`,className:`text-black`,children:s(`themeSystem`)||`Hệ thống`})]}),(0,Y.jsxs)(`button`,{onClick:()=>b(!0),className:`flex items-center justify-center gap-1.5 bg-red-600/80 backdrop-blur-md text-white font-bold py-1.5 px-2.5 sm:py-2 sm:px-3.5 rounded-full border border-red-500/30 hover:bg-red-500 transition-all shadow-md active:scale-95 text-xs sm:text-sm cursor-pointer`,children:[(0,Y.jsx)(q,{className:`w-3.5 h-3.5 sm:w-4 sm:h-4`}),(0,Y.jsx)(`span`,{className:`hidden sm:inline`,children:s(`reportBusinessBtn`)})]}),(0,Y.jsxs)(`button`,{onClick:()=>i(!0),className:`flex items-center justify-center gap-1 sm:gap-2 bg-white/15 backdrop-blur-md text-white font-bold py-1.5 px-2.5 sm:py-2 sm:px-4 rounded-full border border-white/25 hover:bg-white/25 transition-all shadow-md active:scale-95 text-xs sm:text-sm cursor-pointer`,children:[(0,Y.jsx)(pe,{className:`w-3.5 h-3.5 sm:w-4 sm:h-4`}),(0,Y.jsx)(`span`,{children:s(`login`)})]})]})]}),(0,Y.jsxs)(`div`,{className:`absolute left-6 top-24 bottom-36 z-20 hidden md:flex flex-col w-72 bg-slate-900/60 backdrop-blur-md border border-white/10 rounded-[32px] p-5 text-white overflow-hidden shadow-2xl animate-in slide-in-from-left duration-500`,children:[(0,Y.jsxs)(`h3`,{className:`text-base font-black flex items-center gap-2 mb-3 border-b border-white/10 pb-2`,children:[`🏆 `,s(`trustedMembers`)]}),(0,Y.jsx)(`div`,{className:`flex-1 overflow-y-auto space-y-3 pr-1 no-scrollbar`,children:m.length===0?(0,Y.jsx)(`div`,{className:`text-xs text-white/50 italic py-4`,children:`Chưa có đánh giá nào.`}):m.map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 bg-white/5 hover:bg-white/10 p-2.5 rounded-2xl border border-white/5 transition-all`,children:[(0,Y.jsxs)(`div`,{className:`relative`,children:[(0,Y.jsx)(`div`,{className:`w-10 h-10 rounded-full bg-slate-800 border border-white/10 flex items-center justify-center font-bold overflow-hidden`,children:e.avatar?(0,Y.jsx)(`img`,{src:e.avatar,alt:`Avatar`,className:`w-full h-full object-cover`}):(0,Y.jsx)(`span`,{children:e.name.charAt(0)})}),(0,Y.jsx)(`span`,{className:`absolute -top-1 -left-1 bg-amber-500 text-[10px] text-white font-black px-1.5 py-0.5 rounded-full border border-slate-950`,children:t+1})]}),(0,Y.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,Y.jsx)(`div`,{className:`text-xs font-bold truncate`,children:e.name}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 mt-0.5`,children:[(0,Y.jsxs)(`span`,{className:`text-[10px] text-amber-400 font-bold`,children:[`★ `,e.averageScore]}),(0,Y.jsxs)(`span`,{className:`text-[9px] text-white/40 font-semibold`,children:[`(`,e.ratingCount,`)`]})]})]})]},t))})]}),(0,Y.jsxs)(`div`,{className:`absolute right-6 top-24 bottom-36 z-20 hidden md:flex flex-col w-72 bg-slate-900/60 backdrop-blur-md border border-white/10 rounded-[32px] p-5 text-white overflow-hidden shadow-2xl animate-in slide-in-from-right duration-500 animate-out duration-300`,children:[(0,Y.jsxs)(`h3`,{className:`text-base font-black flex items-center gap-2 mb-3 border-b border-white/10 pb-2 text-red-400`,children:[(0,Y.jsx)(q,{className:`w-5 h-5 text-red-500`}),` `,s(`blacklistTitle`)]}),(0,Y.jsx)(`div`,{className:`flex-1 overflow-y-auto space-y-3 pr-1 no-scrollbar`,children:g.length===0?(0,Y.jsx)(`div`,{className:`text-xs text-white/50 italic py-4 text-center`,children:s(`emptyBlacklist`)}):g.map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1.5 bg-white/5 hover:bg-white/10 p-3 rounded-2xl border border-white/5 transition-all text-left`,children:[(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,Y.jsx)(`div`,{className:`text-xs font-bold text-red-300 truncate flex-1`,children:e.name}),(0,Y.jsx)(`span`,{className:`text-[8px] bg-red-950/80 text-red-400 border border-red-900/50 px-1.5 py-0.5 rounded font-black shrink-0`,children:e.type})]}),e.address&&(0,Y.jsx)(`div`,{className:`text-[10px] text-white/60 truncate`,children:e.address}),e.phone&&(0,Y.jsxs)(`div`,{className:`text-[10px] text-white/40`,children:[`SĐT: `,e.phone]}),(0,Y.jsxs)(`div`,{className:`text-[10px] text-red-400/90 italic bg-red-950/30 p-1.5 rounded-lg border border-red-950/40`,children:[`Lý do: `,e.reason]})]},t))})]}),m.length>0&&(0,Y.jsxs)(`div`,{className:`absolute top-24 left-4 right-4 z-20 md:hidden flex flex-col gap-1 bg-slate-950/45 backdrop-blur-sm p-2 rounded-2xl border border-white/5`,children:[(0,Y.jsxs)(`span`,{className:`text-[9px] font-black uppercase tracking-wider text-white/70 px-1`,children:[`🏆 `,s(`trustedMembers`)]}),(0,Y.jsx)(`div`,{className:`flex gap-2 overflow-x-auto no-scrollbar py-0.5`,children:m.slice(0,5).map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 bg-slate-950/60 border border-white/10 px-2.5 py-1 rounded-full shrink-0`,children:[(0,Y.jsxs)(`span`,{className:`text-[9px] font-bold text-amber-400`,children:[`#`,t+1]}),(0,Y.jsx)(`span`,{className:`text-[10px] font-bold text-white truncate max-w-[70px]`,children:e.name}),(0,Y.jsxs)(`span`,{className:`text-[9px] text-amber-400 font-bold`,children:[`★ `,e.averageScore]})]},t))})]}),(0,Y.jsx)(`input`,{type:`file`,ref:a,onChange:async e=>{let t=e.target.files?.[0];if(t){o({title:`Đang xử lý...`,message:`Vui lòng chờ trong giây lát.`,type:`info`});try{let e=await it(await ot(t));if(e.blocked){o({title:`Ảnh bị từ chối`,message:`Ảnh ${t.name} chứa nội dung không phù hợp và bị chặn.`,type:`error`});return}let r=e.file,i=await Promise.race([new Promise(e=>{navigator.geolocation?navigator.geolocation.getCurrentPosition(t=>e(t),()=>e(null),{timeout:4e3,enableHighAccuracy:!0}):e(null)}),new Promise(e=>setTimeout(()=>e(null),4500))]),a=localStorage.getItem(`guest_token`),s=JSON.parse(localStorage.getItem(`guest_user`)||`null`);if(!a){let e=await fetch(`/api/v1/auth/create-guest`,{method:`POST`});if(!e.ok)throw Error(`Không thể tạo phiên khách.`);let t=await e.json();a=t.access_token,s=t.user,localStorage.setItem(`guest_token`,a),localStorage.setItem(`guest_user`,JSON.stringify(s))}let c=new FormData;c.append(`images`,r),i&&(c.append(`latitude`,i.coords.latitude.toString()),c.append(`longitude`,i.coords.longitude.toString()));let l=await fetch(`/api/v1/photos/upload-anonymous`,{method:`POST`,headers:{Authorization:`Bearer ${a}`},body:c});if(l.status===401){console.warn(`Guest token invalid or expired. Creating a new guest user and retrying...`),localStorage.removeItem(`guest_token`),localStorage.removeItem(`guest_user`),localStorage.removeItem(`token`),localStorage.removeItem(`user`);let e=await fetch(`/api/v1/auth/create-guest`,{method:`POST`});if(!e.ok)throw Error(`Không thể tạo lại phiên khách.`);let t=await e.json();a=t.access_token,s=t.user,localStorage.setItem(`guest_token`,a),localStorage.setItem(`guest_user`,JSON.stringify(s)),l=await fetch(`/api/v1/photos/upload-anonymous`,{method:`POST`,headers:{Authorization:`Bearer ${a}`},body:c})}if(!l.ok){let e=await l.json();throw Error(e.message||`Tải ảnh thất bại.`)}o({title:`Thành công!`,message:`Ảnh của bạn đã được tải lên.`,type:`success`}),await U(),S(0),localStorage.setItem(`token`,a),localStorage.setItem(`user`,JSON.stringify(s)),n&&n(s)}catch(e){o({title:`Lỗi`,message:e.message,type:`error`})}finally{e.target&&(e.target.value=``)}}},accept:`image/*`,capture:`environment`,className:`hidden`}),(0,Y.jsxs)(`div`,{className:`absolute bottom-[calc(1.5rem+env(safe-area-inset-bottom,0px))] left-1/2 -translate-x-1/2 z-20 w-full px-4 flex flex-col items-center gap-4 max-w-md`,children:[f.length>0&&(0,Y.jsxs)(`div`,{className:`w-full flex flex-col items-center gap-2`,children:[(0,Y.jsxs)(`span`,{className:`text-[10px] font-black uppercase tracking-wider text-white/75 drop-shadow-md`,children:[s(`momentsTitle`),` (`,f.length,`)`]}),(0,Y.jsx)(`div`,{className:`flex gap-3 overflow-x-auto max-w-full no-scrollbar pb-1 px-4 justify-center`,children:f.slice(0,8).map((e,t)=>(0,Y.jsxs)(`button`,{onClick:()=>S(t),className:`relative w-14 h-14 rounded-xl overflow-hidden transition-all active:scale-95 shrink-0 shadow-inner bg-slate-800 ${x===t?`scale-110 shadow-lg`:`hover:scale-105`}`,children:[(0,Y.jsx)(`img`,{src:e.imageUrl,alt:`Community thumbnail`,draggable:`false`,onContextMenu:e=>{z||e.preventDefault()},onDragStart:e=>{z||e.preventDefault()},className:`w-full h-full object-cover ${z?``:`select-none pointer-events-none`}`}),(0,Y.jsx)(`div`,{className:`absolute inset-[1.5px] rounded-[10px] border-2 pointer-events-none transition-colors ${x===t?`border-emerald-500`:`border-white/20`}`})]},e.id))})]}),(0,Y.jsxs)(`div`,{className:`w-full flex gap-3 items-center justify-center`,children:[(0,Y.jsxs)(`button`,{onClick:t,className:`flex-1 flex items-center justify-center gap-2 bg-emerald-600/90 hover:bg-emerald-500 text-white font-bold py-3.5 rounded-2xl transition-all shadow-2xl border border-emerald-500/30 active:scale-95 text-xs sm:text-sm whitespace-nowrap`,children:[(0,Y.jsx)(_e,{className:`w-4.5 h-4.5`}),(0,Y.jsx)(`span`,{children:s(`shortExplore`)||`Khám phá`})]}),(0,Y.jsxs)(`button`,{onClick:()=>a.current?.click(),className:`flex-1 flex items-center justify-center gap-2 bg-white/20 backdrop-blur-lg hover:bg-white/30 text-white font-bold py-3.5 rounded-2xl transition-all shadow-2xl border border-white/30 active:scale-95 text-xs sm:text-sm whitespace-nowrap`,children:[(0,Y.jsx)(P,{className:`w-4.5 h-4.5`}),(0,Y.jsx)(`span`,{children:s(`shortCamera`)||`Chụp ảnh`})]})]}),(0,Y.jsx)(`style`,{children:` .no-scrollbar::-webkit-scrollbar { display: none; } .no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; } `})]}),(0,Y.jsx)(Ye,{isOpen:r,onClose:()=>i(!1),onSwitchToSignup:e,onLoginSuccess:n}),(0,Y.jsx)(Qe,{isOpen:v,onClose:()=>b(!1)})]})};function ct(e,t){let n=(0,lt.useRef)(t);(0,lt.useEffect)(function(){t!==n.current&&e.attributionControl!=null&&(n.current!=null&&e.attributionControl.removeAttribution(n.current),t!=null&&e.attributionControl.addAttribution(t)),n.current=t},[e,t])}var lt,ut=o((()=>{lt=u(p(),1)}));function dt(e,t,n){t.center!==n.center&&e.setLatLng(t.center),t.radius!=null&&t.radius!==n.radius&&e.setRadius(t.radius)}var ft=o((()=>{}));function pt(e){return Object.freeze({__version:1,map:e})}function mt(e,t){return Object.freeze({...e,...t})}function ht(){let e=(0,gt.useContext)(_t);if(e==null)throw Error(`No context provided: useLeafletContext() can only be used in a descendant of `);return e}var gt,_t,vt,yt=o((()=>{gt=u(p(),1),_t=(0,gt.createContext)(null),vt=_t.Provider}));function bt(e){function t(t,n){let{instance:r,context:i}=e(t).current;return(0,Ct.useImperativeHandle)(n,()=>r),t.children==null?null:Ct.createElement(vt,{value:i},t.children)}return(0,Ct.forwardRef)(t)}function xt(e){function t(t,n){let[r,i]=(0,Ct.useState)(!1),{instance:a}=e(t,i).current;(0,Ct.useImperativeHandle)(n,()=>a),(0,Ct.useEffect)(function(){r&&a.update()},[a,r,t.children]);let o=a._contentNode;return o?(0,Z.createPortal)(t.children,o):null}return(0,Ct.forwardRef)(t)}function St(e){function t(t,n){let{instance:r}=e(t).current;return(0,Ct.useImperativeHandle)(n,()=>r),null}return(0,Ct.forwardRef)(t)}var Ct,Z,wt=o((()=>{Ct=u(p(),1),Z=_(),yt()}));function Tt(e){return function(t){let n=ht(),r=e(t,n),{instance:i}=r.current,a=(0,Et.useRef)(t.position),{position:o}=t;return(0,Et.useEffect)(function(){return i.addTo(n.map),function(){i.remove()}},[n.map,i]),(0,Et.useEffect)(function(){o!=null&&o!==a.current&&(i.setPosition(o),a.current=o)},[i,o]),r}}var Et,Dt=o((()=>{Et=u(p(),1),yt()}));function Ot(e,t){let n=(0,kt.useRef)();(0,kt.useEffect)(function(){return t!=null&&e.instance.on(t),n.current=t,function(){n.current!=null&&e.instance.off(n.current),n.current=null}},[e,t])}var kt,At=o((()=>{kt=u(p(),1)}));function jt(e,t){let n=e.pane??t.pane;return n?{...e,pane:n}:e}var Mt=o((()=>{}));function Nt(e,t){return function(n,r){let i=ht(),a=e(jt(n,i),i);return ct(i.map,n.attribution),Ot(a.current,n.eventHandlers),t(a.current,i,n,r),a}}var Pt=o((()=>{ut(),yt(),At(),Mt()})),Ft=s(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?r(e):typeof define==`function`&&define.amd?define([`exports`],r):(n=typeof globalThis<`u`?globalThis:n||self,r(n.leaflet={}))})(e,(function(e){var t=`1.9.4`;function n(e){var t,n,r,i;for(n=1,r=arguments.length;n`u`||!L||!L.Mixin)){e=_(e)?e:[e];for(var t=0;t0?Math.floor(e):Math.ceil(e)};M.prototype={clone:function(){return new M(this.x,this.y)},add:function(e){return this.clone()._add(P(e))},_add:function(e){return this.x+=e.x,this.y+=e.y,this},subtract:function(e){return this.clone()._subtract(P(e))},_subtract:function(e){return this.x-=e.x,this.y-=e.y,this},divideBy:function(e){return this.clone()._divideBy(e)},_divideBy:function(e){return this.x/=e,this.y/=e,this},multiplyBy:function(e){return this.clone()._multiplyBy(e)},_multiplyBy:function(e){return this.x*=e,this.y*=e,this},scaleBy:function(e){return new M(this.x*e.x,this.y*e.y)},unscaleBy:function(e){return new M(this.x/e.x,this.y/e.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},trunc:function(){return this.clone()._trunc()},_trunc:function(){return this.x=N(this.x),this.y=N(this.y),this},distanceTo:function(e){e=P(e);var t=e.x-this.x,n=e.y-this.y;return Math.sqrt(t*t+n*n)},equals:function(e){return e=P(e),e.x===this.x&&e.y===this.y},contains:function(e){return e=P(e),Math.abs(e.x)<=Math.abs(this.x)&&Math.abs(e.y)<=Math.abs(this.y)},toString:function(){return`Point(`+u(this.x)+`, `+u(this.y)+`)`}};function P(e,t,n){return e instanceof M?e:_(e)?new M(e[0],e[1]):e==null?e:typeof e==`object`&&`x`in e&&`y`in e?new M(e.x,e.y):new M(e,t,n)}function F(e,t){if(e)for(var n=t?[e,t]:e,r=0,i=n.length;r=this.min.x&&n.x<=this.max.x&&t.y>=this.min.y&&n.y<=this.max.y},intersects:function(e){e=I(e);var t=this.min,n=this.max,r=e.min,i=e.max,a=i.x>=t.x&&r.x<=n.x,o=i.y>=t.y&&r.y<=n.y;return a&&o},overlaps:function(e){e=I(e);var t=this.min,n=this.max,r=e.min,i=e.max,a=i.x>t.x&&r.xt.y&&r.y=t.lat&&i.lat<=n.lat&&r.lng>=t.lng&&i.lng<=n.lng},intersects:function(e){e=z(e);var t=this._southWest,n=this._northEast,r=e.getSouthWest(),i=e.getNorthEast(),a=i.lat>=t.lat&&r.lat<=n.lat,o=i.lng>=t.lng&&r.lng<=n.lng;return a&&o},overlaps:function(e){e=z(e);var t=this._southWest,n=this._northEast,r=e.getSouthWest(),i=e.getNorthEast(),a=i.lat>t.lat&&r.latt.lng&&r.lng1,Pe=function(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener(`testPassiveEventSupport`,l,t),window.removeEventListener(`testPassiveEventSupport`,l,t)}catch{}return e}(),Fe=function(){return!!document.createElement(`canvas`).getContext}(),Ie=!!(document.createElementNS&&ae(`svg`).createSVGRect),Le=!!Ie&&(function(){var e=document.createElement(`div`);return e.innerHTML=``,(e.firstChild&&e.firstChild.namespaceURI)===`http://www.w3.org/2000/svg`})(),Re=!Ie&&function(){try{var e=document.createElement(`div`);e.innerHTML=``;var t=e.firstChild;return t.style.behavior=`url(#default#VML)`,t&&typeof t.adj==`object`}catch{return!1}}(),ze=navigator.platform.indexOf(`Mac`)===0,Be=navigator.platform.indexOf(`Linux`)===0;function Ve(e){return navigator.userAgent.toLowerCase().indexOf(e)>=0}var J={ie:se,ielt9:ce,edge:le,webkit:ue,android:K,android23:de,androidStock:pe,opera:me,chrome:he,gecko:ge,safari:_e,phantom:ve,opera12:ye,win:be,ie3d:xe,webkit3d:Se,gecko3d:Ce,any3d:we,mobile:Te,mobileWebkit:Ee,mobileWebkit3d:De,msPointer:Oe,pointer:ke,touch:je,touchNative:Ae,mobileOpera:Me,mobileGecko:q,retina:Ne,passiveEvents:Pe,canvas:Fe,svg:Ie,vml:Re,inlineSvg:Le,mac:ze,linux:Be},He=J.msPointer?`MSPointerDown`:`pointerdown`,Ue=J.msPointer?`MSPointerMove`:`pointermove`,We=J.msPointer?`MSPointerUp`:`pointerup`,Ge=J.msPointer?`MSPointerCancel`:`pointercancel`,Ke={touchstart:He,touchmove:Ue,touchend:We,touchcancel:Ge},qe={touchstart:tt,touchmove:X,touchend:X,touchcancel:X},Je={},Y=!1;function Ye(e,t,n){return t===`touchstart`&&et(),qe[t]?(n=qe[t].bind(this,n),e.addEventListener(Ke[t],n,!1),n):(console.warn(`wrong event specified:`,t),l)}function Xe(e,t,n){if(!Ke[t]){console.warn(`wrong event specified:`,t);return}e.removeEventListener(Ke[t],n,!1)}function Ze(e){Je[e.pointerId]=e}function Qe(e){Je[e.pointerId]&&(Je[e.pointerId]=e)}function $e(e){delete Je[e.pointerId]}function et(){Y||=(document.addEventListener(He,Ze,!0),document.addEventListener(Ue,Qe,!0),document.addEventListener(We,$e,!0),document.addEventListener(Ge,$e,!0),!0)}function X(e,t){if(t.pointerType!==(t.MSPOINTER_TYPE_MOUSE||`mouse`)){for(var n in t.touches=[],Je)t.touches.push(Je[n]);t.changedTouches=[t],e(t)}}function tt(e,t){t.MSPOINTER_TYPE_TOUCH&&t.pointerType===t.MSPOINTER_TYPE_TOUCH&&Yt(t),X(e,t)}function nt(e){var t={},n,r;for(r in e)n=e[r],t[r]=n&&n.bind?n.bind(e):n;return e=t,t.type=`dblclick`,t.detail=2,t.isTrusted=!1,t._simulated=!0,t}var rt=200;function it(e,t){e.addEventListener(`dblclick`,t);var n=0,r;function i(e){if(e.detail!==1){r=e.detail;return}if(!(e.pointerType===`mouse`||e.sourceCapabilities&&!e.sourceCapabilities.firesTouchEvents)){var i=Zt(e);if(!(i.some(function(e){return e instanceof HTMLLabelElement&&e.attributes.for})&&!i.some(function(e){return e instanceof HTMLInputElement||e instanceof HTMLSelectElement}))){var a=Date.now();a-n<=rt?(r++,r===2&&t(nt(e))):r=1,n=a}}}return e.addEventListener(`click`,i),{dblclick:t,simDblclick:i}}function at(e,t){e.removeEventListener(`dblclick`,t.dblclick),e.removeEventListener(`click`,t.simDblclick)}var ot=Ct([`transform`,`webkitTransform`,`OTransform`,`MozTransform`,`msTransform`]),st=Ct([`webkitTransition`,`transition`,`OTransition`,`MozTransition`,`msTransition`]),ct=st===`webkitTransition`||st===`OTransition`?st+`End`:`transitionend`;function lt(e){return typeof e==`string`?document.getElementById(e):e}function ut(e,t){var n=e.style[t]||e.currentStyle&&e.currentStyle[t];if((!n||n===`auto`)&&document.defaultView){var r=document.defaultView.getComputedStyle(e,null);n=r?r[t]:null}return n===`auto`?null:n}function dt(e,t,n){var r=document.createElement(e);return r.className=t||``,n&&n.appendChild(r),r}function ft(e){var t=e.parentNode;t&&t.removeChild(e)}function pt(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function mt(e){var t=e.parentNode;t&&t.lastChild!==e&&t.appendChild(e)}function ht(e){var t=e.parentNode;t&&t.firstChild!==e&&t.insertBefore(e,t.firstChild)}function gt(e,t){if(e.classList!==void 0)return e.classList.contains(t);var n=bt(e);return n.length>0&&RegExp(`(^|\\s)`+t+`(\\s|$)`).test(n)}function _t(e,t){if(e.classList!==void 0)for(var n=f(t),r=0,i=n.length;r0?2*window.devicePixelRatio:1;function en(e){return J.edge?e.wheelDeltaY/2:e.deltaY&&e.deltaMode===0?-e.deltaY/$t:e.deltaY&&e.deltaMode===1?-e.deltaY*20:e.deltaY&&e.deltaMode===2?-e.deltaY*60:e.deltaX||e.deltaZ?0:e.wheelDelta?(e.wheelDeltaY||e.wheelDelta)/2:e.detail&&Math.abs(e.detail)<32765?-e.detail*20:e.detail?e.detail/-32765*60:0}function tn(e,t){var n=t.relatedTarget;if(!n)return!0;try{for(;n&&n!==e;)n=n.parentNode}catch{return!1}return n!==e}var nn={__proto__:null,on:zt,off:Vt,stopPropagation:Kt,disableScrollPropagation:qt,disableClickPropagation:Jt,preventDefault:Yt,stop:Xt,getPropagationPath:Zt,getMousePosition:Qt,getWheelDelta:en,isExternalTarget:tn,addListener:zt,removeListener:Vt},rn=j.extend({run:function(e,t,n,r){this.stop(),this._el=e,this._inProgress=!0,this._duration=n||.25,this._easeOutPower=1/Math.max(r||.5,.2),this._startPos=Tt(e),this._offset=t.subtract(this._startPos),this._startTime=+new Date,this.fire(`start`),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=T(this._animate,this),this._step()},_step:function(e){var t=+new Date-this._startTime,n=this._duration*1e3;tthis.options.maxZoom)?this.setZoom(e):this},panInsideBounds:function(e,t){this._enforcingBounds=!0;var n=this.getCenter(),r=this._limitCenter(n,this._zoom,z(e));return n.equals(r)||this.panTo(r,t),this._enforcingBounds=!1,this},panInside:function(e,t){t||={};var n=P(t.paddingTopLeft||t.padding||[0,0]),r=P(t.paddingBottomRight||t.padding||[0,0]),i=this.project(this.getCenter()),a=this.project(e),o=this.getPixelBounds(),s=I([o.min.add(n),o.max.subtract(r)]),c=s.getSize();if(!s.contains(a)){this._enforcingBounds=!0;var l=a.subtract(s.getCenter()),u=s.extend(a).getSize().subtract(c);i.x+=l.x<0?-u.x:u.x,i.y+=l.y<0?-u.y:u.y,this.panTo(this.unproject(i),t),this._enforcingBounds=!1}return this},invalidateSize:function(e){if(!this._loaded)return this;e=n({animate:!1,pan:!0},e===!0?{animate:!0}:e);var t=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var r=this.getSize(),a=t.divideBy(2).round(),o=r.divideBy(2).round(),s=a.subtract(o);return!s.x&&!s.y?this:(e.animate&&e.pan?this.panBy(s):(e.pan&&this._rawPanBy(s),this.fire(`move`),e.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(i(this.fire,this,`moveend`),200)):this.fire(`moveend`)),this.fire(`resize`,{oldSize:t,newSize:r}))},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire(`viewreset`),this._stop()},locate:function(e){if(e=this._locateOptions=n({timeout:1e4,watch:!1},e),!(`geolocation`in navigator))return this._handleGeolocationError({code:0,message:`Geolocation not supported.`}),this;var t=i(this._handleGeolocationResponse,this),r=i(this._handleGeolocationError,this);return e.watch?this._locationWatchId=navigator.geolocation.watchPosition(t,r,e):navigator.geolocation.getCurrentPosition(t,r,e),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(e){if(this._container._leaflet_id){var t=e.code,n=e.message||(t===1?`permission denied`:t===2?`position unavailable`:`timeout`);this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire(`locationerror`,{code:t,message:`Geolocation error: `+n+`.`})}},_handleGeolocationResponse:function(e){if(this._container._leaflet_id){var t=e.coords.latitude,n=e.coords.longitude,r=new B(t,n),i=r.toBounds(e.coords.accuracy*2),a=this._locateOptions;if(a.setView){var o=this.getBoundsZoom(i);this.setView(r,a.maxZoom?Math.min(o,a.maxZoom):o)}var s={latlng:r,bounds:i,timestamp:e.timestamp};for(var c in e.coords)typeof e.coords[c]==`number`&&(s[c]=e.coords[c]);this.fire(`locationfound`,s)}},addHandler:function(e,t){if(!t)return this;var n=this[e]=new t(this);return this._handlers.push(n),this.options[e]&&n.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off(`moveend`,this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw Error(`Map container is being reused by another instance`);try{delete this._container._leaflet_id,delete this._containerId}catch{this._container._leaflet_id=void 0,this._containerId=void 0}for(var e in this._locationWatchId!==void 0&&this.stopLocate(),this._stop(),ft(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&=(E(this._resizeRequest),null),this._clearHandlers(),this._loaded&&this.fire(`unload`),this._layers)this._layers[e].remove();for(e in this._panes)ft(this._panes[e]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(e,t){var n=dt(`div`,`leaflet-pane`+(e?` leaflet-`+e.replace(`Pane`,``)+`-pane`:``),t||this._mapPane);return e&&(this._panes[e]=n),n},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var e=this.getPixelBounds();return new R(this.unproject(e.getBottomLeft()),this.unproject(e.getTopRight()))},getMinZoom:function(){return this.options.minZoom===void 0?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return this.options.maxZoom===void 0?this._layersMaxZoom===void 0?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(e,t,n){e=z(e),n=P(n||[0,0]);var r=this.getZoom()||0,i=this.getMinZoom(),a=this.getMaxZoom(),o=e.getNorthWest(),s=e.getSouthEast(),c=this.getSize().subtract(n),l=I(this.project(s,r),this.project(o,r)).getSize(),u=J.any3d?this.options.zoomSnap:1,d=c.x/l.x,f=c.y/l.y,p=t?Math.max(d,f):Math.min(d,f);return r=this.getScaleZoom(p,r),u&&(r=Math.round(r/(u/100))*(u/100),r=t?Math.ceil(r/u)*u:Math.floor(r/u)*u),Math.max(i,Math.min(a,r))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new M(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(e,t){var n=this._getTopLeftPoint(e,t);return new F(n,n.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(e){return this.options.crs.getProjectedBounds(e===void 0?this.getZoom():e)},getPane:function(e){return typeof e==`string`?this._panes[e]:e},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(e,t){var n=this.options.crs;return t=t===void 0?this._zoom:t,n.scale(e)/n.scale(t)},getScaleZoom:function(e,t){var n=this.options.crs;t=t===void 0?this._zoom:t;var r=n.zoom(e*n.scale(t));return isNaN(r)?1/0:r},project:function(e,t){return t=t===void 0?this._zoom:t,this.options.crs.latLngToPoint(V(e),t)},unproject:function(e,t){return t=t===void 0?this._zoom:t,this.options.crs.pointToLatLng(P(e),t)},layerPointToLatLng:function(e){var t=P(e).add(this.getPixelOrigin());return this.unproject(t)},latLngToLayerPoint:function(e){return this.project(V(e))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(e){return this.options.crs.wrapLatLng(V(e))},wrapLatLngBounds:function(e){return this.options.crs.wrapLatLngBounds(z(e))},distance:function(e,t){return this.options.crs.distance(V(e),V(t))},containerPointToLayerPoint:function(e){return P(e).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(e){return P(e).add(this._getMapPanePos())},containerPointToLatLng:function(e){var t=this.containerPointToLayerPoint(P(e));return this.layerPointToLatLng(t)},latLngToContainerPoint:function(e){return this.layerPointToContainerPoint(this.latLngToLayerPoint(V(e)))},mouseEventToContainerPoint:function(e){return Qt(e,this._container)},mouseEventToLayerPoint:function(e){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(e))},mouseEventToLatLng:function(e){return this.layerPointToLatLng(this.mouseEventToLayerPoint(e))},_initContainer:function(e){var t=this._container=lt(e);if(!t)throw Error(`Map container not found.`);if(t._leaflet_id)throw Error(`Map container is already initialized.`);zt(t,`scroll`,this._onScroll,this),this._containerId=o(t)},_initLayout:function(){var e=this._container;this._fadeAnimated=this.options.fadeAnimation&&J.any3d,_t(e,`leaflet-container`+(J.touch?` leaflet-touch`:``)+(J.retina?` leaflet-retina`:``)+(J.ielt9?` leaflet-oldie`:``)+(J.safari?` leaflet-safari`:``)+(this._fadeAnimated?` leaflet-fade-anim`:``));var t=ut(e,`position`);t!==`absolute`&&t!==`relative`&&t!==`fixed`&&t!==`sticky`&&(e.style.position=`relative`),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var e=this._panes={};this._paneRenderers={},this._mapPane=this.createPane(`mapPane`,this._container),wt(this._mapPane,new M(0,0)),this.createPane(`tilePane`),this.createPane(`overlayPane`),this.createPane(`shadowPane`),this.createPane(`markerPane`),this.createPane(`tooltipPane`),this.createPane(`popupPane`),this.options.markerZoomAnimation||(_t(e.markerPane,`leaflet-zoom-hide`),_t(e.shadowPane,`leaflet-zoom-hide`))},_resetView:function(e,t,n){wt(this._mapPane,new M(0,0));var r=!this._loaded;this._loaded=!0,t=this._limitZoom(t),this.fire(`viewprereset`);var i=this._zoom!==t;this._moveStart(i,n)._move(e,t)._moveEnd(i),this.fire(`viewreset`),r&&this.fire(`load`)},_moveStart:function(e,t){return e&&this.fire(`zoomstart`),t||this.fire(`movestart`),this},_move:function(e,t,n,r){t===void 0&&(t=this._zoom);var i=this._zoom!==t;return this._zoom=t,this._lastCenter=e,this._pixelOrigin=this._getNewPixelOrigin(e),r?n&&n.pinch&&this.fire(`zoom`,n):((i||n&&n.pinch)&&this.fire(`zoom`,n),this.fire(`move`,n)),this},_moveEnd:function(e){return e&&this.fire(`zoomend`),this.fire(`moveend`)},_stop:function(){return E(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(e){wt(this._mapPane,this._getMapPanePos().subtract(e))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw Error(`Set map center and zoom first.`)},_initEvents:function(e){this._targets={},this._targets[o(this._container)]=this;var t=e?Vt:zt;t(this._container,`click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup`,this._handleDOMEvent,this),this.options.trackResize&&t(window,`resize`,this._onResize,this),J.any3d&&this.options.transform3DLimit&&(e?this.off:this.on).call(this,`moveend`,this._onMoveEnd)},_onResize:function(){E(this._resizeRequest),this._resizeRequest=T(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var e=this._getMapPanePos();Math.max(Math.abs(e.x),Math.abs(e.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(e,t){for(var n=[],r,i=t===`mouseout`||t===`mouseover`,a=e.target||e.srcElement,s=!1;a;){if(r=this._targets[o(a)],r&&(t===`click`||t===`preclick`)&&this._draggableMoved(r)){s=!0;break}if(r&&r.listens(t,!0)&&(i&&!tn(a,e)||(n.push(r),i))||a===this._container)break;a=a.parentNode}return!n.length&&!s&&!i&&this.listens(t,!0)&&(n=[this]),n},_isClickDisabled:function(e){for(;e&&e!==this._container;){if(e._leaflet_disable_click)return!0;e=e.parentNode}},_handleDOMEvent:function(e){var t=e.target||e.srcElement;if(!(!this._loaded||t._leaflet_disable_events||e.type===`click`&&this._isClickDisabled(t))){var n=e.type;n===`mousedown`&&Pt(t),this._fireDOMEvent(e,n)}},_mouseEvents:[`click`,`dblclick`,`mouseover`,`mouseout`,`contextmenu`],_fireDOMEvent:function(e,t,r){if(e.type===`click`){var i=n({},e);i.type=`preclick`,this._fireDOMEvent(i,i.type,r)}var a=this._findEventTargets(e,t);if(r){for(var o=[],s=0;s0?Math.round(e-t)/2:Math.max(0,Math.ceil(e))-Math.max(0,Math.floor(t))},_limitZoom:function(e){var t=this.getMinZoom(),n=this.getMaxZoom(),r=J.any3d?this.options.zoomSnap:1;return r&&(e=Math.round(e/r)*r),Math.max(t,Math.min(n,e))},_onPanTransitionStep:function(){this.fire(`move`)},_onPanTransitionEnd:function(){vt(this._mapPane,`leaflet-pan-anim`),this.fire(`moveend`)},_tryAnimatedPan:function(e,t){var n=this._getCenterOffset(e)._trunc();return(t&&t.animate)!==!0&&!this.getSize().contains(n)?!1:(this.panBy(n,t),!0)},_createAnimProxy:function(){var e=this._proxy=dt(`div`,`leaflet-proxy leaflet-zoom-animated`);this._panes.mapPane.appendChild(e),this.on(`zoomanim`,function(e){var t=ot,n=this._proxy.style[t];Z(this._proxy,this.project(e.center,e.zoom),this.getZoomScale(e.zoom,1)),n===this._proxy.style[t]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on(`load moveend`,this._animMoveEnd,this),this._on(`unload`,this._destroyAnimProxy,this)},_destroyAnimProxy:function(){ft(this._proxy),this.off(`load moveend`,this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var e=this.getCenter(),t=this.getZoom();Z(this._proxy,this.project(e,t),this.getZoomScale(t,1))},_catchTransitionEnd:function(e){this._animatingZoom&&e.propertyName.indexOf(`transform`)>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName(`leaflet-zoom-animated`).length},_tryAnimatedZoom:function(e,t,n){if(this._animatingZoom)return!0;if(n||={},!this._zoomAnimated||n.animate===!1||this._nothingToAnimate()||Math.abs(t-this._zoom)>this.options.zoomAnimationThreshold)return!1;var r=this.getZoomScale(t),i=this._getCenterOffset(e)._divideBy(1-1/r);return n.animate!==!0&&!this.getSize().contains(i)?!1:(T(function(){this._moveStart(!0,n.noMoveStart||!1)._animateZoom(e,t,!0)},this),!0)},_animateZoom:function(e,t,n,r){this._mapPane&&(n&&(this._animatingZoom=!0,this._animateToCenter=e,this._animateToZoom=t,_t(this._mapPane,`leaflet-zoom-anim`)),this.fire(`zoomanim`,{center:e,zoom:t,noUpdate:r}),this._tempFireZoomEvent||=this._zoom!==this._animateToZoom,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(i(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&vt(this._mapPane,`leaflet-zoom-anim`),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire(`zoom`),delete this._tempFireZoomEvent,this.fire(`move`),this._moveEnd(!0))}});function on(e,t){return new an(e,t)}var sn=O.extend({options:{position:`topright`},initialize:function(e){p(this,e)},getPosition:function(){return this.options.position},setPosition:function(e){var t=this._map;return t&&t.removeControl(this),this.options.position=e,t&&t.addControl(this),this},getContainer:function(){return this._container},addTo:function(e){this.remove(),this._map=e;var t=this._container=this.onAdd(e),n=this.getPosition(),r=e._controlCorners[n];return _t(t,`leaflet-control`),n.indexOf(`bottom`)===-1?r.appendChild(t):r.insertBefore(t,r.firstChild),this._map.on(`unload`,this.remove,this),this},remove:function(){return this._map?(ft(this._container),this.onRemove&&this.onRemove(this._map),this._map.off(`unload`,this.remove,this),this._map=null,this):this},_refocusOnMap:function(e){this._map&&e&&e.screenX>0&&e.screenY>0&&this._map.getContainer().focus()}}),cn=function(e){return new sn(e)};an.include({addControl:function(e){return e.addTo(this),this},removeControl:function(e){return e.remove(),this},_initControlPos:function(){var e=this._controlCorners={},t=`leaflet-`,n=this._controlContainer=dt(`div`,t+`control-container`,this._container);function r(r,i){var a=t+r+` `+t+i;e[r+i]=dt(`div`,a,n)}r(`top`,`left`),r(`top`,`right`),r(`bottom`,`left`),r(`bottom`,`right`)},_clearControlPos:function(){for(var e in this._controlCorners)ft(this._controlCorners[e]);ft(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var ln=sn.extend({options:{collapsed:!0,position:`topright`,autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(e,t,n,r){return n1,this._baseLayersList.style.display=e?``:`none`),this._separator.style.display=t&&e?``:`none`,this},_onLayerChange:function(e){this._handlingClick||this._update();var t=this._getLayer(o(e.target)),n=t.overlay?e.type===`add`?`overlayadd`:`overlayremove`:e.type===`add`?`baselayerchange`:null;n&&this._map.fire(n,t)},_createRadioElement:function(e,t){var n=``,r=document.createElement(`div`);return r.innerHTML=n,r.firstChild},_addItem:function(e){var t=document.createElement(`label`),n=this._map.hasLayer(e.layer),r;e.overlay?(r=document.createElement(`input`),r.type=`checkbox`,r.className=`leaflet-control-layers-selector`,r.defaultChecked=n):r=this._createRadioElement(`leaflet-base-layers_`+o(this),n),this._layerControlInputs.push(r),r.layerId=o(e.layer),zt(r,`click`,this._onInputClick,this);var i=document.createElement(`span`);i.innerHTML=` `+e.name;var a=document.createElement(`span`);return t.appendChild(a),a.appendChild(r),a.appendChild(i),(e.overlay?this._overlaysList:this._baseLayersList).appendChild(t),this._checkDisabledLayers(),t},_onInputClick:function(){if(!this._preventClick){var e=this._layerControlInputs,t,n,r=[],i=[];this._handlingClick=!0;for(var a=e.length-1;a>=0;a--)t=e[a],n=this._getLayer(t.layerId).layer,t.checked?r.push(n):t.checked||i.push(n);for(a=0;a=0;i--)t=e[i],n=this._getLayer(t.layerId).layer,t.disabled=n.options.minZoom!==void 0&&rn.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var e=this._section;this._preventClick=!0,zt(e,`click`,Yt),this.expand();var t=this;setTimeout(function(){Vt(e,`click`,Yt),t._preventClick=!1})}}),un=function(e,t,n){return new ln(e,t,n)},dn=sn.extend({options:{position:`topleft`,zoomInText:``,zoomInTitle:`Zoom in`,zoomOutText:``,zoomOutTitle:`Zoom out`},onAdd:function(e){var t=`leaflet-control-zoom`,n=dt(`div`,t+` leaflet-bar`),r=this.options;return this._zoomInButton=this._createButton(r.zoomInText,r.zoomInTitle,t+`-in`,n,this._zoomIn),this._zoomOutButton=this._createButton(r.zoomOutText,r.zoomOutTitle,t+`-out`,n,this._zoomOut),this._updateDisabled(),e.on(`zoomend zoomlevelschange`,this._updateDisabled,this),n},onRemove:function(e){e.off(`zoomend zoomlevelschange`,this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(e){!this._disabled&&this._map._zoomthis._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(e.shiftKey?3:1))},_createButton:function(e,t,n,r,i){var a=dt(`a`,n,r);return a.innerHTML=e,a.href=`#`,a.title=t,a.setAttribute(`role`,`button`),a.setAttribute(`aria-label`,t),Jt(a),zt(a,`click`,Xt),zt(a,`click`,i,this),zt(a,`click`,this._refocusOnMap,this),a},_updateDisabled:function(){var e=this._map,t=`leaflet-disabled`;vt(this._zoomInButton,t),vt(this._zoomOutButton,t),this._zoomInButton.setAttribute(`aria-disabled`,`false`),this._zoomOutButton.setAttribute(`aria-disabled`,`false`),(this._disabled||e._zoom===e.getMinZoom())&&(_t(this._zoomOutButton,t),this._zoomOutButton.setAttribute(`aria-disabled`,`true`)),(this._disabled||e._zoom===e.getMaxZoom())&&(_t(this._zoomInButton,t),this._zoomInButton.setAttribute(`aria-disabled`,`true`))}});an.mergeOptions({zoomControl:!0}),an.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new dn,this.addControl(this.zoomControl))});var fn=function(e){return new dn(e)},pn=sn.extend({options:{position:`bottomleft`,maxWidth:100,metric:!0,imperial:!0},onAdd:function(e){var t=`leaflet-control-scale`,n=dt(`div`,t),r=this.options;return this._addScales(r,t+`-line`,n),e.on(r.updateWhenIdle?`moveend`:`move`,this._update,this),e.whenReady(this._update,this),n},onRemove:function(e){e.off(this.options.updateWhenIdle?`moveend`:`move`,this._update,this)},_addScales:function(e,t,n){e.metric&&(this._mScale=dt(`div`,t,n)),e.imperial&&(this._iScale=dt(`div`,t,n))},_update:function(){var e=this._map,t=e.getSize().y/2,n=e.distance(e.containerPointToLatLng([0,t]),e.containerPointToLatLng([this.options.maxWidth,t]));this._updateScales(n)},_updateScales:function(e){this.options.metric&&e&&this._updateMetric(e),this.options.imperial&&e&&this._updateImperial(e)},_updateMetric:function(e){var t=this._getRoundNum(e),n=t<1e3?t+` m`:t/1e3+` km`;this._updateScale(this._mScale,n,t/e)},_updateImperial:function(e){var t=e*3.2808399,n,r,i;t>5280?(n=t/5280,r=this._getRoundNum(n),this._updateScale(this._iScale,r+` mi`,r/n)):(i=this._getRoundNum(t),this._updateScale(this._iScale,i+` ft`,i/t))},_updateScale:function(e,t,n){e.style.width=Math.round(this.options.maxWidth*n)+`px`,e.innerHTML=t},_getRoundNum:function(e){var t=10**((Math.floor(e)+``).length-1),n=e/t;return n=n>=10?10:n>=5?5:n>=3?3:n>=2?2:1,t*n}}),mn=function(e){return new pn(e)},hn=sn.extend({options:{position:`bottomright`,prefix:``+(J.inlineSvg?` `:``)+`Leaflet`},initialize:function(e){p(this,e),this._attributions={}},onAdd:function(e){for(var t in e.attributionControl=this,this._container=dt(`div`,`leaflet-control-attribution`),Jt(this._container),e._layers)e._layers[t].getAttribution&&this.addAttribution(e._layers[t].getAttribution());return this._update(),e.on(`layeradd`,this._addAttribution,this),this._container},onRemove:function(e){e.off(`layeradd`,this._addAttribution,this)},_addAttribution:function(e){e.layer.getAttribution&&(this.addAttribution(e.layer.getAttribution()),e.layer.once(`remove`,function(){this.removeAttribution(e.layer.getAttribution())},this))},setPrefix:function(e){return this.options.prefix=e,this._update(),this},addAttribution:function(e){return e?(this._attributions[e]||(this._attributions[e]=0),this._attributions[e]++,this._update(),this):this},removeAttribution:function(e){return e&&this._attributions[e]&&(this._attributions[e]--,this._update()),this},_update:function(){if(this._map){var e=[];for(var t in this._attributions)this._attributions[t]&&e.push(t);var n=[];this.options.prefix&&n.push(this.options.prefix),e.length&&n.push(e.join(`, `)),this._container.innerHTML=n.join(` `)}}});an.mergeOptions({attributionControl:!0}),an.addInitHook(function(){this.options.attributionControl&&new hn().addTo(this)}),sn.Layers=ln,sn.Zoom=dn,sn.Scale=pn,sn.Attribution=hn,cn.layers=un,cn.zoom=fn,cn.scale=mn,cn.attribution=function(e){return new hn(e)};var gn=O.extend({initialize:function(e){this._map=e},enable:function(){return this._enabled?this:(this._enabled=!0,this.addHooks(),this)},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});gn.addTo=function(e,t){return e.addHandler(t,this),this};var _n={Events:A},vn=J.touch?`touchstart mousedown`:`mousedown`,yn=j.extend({options:{clickTolerance:3},initialize:function(e,t,n,r){p(this,r),this._element=e,this._dragStartTarget=t||e,this._preventOutline=n},enable:function(){this._enabled||=(zt(this._dragStartTarget,vn,this._onDown,this),!0)},disable:function(){this._enabled&&(yn._dragging===this&&this.finishDrag(!0),Vt(this._dragStartTarget,vn,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(e){if(this._enabled&&(this._moved=!1,!gt(this._element,`leaflet-zoom-anim`))){if(e.touches&&e.touches.length!==1){yn._dragging===this&&this.finishDrag();return}if(!(yn._dragging||e.shiftKey||e.which!==1&&e.button!==1&&!e.touches)&&(yn._dragging=this,this._preventOutline&&Pt(this._element),At(),Et(),!this._moving)){this.fire(`down`);var t=e.touches?e.touches[0]:e,n=It(this._element);this._startPoint=new M(t.clientX,t.clientY),this._startPos=Tt(this._element),this._parentScale=Lt(n);var r=e.type===`mousedown`;zt(document,r?`mousemove`:`touchmove`,this._onMove,this),zt(document,r?`mouseup`:`touchend touchcancel`,this._onUp,this)}}},_onMove:function(e){if(this._enabled){if(e.touches&&e.touches.length>1){this._moved=!0;return}var t=e.touches&&e.touches.length===1?e.touches[0]:e,n=new M(t.clientX,t.clientY)._subtract(this._startPoint);!n.x&&!n.y||Math.abs(n.x)+Math.abs(n.y)a&&(o=s,a=c);a>n&&(t[o]=1,On(e,t,n,r,o),On(e,t,n,o,i))}function kn(e,t){for(var n=[e[0]],r=1,i=0,a=e.length;rt&&(n.push(e[r]),i=r);return it.max.x&&(n|=2),e.yt.max.y&&(n|=8),n}function Pn(e,t){var n=t.x-e.x,r=t.y-e.y;return n*n+r*r}function Fn(e,t,n,r){var i=t.x,a=t.y,o=n.x-i,s=n.y-a,c=o*o+s*s,l;return c>0&&(l=((e.x-i)*o+(e.y-a)*s)/c,l>1?(i=n.x,a=n.y):l>0&&(i+=o*l,a+=s*l)),o=e.x-i,s=e.y-a,r?o*o+s*s:new M(i,a)}function In(e){return!_(e[0])||typeof e[0][0]!=`object`&&e[0][0]!==void 0}function Ln(e){return console.warn(`Deprecated use of _flat, please use L.LineUtil.isFlat instead.`),In(e)}function Rn(e,t){var n,r,i,a,o,s,c,l;if(!e||e.length===0)throw Error(`latlngs not passed`);In(e)||(console.warn(`latlngs are not flat! Only the first ring will be used`),e=e[0]);var u=V([0,0]),d=z(e);d.getNorthWest().distanceTo(d.getSouthWest())*d.getNorthEast().distanceTo(d.getNorthWest())<1700&&(u=Sn(e));var f=e.length,p=[];for(n=0;nr){c=(a-r)/i,l=[s.x-c*(s.x-o.x),s.y-c*(s.y-o.y)];break}var h=t.unproject(P(l));return V([h.lat+u.lat,h.lng+u.lng])}var zn={__proto__:null,simplify:wn,pointToSegmentDistance:Tn,closestPointOnSegment:En,clipSegment:jn,_getEdgeIntersection:Mn,_getBitCode:Nn,_sqClosestPointOnSegment:Fn,isFlat:In,_flat:Ln,polylineCenter:Rn},Bn={project:function(e){return new M(e.lng,e.lat)},unproject:function(e){return new B(e.y,e.x)},bounds:new F([-180,-90],[180,90])},Vn={R:6378137,R_MINOR:6356752.314245179,bounds:new F([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(e){var t=Math.PI/180,n=this.R,r=e.lat*t,i=this.R_MINOR/n,a=Math.sqrt(1-i*i),o=a*Math.sin(r),s=Math.tan(Math.PI/4-r/2)/((1-o)/(1+o))**(a/2);return r=-n*Math.log(Math.max(s,1e-10)),new M(e.lng*t*n,r)},unproject:function(e){for(var t=180/Math.PI,n=this.R,r=this.R_MINOR/n,i=Math.sqrt(1-r*r),a=Math.exp(-e.y/n),o=Math.PI/2-2*Math.atan(a),s=0,c=.1,l;s<15&&Math.abs(c)>1e-7;s++)l=i*Math.sin(o),l=((1-l)/(1+l))**(i/2),c=Math.PI/2-2*Math.atan(a*l)-o,o+=c;return new B(o*t,e.x*t/n)}},Hn={__proto__:null,LonLat:Bn,Mercator:Vn,SphericalMercator:te},Un=n({},U,{code:`EPSG:3395`,projection:Vn,transformation:function(){var e=.5/(Math.PI*Vn.R);return re(e,.5,-e,.5)}()}),Wn=n({},U,{code:`EPSG:4326`,projection:Bn,transformation:re(1/180,1,-1/180,.5)}),Gn=n({},H,{projection:Bn,transformation:re(1,0,-1,0),scale:function(e){return 2**e},zoom:function(e){return Math.log(e)/Math.LN2},distance:function(e,t){var n=t.lng-e.lng,r=t.lat-e.lat;return Math.sqrt(n*n+r*r)},infinite:!0});H.Earth=U,H.EPSG3395=Un,H.EPSG3857=W,H.EPSG900913=ie,H.EPSG4326=Wn,H.Simple=Gn;var Kn=j.extend({options:{pane:`overlayPane`,attribution:null,bubblingMouseEvents:!0},addTo:function(e){return e.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(e){return e&&e.removeLayer(this),this},getPane:function(e){return this._map.getPane(e?this.options[e]||e:this.options.pane)},addInteractiveTarget:function(e){return this._map._targets[o(e)]=this,this},removeInteractiveTarget:function(e){return delete this._map._targets[o(e)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(e){var t=e.target;if(t.hasLayer(this)){if(this._map=t,this._zoomAnimated=t._zoomAnimated,this.getEvents){var n=this.getEvents();t.on(n,this),this.once(`remove`,function(){t.off(n,this)},this)}this.onAdd(t),this.fire(`add`),t.fire(`layeradd`,{layer:this})}}});an.include({addLayer:function(e){if(!e._layerAdd)throw Error(`The provided object is not a Layer.`);var t=o(e);return this._layers[t]?this:(this._layers[t]=e,e._mapToAdd=this,e.beforeAdd&&e.beforeAdd(this),this.whenReady(e._layerAdd,e),this)},removeLayer:function(e){var t=o(e);return this._layers[t]?(this._loaded&&e.onRemove(this),delete this._layers[t],this._loaded&&(this.fire(`layerremove`,{layer:e}),e.fire(`remove`)),e._map=e._mapToAdd=null,this):this},hasLayer:function(e){return o(e)in this._layers},eachLayer:function(e,t){for(var n in this._layers)e.call(t,this._layers[n]);return this},_addLayers:function(e){e=e?_(e)?e:[e]:[];for(var t=0,n=e.length;tthis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),this.options.minZoom===void 0&&this._layersMinZoom&&this.getZoom()=2&&t[0]instanceof B&&t[0].equals(t[n-1])&&t.pop(),t},_setLatLngs:function(e){cr.prototype._setLatLngs.call(this,e),In(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return In(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var e=this._renderer._bounds,t=this.options.weight,n=new M(t,t);if(e=new F(e.min.subtract(n),e.max.add(n)),this._parts=[],!(!this._pxBounds||!this._pxBounds.intersects(e))){if(this.options.noClip){this._parts=this._rings;return}for(var r=0,i=this._rings.length,a;re.y!=i.y>e.y&&e.x<(i.x-r.x)*(e.y-r.y)/(i.y-r.y)+r.x&&(t=!t);return t||cr.prototype._containsPoint.call(this,e,!0)}});function dr(e,t){return new ur(e,t)}var fr=Yn.extend({initialize:function(e,t){p(this,t),this._layers={},e&&this.addData(e)},addData:function(e){var t=_(e)?e:e.features,n,r,i;if(t){for(n=0,r=t.length;n0&&i.push(i[0].slice()),i}function yr(e,t){return e.feature?n({},e.feature,{geometry:t}):br(t)}function br(e){return e.type===`Feature`||e.type===`FeatureCollection`?e:{type:`Feature`,properties:{},geometry:e}}var xr={toGeoJSON:function(e){return yr(this,{type:`Point`,coordinates:_r(this.getLatLng(),e)})}};tr.include(xr),or.include(xr),ir.include(xr),cr.include({toGeoJSON:function(e){var t=!In(this._latlngs),n=vr(this._latlngs,+!!t,!1,e);return yr(this,{type:(t?`Multi`:``)+`LineString`,coordinates:n})}}),ur.include({toGeoJSON:function(e){var t=!In(this._latlngs),n=t&&!In(this._latlngs[0]),r=vr(this._latlngs,n?2:+!!t,!0,e);return t||(r=[r]),yr(this,{type:(n?`Multi`:``)+`Polygon`,coordinates:r})}}),qn.include({toMultiPoint:function(e){var t=[];return this.eachLayer(function(n){t.push(n.toGeoJSON(e).geometry.coordinates)}),yr(this,{type:`MultiPoint`,coordinates:t})},toGeoJSON:function(e){var t=this.feature&&this.feature.geometry&&this.feature.geometry.type;if(t===`MultiPoint`)return this.toMultiPoint(e);var n=t===`GeometryCollection`,r=[];return this.eachLayer(function(t){if(t.toGeoJSON){var i=t.toGeoJSON(e);if(n)r.push(i.geometry);else{var a=br(i);a.type===`FeatureCollection`?r.push.apply(r,a.features):r.push(a)}}}),n?yr(this,{geometries:r,type:`GeometryCollection`}):{type:`FeatureCollection`,features:r}}});function Sr(e,t){return new fr(e,t)}var Cr=Sr,wr=Kn.extend({options:{opacity:1,alt:``,interactive:!1,crossOrigin:!1,errorOverlayUrl:``,zIndex:1,className:``},initialize:function(e,t,n){this._url=e,this._bounds=z(t),p(this,n)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(_t(this._image,`leaflet-interactive`),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){ft(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(e){return this.options.opacity=e,this._image&&this._updateOpacity(),this},setStyle:function(e){return e.opacity&&this.setOpacity(e.opacity),this},bringToFront:function(){return this._map&&mt(this._image),this},bringToBack:function(){return this._map&&ht(this._image),this},setUrl:function(e){return this._url=e,this._image&&(this._image.src=e),this},setBounds:function(e){return this._bounds=z(e),this._map&&this._reset(),this},getEvents:function(){var e={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(e.zoomanim=this._animateZoom),e},setZIndex:function(e){return this.options.zIndex=e,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var e=this._url.tagName===`IMG`,t=this._image=e?this._url:dt(`img`);if(_t(t,`leaflet-image-layer`),this._zoomAnimated&&_t(t,`leaflet-zoom-animated`),this.options.className&&_t(t,this.options.className),t.onselectstart=l,t.onmousemove=l,t.onload=i(this.fire,this,`load`),t.onerror=i(this._overlayOnError,this,`error`),(this.options.crossOrigin||this.options.crossOrigin===``)&&(t.crossOrigin=this.options.crossOrigin===!0?``:this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),e){this._url=t.src;return}t.src=this._url,t.alt=this.options.alt},_animateZoom:function(e){var t=this._map.getZoomScale(e.zoom),n=this._map._latLngBoundsToNewLayerBounds(this._bounds,e.zoom,e.center).min;Z(this._image,n,t)},_reset:function(){var e=this._image,t=new F(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),n=t.getSize();wt(e,t.min),e.style.width=n.x+`px`,e.style.height=n.y+`px`},_updateOpacity:function(){xt(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&this.options.zIndex!==void 0&&this.options.zIndex!==null&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire(`error`);var e=this.options.errorOverlayUrl;e&&this._url!==e&&(this._url=e,this._image.src=e)},getCenter:function(){return this._bounds.getCenter()}}),Tr=function(e,t,n){return new wr(e,t,n)},Er=wr.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var e=this._url.tagName===`VIDEO`,t=this._image=e?this._url:dt(`video`);if(_t(t,`leaflet-image-layer`),this._zoomAnimated&&_t(t,`leaflet-zoom-animated`),this.options.className&&_t(t,this.options.className),t.onselectstart=l,t.onmousemove=l,t.onloadeddata=i(this.fire,this,`load`),e){for(var n=t.getElementsByTagName(`source`),r=[],a=0;a0?r:[t.src];return}_(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(t.style,`objectFit`)&&(t.style.objectFit=`fill`),t.autoplay=!!this.options.autoplay,t.loop=!!this.options.loop,t.muted=!!this.options.muted,t.playsInline=!!this.options.playsInline;for(var o=0;o